/* DITAR Prism 3D
   A visual system layered over the existing application structure so every
   operational flow remains intact while the interface gains depth and light. */

:root {
  --prism-ink: #071c16;
  --prism-ink-2: #0d2d23;
  --prism-emerald: #087f5b;
  --prism-green: #63bd31;
  --prism-lime: #b6ef5a;
  --prism-mint: #d9ffe1;
  --prism-gold: #f0b429;
  --prism-coral: #ff5c67;
  --prism-cyan: #25c7b7;
  --prism-surface: rgba(255,255,255,.82);
  --prism-border: rgba(21,89,65,.13);
  --prism-shadow: 0 18px 46px rgba(5,47,34,.10), 0 2px 7px rgba(5,47,34,.06);
  --prism-shadow-high: 0 28px 72px rgba(3,58,41,.17), 0 5px 16px rgba(3,58,41,.09);
  --prism-radius: 24px;
  --bg: #eef5ef;
  --panel: rgba(255,255,255,.88);
  --text: var(--prism-ink);
  --muted: #64776d;
  --primary: var(--prism-green);
  --primary-dark: var(--prism-ink);
  --border: var(--prism-border);
  --shadow: var(--prism-shadow);
  --radius: var(--prism-radius);
  color-scheme: light;
}

html { background: #eaf2ec; }

body {
  min-width: 320px;
  background:
    radial-gradient(circle at 84% 2%, rgba(182,239,90,.20), transparent 29rem),
    radial-gradient(circle at 42% 40%, rgba(37,199,183,.09), transparent 34rem),
    linear-gradient(145deg, #f7faf7 0%, #edf4ef 48%, #e8f0ea 100%);
  color: var(--prism-ink);
  font-family: "Manrope", "Segoe UI", sans-serif;
  font-feature-settings: "ss01", "ss02", "tnum";
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .42;
  background-image:
    linear-gradient(rgba(11,89,62,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(11,89,62,.025) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(to bottom, black, transparent 82%);
}

h1, h2, h3, h4, .executive-money, .executive-ratio-value,
.projection-team-kpi-money, .hubspot-money {
  font-family: "Space Grotesk", "Manrope", sans-serif;
}

::selection { background: rgba(99,189,49,.28); color: #04140f; }

* { scrollbar-color: rgba(8,127,91,.35) transparent; scrollbar-width: thin; }
*::-webkit-scrollbar { width: 8px; height: 8px; }
*::-webkit-scrollbar-thumb { border-radius: 99px; background: rgba(8,127,91,.28); }

/* Application shell */
.layout {
  grid-template-columns: 260px minmax(0,1fr);
  min-height: 100vh;
  perspective: 1800px;
}

.sidebar {
  width: 260px;
  background:
    radial-gradient(circle at 28% 0%, rgba(99,189,49,.26), transparent 17rem),
    radial-gradient(circle at 95% 56%, rgba(37,199,183,.12), transparent 18rem),
    linear-gradient(165deg, #0b3328 0%, #061b15 48%, #030d0a 100%);
  border-right: 1px solid rgba(174,255,194,.13);
  box-shadow: 18px 0 60px rgba(3,34,24,.15);
  overflow: hidden;
}

.sidebar::before,
.sidebar::after {
  content: "";
  position: absolute;
  pointer-events: none;
  border-radius: 50%;
}

.sidebar::before {
  width: 240px;
  height: 240px;
  top: -155px;
  left: -68px;
  border: 1px solid rgba(196,255,171,.22);
  box-shadow: 0 0 0 40px rgba(164,255,141,.025), 0 0 70px rgba(99,189,49,.18);
}

.sidebar::after {
  width: 120px;
  height: 440px;
  right: -92px;
  top: 27%;
  transform: rotate(15deg);
  background: linear-gradient(90deg, transparent, rgba(81,220,160,.08), transparent);
  filter: blur(9px);
}

.sidebar-shell { padding: 20px 14px 26px; position: relative; z-index: 1; }

.sidebar-brand {
  min-height: 86px;
  margin: 0 3px 18px;
  padding: 14px 16px;
  border: 1px solid rgba(208,255,214,.13);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(255,255,255,.10), rgba(255,255,255,.025));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 18px 40px rgba(0,0,0,.18);
  backdrop-filter: blur(18px);
}

.sidebar-logo-img {
  max-width: 146px;
  filter: drop-shadow(0 0 14px rgba(182,239,90,.22));
}

.sidebar-subtitle { color: rgba(222,246,228,.63); letter-spacing: .16em; }
.sidebar-section-label { color: rgba(197,230,207,.48); letter-spacing: .15em; padding-inline: 12px; }
.nav-group { gap: 5px; }
.nav-group-items { gap: 5px; }

.nav a {
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: rgba(228,244,233,.74);
  transition: transform .24s cubic-bezier(.2,.8,.2,1), background .24s ease, border-color .24s ease, box-shadow .24s ease;
}

.nav a::before { left: 4px; top: 25%; bottom: 25%; width: 3px; }
.nav a:hover {
  transform: translateX(4px);
  color: #fff;
  border-color: rgba(184,255,175,.14);
  background: linear-gradient(100deg, rgba(255,255,255,.09), rgba(255,255,255,.025));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

.nav a.active {
  color: #f7fff7;
  border-color: rgba(190,255,174,.24);
  background:
    radial-gradient(circle at 94% 8%, rgba(197,255,109,.22), transparent 48%),
    linear-gradient(115deg, rgba(24,126,85,.95), rgba(23,76,57,.76));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.22), 0 13px 28px rgba(0,0,0,.24), 0 0 22px rgba(99,189,49,.10);
}

.nav a.active::before { background: var(--prism-lime); box-shadow: 0 0 14px rgba(182,239,90,.78); }
.nav-link-icon { color: #a8dcb2; }
.nav a.active .nav-link-icon { color: var(--prism-lime); filter: drop-shadow(0 0 7px rgba(182,239,90,.38)); }
.nav-link-label { font-size: 12px; font-weight: 700; }

.main {
  min-width: 0;
  isolation: isolate;
  background: transparent;
}

.main::before,
.main::after {
  display: block;
  content: "";
  position: fixed;
  z-index: -1;
  pointer-events: none;
  border-radius: 50%;
  filter: blur(2px);
}

.main::before {
  width: 390px;
  height: 390px;
  top: 98px;
  right: -140px;
  background: radial-gradient(circle, rgba(182,239,90,.16), rgba(37,199,183,.04) 48%, transparent 70%);
}

.main::after {
  width: 430px;
  height: 430px;
  left: 18%;
  bottom: -270px;
  background: radial-gradient(circle, rgba(37,199,183,.10), transparent 68%);
}

.topbar {
  min-height: 74px;
  padding: 0 30px;
  border-bottom: 1px solid rgba(32,96,72,.10);
  background: rgba(248,252,249,.74);
  box-shadow: 0 10px 34px rgba(10,59,42,.045);
  backdrop-filter: blur(24px) saturate(145%);
}

.topbar h2 { font-size: 16px; font-weight: 700; letter-spacing: -.02em; }
.topbar-context p { color: #77877e; font-size: 11px; }
.topbar-clock strong { font-family: "Space Grotesk", sans-serif; color: var(--prism-emerald); }

.topbar-icon-btn,
.topbar-profile {
  border-color: rgba(22,104,75,.13);
  background: linear-gradient(145deg, rgba(255,255,255,.96), rgba(239,247,241,.75));
  box-shadow: inset 0 1px 0 #fff, 0 7px 18px rgba(12,68,48,.06);
}

.topbar-icon-btn:hover,
.topbar-profile:hover {
  border-color: rgba(99,189,49,.42);
  box-shadow: inset 0 1px 0 #fff, 0 11px 26px rgba(13,92,62,.12), 0 0 0 3px rgba(99,189,49,.08);
}

.topbar-avatar {
  background: linear-gradient(145deg, #1f8e61, #063b2b);
  border-color: rgba(182,239,90,.35);
  box-shadow: inset 0 1px 1px rgba(255,255,255,.28), 0 5px 12px rgba(7,72,49,.22), 0 0 14px rgba(99,189,49,.15);
}

.topbar-profile-menu,
.profile-modal-card {
  border-color: rgba(31,111,80,.16);
  background: rgba(250,253,251,.94);
  box-shadow: 0 30px 80px rgba(3,46,32,.22), inset 0 1px 0 #fff;
  backdrop-filter: blur(26px) saturate(140%);
}

.content { max-width: none; padding: 28px clamp(18px,2vw,34px) 50px; }
.content > * { max-width: 1660px; }
.page-header h1 { font-size: clamp(26px,2.4vw,38px); letter-spacing: -.045em; }
.page-header p { color: #6b7e73; }

/* Universal glass surfaces */
.card, .kpi-card, .chart-card, .table-card,
.module-shell, .module-toolbar-card, .module-table-card,
.config-form-card, .config-users-card, .request-panel,
.production-live-panel, .projection-panel, .projection-hub-section,
.hubspot-analytics-card, .hubspot-chart-card, .hubspot-records-card,
.cot-wizard-card, .cot-detail-card, .cot-subpanel {
  border-color: var(--prism-border);
  background: linear-gradient(145deg, rgba(255,255,255,.92), rgba(248,252,249,.76));
  box-shadow: var(--prism-shadow), inset 0 1px 0 rgba(255,255,255,.86);
  backdrop-filter: blur(18px) saturate(125%);
}

.module-shell, .module-toolbar-card, .module-table-card,
.table-card, .chart-card, .cot-wizard-card { border-radius: var(--prism-radius); }

.kpi-card {
  border-top: 1px solid rgba(255,255,255,.86);
  box-shadow: var(--prism-shadow), inset 0 1px 0 #fff;
}

.kpi-card::before {
  background: linear-gradient(90deg, var(--prism-green), var(--prism-cyan));
  box-shadow: 0 0 18px rgba(99,189,49,.25);
}

.btn, button, .form-control, input, select, textarea { font-family: inherit; }

.btn, .action-label-btn, .icon-action-btn {
  border-radius: 13px;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}

.btn:hover, .action-label-btn:hover, .icon-action-btn:hover { transform: translateY(-2px); }

.btn-primary, .action-label-primary, .icon-action-primary {
  border-color: rgba(180,255,149,.28);
  color: #fff;
  background:
    radial-gradient(circle at 82% 0%, rgba(207,255,151,.36), transparent 34%),
    linear-gradient(135deg, #159062, #07503a);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32), 0 10px 24px rgba(7,103,69,.24), 0 0 18px rgba(99,189,49,.12);
}

.btn-primary:hover, .action-label-primary:hover, .icon-action-primary:hover {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.38), 0 15px 32px rgba(7,103,69,.29), 0 0 24px rgba(99,189,49,.18);
}

.form-control, input:not([type="checkbox"]):not([type="radio"]), select, textarea {
  border-color: rgba(23,104,76,.16);
  border-radius: 13px;
  background: rgba(255,255,255,.78);
  box-shadow: inset 0 1px 3px rgba(4,45,31,.035), 0 1px 0 rgba(255,255,255,.8);
}

.form-control:focus, input:focus, select:focus, textarea:focus {
  border-color: rgba(54,171,112,.68);
  box-shadow: 0 0 0 4px rgba(54,171,112,.11), 0 8px 24px rgba(14,104,70,.08);
  outline: none;
}

.badge, .performance-pill, .request-state-pill, .hubspot-status-pill,
.projection-filter-chip, .executive-source-pill {
  border: 1px solid rgba(20,106,76,.10);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}

table thead th, .module-table-head, .executive-team-head {
  background: linear-gradient(180deg, rgba(238,247,241,.95), rgba(228,240,232,.74));
  color: #496259;
}

table tbody tr { transition: background .18s ease, transform .18s ease; }
table tbody tr:hover { background: rgba(184,238,180,.10); }

/* Executive dashboard */
.executive-dashboard { gap: 18px; color: var(--prism-ink); }

.executive-hero {
  min-height: 172px;
  padding: 28px 30px;
  border: 1px solid rgba(176,255,187,.21);
  border-radius: 30px;
  background:
    radial-gradient(circle at 83% 26%, rgba(182,239,90,.24), transparent 17rem),
    radial-gradient(circle at 56% 112%, rgba(37,199,183,.18), transparent 24rem),
    linear-gradient(125deg, #082b21 0%, #0a4d38 58%, #0a3328 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 28px 65px rgba(5,57,40,.22), 0 0 44px rgba(99,189,49,.07);
  overflow: hidden;
}

.executive-hero::before {
  content: "";
  position: absolute;
  width: 220px;
  height: 220px;
  right: 8%;
  top: -134px;
  border-radius: 50%;
  background: radial-gradient(circle at 32% 28%, rgba(255,255,255,.56), rgba(182,239,90,.18) 22%, rgba(37,199,183,.08) 55%, transparent 70%);
  box-shadow: 0 0 70px rgba(182,239,90,.20), inset -18px -22px 50px rgba(1,40,28,.30);
  animation: prism-float 8s ease-in-out infinite;
}

.executive-hero::after {
  right: -105px;
  top: -215px;
  width: 560px;
  height: 560px;
  border-color: rgba(215,255,190,.13);
  box-shadow: 0 0 0 62px rgba(255,255,255,.022), 0 0 0 126px rgba(124,255,190,.018), 0 0 80px rgba(99,189,49,.14);
}

@keyframes prism-float {
  0%, 100% { transform: translate3d(0,0,0) rotate(-4deg); }
  50% { transform: translate3d(12px,14px,0) rotate(5deg); }
}

.executive-eyebrow {
  color: var(--prism-lime);
  text-shadow: 0 0 18px rgba(182,239,90,.32);
}

.executive-hero h1 {
  max-width: 720px;
  font-size: clamp(30px,3vw,50px);
  letter-spacing: -.055em;
  text-wrap: balance;
  text-shadow: 0 8px 26px rgba(0,0,0,.18);
}

.executive-hero p { max-width: 650px; font-size: 13px; color: rgba(229,248,235,.72); }

.executive-cutoff,
.executive-filter .form-control,
.executive-refresh {
  border-color: rgba(212,255,211,.20);
  background: linear-gradient(145deg, rgba(255,255,255,.13), rgba(255,255,255,.045));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 12px 28px rgba(0,0,0,.12);
  backdrop-filter: blur(16px);
}

.executive-cutoff { border-radius: 15px; padding: 11px 14px; }
.executive-filter .form-control, .executive-refresh { height: 44px; border-radius: 13px; }
.executive-refresh:hover { background: rgba(255,255,255,.18); box-shadow: 0 12px 30px rgba(0,0,0,.17), 0 0 19px rgba(182,239,90,.10); }

.executive-source-bar {
  min-height: 46px;
  padding: 8px 14px;
  border: 1px solid rgba(25,108,78,.12);
  border-radius: 16px;
  background: rgba(255,255,255,.68);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.88), 0 12px 32px rgba(5,55,39,.06);
  backdrop-filter: blur(20px);
}

.executive-source-pill { padding: 6px 10px; background: rgba(239,247,241,.82); }
.executive-source-pill.is-ok i { background: var(--prism-green); box-shadow: 0 0 0 4px rgba(99,189,49,.13), 0 0 10px rgba(99,189,49,.36); }
.executive-content { gap: 18px; }
.executive-kpi-grid { gap: 14px; }

.executive-kpi,
.hubspot-metric,
.projection-team-kpi,
.projection-period-card,
.projection-advisor-card,
.kpi-card {
  --tilt-x: 0deg;
  --tilt-y: 0deg;
  --glow-x: 50%;
  --glow-y: 20%;
  transform: perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) translate3d(0,0,0);
  transform-style: preserve-3d;
  will-change: transform;
  transition: transform .26s cubic-bezier(.2,.8,.2,1), box-shadow .26s ease, border-color .26s ease;
}

.executive-kpi {
  min-height: 264px;
  padding: 18px;
  border: 1px solid color-mix(in srgb, var(--performance-color) 19%, rgba(15,84,61,.12));
  border-top: 1px solid rgba(255,255,255,.95);
  border-radius: 22px;
  background:
    radial-gradient(circle at var(--glow-x) var(--glow-y), color-mix(in srgb, var(--performance-color) 13%, transparent), transparent 42%),
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(245,250,247,.84));
  box-shadow: var(--prism-shadow), inset 0 1px 0 #fff;
  overflow: hidden;
}

.executive-kpi::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(to bottom, color-mix(in srgb, var(--performance-color) 45%, white), var(--performance-color));
  box-shadow: 0 0 22px color-mix(in srgb, var(--performance-color) 38%, transparent);
}

.executive-kpi::after {
  content: "";
  position: absolute;
  width: 45%;
  height: 180%;
  top: -45%;
  left: -72%;
  pointer-events: none;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.50), transparent);
  transition: left .65s ease;
}

.executive-kpi:hover::after { left: 125%; }
.executive-kpi.is-tilting { box-shadow: var(--prism-shadow-high), inset 0 1px 0 #fff, 0 0 30px color-mix(in srgb, var(--performance-color) 10%, transparent); }

.executive-kpi-head,
.executive-money,
.executive-kpi-score,
.executive-progress,
.executive-kpi > p,
.executive-kpi-split,
.executive-kpi footer { position: relative; z-index: 1; transform: translateZ(12px); }

.executive-kpi-icon {
  width: 42px;
  height: 42px;
  flex-basis: 42px;
  border: 1px solid color-mix(in srgb, var(--performance-color) 22%, white);
  border-radius: 14px;
  background: linear-gradient(145deg, color-mix(in srgb, var(--performance-color) 17%, white), color-mix(in srgb, var(--performance-color) 7%, white));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.86), 0 8px 17px color-mix(in srgb, var(--performance-color) 15%, transparent);
}

.executive-kpi-head h2 { font-size: 14px; letter-spacing: -.015em; }
.executive-kpi-head small { color: #72867b; }
.executive-money, .executive-ratio-value { margin: 22px 0 14px; font-size: clamp(22px,1.65vw,31px); letter-spacing: -.055em; }
.executive-ratio-value { font-size: 34px; }
.executive-kpi-score b { font-size: 18px; text-shadow: 0 0 18px color-mix(in srgb, var(--performance-color) 18%, transparent); }
.executive-kpi-score em { padding: 4px 8px; }
.executive-progress { height: 7px; padding: 1px; background: rgba(5,63,43,.08); box-shadow: inset 0 2px 4px rgba(5,43,31,.08); }
.executive-progress span { background: linear-gradient(90deg, color-mix(in srgb, var(--performance-color) 70%, white), var(--performance-color)); box-shadow: 0 0 12px color-mix(in srgb, var(--performance-color) 32%, transparent); }
.executive-kpi-split { border: 1px solid rgba(21,93,66,.06); background: rgba(236,245,239,.72); }

.executive-section {
  padding: 20px;
  border: 1px solid var(--prism-border);
  border-radius: 24px;
  background:
    radial-gradient(circle at 95% 0%, rgba(182,239,90,.07), transparent 22rem),
    linear-gradient(145deg, rgba(255,255,255,.95), rgba(248,252,249,.80));
  box-shadow: var(--prism-shadow), inset 0 1px 0 rgba(255,255,255,.94);
  backdrop-filter: blur(18px);
}

.executive-section-head { padding-bottom: 15px; border-color: rgba(24,102,74,.10); }
.executive-section-head span { color: #9b6b0e; }
.executive-section-head h2 { font-size: 19px; letter-spacing: -.035em; }

/* Volumetric bar chart */
.executive-month-chart { padding-top: 16px; }
.executive-chart-legend span::before { border-radius: 3px; box-shadow: inset 0 1px 0 rgba(255,255,255,.44), 0 3px 8px rgba(6,65,45,.12); }
.executive-months {
  min-height: 350px;
  padding: 28px 10px 10px;
  border: 1px solid rgba(20,94,67,.07);
  border-radius: 18px;
  background:
    repeating-linear-gradient(to bottom, transparent 0, transparent 57px, rgba(17,93,65,.055) 58px),
    linear-gradient(180deg, rgba(247,251,248,.62), rgba(239,247,241,.70));
  box-shadow: inset 0 1px 8px rgba(4,56,38,.025);
}

.executive-month { grid-template-rows: 190px auto auto auto auto; border: 1px solid transparent; transition: transform .25s ease, background .25s ease, box-shadow .25s ease; }
.executive-month:hover { transform: translateY(-5px); border-color: rgba(16,110,75,.09); background: rgba(255,255,255,.58); box-shadow: 0 14px 30px rgba(4,64,43,.08); }
.executive-month-bars { height: 190px; gap: 7px; perspective: 500px; }

.executive-chart-bar {
  width: 22px;
  border-radius: 6px 6px 2px 2px;
  transform: rotateX(2deg) translateZ(0);
  transform-origin: bottom;
  box-shadow: inset -5px 0 7px rgba(0,0,0,.10), inset 3px 0 4px rgba(255,255,255,.24), 4px 7px 10px rgba(6,56,39,.13);
  transition: filter .2s ease, transform .2s ease;
}

.executive-chart-bar::before {
  content: "";
  position: absolute;
  left: 1px;
  right: 1px;
  top: -3px;
  height: 7px;
  border-radius: 50%;
  background: inherit;
  filter: brightness(1.2);
  box-shadow: inset 0 1px 2px rgba(255,255,255,.45);
}

.executive-chart-bar::after {
  content: "";
  position: absolute;
  inset: 3px auto 4px 4px;
  width: 3px;
  border-radius: 99px;
  background: linear-gradient(to bottom, rgba(255,255,255,.48), transparent 70%);
}

.executive-chart-bar:hover { filter: saturate(1.12) brightness(1.05); transform: rotateX(2deg) translateY(-3px) scaleX(1.08); }
.executive-chart-bar.is-goal { background: linear-gradient(90deg, #d89405, #ffc64b 55%, #d98d00); }
.executive-chart-bar.is-forecast { background: linear-gradient(90deg, #2f812f, #66bd45 55%, #287329); }
.executive-chart-bar.is-billed { background: linear-gradient(90deg, #077868, #24c4a7 55%, #066b5e); }
.executive-chart-bar.is-billed.is-risk { background: linear-gradient(90deg, #b72f3b, #ff6670 55%, #a92432); }
.executive-chart-bar.is-billed.is-warning { background: linear-gradient(90deg, #c57c00, #ffc24c 55%, #af6800); }
.executive-chart-bar.is-billed.is-good { background: linear-gradient(90deg, #3d862c, #79c95a 55%, #347a25); }
.executive-chart-bar.is-billed.is-excellent { background: linear-gradient(90deg, #007356, #19b98b 55%, #006348); }
.executive-chart-bar.is-billed.is-pending { background: linear-gradient(90deg, #9aa9a0, #cbd5cf 55%, #8e9e94); }
.executive-month-values { border-color: rgba(20,100,71,.08); border-radius: 10px; background: rgba(255,255,255,.72); box-shadow: inset 0 1px 0 #fff; }

.executive-health-source, .executive-health-item, .executive-priority,
.executive-channel, .executive-operation {
  border-color: rgba(19,94,66,.09);
  background: linear-gradient(145deg, rgba(251,253,251,.96), rgba(239,247,242,.72));
  box-shadow: inset 0 1px 0 #fff, 0 7px 20px rgba(4,55,38,.045);
}

.executive-health-item>span, .executive-advisor span, .executive-operation>span {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 6px 14px rgba(7,68,47,.08);
}

.executive-priority { transition: transform .18s ease, box-shadow .18s ease; }
.executive-priority:hover { transform: translateX(4px); box-shadow: 0 10px 22px rgba(5,64,44,.08), inset 0 1px 0 #fff; }
.executive-team-row:hover { background: rgba(221,244,226,.34); }
.executive-channel, .executive-operation { transition: transform .2s ease, box-shadow .2s ease; }
.executive-channel:hover, .executive-operation:hover { transform: translateY(-4px); box-shadow: 0 16px 32px rgba(5,64,44,.10), inset 0 1px 0 #fff; }

/* HubSpot and projection inherit the same light architecture */
.hubspot-v3, .projection-workspace { color: var(--prism-ink); }
.hubspot-command-header, .projection-workspace-head, .projection-team-topbar {
  border-color: rgba(177,255,188,.18);
  background:
    radial-gradient(circle at 86% 0%, rgba(182,239,90,.20), transparent 17rem),
    linear-gradient(125deg, #082c21, #0b523b 58%, #073225);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 22px 52px rgba(5,61,42,.20);
}

.hubspot-metric, .projection-team-kpi, .projection-period-card, .projection-advisor-card {
  background:
    radial-gradient(circle at var(--glow-x) var(--glow-y), rgba(99,189,49,.10), transparent 42%),
    linear-gradient(145deg, rgba(255,255,255,.97), rgba(243,249,245,.82));
  box-shadow: var(--prism-shadow), inset 0 1px 0 #fff;
}

.projection-view-tabs, .hubspot-command-tabs {
  border-color: rgba(22,101,73,.10);
  background: rgba(255,255,255,.67);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.88), 0 10px 28px rgba(5,60,41,.06);
  backdrop-filter: blur(18px);
}

/* Login */
.login-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at 11% 9%, rgba(182,239,90,.20), transparent 24rem),
    radial-gradient(circle at 80% 82%, rgba(37,199,183,.13), transparent 26rem),
    #071d16;
}

.login-hero-panel {
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 70% 22%, rgba(182,239,90,.18), transparent 17rem),
    linear-gradient(145deg, rgba(10,73,52,.74), rgba(3,22,16,.94)),
    url("../../photo-1583470790878-4f4f3811a01f.avif") center/cover;
}

.login-hero-panel::before {
  content: "";
  position: absolute;
  width: 460px;
  height: 460px;
  right: -150px;
  top: -190px;
  z-index: -1;
  border: 1px solid rgba(207,255,190,.20);
  border-radius: 50%;
  box-shadow: 0 0 0 70px rgba(183,255,154,.025), 0 0 0 140px rgba(183,255,154,.018), 0 0 100px rgba(99,189,49,.17);
}

.login-hero-logo { filter: drop-shadow(0 0 24px rgba(182,239,90,.20)); }
.login-hero-copy span { color: var(--prism-lime); letter-spacing: .18em; }
.login-hero-copy h1 { font-size: clamp(42px,5.6vw,78px); letter-spacing: -.06em; text-shadow: 0 13px 34px rgba(0,0,0,.28); }
.login-hero-copy p { max-width: 560px; color: rgba(231,247,236,.72); font-size: 15px; }
.login-access-panel { background: linear-gradient(145deg, rgba(248,252,249,.98), rgba(230,241,233,.96)); }

.login-card {
  border: 1px solid rgba(23,102,74,.13);
  border-radius: 28px;
  background:
    radial-gradient(circle at 100% 0%, rgba(182,239,90,.11), transparent 16rem),
    rgba(255,255,255,.78);
  box-shadow: 0 34px 90px rgba(3,50,34,.18), inset 0 1px 0 #fff;
  backdrop-filter: blur(24px);
}

.login-card-kicker { color: var(--prism-emerald); }
.login-card h2 { font-size: 34px; letter-spacing: -.05em; }

/* Reveal and accessibility */
.prism-reveal {
  opacity: 0;
  translate: 0 14px;
  transition: opacity .55s ease, translate .55s cubic-bezier(.2,.8,.2,1);
}

.prism-reveal.is-revealed { opacity: 1; translate: 0 0; }

@media (max-width: 1120px) {
  .layout { grid-template-columns: 88px minmax(0,1fr); }
  .sidebar { width: 88px; }
  .sidebar-brand { padding: 12px 8px; min-height: 66px; }
  .sidebar-logo-img { max-width: 56px; }
  .sidebar-subtitle, .sidebar-section-label, .nav-link-label { display: none; }
  .nav a { justify-content: center; padding: 0; }
  .nav-link-icon { width: 20px; height: 20px; flex-basis: 20px; }
  .topbar-profile { min-width: 0; }
  .topbar-profile-copy { display: none; }
}

@media (max-width: 720px) {
  .layout { display: block; }
  .sidebar { position: fixed; inset: auto 10px 10px; z-index: 40; width: auto; height: 66px; border: 1px solid rgba(188,255,185,.20); border-radius: 22px; box-shadow: 0 18px 50px rgba(1,29,20,.35); }
  .sidebar-shell { height: 100%; padding: 8px; }
  .sidebar-brand, .sidebar-section-label { display: none; }
  .nav { display: block; height: 100%; overflow-x: auto; }
  .nav-group { display: inline; }
  .nav-group-items { display: inline-flex; gap: 4px; height: 100%; }
  .nav a { width: 48px; height: 48px; min-height: 48px; }
  .nav a::before { left: 25%; right: 25%; top: auto; bottom: 2px; width: auto; height: 3px; }
  .topbar { min-height: 64px; padding: 0 14px; }
  .topbar-context p, .topbar-clock, .topbar-divider, .topbar-tools > .topbar-icon-btn:not(.topbar-icon-btn-notify) { display: none; }
  .content { padding: 18px 12px 96px; }
  .executive-hero { min-height: 0; padding: 22px 18px; border-radius: 24px; }
  .executive-hero h1 { font-size: 30px; }
  .executive-kpi, .executive-section { border-radius: 19px; }
  .login-page { display: block; }
  .login-hero-panel { min-height: 42vh; padding: 34px 24px; }
  .login-access-panel { min-height: 58vh; padding: 26px 16px; }
}

/* Executive pies v4 — raised center, dual halo and specular ring. */
.projection-client-donut,
.projection-composition-donut,
.projection-team-kpi-gauge,
.projection-advisor-gauge,
.projection-hero-gauge,
.dashboard-donut-stage {
  isolation: isolate;
  transform-style: preserve-3d;
  filter: drop-shadow(0 18px 18px rgba(4,54,37,.16));
}

.projection-client-donut {
  width: clamp(180px, 13vw, 220px);
  border: 5px solid rgba(255,255,255,.92);
  background-color: #e5eee8;
  box-shadow:
    inset 8px 8px 14px rgba(255,255,255,.40),
    inset -9px -12px 16px rgba(4,48,33,.18),
    0 20px 38px rgba(4,58,39,.16),
    0 0 0 1px rgba(17,93,65,.09),
    0 0 0 10px rgba(255,255,255,.68),
    0 0 0 11px color-mix(in srgb, var(--route-accent, #a7d83b) 13%, transparent);
  transform: perspective(700px) rotateX(5deg) translateY(-2px);
  transition: transform .35s cubic-bezier(.2,.8,.2,1), filter .35s ease;
}

.projection-client-share-card {
  grid-template-columns: minmax(200px,230px) minmax(0,1fr);
}

.projection-client-donut:hover {
  filter: drop-shadow(0 24px 22px rgba(4,64,42,.21)) saturate(1.08);
  transform: perspective(700px) rotateX(0deg) translateY(-7px) scale(1.025);
}

.projection-client-donut::before {
  content: "";
  position: absolute;
  inset: -22px;
  z-index: -1;
  border: 1px dashed color-mix(in srgb, var(--route-accent, #a7d83b) 34%, transparent);
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 100%, color-mix(in srgb, var(--route-accent, #a7d83b) 12%, transparent), transparent 47%);
  box-shadow: 0 0 0 12px color-mix(in srgb, var(--route-accent, #a7d83b) 2.5%, transparent);
  animation: prism-ring-spin 26s linear infinite;
}

.projection-client-donut::after {
  content: "";
  position: absolute;
  inset: 37px;
  z-index: 0;
  border: 1px solid rgba(18,90,64,.10);
  border-radius: 50%;
  background:
    radial-gradient(circle at 34% 26%, rgba(255,255,255,.98), rgba(250,253,251,.94) 36%, rgba(232,243,235,.94) 100%);
  box-shadow:
    inset 0 9px 18px rgba(255,255,255,.94),
    inset 0 -11px 20px rgba(7,65,44,.08),
    0 8px 22px rgba(4,58,39,.18),
    0 0 0 7px rgba(255,255,255,.68),
    0 0 0 8px rgba(14,94,66,.06);
}

.projection-client-donut > div {
  z-index: 2;
  transform: translateZ(22px);
}

.projection-client-donut strong {
  font-family: "Space Grotesk", sans-serif;
  font-size: 34px;
  letter-spacing: -.06em;
  text-shadow: 0 5px 14px rgba(7,78,51,.13);
}

.projection-client-donut-legend { gap: 8px; }
.projection-client-donut-legend > div {
  min-height: 48px;
  padding: 8px 10px;
  border: 1px solid rgba(20,95,68,.08);
  border-radius: 13px;
  background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(239,247,242,.76));
  box-shadow: inset 0 1px 0 #fff, 0 8px 18px rgba(4,55,37,.055);
  transition: transform .2s ease, box-shadow .2s ease;
}
.projection-client-donut-legend > div:hover { transform: translateX(4px); box-shadow: inset 0 1px 0 #fff, 0 12px 25px rgba(4,60,40,.10); }
.projection-client-donut-legend i {
  width: 10px;
  height: 10px;
  box-shadow: inset 0 1px 1px rgba(255,255,255,.55), 0 0 0 4px color-mix(in srgb, var(--legend-color) 10%, transparent), 0 0 12px color-mix(in srgb, var(--legend-color) 24%, transparent);
}

.projection-composition-donut {
  width: 210px;
  border: 5px solid rgba(255,255,255,.92);
  box-shadow:
    inset 7px 8px 12px rgba(255,255,255,.34),
    inset -9px -12px 16px rgba(4,48,33,.16),
    0 20px 38px rgba(4,58,39,.17),
    0 0 0 9px rgba(255,255,255,.66),
    0 0 0 10px rgba(20,101,70,.07);
  transform: perspective(700px) rotateX(5deg);
  transition: transform .35s cubic-bezier(.2,.8,.2,1), filter .35s ease;
}

.projection-composition-donut:hover { filter: drop-shadow(0 25px 22px rgba(4,64,42,.20)) saturate(1.08); transform: perspective(700px) rotateX(0deg) translateY(-6px) scale(1.025); }

.projection-composition-donut::before {
  content: "";
  position: absolute;
  inset: -20px;
  z-index: -1;
  border: 1px dashed color-mix(in srgb, var(--route-accent, #a7d83b) 30%, transparent);
  border-radius: 50%;
  box-shadow: 0 0 0 12px color-mix(in srgb, var(--route-accent, #a7d83b) 2.5%, transparent);
  animation: prism-ring-spin 28s linear infinite reverse;
}

.projection-composition-donut::after {
  content: "";
  position: absolute;
  inset: 8px 18px auto;
  z-index: 1;
  height: 42%;
  pointer-events: none;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(255,255,255,.42), transparent 70%);
  filter: blur(2px);
}

.projection-composition-donut > div {
  position: relative;
  z-index: 2;
  width: 142px;
  border: 1px solid rgba(18,92,64,.08);
  background: radial-gradient(circle at 34% 25%, #fff, #f7fbf8 55%, #e9f2ec 100%);
  box-shadow:
    inset 0 9px 18px rgba(255,255,255,.92),
    inset 0 -10px 18px rgba(6,61,42,.07),
    0 9px 22px rgba(4,57,39,.18),
    0 0 0 7px rgba(255,255,255,.70),
    0 0 0 8px rgba(18,94,66,.06);
  transform: translateZ(22px);
}

.projection-composition-donut strong { max-width: 118px; font-size: 15px; letter-spacing: -.035em; }

.projection-team-kpi-gauge,
.projection-advisor-gauge {
  width: 74px;
  height: 74px;
  border: 4px solid rgba(255,255,255,.90);
  box-shadow:
    inset 5px 6px 9px rgba(255,255,255,.28),
    inset -5px -7px 10px rgba(5,48,33,.13),
    0 12px 25px rgba(4,58,39,.16),
    0 0 0 6px rgba(255,255,255,.66),
    0 0 0 7px color-mix(in srgb, var(--forecast-tone, var(--team-gauge, #64b247)) 10%, transparent);
}

.projection-team-kpi-gauge > i,
.projection-advisor-gauge > i {
  width: 54px;
  height: 54px;
  border: 1px solid rgba(16,89,62,.07);
  background: radial-gradient(circle at 34% 25%, #fff, #f4faf6 72%, #e3eee7);
  box-shadow: inset 0 6px 12px #fff, inset 0 -7px 13px rgba(5,63,42,.07), 0 7px 15px rgba(4,56,38,.15);
}

.projection-hero-gauge {
  border: 6px solid rgba(255,255,255,.13);
  box-shadow: inset 7px 8px 13px rgba(255,255,255,.10), inset -8px -10px 15px rgba(0,0,0,.17), 0 22px 42px rgba(2,28,19,.28), 0 0 0 10px rgba(255,255,255,.035), 0 0 0 11px rgba(182,239,90,.12);
}
.projection-hero-gauge::before {
  background: radial-gradient(circle at 33% 25%, #215941, #153b2a 64%, #0b261b);
  box-shadow: inset 0 10px 25px rgba(255,255,255,.04), inset 0 -12px 25px rgba(0,0,0,.20), 0 9px 22px rgba(0,0,0,.24), 0 0 0 7px rgba(255,255,255,.045);
}

.dashboard-donut-stage {
  padding: 14px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.72), rgba(235,245,238,.28) 64%, transparent 65%);
  box-shadow: 0 0 0 1px rgba(17,94,65,.06), 0 0 0 12px rgba(255,255,255,.42), 0 0 0 13px rgba(17,94,65,.05);
}
.dashboard-donut-stage::before {
  content: "";
  position: absolute;
  inset: -5px;
  border: 1px dashed color-mix(in srgb, var(--route-accent, #63bd31) 28%, transparent);
  border-radius: 50%;
  animation: prism-ring-spin 26s linear infinite;
}
.dashboard-donut-stage canvas { filter: drop-shadow(0 13px 14px rgba(5,64,43,.17)) saturate(1.08); }
.dashboard-donut-center {
  width: 92px;
  height: 92px;
  border: 1px solid rgba(17,92,65,.08);
  background: radial-gradient(circle at 34% 25%, #fff, #f5faf7 67%, #e3eee7);
  box-shadow: inset 0 7px 14px #fff, inset 0 -9px 16px rgba(5,62,42,.07), 0 9px 23px rgba(4,58,39,.18), 0 0 0 7px rgba(255,255,255,.66);
}

@media (max-width: 720px) {
  .projection-client-donut { width: 170px; }
  .projection-composition-donut { width: 174px; }
  .projection-composition-donut > div { width: 116px; }
  .projection-client-share-card { grid-template-columns: 1fr; }
}

/* Infographic language v3: concentric rings, route nodes and roadmap lines. */
body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header {
  isolation: isolate;
}

body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header > div::before {
  content: "";
  display: block;
  width: 58px;
  height: 4px;
  margin-bottom: 13px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--route-accent), color-mix(in srgb, var(--route-accent) 42%, white));
  box-shadow: 0 0 18px var(--route-glow);
}

body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header > div::after {
  content: "";
  position: absolute;
  left: calc(100% + 70px);
  top: 50%;
  width: clamp(130px, 18vw, 300px);
  border-top: 1px dashed color-mix(in srgb, var(--route-accent) 42%, transparent);
  opacity: .72;
}

.module-control-strip::after,
.pedidos-control-strip::after {
  content: "";
  position: absolute;
  z-index: 0;
  right: 32px;
  top: 24px;
  width: 88px;
  height: 88px;
  pointer-events: none;
  border: 1px solid color-mix(in srgb, var(--route-accent, #63bd31) 18%, transparent);
  border-radius: 50%;
  box-shadow:
    0 0 0 12px color-mix(in srgb, var(--route-accent, #63bd31) 3%, transparent),
    0 0 0 24px color-mix(in srgb, var(--route-accent, #63bd31) 2%, transparent);
}

.module-control-strip > *, .pedidos-control-strip > * { position: relative; z-index: 1; }

.pedidos-strip-title::before,
.module-section-head::before,
.module-table-head::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 7px;
  height: 7px;
  border: 2px solid color-mix(in srgb, var(--route-accent, #63bd31) 66%, white);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--route-accent, #63bd31) 9%, transparent), 0 0 15px var(--route-glow, rgba(99,189,49,.18));
}

.pedidos-strip-title,
.module-section-head,
.module-table-head { padding-left: 21px; }

.pedidos-strip-title::after,
.module-section-head::after,
.module-table-head::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 9px;
  height: calc(100% - 2px);
  border-left: 1px dashed color-mix(in srgb, var(--route-accent, #63bd31) 24%, transparent);
}

.pedido-mini-kpi::after,
.production-machine-card::after,
.production-op-card::after,
.projection-health-card::after,
.projection-insight-card::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 68px;
  height: 68px;
  right: -34px;
  top: -34px;
  border: 1px solid color-mix(in srgb, var(--route-accent, #63bd31) 22%, transparent);
  border-radius: 50%;
  box-shadow: 0 0 0 9px color-mix(in srgb, var(--route-accent, #63bd31) 4%, transparent), 0 0 24px var(--route-glow, rgba(99,189,49,.12));
}

.executive-kpi-icon,
.hubspot-metric-icon,
.projection-team-kpi > span:first-child,
.projection-health-item > span,
.executive-operation > span {
  border-radius: 50%;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.85),
    0 8px 18px color-mix(in srgb, currentColor 10%, transparent),
    0 0 0 5px color-mix(in srgb, currentColor 5%, transparent);
}

.projection-team-month-cards,
.projection-period-grid,
.executive-kpi-grid {
  position: relative;
}

.projection-team-month-cards::before,
.projection-period-grid::before {
  content: "";
  position: absolute;
  z-index: 0;
  left: 4%;
  right: 4%;
  top: 50%;
  border-top: 1px dashed color-mix(in srgb, var(--route-accent, #a7d83b) 24%, transparent);
}

.projection-team-month-card,
.projection-period-card { position: relative; z-index: 1; }

.pedido-timeline {
  position: relative;
  background:
    linear-gradient(90deg, transparent 20px, color-mix(in srgb, var(--route-accent, #63bd31) 12%, transparent) 20px 21px, transparent 21px),
    rgba(247,251,248,.80);
}

.pedido-timeline > * { position: relative; }

.pedido-timeline > *::before {
  content: "";
  position: absolute;
  left: -1px;
  top: 8px;
  width: 8px;
  height: 8px;
  border: 2px solid var(--route-accent, #63bd31);
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--route-accent, #63bd31) 8%, transparent);
}

.projection-team-kpi-gauge,
.projection-advisor-gauge,
.projection-composition-donut,
.projection-client-donut {
  position: relative;
}

.projection-team-kpi-gauge::after,
.projection-advisor-gauge::after,
.projection-composition-donut::after,
.projection-client-donut::after {
  content: "";
  position: absolute;
  inset: -8px;
  pointer-events: none;
  border: 1px dashed color-mix(in srgb, var(--route-accent, #a7d83b) 23%, transparent);
  border-radius: 50%;
  animation: prism-ring-spin 24s linear infinite;
}

@keyframes prism-ring-spin { to { transform: rotate(360deg); } }

.hubspot-chart-card::after,
.chart-card::after,
.executive-trend-section::after {
  content: "";
  position: absolute;
  z-index: 0;
  right: -62px;
  bottom: -86px;
  width: 210px;
  height: 210px;
  pointer-events: none;
  border: 1px solid color-mix(in srgb, var(--route-accent, #63bd31) 10%, transparent);
  border-radius: 50%;
  box-shadow: 0 0 0 20px color-mix(in srgb, var(--route-accent, #63bd31) 2%, transparent), 0 0 0 40px color-mix(in srgb, var(--route-accent, #63bd31) 1.5%, transparent);
}

.hubspot-chart-card > *, .chart-card > *, .executive-trend-section > * { position: relative; z-index: 1; }

@media (max-width: 720px) {
  body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header > div::after,
  .module-control-strip::after, .pedidos-control-strip::after,
  .projection-team-month-cards::before, .projection-period-grid::before { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .prism-reveal { opacity: 1; translate: none; }
  .executive-kpi, .hubspot-metric, .projection-team-kpi, .projection-period-card, .projection-advisor-card, .kpi-card { transform: none !important; }
}

/* --------------------------------------------------------------------------
   Prism modules v2
   The initial visual pass emphasized the executive dashboard. This layer
   carries the same depth, light and motion through every operational route.
   -------------------------------------------------------------------------- */

body[data-view="pedidos"] { --route-accent: #63bd31; --route-accent-2: #0b8f62; }
body[data-view="produccion"] { --route-accent: #25c7b7; --route-accent-2: #087f76; }
body[data-view="despachos"] { --route-accent: #39a8e8; --route-accent-2: #176ca4; }
body[data-view="seguimiento"] { --route-accent: #ff6b62; --route-accent-2: #c43945; }
body[data-view="solicitudes"] { --route-accent: #9a78ef; --route-accent-2: #6743bd; }
body[data-view="cotizaciones"] { --route-accent: #f0b429; --route-accent-2: #b97705; }
body[data-view="hubspot"] { --route-accent: #ff7a59; --route-accent-2: #c95234; }
body[data-view="alertas"] { --route-accent: #ff5c8a; --route-accent-2: #bd315c; }
body[data-view="proyeccion"] { --route-accent: #a7d83b; --route-accent-2: #4d922d; }
body[data-view="reportes"] { --route-accent: #16b7a2; --route-accent-2: #08766d; }
body[data-view="estado"] { --route-accent: #70a6ba; --route-accent-2: #3e7085; }
body[data-view="dashboard"] { --route-accent: #63bd31; --route-accent-2: #087f5b; }

body[data-view]:not([data-view="login"]) .main {
  --route-glow: color-mix(in srgb, var(--route-accent, #63bd31) 16%, transparent);
}

body[data-view]:not([data-view="login"]) .main::before {
  background: radial-gradient(circle, var(--route-glow), color-mix(in srgb, var(--route-accent-2, #087f5b) 5%, transparent) 48%, transparent 70%);
}

/* Every route receives an unmistakable immersive header. */
body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header {
  position: relative;
  min-height: 136px;
  align-items: center;
  margin-bottom: 18px;
  padding: 24px 28px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--route-accent) 30%, transparent);
  border-radius: 28px;
  color: #fff;
  background:
    radial-gradient(circle at 82% 18%, color-mix(in srgb, var(--route-accent) 28%, transparent), transparent 17rem),
    radial-gradient(circle at 56% 120%, color-mix(in srgb, var(--route-accent-2) 32%, transparent), transparent 25rem),
    linear-gradient(125deg, #071f18 0%, color-mix(in srgb, var(--route-accent-2) 42%, #082c21) 58%, #08251d 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.20), 0 24px 58px rgba(5,55,39,.19), 0 0 38px var(--route-glow);
}

body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header::before {
  content: "";
  position: absolute;
  right: 9%;
  top: -112px;
  width: 190px;
  height: 190px;
  border-radius: 50%;
  background: radial-gradient(circle at 34% 30%, rgba(255,255,255,.58), color-mix(in srgb, var(--route-accent) 42%, transparent) 23%, rgba(255,255,255,.025) 63%);
  box-shadow: inset -20px -22px 45px rgba(0,0,0,.25), 0 0 62px var(--route-glow);
  animation: prism-float 9s ease-in-out infinite;
}

body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header::after {
  content: "";
  position: absolute;
  width: 440px;
  height: 440px;
  right: -110px;
  top: -275px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 50%;
  box-shadow: 0 0 0 58px rgba(255,255,255,.018), 0 0 0 116px rgba(255,255,255,.012);
}

body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header > * { position: relative; z-index: 1; }
body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header h1 {
  margin-bottom: 9px;
  color: #fff;
  font-size: clamp(30px, 3vw, 47px);
  letter-spacing: -.055em;
  text-shadow: 0 10px 28px rgba(0,0,0,.22);
}
body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header p {
  max-width: 720px;
  color: rgba(231,248,237,.72);
  font-size: 13px;
}

/* Shared module composition */
.module-shell, .cot-module, .hubspot-workspace, .projection-workspace, .config-shell {
  position: relative;
  display: grid;
  gap: 16px;
  min-width: 0;
}

.module-control-strip,
.pedidos-control-strip,
.projection-workbar,
.hubspot-period-toolbar {
  position: relative;
  border: 1px solid color-mix(in srgb, var(--route-accent, #63bd31) 16%, rgba(19,91,65,.10));
  border-radius: 22px;
  background:
    radial-gradient(circle at 96% 0%, color-mix(in srgb, var(--route-accent, #63bd31) 10%, transparent), transparent 18rem),
    linear-gradient(145deg, rgba(255,255,255,.94), rgba(243,249,245,.78));
  box-shadow: var(--prism-shadow), inset 0 1px 0 #fff;
  backdrop-filter: blur(18px) saturate(130%);
}

.pedidos-control-strip { padding: 16px 18px; }
.pedidos-strip-title h2, .module-section-head h2, .module-table-head h2 { letter-spacing: -.035em; }
.module-section-kicker, .pedidos-strip-title .module-section-kicker {
  color: var(--route-accent-2, var(--prism-emerald));
  text-shadow: 0 0 18px color-mix(in srgb, var(--route-accent, #63bd31) 18%, transparent);
}

.pedido-mini-kpi,
.production-machine-card,
.production-op-card,
.notification-card,
.coordinator-request-card,
.projection-health-card,
.projection-insight-card,
.config-form-card {
  --tilt-x: 0deg;
  --tilt-y: 0deg;
  --glow-x: 50%;
  --glow-y: 20%;
  position: relative;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--route-accent, #63bd31) 18%, rgba(18,89,64,.10));
  border-top-color: rgba(255,255,255,.92);
  border-radius: 18px;
  background:
    radial-gradient(circle at var(--glow-x) var(--glow-y), color-mix(in srgb, var(--route-accent, #63bd31) 12%, transparent), transparent 44%),
    linear-gradient(145deg, rgba(255,255,255,.97), rgba(241,248,244,.82));
  box-shadow: 0 14px 34px rgba(5,58,40,.08), inset 0 1px 0 #fff;
  transform: perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));
  transform-style: preserve-3d;
  transition: transform .25s cubic-bezier(.2,.8,.2,1), box-shadow .25s ease, border-color .25s ease;
}

.pedido-mini-kpi::before,
.production-machine-card::before,
.production-op-card::before,
.notification-card::before,
.coordinator-request-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: linear-gradient(to bottom, color-mix(in srgb, var(--route-accent, #63bd31) 55%, white), var(--route-accent-2, #087f5b));
  box-shadow: 0 0 17px var(--route-glow, rgba(99,189,49,.18));
}

.pedido-mini-kpi:hover,
.production-machine-card:hover,
.production-op-card:hover,
.notification-card:hover,
.coordinator-request-card:hover,
.projection-health-card:hover,
.projection-insight-card:hover,
.config-form-card:hover {
  border-color: color-mix(in srgb, var(--route-accent, #63bd31) 34%, rgba(18,89,64,.12));
  box-shadow: 0 25px 55px rgba(4,58,39,.15), inset 0 1px 0 #fff, 0 0 24px var(--route-glow, rgba(99,189,49,.13));
}

.pedido-mini-kpi > *, .production-machine-card > *, .production-op-card > * { position: relative; z-index: 1; }
.pedido-mini-kpi strong {
  color: var(--prism-ink);
  font-family: "Space Grotesk", sans-serif;
  font-size: clamp(20px,1.6vw,30px);
  letter-spacing: -.045em;
}
.pedido-mini-kpi small { color: #6f8277; }
.pedido-mini-kpi.is-risk { --route-accent: #ff6b62; --route-accent-2: #c43945; }
.pedido-mini-kpi.is-success, .pedido-mini-kpi.is-complete { --route-accent: #63bd31; --route-accent-2: #0b8f62; }

.module-toolbar-card, .module-table-card, .request-form-card,
.production-live-panel, .coordinator-detail-shell, .coordinator-requests,
.projection-hub-section, .projection-team-dashboard, .projection-client-intelligence,
.hubspot-analytics-card, .hubspot-chart-card, .hubspot-records-card {
  position: relative;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--route-accent, #63bd31) 13%, rgba(18,89,64,.10));
  border-radius: 23px;
  background:
    radial-gradient(circle at 98% 0%, color-mix(in srgb, var(--route-accent, #63bd31) 7%, transparent), transparent 20rem),
    linear-gradient(145deg, rgba(255,255,255,.95), rgba(245,250,247,.79));
  box-shadow: var(--prism-shadow), inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter: blur(18px) saturate(125%);
}

.module-toolbar-card::before, .module-table-card::before,
.request-form-card::before, .production-live-panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 2px;
  z-index: 2;
  background: linear-gradient(90deg, transparent, var(--route-accent, #63bd31), var(--route-accent-2, #087f5b), transparent);
  box-shadow: 0 0 16px var(--route-glow, rgba(99,189,49,.16));
}

.module-section-head, .module-table-head {
  position: relative;
  padding-bottom: 13px;
  border-bottom: 1px solid rgba(20,96,69,.09);
}

.module-table-meta, .muted, .helper { color: #6f8177; }

.pedidos-filter-panel, .projection-filter-advanced, .coordinator-filters,
.production-live-filter, .hubspot-client-filter {
  border-color: rgba(21,98,70,.09);
  border-radius: 17px;
  background: rgba(238,247,241,.58);
  box-shadow: inset 0 1px 4px rgba(5,52,36,.035), 0 1px 0 rgba(255,255,255,.85);
}

.table-wrap, .hubspot-table-wrap, .cot-table, .projection-spreadsheet-wrap,
.projection-production-table-wrap, .projection-client-sales-table-wrap,
.projection-advisor-portfolio-table-wrap {
  border-color: rgba(18,94,66,.09);
  border-radius: 16px;
  background: rgba(255,255,255,.64);
  box-shadow: inset 0 2px 7px rgba(4,48,33,.03);
}

.table-wrap table thead, .hubspot-table thead, .cot-table thead,
.projection-spreadsheet-table thead, .projection-production-table thead {
  box-shadow: 0 5px 14px rgba(5,53,37,.045);
}

.pagination button, .pagination-actions button, .hubspot-pagination button,
.projection-view-tab, .projection-team-tab, .hubspot-command-tab,
.config-tab, .production-live-tab, .detail-tab-list label {
  border-radius: 12px;
  transition: transform .18s ease, box-shadow .18s ease, color .18s ease, background .18s ease;
}

.projection-view-tab.is-active, .projection-team-tab.is-active,
.hubspot-command-tab.is-active, .config-tab.is-active,
.production-live-tab.is-active, .detail-tab-radio:checked + label {
  color: #fff;
  border-color: color-mix(in srgb, var(--route-accent) 42%, transparent);
  background: linear-gradient(135deg, var(--route-accent, #63bd31), var(--route-accent-2, #087f5b));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 10px 22px var(--route-glow, rgba(99,189,49,.20));
}

/* Requests */
.request-card-main, .request-subpanel, .request-field, .coordinator-detail {
  border-color: rgba(20,97,69,.10);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(255,255,255,.88), rgba(240,248,243,.68));
  box-shadow: inset 0 1px 0 #fff, 0 7px 18px rgba(5,54,38,.045);
}

.request-switch input:checked + .request-switch-track,
.cot-switch input:checked + span {
  background: linear-gradient(90deg, var(--route-accent, #63bd31), var(--route-accent-2, #087f5b));
  box-shadow: 0 0 16px var(--route-glow, rgba(99,189,49,.20));
}

/* Production and orders */
.production-live-tabs, .projection-view-tabs, .projection-team-tabs, .config-tabs {
  border-color: rgba(21,96,70,.10);
  border-radius: 17px;
  background: rgba(238,247,241,.68);
  box-shadow: inset 0 1px 4px rgba(5,52,36,.04), 0 1px 0 #fff;
}

.pedido-progress, .production-op-progress, .projection-production-track > i,
.projection-team-channel-progress, .projection-advisor-progress {
  border-radius: 999px;
  background: rgba(8,70,49,.09);
  box-shadow: inset 0 2px 5px rgba(5,47,33,.08);
}

.pedido-progress > i, .production-op-progress > i,
.projection-team-channel-progress > i, .projection-advisor-progress > i {
  background: linear-gradient(90deg, var(--route-accent, #63bd31), color-mix(in srgb, var(--route-accent, #63bd31) 55%, white), var(--route-accent-2, #087f5b));
  box-shadow: 0 0 13px var(--route-glow, rgba(99,189,49,.22));
}

.pedido-detail-card, .production-op-context, .production-op-metrics,
.pedido-otif-checks, .pedido-timeline {
  border-color: rgba(19,94,67,.09);
  border-radius: 15px;
  background: rgba(247,251,248,.80);
  box-shadow: inset 0 1px 0 #fff;
}

/* Notifications */
.notification-feed { gap: 10px; }
.notification-card.is-unread {
  border-color: color-mix(in srgb, var(--route-accent, #ff5c8a) 32%, rgba(18,89,64,.10));
  background:
    radial-gradient(circle at 96% 8%, color-mix(in srgb, var(--route-accent, #ff5c8a) 14%, transparent), transparent 15rem),
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(247,250,248,.86));
  box-shadow: 0 15px 36px rgba(80,28,51,.10), inset 0 1px 0 #fff;
}
.notification-status { box-shadow: inset 0 1px 0 rgba(255,255,255,.7), 0 5px 12px rgba(5,56,39,.06); }

/* Cotizaciones */
.cot-wizard-head, .cot-final-summary {
  border-color: color-mix(in srgb, var(--route-accent, #f0b429) 24%, transparent);
  background:
    radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--route-accent, #f0b429) 18%, transparent), transparent 15rem),
    linear-gradient(135deg, #0a2b21, #123d2e);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 18px 42px rgba(6,55,39,.16);
}
.cot-wizard-head h2, .cot-wizard-head p, .cot-final-summary h3,
.cot-final-summary strong { color: #fff; }
.cot-stepper button.is-active, .cot-stepper button[aria-current="step"] {
  color: #fff;
  background: linear-gradient(135deg, var(--route-accent, #f0b429), var(--route-accent-2, #b97705));
  box-shadow: 0 10px 22px var(--route-glow, rgba(240,180,41,.20));
}
.cot-result-cards > *, .cot-margin-card, .cot-price-row, .cot-source-banner {
  border-color: rgba(145,96,7,.12);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(252,248,237,.76));
  box-shadow: inset 0 1px 0 #fff, 0 10px 25px rgba(94,63,8,.065);
}

/* HubSpot */
.hubspot-command-mark, .hubspot-metric-icon, .hubspot-record-avatar {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.34), 0 8px 20px color-mix(in srgb, var(--route-accent, #ff7a59) 18%, transparent);
}
.hubspot-metric, .hubspot-reading-card, .hubspot-client-summary article {
  border-color: color-mix(in srgb, var(--route-accent, #ff7a59) 15%, rgba(18,89,64,.09));
  background:
    radial-gradient(circle at var(--glow-x, 85%) var(--glow-y, 5%), color-mix(in srgb, var(--route-accent, #ff7a59) 9%, transparent), transparent 46%),
    linear-gradient(145deg, rgba(255,255,255,.96), rgba(246,250,247,.80));
  box-shadow: var(--prism-shadow), inset 0 1px 0 #fff;
}
.hubspot-chart-stage canvas { filter: drop-shadow(0 10px 16px rgba(8,70,49,.08)); }
.hubspot-connection-dot { box-shadow: 0 0 0 4px color-mix(in srgb, var(--route-accent, #ff7a59) 12%, transparent), 0 0 14px color-mix(in srgb, var(--route-accent, #ff7a59) 32%, transparent); }

/* Projection */
.projection-workspace-head, .projection-team-topbar {
  border-radius: 24px;
  overflow: hidden;
}
.projection-period-card, .projection-team-kpi, .projection-health-card,
.projection-insight-card, .projection-composition-card, .projection-trend-card,
.projection-ranking-card, .projection-client-share-card,
.projection-client-reference-card, .projection-advisor-overview-card {
  border-color: color-mix(in srgb, var(--route-accent, #a7d83b) 16%, rgba(18,89,64,.09));
  background:
    radial-gradient(circle at var(--glow-x, 90%) var(--glow-y, 0%), color-mix(in srgb, var(--route-accent, #a7d83b) 10%, transparent), transparent 44%),
    linear-gradient(145deg, rgba(255,255,255,.97), rgba(241,248,244,.80));
  box-shadow: var(--prism-shadow), inset 0 1px 0 #fff;
}
.projection-month-column, .projection-sales-column,
.projection-team-month-bar, .projection-advisor-month-bar {
  filter: drop-shadow(4px 8px 7px rgba(4,60,40,.14));
}
.projection-composition-donut, .projection-client-donut,
.projection-team-kpi-gauge, .projection-advisor-gauge {
  filter: drop-shadow(0 13px 18px rgba(6,72,47,.14));
}
.projection-rank-row, .projection-trend-row, .projection-health-item,
.projection-advisor-highlight, .projection-client-lifecycle > * {
  border-color: rgba(20,96,68,.08);
  background: rgba(245,250,247,.78);
  box-shadow: inset 0 1px 0 #fff, 0 7px 18px rgba(5,54,37,.045);
}

/* Reports and configuration */
.chart-card canvas { filter: drop-shadow(0 11px 18px rgba(7,65,45,.09)); }
.config-hero {
  color: #fff;
  border-color: color-mix(in srgb, var(--route-accent, #70a6ba) 26%, transparent);
  background:
    radial-gradient(circle at 88% 5%, color-mix(in srgb, var(--route-accent, #70a6ba) 24%, transparent), transparent 17rem),
    linear-gradient(130deg, #09271f, #15473e);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 20px 48px rgba(5,55,39,.18);
}
.config-hero h2, .config-hero p, .config-hero .module-section-kicker { color: #fff; }
.config-user-edit, .config-user-form {
  border-color: rgba(20,96,69,.10);
  border-radius: 17px;
  background: rgba(244,250,246,.76);
  box-shadow: inset 0 1px 0 #fff;
}

/* Modals and drawers share the new glass depth. */
.cot-wizard-card, .cot-detail-card, .request-form-modal, .projection-ai-dialog,
.projection-client-dossier, .hubspot-client-panel {
  border-color: color-mix(in srgb, var(--route-accent, #63bd31) 20%, rgba(255,255,255,.22));
  background:
    radial-gradient(circle at 95% 0%, color-mix(in srgb, var(--route-accent, #63bd31) 9%, transparent), transparent 20rem),
    rgba(248,252,249,.94);
  box-shadow: 0 34px 100px rgba(2,39,27,.32), inset 0 1px 0 #fff;
  backdrop-filter: blur(28px) saturate(135%);
}

@media (max-width: 720px) {
  body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header {
    min-height: 112px;
    padding: 21px 18px;
    border-radius: 22px;
  }
  body[data-view]:not([data-view="dashboard"]):not([data-view="login"]) .page-header h1 { font-size: 30px; }
  .module-control-strip, .pedidos-control-strip, .module-toolbar-card,
  .module-table-card, .request-form-card, .production-live-panel { border-radius: 18px; }
}

/* Cascade lock: keep the volumetric pie construction above all module layers. */
.projection-client-donut,
.projection-composition-donut,
.projection-team-kpi-gauge,
.projection-advisor-gauge {
  filter: drop-shadow(0 18px 18px rgba(4,54,37,.16));
}

.projection-client-donut::after {
  content: "";
  position: absolute;
  inset: 37px;
  z-index: 0;
  height: auto;
  pointer-events: none;
  border: 1px solid rgba(18,90,64,.10);
  border-radius: 50%;
  background: radial-gradient(circle at 34% 26%, rgba(255,255,255,.98), rgba(250,253,251,.94) 36%, rgba(232,243,235,.94) 100%);
  box-shadow: inset 0 9px 18px rgba(255,255,255,.94), inset 0 -11px 20px rgba(7,65,44,.08), 0 8px 22px rgba(4,58,39,.18), 0 0 0 7px rgba(255,255,255,.68), 0 0 0 8px rgba(14,94,66,.06);
  animation: none;
}

/* Dashboard v15 — numeric key strip and double-click drill-down */
body[data-view="dashboard"] .executive-kpi[data-executive-detail],
body[data-view="dashboard"] .executive-key-strip article[data-executive-detail] {
  cursor: pointer;
  user-select: none;
}

body[data-view="dashboard"] .executive-kpi-action {
  position: absolute;
  right: 14px;
  bottom: 7px;
  z-index: 3;
  color: var(--card-accent);
  font-size: 6px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  opacity: .58;
}

body[data-view="dashboard"] .executive-kpi[data-executive-detail]:hover .executive-kpi-action {
  opacity: 1;
}

body[data-view="dashboard"] .executive-kpi[data-executive-detail]:focus-visible,
body[data-view="dashboard"] .executive-key-strip article[data-executive-detail]:focus-visible {
  outline: 3px solid rgba(128,184,59,.35);
  outline-offset: 3px;
}

body[data-view="dashboard"] .executive-key-strip {
  min-height: 138px;
  grid-template-columns: 214px repeat(5,minmax(0,1fr));
  margin-top: 20px;
  border-color: rgba(35,53,40,.08);
  background: linear-gradient(112deg,#fff 0%,#f7f6f2 66%,#f1eee8 100%);
}

body[data-view="dashboard"] .executive-key-title {
  align-content: center;
  padding: 20px 26px;
  background: linear-gradient(124deg,#08100c 0%,#18201b 77%,transparent 77.4%);
}

body[data-view="dashboard"] .executive-key-title > span {
  color: rgba(255,255,255,.72);
  font-size: 9px;
  letter-spacing: .08em;
}

body[data-view="dashboard"] .executive-key-title > strong {
  display: block;
  max-width: 126px;
  margin-top: 5px;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 18px;
  line-height: 1.06;
  letter-spacing: -.035em;
}

body[data-view="dashboard"] .executive-key-title > i {
  width: 43px;
  margin-top: 11px;
}

body[data-view="dashboard"] .executive-key-title > small {
  display: block;
  margin-top: 9px;
  color: #abd765;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-key-title > svg {
  position: absolute;
  right: 20px;
  bottom: 18px;
  width: 37px;
  height: 37px;
  margin: 0;
  opacity: .85;
}

body[data-view="dashboard"] .executive-key-strip article {
  --key-tone: #467a25;
  position: relative;
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  gap: 10px;
  padding: 16px 14px;
  color: #152019;
  background: linear-gradient(145deg,rgba(255,255,255,.48),rgba(255,255,255,0));
  transition: background .18s ease,box-shadow .18s ease,transform .18s ease;
}

body[data-view="dashboard"] .executive-key-strip article:hover {
  z-index: 1;
  background: color-mix(in srgb,var(--key-tone) 7%,white);
  box-shadow: inset 0 3px 0 color-mix(in srgb,var(--key-tone) 78%,white),0 11px 24px rgba(20,37,25,.09);
  transform: translateY(-2px);
}

body[data-view="dashboard"] .executive-key-strip article.is-blue { --key-tone:#1974c5; }
body[data-view="dashboard"] .executive-key-strip article.is-gold { --key-tone:#e4a008; }
body[data-view="dashboard"] .executive-key-strip article.is-red { --key-tone:#cf2c33; }
body[data-view="dashboard"] .executive-key-strip article.is-green { --key-tone:#4d812b; }
body[data-view="dashboard"] .executive-key-strip article.is-taupe { --key-tone:#a18762; }

body[data-view="dashboard"] .executive-key-strip article > i {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 12px;
  background: color-mix(in srgb,var(--key-tone) 11%,white);
  color: var(--key-tone);
  box-shadow: inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-key-strip article > i svg {
  width: 27px;
  height: 27px;
  stroke-width: 1.8;
}

body[data-view="dashboard"] .executive-key-label {
  display: block;
  margin: 0;
  color: #3d4840;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .06em;
  line-height: 1.1;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-key-value {
  display: block;
  margin-top: 5px;
  overflow: hidden;
  color: var(--key-tone);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(17px,1.25vw,22px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.045em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-key-unit {
  display: block;
  margin-top: 4px;
  color: #344037;
  font-size: 7px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.2;
}

body[data-view="dashboard"] .executive-key-meta {
  display: block;
  margin-top: 8px;
  overflow: hidden;
  color: #758078;
  font-size: 7px;
  font-weight: 650;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.executive-detail-dialog {
  width: min(720px,calc(100vw - 34px));
  max-width: none;
  max-height: calc(100vh - 34px);
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 28px;
  background: transparent;
  color: #142018;
}

.executive-detail-dialog::backdrop {
  background: rgba(1,14,9,.73);
  backdrop-filter: blur(8px) saturate(90%);
}

.executive-detail-panel {
  overflow: hidden;
  border: 1px solid rgba(171,215,101,.24);
  border-radius: 28px;
  background: linear-gradient(145deg,#fff,#f4f6f2);
  box-shadow: 0 34px 90px rgba(0,14,9,.38),inset 0 1px 0 #fff;
}

.executive-detail-panel > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 24px 26px 22px;
  background:
    radial-gradient(circle at 85% -30%,rgba(127,180,64,.27),transparent 15rem),
    linear-gradient(110deg,#10261b,#08120d 72%);
  color: #fff;
}

.executive-detail-panel > header span {
  color: #acd963;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.executive-detail-panel > header h2 {
  margin: 5px 0 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 26px;
  letter-spacing: -.035em;
}

.executive-detail-panel > header p {
  margin: 5px 0 0;
  color: rgba(226,239,229,.68);
  font-size: 10px;
}

.executive-detail-close {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  border: 1px solid rgba(218,239,216,.16);
  border-radius: 50%;
  background: rgba(255,255,255,.07);
  color: #fff;
  font: 300 25px/1 Manrope,sans-serif;
  cursor: pointer;
}

.executive-detail-body {
  display: grid;
  grid-template-columns: 190px minmax(0,1fr);
  gap: 18px;
  padding: 24px 26px;
}

.executive-detail-lead {
  --detail-tone: #467a25;
  display: flex;
  min-height: 160px;
  flex-direction: column;
  justify-content: center;
  padding: 19px;
  border: 1px solid color-mix(in srgb,var(--detail-tone) 18%,white);
  border-radius: 21px;
  background: color-mix(in srgb,var(--detail-tone) 8%,white);
}

.executive-detail-lead.is-blue { --detail-tone:#1974c5; }
.executive-detail-lead.is-gold { --detail-tone:#d89500; }
.executive-detail-lead.is-red { --detail-tone:#cf2c33; }
.executive-detail-lead.is-green { --detail-tone:#4d812b; }
.executive-detail-lead.is-taupe { --detail-tone:#9a7e58; }

.executive-detail-lead > span {
  color: #5f6d63;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.executive-detail-lead > strong {
  display: block;
  margin-top: 8px;
  overflow-wrap: anywhere;
  color: var(--detail-tone);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 29px;
  line-height: 1;
  letter-spacing: -.055em;
}

.executive-detail-lead > em {
  width: max-content;
  max-width: 100%;
  margin-top: 14px;
  padding: 6px 9px;
  border-radius: 999px;
  background: #fff;
  color: var(--detail-tone);
  font-size: 7px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.executive-detail-stats {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

.executive-detail-stats article {
  display: grid;
  min-height: 75px;
  align-content: center;
  padding: 12px 14px;
  border: 1px solid #e0e7df;
  border-radius: 15px;
  background: rgba(255,255,255,.82);
  box-shadow: inset 0 1px 0 #fff;
}

.executive-detail-stats span {
  color: #6e7a72;
  font-size: 8px;
  font-weight: 750;
}

.executive-detail-stats strong {
  margin-top: 6px;
  overflow-wrap: anywhere;
  color: #132018;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 15px;
  letter-spacing: -.025em;
}

.executive-detail-insight {
  grid-column: 1 / -1;
  margin: 0;
  padding: 13px 15px;
  border-left: 4px solid #79aa3f;
  border-radius: 0 13px 13px 0;
  background: #eaf2e5;
  color: #35423a;
  font-size: 10px;
  line-height: 1.5;
}

.executive-detail-insight b {
  display: block;
  margin-bottom: 3px;
  color: #1c2d22;
  font-size: 8px;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.executive-detail-panel > footer {
  display: flex;
  min-height: 58px;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 0 26px;
  border-top: 1px solid #dde5dd;
  background: #eef2ed;
}

.executive-detail-panel > footer span {
  color: #66736a;
  font-size: 9px;
  font-weight: 800;
  text-transform: capitalize;
}

.executive-detail-close-button {
  min-height: 34px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  background: #123d2b;
  color: #fff;
  font-size: 9px;
  font-weight: 850;
  cursor: pointer;
}

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-key-strip { grid-template-columns: 188px repeat(5,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-key-title { padding-inline: 21px; }
  body[data-view="dashboard"] .executive-key-strip article { grid-template-columns: 32px minmax(0,1fr);gap:8px;padding-inline:10px; }
  body[data-view="dashboard"] .executive-key-strip article > i { width:32px;height:32px; }
  body[data-view="dashboard"] .executive-key-strip article > i svg { width:23px;height:23px; }
}

@media(max-width:1100px) {
  body[data-view="dashboard"] .executive-key-strip { grid-template-columns: repeat(3,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-key-title { grid-column:1 / -1;min-height:112px;background:linear-gradient(112deg,#08100c,#18201b); }
  body[data-view="dashboard"] .executive-key-title > strong { max-width:none; }
  body[data-view="dashboard"] .executive-key-title > svg { right:28px;bottom:34px; }
  body[data-view="dashboard"] .executive-key-strip article + article { border-left:0;border-top:1px dotted rgba(47,63,51,.22); }
}

@media(max-width:700px) {
  body[data-view="dashboard"] .executive-key-strip { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-key-title { grid-column:1; }
  body[data-view="dashboard"] .executive-key-strip article { min-height:105px;padding:16px; }
  .executive-detail-dialog { width:calc(100vw - 20px);max-height:calc(100vh - 20px); }
  .executive-detail-body { grid-template-columns:1fr;padding:18px; }
  .executive-detail-lead { min-height:130px; }
  .executive-detail-stats { grid-template-columns:1fr; }
  .executive-detail-panel > header { padding:21px 19px; }
  .executive-detail-panel > header h2 { font-size:22px; }
  .executive-detail-panel > footer { padding-inline:18px; }
}

/* ─────────────────────────────────────────────────────────────
   Management dashboard v12 — reference styling inside the original shell
   ───────────────────────────────────────────────────────────── */
body[data-view="dashboard"] {
  min-width: 0;
  overflow-x: hidden;
  overflow-y: auto;
  background: #071f18;
}

html.dashboard-scroll-hidden,
html.dashboard-scroll-hidden body,
html.dashboard-scroll-hidden .main {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html.dashboard-scroll-hidden::-webkit-scrollbar,
html.dashboard-scroll-hidden body::-webkit-scrollbar,
html.dashboard-scroll-hidden .main::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

body[data-view="dashboard"] .layout {
  background: #071f18;
}

body[data-view="dashboard"] .sidebar {
  border-right-color: rgba(167,226,155,.15);
  background:
    radial-gradient(circle at 20% 0%,rgba(108,185,74,.25),transparent 19rem),
    linear-gradient(180deg,#154d35 0%,#073529 48%,#041b16 100%);
  box-shadow: inset -1px 0 0 rgba(255,255,255,.04);
}

body[data-view="dashboard"] .sidebar-brand {
  min-height: 0;
  margin: 4px 10px 24px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

body[data-view="dashboard"] .topbar {
  min-height: 74px;
  border-bottom: 1px solid rgba(164,218,153,.14);
  background:
    radial-gradient(circle at 76% -120%,rgba(116,193,72,.24),transparent 25rem),
    linear-gradient(90deg,rgba(16,72,51,.98),rgba(5,38,30,.98));
  box-shadow: 0 12px 28px rgba(2,27,20,.16);
  color: #fff;
  backdrop-filter: blur(20px) saturate(130%);
}

body[data-view="dashboard"] .topbar h2 { color: #fff; }
body[data-view="dashboard"] .topbar-context p,
body[data-view="dashboard"] .topbar-clock span { color: rgba(224,242,229,.67); }
body[data-view="dashboard"] .topbar-clock,
body[data-view="dashboard"] .topbar-clock strong { color: #b7ea75; }
body[data-view="dashboard"] .topbar-divider { background: rgba(255,255,255,.15); }
body[data-view="dashboard"] .topbar-icon-btn {
  border-color: rgba(212,245,216,.18);
  background: rgba(255,255,255,.08);
  color: #e8f6eb;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12),0 7px 18px rgba(0,0,0,.10);
}
body[data-view="dashboard"] .topbar-icon-btn:hover {
  border-color: rgba(183,234,117,.58);
  background: rgba(255,255,255,.14);
  color: #fff;
}
body[data-view="dashboard"] .topbar-profile {
  border-color: rgba(214,241,219,.22);
  background: rgba(255,255,255,.94);
  box-shadow: 0 9px 24px rgba(0,0,0,.16),inset 0 1px 0 #fff;
}
body[data-view="dashboard"] .topbar-badge { border-color: #0b3b2c; }

body[data-view="dashboard"] .main {
  background: linear-gradient(180deg,#edf4ef 0%,#f7f8f6 32%,#f3f5f2 100%);
}

body[data-view="dashboard"] .prism-reveal {
  opacity: 1;
  translate: 0 0;
  transition: none;
}

body[data-view="dashboard"] .main::before,
body[data-view="dashboard"] .main::after {
  display: none;
}

body[data-view="dashboard"] .content {
  max-width: none;
  background: transparent;
}

body[data-view="dashboard"] .executive-dashboard {
  display: block;
  width: 100%;
  min-height: 0;
  margin: 0;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-radius: 28px;
  background:
    radial-gradient(circle at 52% 4%,rgba(177,211,155,.08),transparent 30rem),
    linear-gradient(180deg,#f9f9f8,#f4f4f1);
  box-shadow: 0 22px 58px rgba(15,43,27,.09), inset 0 1px 0 rgba(255,255,255,.8);
  font-family: Manrope,Segoe UI,sans-serif;
}

body[data-view="dashboard"] .executive-hero {
  position: relative;
  display: grid;
  height: 225px;
  min-height: 225px;
  max-height: 225px;
  margin: 0 32px;
  overflow: hidden;
  grid-template-columns: minmax(500px,43%) minmax(0,57%);
  padding: 0;
  border: 0;
  border-radius: 28px;
  background:
    radial-gradient(circle at 76% 12%,rgba(255,255,255,.08),transparent 16rem),
    linear-gradient(110deg,#030504 0%,#090d0b 56%,#161917 100%);
  box-shadow: 0 18px 42px rgba(0,0,0,.13);
}

body[data-view="dashboard"] .executive-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    repeating-radial-gradient(circle at 39% 108%,transparent 0 22px,rgba(255,255,255,.025) 23px 24px);
  opacity: .6;
}

body[data-view="dashboard"] .executive-hero-copy {
  position: relative;
  z-index: 1;
  display: grid;
  min-width: 0;
  grid-template-columns: 170px minmax(0,1fr);
  align-items: stretch;
  overflow: hidden;
  padding: 0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.38),rgba(0,0,0,.82)),
    url("../../photo-1583470790878-4f4f3811a01f.avif") center/cover;
}

.executive-bag-photo {
  position: relative;
  z-index: 1;
  align-self: end;
  width: 168px;
  height: 218px;
  margin-left: 8px;
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(18px 18px 22px rgba(0,0,0,.42));
}

.executive-story-copy {
  align-self: center;
  padding: 22px 24px 22px 8px;
}

.executive-story-copy h2 {
  margin: 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(31px,2.25vw,35px);
  font-weight: 650;
  line-height: .98;
  letter-spacing: -.045em;
}

.executive-story-copy h2 em {
  color: #6aa63d;
  font-style: normal;
}

.executive-story-copy h2 > span {
  white-space: nowrap;
}

.executive-story-copy > i {
  display: block;
  width: 53px;
  height: 2px;
  margin: 20px 0 17px;
  border-radius: 99px;
  background: #83b942;
  box-shadow: 0 0 14px rgba(131,185,66,.22);
}

.executive-story-copy p {
  margin: 0;
  color: rgba(255,255,255,.90);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.55;
}

body[data-view="dashboard"] .executive-hero-actions {
  position: relative;
  z-index: 2;
  display: grid;
  min-width: 0;
  height: 154px;
  grid-template-columns: minmax(280px,1.45fr) minmax(110px,.55fr) minmax(150px,.75fr) minmax(130px,.65fr);
  align-items: center;
  align-self: start;
  gap: 0;
  padding: 19px 20px 18px 34px;
  border: 0;
  border-radius: 0 30px 0 0;
  background: transparent;
  box-shadow: none;
}

body[data-view="dashboard"] .executive-hero-actions::before {
  content: "";
  position: absolute;
  left: -78px;
  top: 0;
  bottom: -70px;
  width: 130px;
  transform: skewX(-25deg);
  background: linear-gradient(110deg,rgba(7,10,9,.80),rgba(15,18,16,.98));
}

body[data-view="dashboard"] .executive-cutoff {
  display: grid;
  min-width: 0;
  grid-template-columns: 66px minmax(0,1fr);
  align-items: center;
  gap: 16px;
  padding: 0 20px 0 0;
  border: 0;
  background: transparent;
}

.executive-control-icon {
  display: grid;
  width: 66px;
  height: 66px;
  place-items: center;
  border: 1px solid rgba(152,207,80,.24);
  border-radius: 50%;
  background:
    radial-gradient(circle at 34% 26%,rgba(156,206,92,.31),transparent 48%),
    linear-gradient(145deg,#426b26,#1c3117);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.17),0 10px 24px rgba(0,0,0,.26);
}

.executive-control-icon svg {
  width: 35px;
  height: 35px;
  stroke-width: 1.6;
}

body[data-view="dashboard"] .executive-cutoff > div {
  min-width: 0;
}

body[data-view="dashboard"] .executive-cutoff span,
body[data-view="dashboard"] .executive-filter > span {
  display: block;
  margin: 0 0 12px;
  color: #8dc34d;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-cutoff strong {
  display: block;
  overflow: hidden;
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-cutoff small {
  display: block;
  margin-top: 10px;
  overflow: hidden;
  color: rgba(255,255,255,.58);
  font-size: 7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-filter {
  display: grid;
  min-width: 0;
  min-height: 80px;
  align-content: center;
  padding: 0 20px;
  border: 0;
  border-left: 1px solid rgba(132,176,76,.55);
  background: transparent;
}

body[data-view="dashboard"] .executive-filter .form-control {
  width: 100%;
  min-height: 36px;
  padding: 0 24px 0 0;
  border: 0;
  border-radius: 0;
  background-color: transparent;
  color: #fff;
  box-shadow: none;
  font-size: 14px;
  font-weight: 800;
}

body[data-view="dashboard"] .executive-filter .form-control option {
  color: #132018;
}

body[data-view="dashboard"] .executive-refresh {
  display: flex;
  min-width: 0;
  min-height: 80px;
  align-items: center;
  justify-content: center;
  gap: 11px;
  padding: 0 8px 0 20px;
  border: 0;
  border-left: 1px solid rgba(255,255,255,.18);
  border-radius: 0;
  background: transparent;
  color: #fff;
  box-shadow: none;
}

body[data-view="dashboard"] .executive-refresh svg {
  width: 47px;
  height: 47px;
  padding: 12px;
  border: 1px solid rgba(139,192,75,.25);
  border-radius: 50%;
  background: linear-gradient(145deg,#506f34,#23371e);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16),0 8px 19px rgba(0,0,0,.25);
}

body[data-view="dashboard"] .executive-refresh span {
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-refresh:hover {
  transform: none;
  background: transparent;
  box-shadow: none;
}

body[data-view="dashboard"] .executive-refresh:hover svg {
  transform: rotate(35deg);
  background: linear-gradient(145deg,#65903f,#2d4625);
}

body[data-view="dashboard"] .executive-source-bar {
  position: relative;
  z-index: 6;
  display: grid;
  width: calc(60% - 32px);
  min-width: 690px;
  min-height: 77px;
  grid-template-columns: 150px repeat(3,minmax(150px,1fr)) auto;
  align-items: center;
  gap: 0;
  margin: -77px 32px 18px auto;
  padding: 0 22px 0 18px;
  border: 1px solid rgba(22,43,30,.07);
  border-radius: 22px;
  background:
    radial-gradient(circle at 28% 0%,rgba(111,164,50,.08),transparent 18rem),
    rgba(252,251,248,.96);
  box-shadow: 0 17px 38px rgba(18,31,22,.13),inset 0 1px 0 #fff;
  backdrop-filter: blur(18px);
}

body[data-view="dashboard"] .executive-source-title {
  display: grid;
  min-height: 47px;
  align-content: center;
  padding: 0 16px;
  transform: skewX(-18deg);
  border-radius: 12px;
  background: linear-gradient(110deg,#467c25,#77ba35);
  color: #fff;
  font-size: 8px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: .05em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-source-title br {
  display: block;
}

body[data-view="dashboard"] .executive-source-pill {
  display: grid;
  min-width: 0;
  grid-template-columns: 27px minmax(0,1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 0 8px;
  padding: 0 14px;
  border: 0;
  background: transparent;
  color: #151a16;
}

body[data-view="dashboard"] .executive-source-pill > i {
  display: grid;
  width: 27px;
  height: 27px;
  grid-row: 1 / 3;
  place-items: center;
  border-radius: 50%;
  background: #77bd43;
  color: #fff;
  box-shadow: 0 5px 13px rgba(70,133,39,.16);
  font-size: 13px;
  font-style: normal;
}

body[data-view="dashboard"] .executive-source-pill.is-warning > i {
  background: #d99c22;
}

body[data-view="dashboard"] .executive-source-pill b,
body[data-view="dashboard"] .executive-source-pill small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-source-pill b {
  font-size: 9px;
  font-weight: 850;
}

body[data-view="dashboard"] .executive-source-pill small {
  margin-top: 2px;
  color: #30352f;
  font-size: 8px;
}

body[data-view="dashboard"] .executive-source-warning {
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #f4e4bd;
  color: #966819;
  font-size: 8px;
}

body[data-view="dashboard"] .executive-content {
  display: block;
  width: 100%;
  padding: 0 35px;
}

body[data-view="dashboard"] .executive-kpi-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 13px;
  width: 100%;
}

body[data-view="dashboard"] .executive-kpi {
  --card-accent: #497e2c;
  --gauge-color: var(--card-accent);
  position: relative;
  min-width: 0;
  min-height: 393px;
  overflow: hidden;
  padding: 27px 19px 20px;
  border: 1px solid rgba(37,49,40,.075);
  border-top: 2px solid var(--card-accent);
  border-bottom: 3px solid var(--card-accent);
  border-radius: 24px;
  background:
    radial-gradient(circle at 85% 8%,color-mix(in srgb,var(--card-accent) 7%,transparent),transparent 13rem),
    linear-gradient(145deg,rgba(255,255,255,.99),rgba(247,247,245,.93));
  box-shadow: 0 13px 30px rgba(15,32,21,.10),inset 0 1px 0 #fff;
  transform: none;
}

body[data-view="dashboard"] .executive-kpi:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 38px rgba(15,32,21,.14),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-kpi.is-attainment {
  --card-accent: #3a7825;
  --gauge-color: #1974c5;
}

body[data-view="dashboard"] .executive-kpi.is-coverage {
  --card-accent: #dda516;
  --gauge-color: #f2a900;
}

body[data-view="dashboard"] .executive-kpi.is-conversion {
  --card-accent: #c91d25;
  --gauge-color: #d6272d;
}

body[data-view="dashboard"] .executive-pipeline {
  --card-accent: #416f25;
}

body[data-view="dashboard"] .executive-margin {
  --card-accent: #a98d64;
}

body[data-view="dashboard"] .executive-kpi-head {
  display: grid;
  grid-template-columns: 47px minmax(0,1fr);
  align-items: center;
  gap: 14px;
}

body[data-view="dashboard"] .executive-kpi-icon {
  display: grid;
  width: 47px;
  height: 47px;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: color-mix(in srgb,var(--card-accent) 12%,white);
  color: var(--card-accent);
  box-shadow: none;
}

body[data-view="dashboard"] .executive-kpi-icon svg {
  width: 25px;
  height: 25px;
}

body[data-view="dashboard"] .executive-gauge-kpi .executive-kpi-icon {
  background: var(--card-accent);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.20),0 7px 14px color-mix(in srgb,var(--card-accent) 18%,transparent);
}

body[data-view="dashboard"] .executive-kpi-head h2 {
  margin: 0;
  color: #111512;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: -.01em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-kpi-head small {
  display: block;
  margin-top: 6px;
  color: #252925;
  font-size: 10px;
  font-weight: 600;
  text-transform: none;
}

body[data-view="dashboard"] .executive-money {
  display: block;
  margin: 27px 0 0;
  overflow: visible;
  color: #0b0d0b;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(19px,1.8vw,27px);
  font-weight: 650;
  line-height: 1;
  letter-spacing: -.045em;
  white-space: nowrap;
}

.executive-gauge {
  position: relative;
  width: 168px;
  height: 92px;
  margin: 22px auto 0;
  overflow: hidden;
}

.executive-gauge > i {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 168px;
  height: 168px;
  border-radius: 50%;
  background: conic-gradient(from 270deg,var(--gauge-color) 0 var(--gauge-angle),#e4e5e3 var(--gauge-angle) 180deg,transparent 180deg 360deg);
  -webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 9px),#000 calc(100% - 8px));
  mask: radial-gradient(farthest-side,transparent calc(100% - 9px),#000 calc(100% - 8px));
  filter: drop-shadow(0 3px 3px color-mix(in srgb,var(--gauge-color) 15%,transparent));
}

.executive-gauge > div {
  position: absolute;
  inset: 42px 0 auto;
  display: grid;
  justify-items: center;
  text-align: center;
}

.executive-gauge b {
  color: var(--gauge-color);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 23px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: -.045em;
}

.executive-gauge span {
  margin-top: 7px;
  color: #1d211e;
  font-size: 9px;
  font-weight: 650;
}

.executive-status-pill {
  display: block;
  width: max-content;
  max-width: 100%;
  margin: 4px auto 0;
  padding: 6px 12px;
  border-radius: 999px;
  background: color-mix(in srgb,var(--gauge-color) 12%,white);
  color: var(--gauge-color);
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase;
}

.executive-kpi-comparison {
  display: grid;
  gap: 4px;
  margin-top: 27px;
  padding: 18px 8px 0;
  border-top: 1px solid #e7e7e4;
}

.executive-kpi-comparison span {
  color: #424742;
  font-size: 9px;
}

.executive-kpi-comparison strong {
  color: #171a17;
  font-size: 11px;
  font-weight: 650;
}

body[data-view="dashboard"] .executive-pipeline .executive-money {
  margin-top: 28px;
}

body[data-view="dashboard"] .executive-pipeline .executive-kpi-score {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 4px 10px;
  margin-top: 27px;
}

body[data-view="dashboard"] .executive-pipeline .executive-kpi-score b {
  color: #46781f;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: -.05em;
}

body[data-view="dashboard"] .executive-pipeline .executive-kpi-score span {
  color: #1d221d;
  font-size: 9px;
}

body[data-view="dashboard"] .executive-pipeline .executive-kpi-score em {
  grid-column: 1 / -1;
  width: max-content;
  margin-top: 8px;
  padding: 5px 9px;
  border-radius: 999px;
  background: linear-gradient(90deg,#e1f1d4,#bfe39f);
  color: #173719;
  font-size: 7px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-pipeline > p {
  margin: 19px 0 0;
  padding-top: 15px;
  border-top: 1px solid #e6e7e4;
  color: #3d433d;
  font-size: 9px;
  line-height: 1.55;
}

body[data-view="dashboard"] .executive-pipeline > p b {
  display: block;
  color: #171a17;
  font-size: 11px;
  font-weight: 650;
}

body[data-view="dashboard"] .executive-kpi-split {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 0;
  margin-top: 13px;
  padding: 12px 0;
  border: 1px solid #e1e5df;
  border-radius: 14px;
  background: rgba(247,249,246,.88);
}

body[data-view="dashboard"] .executive-kpi-split > * {
  padding: 0 10px;
  color: #333a33;
  font-size: 8px;
  text-align: center;
}

body[data-view="dashboard"] .executive-kpi-split > * + * {
  border-left: 1px dotted #bfc3bd;
}

body[data-view="dashboard"] .executive-kpi-split b {
  display: block;
  margin-top: 4px;
  color: #355e21;
  font-size: 17px;
}

body[data-view="dashboard"] .executive-pipeline .executive-kpi-split span:last-child b {
  color: #9b1d23;
}

body[data-view="dashboard"] .executive-margin .executive-ratio-value {
  display: block;
  margin-top: 29px;
  color: #b49b72;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 25px;
  font-weight: 650;
  letter-spacing: -.03em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-margin .executive-kpi-score {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: baseline;
  gap: 5px 9px;
  margin-top: 18px;
}

body[data-view="dashboard"] .executive-margin .executive-kpi-score b {
  color: #7c6444;
  font-size: 20px;
  font-weight: 650;
}

body[data-view="dashboard"] .executive-margin .executive-kpi-score span {
  color: #252a25;
  font-size: 9px;
}

body[data-view="dashboard"] .executive-margin .executive-kpi-score em {
  grid-column: 1 / -1;
  width: max-content;
  margin-top: 7px;
  padding: 5px 9px;
  border-radius: 999px;
  background: #eee7de;
  color: #463a2c;
  font-size: 7px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-margin .executive-kpi-split {
  display: flex;
  min-height: 53px;
  align-items: center;
  justify-content: space-between;
  margin-top: 22px;
  padding: 0 12px;
  border: 0;
  border-radius: 14px;
  background: #f0ede8;
}

body[data-view="dashboard"] .executive-margin .executive-kpi-split b {
  margin: 0;
  color: #20231f;
  font-size: 10px;
}

body[data-view="dashboard"] .executive-margin > footer {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 8px;
  margin-top: 12px;
  padding: 13px 7px 0;
  border-top: 1px solid #e6e4df;
}

body[data-view="dashboard"] .executive-margin > footer span {
  max-width: 75%;
  color: #343934;
  font-size: 8px;
  line-height: 1.45;
  text-transform: none;
}

body[data-view="dashboard"] .executive-margin > footer b {
  color: #151815;
  font-size: 12px;
}

.executive-key-strip {
  display: grid;
  min-height: 145px;
  grid-template-columns: 220px repeat(5,minmax(0,1fr));
  align-items: stretch;
  gap: 0;
  margin: 25px 0 0;
  overflow: hidden;
  border: 1px solid rgba(40,48,41,.055);
  border-radius: 26px;
  background: linear-gradient(110deg,#fff,#f5f1eb);
  box-shadow: 0 12px 29px rgba(23,36,27,.07),inset 0 1px 0 #fff;
}

.executive-key-title {
  position: relative;
  display: grid;
  align-content: center;
  padding: 23px 29px;
  overflow: hidden;
  background: linear-gradient(125deg,#090c0a 0%,#1b201d 75%,transparent 75.4%);
  color: #fff;
}

.executive-key-title span {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.executive-key-title > i {
  width: 47px;
  height: 2px;
  margin-top: 15px;
  background: linear-gradient(90deg,#77ad36,transparent);
}

.executive-key-title svg {
  width: 51px;
  height: 51px;
  margin-top: 15px;
  color: #70a836;
}

.executive-key-strip article {
  display: grid;
  min-width: 0;
  grid-template-columns: 52px minmax(0,1fr);
  align-items: center;
  gap: 14px;
  padding: 21px 20px;
  color: #274f23;
}

.executive-key-strip article + article {
  border-left: 1px dotted rgba(47,63,51,.30);
}

.executive-key-strip article > i {
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  color: currentColor;
  font-style: normal;
}

.executive-key-strip article > i svg {
  width: 48px;
  height: 48px;
  stroke-width: 1.7;
}

.executive-key-strip article.is-blue { color: #1266ba; }
.executive-key-strip article.is-gold { color: #efa807; }
.executive-key-strip article.is-red { color: #c92d31; }
.executive-key-strip article.is-green { color: #467a25; }
.executive-key-strip article.is-taupe { color: #aa9270; }

.executive-key-strip article strong {
  display: block;
  color: #161a16;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.executive-key-strip article span {
  display: block;
  margin-top: 7px;
  color: #272d28;
  font-size: 8px;
  font-weight: 550;
  line-height: 1.55;
}

.executive-sustainability-footer {
  display: flex;
  min-height: 54px;
  align-items: center;
  gap: 13px;
  margin: 22px -35px 0;
  padding: 0 70px;
  background:
    linear-gradient(105deg,#080b09 0%,#151b16 37%,#496c2f 37.4%,#6d8d4f 100%);
  color: rgba(255,255,255,.80);
}

.executive-sustainability-footer svg {
  width: 20px;
  height: 20px;
  color: #6b9c38;
}

.executive-sustainability-footer span {
  font-size: 9px;
  font-weight: 500;
  letter-spacing: .13em;
  text-transform: uppercase;
}

@media (min-width:1451px) and (max-height:1000px) {
  body[data-view="dashboard"] .topbar {
    min-height: 64px;
    padding-inline: 28px;
  }
  body[data-view="dashboard"] .content {
    padding: 14px 30px 18px;
  }
  body[data-view="dashboard"] .executive-hero {
    height: 195px;
    min-height: 195px;
    max-height: 195px;
    margin-inline: 28px;
  }
  body[data-view="dashboard"] .executive-hero-copy {
    grid-template-columns: 160px minmax(0,1fr);
  }
  body[data-view="dashboard"] .executive-bag-photo {
    width: 154px;
    height: 190px;
    margin-left: 4px;
  }
  body[data-view="dashboard"] .executive-story-copy {
    padding-block: 16px;
  }
  body[data-view="dashboard"] .executive-story-copy h2 { font-size: 31px; }
  body[data-view="dashboard"] .executive-story-copy > i { margin-block: 14px 12px; }
  body[data-view="dashboard"] .executive-story-copy p { font-size: 13px; }
  body[data-view="dashboard"] .executive-hero-actions {
    height: 134px;
    padding-block: 13px;
  }
  body[data-view="dashboard"] .executive-control-icon {
    width: 56px;
    height: 56px;
  }
  body[data-view="dashboard"] .executive-cutoff {
    grid-template-columns: 56px minmax(0,1fr);
    gap: 13px;
  }
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh { min-height: 68px; }
  body[data-view="dashboard"] .executive-source-bar {
    width: calc(60% - 28px);
    min-height: 64px;
    margin: -64px 28px 14px auto;
  }
  body[data-view="dashboard"] .executive-content { padding-inline: 30px; }
  body[data-view="dashboard"] .executive-kpi {
    min-height: 350px;
    padding: 20px 17px 15px;
  }
  body[data-view="dashboard"] .executive-kpi-head {
    grid-template-columns: 42px minmax(0,1fr);
    gap: 11px;
  }
  body[data-view="dashboard"] .executive-kpi-icon {
    width: 42px;
    height: 42px;
  }
  body[data-view="dashboard"] .executive-money { margin-top: 18px; }
  body[data-view="dashboard"] .executive-gauge {
    height: 84px;
    margin-top: 13px;
  }
  body[data-view="dashboard"] .executive-kpi-comparison {
    margin-top: 14px;
    padding-top: 12px;
  }
  body[data-view="dashboard"] .executive-pipeline .executive-money { margin-top: 18px; }
  body[data-view="dashboard"] .executive-pipeline .executive-kpi-score,
  body[data-view="dashboard"] .executive-margin .executive-ratio-value { margin-top: 18px; }
  body[data-view="dashboard"] .executive-margin .executive-kpi-score { margin-top: 12px; }
  body[data-view="dashboard"] .executive-margin .executive-kpi-split { margin-top: 14px; }
  body[data-view="dashboard"] .executive-key-strip {
    min-height: 118px;
    margin-top: 18px;
  }
  body[data-view="dashboard"] .executive-key-title { padding-block: 16px; }
  body[data-view="dashboard"] .executive-key-title > i { margin-top: 9px; }
  body[data-view="dashboard"] .executive-key-title svg {
    width: 42px;
    height: 42px;
    margin-top: 9px;
  }
  body[data-view="dashboard"] .executive-key-strip article { padding-block: 14px; }
  body[data-view="dashboard"] .executive-sustainability-footer {
    min-height: 44px;
    margin: 14px -30px 0;
    padding-inline: 60px;
  }
}

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-hero {
    display: block;
    height: auto;
    min-height: 0;
    max-height: none;
  }
  body[data-view="dashboard"] .executive-hero-copy { min-height: 225px; }
  body[data-view="dashboard"] .executive-hero-actions {
    height: auto;
    grid-template-columns: minmax(250px,1.35fr) minmax(105px,.55fr) minmax(145px,.75fr) minmax(125px,.65fr);
    padding: 19px 25px 18px;
    background: linear-gradient(110deg,#090d0b,#161917);
  }
  body[data-view="dashboard"] .executive-hero-actions::before { display: none; }
  body[data-view="dashboard"] .executive-source-bar {
    width: calc(100% - 64px);
    min-width: 0;
    margin: 0 32px 18px;
    border-radius: 22px;
  }
  body[data-view="dashboard"] .executive-kpi {
    padding-inline: 15px;
  }
  .executive-key-strip {
    grid-template-columns: 195px repeat(5,minmax(0,1fr));
  }
  .executive-key-strip article {
    grid-template-columns: 43px minmax(0,1fr);
    gap: 10px;
    padding-inline: 14px;
  }
  .executive-key-strip article > i,
  .executive-key-strip article > i svg {
    width: 43px;
    height: 43px;
  }
}

@media(max-width:900px) {
  body[data-view="dashboard"] { min-width: 0; }
  body[data-view="dashboard"] .executive-hero {
    display: block;
    margin: 0 14px;
    border-radius: 24px;
  }
  body[data-view="dashboard"] .executive-hero-copy {
    min-height: 230px;
  }
  body[data-view="dashboard"] .executive-hero-actions {
    height: auto;
    grid-template-columns: 1fr 1fr;
    padding: 22px;
  }
  body[data-view="dashboard"] .executive-cutoff {
    grid-column: 1 / -1;
    padding-bottom: 18px;
  }
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh {
    border-top: 1px solid rgba(255,255,255,.12);
  }
  body[data-view="dashboard"] .executive-source-bar {
    width: calc(100% - 28px);
    min-width: 0;
    grid-template-columns: 130px repeat(3,1fr);
    margin: 0 14px 17px;
    border-radius: 20px;
  }
  body[data-view="dashboard"] .executive-source-warning { display: none; }
  body[data-view="dashboard"] .executive-content { padding: 0 14px; }
  body[data-view="dashboard"] .executive-kpi-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .executive-key-strip {
    grid-template-columns: 1fr 1fr;
  }
  .executive-key-title { grid-row: span 3; }
  .executive-sustainability-footer { margin-inline: -14px;padding-inline: 30px; }
}

/* ─────────────────────────────────────────────────────────────
   Advisor radial cards v8 — selected circular concept
   ───────────────────────────────────────────────────────────── */
body[data-view="proyeccion"] .projection-team-performance {
  overflow: hidden;
  background:
    radial-gradient(circle at 50% -20%,rgba(223,239,165,.22),transparent 34rem),
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,249,246,.91));
}

body[data-view="proyeccion"] .projection-team-advisors {
  display: grid;
  grid-template-columns: repeat(3,minmax(294px,1fr));
  gap: 18px;
  padding: 20px 20px 8px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: thin;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial {
  --radial-track: rgba(34,91,65,.075);
  min-width: 294px;
  min-height: 590px;
  padding: 18px 15px 15px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 20%,rgba(30,92,66,.08));
  border-top-color: rgba(255,255,255,.97);
  border-radius: 29px;
  background:
    radial-gradient(circle at var(--glow-x) var(--glow-y),color-mix(in srgb,var(--advisor-tone) 10%,transparent),transparent 35%),
    radial-gradient(circle at 50% 48%,rgba(255,255,255,.96),transparent 18rem),
    linear-gradient(145deg,rgba(255,255,255,.99),rgba(242,248,244,.90));
  box-shadow:
    inset 0 1px 0 #fff,
    0 22px 48px rgba(4,57,39,.105),
    0 3px 8px rgba(4,57,39,.045);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial::before {
  height: 3px;
  background: linear-gradient(90deg,transparent,color-mix(in srgb,var(--advisor-tone) 75%,white) 18%,var(--advisor-tone) 50%,color-mix(in srgb,var(--advisor-tone) 72%,white) 82%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial::after {
  width: 230px;
  height: 230px;
  right: -120px;
  top: -135px;
  border-color: color-mix(in srgb,var(--advisor-tone) 14%,transparent);
  box-shadow:
    0 0 0 30px color-mix(in srgb,var(--advisor-tone) 2.5%,transparent),
    0 0 0 60px color-mix(in srgb,var(--advisor-tone) 1.5%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial:hover,
body[data-view="proyeccion"] .projection-team-advisor-card.is-radial.is-tilting {
  box-shadow:
    inset 0 1px 0 #fff,
    0 34px 74px rgba(4,57,39,.17),
    0 5px 15px rgba(4,57,39,.07),
    0 0 28px color-mix(in srgb,var(--advisor-tone) 9%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial > header {
  display: grid;
  grid-template-columns: 54px minmax(0,1fr) auto;
  gap: 12px;
  min-height: 58px;
  align-items: center;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial .projection-team-advisor-avatar {
  width: 54px;
  height: 54px;
  border-width: 3px;
  box-shadow:
    0 10px 20px rgba(4,58,39,.14),
    0 0 0 1px color-mix(in srgb,var(--advisor-tone) 20%,transparent),
    0 0 0 6px color-mix(in srgb,var(--advisor-tone) 5%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial > header > div strong {
  display: block;
  overflow: hidden;
  color: #10251c;
  font-family: "Space Grotesk",sans-serif;
  font-size: 15px;
  letter-spacing: -.025em;
  text-overflow: ellipsis;
  text-transform: none;
  white-space: nowrap;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial > header > div span {
  display: block;
  overflow: hidden;
  margin-top: 5px;
  color: #687a72;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .045em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial > header > b {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 9px;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 16%,transparent);
  border-radius: 999px;
  background: linear-gradient(145deg,color-mix(in srgb,var(--advisor-tone) 14%,white),color-mix(in srgb,var(--advisor-tone) 5%,white));
  color: var(--advisor-tone);
  box-shadow: inset 0 1px 0 #fff,0 7px 14px color-mix(in srgb,var(--advisor-tone) 9%,transparent);
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .01em;
  white-space: nowrap;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial > header > b i {
  font-style: normal;
  font-size: 11px;
}

.projection-team-radial-stage {
  position: relative;
  display: grid;
  height: 398px;
  margin: 4px -3px 0;
  place-items: start center;
}

.projection-team-radial-stage::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 258px;
  width: 230px;
  height: 64px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: radial-gradient(ellipse,rgba(13,77,53,.17),transparent 69%);
  filter: blur(10px);
  opacity: .52;
}

.projection-team-radial-face {
  position: relative;
  isolation: isolate;
  width: min(288px,100%);
  aspect-ratio: 1;
  margin-top: 4px;
  border: 1px solid rgba(25,91,64,.09);
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 44%,rgba(255,255,255,.98) 0 27%,transparent 27.5%),
    radial-gradient(circle at 50% 35%,rgba(255,255,255,.62),transparent 45%),
    linear-gradient(145deg,rgba(255,255,255,.93),rgba(227,239,231,.84));
  box-shadow:
    inset 0 13px 25px rgba(255,255,255,.93),
    inset 0 -18px 25px rgba(16,77,53,.085),
    0 18px 28px rgba(5,66,44,.15),
    0 0 0 8px rgba(255,255,255,.68),
    0 0 0 10px rgba(19,92,64,.035);
  transform: perspective(760px) rotateX(7deg) translateZ(14px);
  transform-style: preserve-3d;
}

.projection-team-radial-face::before,
.projection-team-radial-face::after {
  content: "";
  position: absolute;
  z-index: 0;
  pointer-events: none;
  border-radius: 50%;
}

.projection-team-radial-face::before {
  inset: 16px;
  border: 1px solid rgba(24,91,63,.08);
  box-shadow:
    inset 0 0 0 39px rgba(21,88,60,.025),
    inset 0 0 0 40px rgba(21,88,60,.055),
    inset 0 0 0 78px rgba(255,255,255,.38),
    inset 0 0 0 79px rgba(21,88,60,.055);
}

.projection-team-radial-face::after {
  inset: 5px 31px auto;
  height: 45%;
  z-index: 4;
  background: radial-gradient(ellipse,rgba(255,255,255,.48),transparent 70%);
  filter: blur(2px);
  opacity: .72;
}

.projection-team-radial-ring {
  position: absolute;
  z-index: 1;
  display: block;
  border-radius: 50%;
  transform: translateZ(18px);
  filter: drop-shadow(0 4px 5px color-mix(in srgb,var(--ring-tone) 22%,transparent));
}

.projection-team-radial-ring.is-forecast {
  --ring-tone: var(--advisor-tone);
  inset: 13px;
  background: conic-gradient(from 214deg,var(--ring-tone) 0 var(--forecast-angle),var(--radial-track) var(--forecast-angle) 360deg);
  -webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 13px),#000 calc(100% - 12px));
  mask: radial-gradient(farthest-side,transparent calc(100% - 13px),#000 calc(100% - 12px));
}

.projection-team-radial-ring.is-billed {
  --ring-tone: #0c9470;
  inset: 55px;
  background: conic-gradient(from 214deg,var(--ring-tone) 0 var(--conversion-angle),var(--radial-track) var(--conversion-angle) 360deg);
  -webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 11px),#000 calc(100% - 10px));
  mask: radial-gradient(farthest-side,transparent calc(100% - 11px),#000 calc(100% - 10px));
}

.projection-team-radial-ring.is-billed.is-excellent,
.projection-team-radial-ring.is-billed.is-good { --ring-tone: #0b956b; }
.projection-team-radial-ring.is-billed.is-warning { --ring-tone: #e2a018; }
.projection-team-radial-ring.is-billed.is-risk { --ring-tone: #ee625f; }
.projection-team-radial-ring.is-billed.is-neutral { --ring-tone: #9ba9a2; }

.projection-team-radial-value {
  position: absolute;
  z-index: 3;
  left: 50%;
  min-width: 150px;
  transform: translateX(-50%) translateZ(28px);
  text-align: center;
}

.projection-team-radial-value.is-projected { top: 32px; }
.projection-team-radial-value.is-billed { top: 70px; }

.projection-team-radial-value > span {
  display: block;
  color: #62746c;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.projection-team-radial-value > strong {
  display: block;
  margin-top: 3px;
  color: #13291f;
  font-family: "Space Grotesk",sans-serif;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: -.035em;
}

.projection-team-radial-value .projection-team-kpi-money {
  display: inline-flex;
  align-items: baseline;
}

.projection-team-radial-value .projection-team-kpi-money b { font-size: 12px; }
.projection-team-radial-value .projection-team-kpi-money small { font-size: 7px; }

.projection-team-radial-center {
  position: absolute;
  z-index: 5;
  inset: 101px;
  display: grid;
  align-content: center;
  justify-items: center;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 14%,rgba(22,84,59,.08));
  border-radius: 50%;
  background:
    radial-gradient(circle at 38% 24%,#fff,rgba(249,252,250,.97) 42%,color-mix(in srgb,var(--advisor-tone) 7%,#eef5f0));
  box-shadow:
    inset 0 8px 14px rgba(255,255,255,.94),
    inset 0 -10px 18px rgba(9,71,47,.07),
    0 9px 18px rgba(6,70,46,.16),
    0 0 0 7px rgba(255,255,255,.65),
    0 0 0 8px color-mix(in srgb,var(--advisor-tone) 8%,transparent);
  transform: translateZ(36px);
  text-align: center;
}

.projection-team-radial-center strong {
  color: #10261d;
  font-family: "Space Grotesk",sans-serif;
  font-size: 27px;
  line-height: 1;
  letter-spacing: -.06em;
}

.projection-team-radial-center span {
  margin-top: 7px;
  color: #61736b;
  font-size: 7px;
  font-weight: 900;
  line-height: 1.35;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.projection-team-radial-conversion {
  position: absolute;
  z-index: 5;
  left: 50%;
  bottom: 24px;
  display: grid;
  transform: translateX(-50%) translateZ(30px);
  text-align: center;
}

.projection-team-radial-conversion span {
  color: #66776f;
  font-size: 6px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
  white-space: nowrap;
}

.projection-team-radial-conversion strong {
  margin-top: 2px;
  color: #e95350;
  font-family: "Space Grotesk",sans-serif;
  font-size: 17px;
  letter-spacing: -.04em;
}

.projection-team-radial-conversion.is-excellent strong,
.projection-team-radial-conversion.is-good strong { color: #0a8d64; }
.projection-team-radial-conversion.is-warning strong { color: #ce8b09; }
.projection-team-radial-conversion.is-risk strong { color: #e95350; }
.projection-team-radial-conversion.is-neutral strong { color: #84938c; }

.projection-team-radial-satellite {
  position: absolute;
  z-index: 7;
  display: grid;
  width: 90px;
  height: 90px;
  align-content: center;
  justify-items: center;
  overflow: hidden;
  padding: 9px 7px;
  border: 1px solid rgba(26,91,65,.10);
  border-radius: 50%;
  background:
    radial-gradient(circle at 37% 24%,#fff,rgba(250,253,251,.97) 42%,rgba(231,241,234,.95));
  box-shadow:
    inset 0 8px 14px rgba(255,255,255,.96),
    inset 0 -10px 18px rgba(10,71,49,.075),
    0 12px 22px rgba(5,65,43,.15),
    0 0 0 5px rgba(255,255,255,.66),
    0 0 0 6px rgba(16,90,62,.045);
  text-align: center;
  transform: translateZ(42px);
}

.projection-team-radial-satellite.is-best { left: 0;top: 176px; }
.projection-team-radial-satellite.is-pending { right: 0;top: 176px; }
.projection-team-radial-satellite.is-status {
  left: 50%;
  bottom: 2px;
  width: 98px;
  height: 98px;
  transform: translateX(-50%) translateZ(42px);
}

.projection-team-radial-satellite > i {
  display: grid;
  width: 25px;
  height: 25px;
  margin-bottom: 5px;
  place-items: center;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 14%,transparent);
  border-radius: 50%;
  background: color-mix(in srgb,var(--advisor-tone) 10%,white);
  color: var(--advisor-tone);
  box-shadow: inset 0 1px 0 #fff,0 5px 10px color-mix(in srgb,var(--advisor-tone) 9%,transparent);
  font-style: normal;
  font-size: 12px;
}

.projection-team-radial-satellite > i svg {
  width: 13px;
  height: 13px;
}

.projection-team-radial-satellite > span {
  color: #6b7d74;
  font-size: 6px;
  font-weight: 900;
  letter-spacing: .065em;
  text-transform: uppercase;
}

.projection-team-radial-satellite > strong {
  display: block;
  max-width: 78px;
  margin-top: 2px;
  overflow: hidden;
  color: #183025;
  font-size: 9px;
  font-weight: 900;
  line-height: 1.2;
  text-overflow: ellipsis;
}

.projection-team-radial-satellite > small {
  display: block;
  max-width: 74px;
  margin-top: 4px;
  overflow: hidden;
  color: #162a21;
  font-size: 7px;
  font-weight: 850;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-team-radial-satellite .projection-team-kpi-money {
  display: inline-flex;
  align-items: baseline;
}
.projection-team-radial-satellite .projection-team-kpi-money b { font-size: 7px; }
.projection-team-radial-satellite .projection-team-kpi-money small { font-size: 5px; }

.projection-team-radial-satellite.is-status.is-warning > i { color: #c88908;background: #fff4d6; }
.projection-team-radial-satellite.is-status.is-risk > i { color: #d94847;background: #fff0ed; }
.projection-team-radial-satellite.is-status.is-neutral > i { color: #778880;background: #eef2ef; }

.projection-team-radial-breakdown {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0,1fr) 54px minmax(0,1fr) minmax(0,1fr);
  gap: 8px;
  align-items: center;
  min-height: 98px;
  margin-top: -2px;
  padding: 12px 10px;
  border: 1px solid rgba(28,91,66,.08);
  border-radius: 19px;
  background:
    radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--advisor-tone) 7%,transparent),transparent 13rem),
    rgba(255,255,255,.69);
  box-shadow: inset 0 1px 0 #fff,0 10px 22px rgba(4,57,39,.07);
  backdrop-filter: blur(16px);
}

.projection-team-radial-breakdown > div:not(.projection-team-radial-donut) {
  display: grid;
  min-width: 0;
  align-content: center;
}

.projection-team-radial-breakdown > div:not(.projection-team-radial-donut) > i {
  width: 7px;
  height: 7px;
  margin-bottom: 6px;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(16,128,88,.06);
}

.projection-team-radial-breakdown i.is-projected { background: var(--advisor-tone); }
.projection-team-radial-breakdown i.is-billed { background: #0b966d; }
.projection-team-radial-breakdown i.is-pending { background: #d9a22f; }

.projection-team-radial-breakdown > div > span {
  overflow: hidden;
  color: #5b7066;
  font-size: 6px;
  font-weight: 900;
  letter-spacing: .055em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.projection-team-radial-breakdown > div > strong {
  display: block;
  min-width: 0;
  margin-top: 4px;
  overflow: hidden;
  color: #14291f;
  font-family: "Space Grotesk",sans-serif;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: -.025em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-team-radial-breakdown > div > strong .projection-team-kpi-money {
  display: inline-flex;
  max-width: 100%;
  align-items: baseline;
}
.projection-team-radial-breakdown > div > strong .projection-team-kpi-money b { font-size: 8px; }
.projection-team-radial-breakdown > div > strong .projection-team-kpi-money small { font-size: 5px; }

.projection-team-radial-breakdown > div > small {
  margin-top: 4px;
  color: #829088;
  font-size: 7px;
  font-weight: 750;
}

.projection-team-radial-donut {
  position: relative;
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(from 0deg,#0a9369 0 var(--conversion-angle),#e1b249 var(--conversion-angle) 360deg);
  box-shadow:
    inset 4px 5px 8px rgba(255,255,255,.30),
    inset -5px -6px 9px rgba(11,72,49,.15),
    0 8px 14px rgba(5,65,43,.16),
    0 0 0 5px rgba(255,255,255,.68);
  transform: perspective(420px) rotateX(10deg);
}

.projection-team-radial-donut::before {
  content: "";
  position: absolute;
  inset: 13px;
  border-radius: 50%;
  background: linear-gradient(145deg,#fff,#edf4ef);
  box-shadow: inset 2px 3px 5px #fff,inset -2px -3px 5px rgba(16,79,54,.10),0 2px 5px rgba(4,57,39,.16);
}

.projection-team-radial-donut::after {
  content: "";
  position: absolute;
  inset: 3px 9px auto;
  height: 40%;
  border-radius: 50%;
  background: linear-gradient(rgba(255,255,255,.42),transparent);
}

.projection-team-radial-donut strong {
  position: relative;
  z-index: 2;
  color: #193126;
  font-size: 7px;
  letter-spacing: -.03em;
}

@media(max-width:1320px) {
  body[data-view="proyeccion"] .projection-team-advisors {
    grid-template-columns: repeat(3,minmax(294px,1fr));
  }
}

@media(max-width:980px) {
  body[data-view="proyeccion"] .projection-team-advisors {
    grid-template-columns: repeat(3,294px);
    scroll-snap-type: x proximity;
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-radial { scroll-snap-align: start; }
}

@media(max-width:520px) {
  body[data-view="proyeccion"] .projection-team-advisors {
    display: grid;
    grid-template-columns: 1fr;
    padding: 13px 10px 4px;
    overflow: visible;
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-radial {
    min-width: 0;
    min-height: 590px;
    padding-inline: 12px;
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-radial > header {
    grid-template-columns: 50px minmax(0,1fr);
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-radial > header > b {
    grid-column: 2;
    width: max-content;
  }
  .projection-team-radial-stage { height: 388px; }
  .projection-team-radial-face { width: 276px; }
  .projection-team-radial-satellite.is-best { left: 2px; }
  .projection-team-radial-satellite.is-pending { right: 2px; }
}

/* ─────────────────────────────────────────────────────────────
   Access experience v6 — real application entry, not a mockup
   ───────────────────────────────────────────────────────────── */
body[data-view="login"] {
  overflow: hidden;
  background: #041711;
}

body[data-view="login"] #app {
  min-height: 100vh;
}

body[data-view="login"] .login-page {
  position: relative;
  isolation: isolate;
  display: grid !important;
  grid-template-columns: minmax(0,1.18fr) minmax(390px,.72fr) !important;
  align-items: stretch !important;
  gap: clamp(20px,2vw,32px) !important;
  width: 100%;
  height: 100vh;
  min-height: 720px;
  padding: clamp(22px,2.3vw,36px) !important;
  overflow: hidden;
  background:
    radial-gradient(circle at 11% 8%, rgba(175,232,82,.22), transparent 26rem),
    radial-gradient(circle at 83% 88%, rgba(32,193,167,.16), transparent 30rem),
    linear-gradient(135deg,#06281d 0%,#031710 54%,#071d17 100%);
}

body[data-view="login"] .login-page::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .42;
  background:
    linear-gradient(90deg,rgba(176,234,107,.07) 1px,transparent 1px),
    linear-gradient(rgba(176,234,107,.055) 1px,transparent 1px);
  background-size: 74px 74px;
  mask-image: radial-gradient(circle at 35% 45%,#000,transparent 73%);
}

body[data-view="login"] .login-page::after {
  content: "";
  position: absolute;
  right: -160px;
  bottom: -230px;
  z-index: -1;
  width: 560px;
  height: 560px;
  pointer-events: none;
  border: 1px solid rgba(154,231,101,.17);
  border-radius: 50%;
  box-shadow: 0 0 0 80px rgba(107,220,114,.025),0 0 0 160px rgba(42,196,172,.018);
}

body[data-view="login"] .login-hero-panel {
  position: relative;
  isolation: isolate;
  display: flex;
  min-width: 0;
  min-height: 0 !important;
  height: 100%;
  overflow: hidden;
  flex-direction: column;
  justify-content: space-between;
  padding: clamp(34px,4vw,62px) !important;
  border: 1px solid rgba(185,239,153,.18);
  border-radius: clamp(28px,2.5vw,40px);
  background:
    linear-gradient(145deg,rgba(9,66,46,.54),rgba(2,25,18,.90)),
    radial-gradient(circle at 75% 15%,rgba(171,227,84,.23),transparent 20rem),
    url("../../photo-1583470790878-4f4f3811a01f.avif") center/cover no-repeat;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.17),
    inset 0 -100px 120px rgba(1,19,13,.27),
    0 28px 75px rgba(0,20,13,.36);
}

body[data-view="login"] .login-hero-panel::before {
  width: 430px;
  height: 430px;
  right: -115px;
  top: -150px;
  z-index: -1;
  border-color: rgba(210,255,177,.30);
  box-shadow:
    0 0 0 58px rgba(183,255,154,.035),
    0 0 0 116px rgba(183,255,154,.022),
    0 0 90px rgba(99,189,49,.20);
}

body[data-view="login"] .login-hero-panel::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
  background:
    linear-gradient(118deg,rgba(255,255,255,.09),transparent 22%),
    radial-gradient(circle at 52% 104%,rgba(37,199,183,.20),transparent 35%);
}

body[data-view="login"] .login-hero-brand {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
}

body[data-view="login"] .login-hero-logo {
  width: clamp(170px,18vw,260px);
  max-height: 105px;
  filter: brightness(0) invert(1) drop-shadow(0 12px 30px rgba(0,0,0,.22));
}

body[data-view="login"] .login-hero-brand > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 13px;
  border: 1px solid rgba(199,248,167,.18);
  border-radius: 999px;
  background: rgba(4,36,25,.38);
  color: rgba(239,253,242,.78);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
  backdrop-filter: blur(14px);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body[data-view="login"] .login-hero-brand > span i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #b7eb5d;
  box-shadow: 0 0 0 5px rgba(183,235,93,.12),0 0 15px #b7eb5d;
}

body[data-view="login"] .login-hero-copy {
  max-width: 760px;
  padding: 0 0 clamp(14px,3vh,34px);
}

body[data-view="login"] .login-hero-copy > span {
  margin-bottom: 15px;
  color: #b8eb62;
  font-size: 11px;
  letter-spacing: .19em;
}

body[data-view="login"] .login-hero-copy h1 {
  margin: 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(46px,5vw,76px);
  font-weight: 700;
  line-height: .91;
  letter-spacing: -.065em;
  text-shadow: 0 18px 46px rgba(0,0,0,.28);
}

body[data-view="login"] .login-hero-copy h1 em {
  position: relative;
  display: inline-block;
  color: #b8eb62;
  font-style: normal;
}

body[data-view="login"] .login-hero-copy h1 em::after {
  content: "";
  position: absolute;
  left: 3px;
  right: -2px;
  bottom: -8px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg,#b8eb62,#22c5ad,transparent);
  box-shadow: 0 0 18px rgba(184,235,98,.45);
}

body[data-view="login"] .login-hero-copy p {
  max-width: 650px;
  margin: 28px 0 0;
  color: rgba(233,249,239,.73);
  font-size: clamp(13px,1.05vw,16px);
  font-weight: 600;
  line-height: 1.7;
}

body[data-view="login"] .login-capability-strip {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 11px;
}

body[data-view="login"] .login-capability-strip article {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: 11px;
  align-items: center;
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(205,249,177,.15);
  border-radius: 17px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.105),rgba(255,255,255,.035)),
    rgba(2,33,22,.30);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12),0 14px 30px rgba(1,20,13,.13);
  backdrop-filter: blur(18px);
  transition: transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}

body[data-view="login"] .login-capability-strip article:hover {
  transform: translateY(-5px);
  border-color: rgba(192,242,127,.32);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16),0 18px 34px rgba(1,20,13,.23),0 0 24px rgba(106,206,93,.10);
}

body[data-view="login"] .login-capability-strip article > i {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid rgba(205,249,177,.22);
  border-radius: 14px;
  background: linear-gradient(145deg,rgba(184,235,98,.18),rgba(37,199,183,.10));
  color: #c7f27d;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16),0 8px 18px rgba(0,18,12,.18);
  font-style: normal;
  font-size: 18px;
}

body[data-view="login"] .login-capability-strip strong,
body[data-view="login"] .login-capability-strip span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="login"] .login-capability-strip strong {
  color: #f6fff8;
  font-size: 11px;
}

body[data-view="login"] .login-capability-strip span {
  margin-top: 4px;
  color: rgba(231,247,236,.55);
  font-size: 9px;
}

body[data-view="login"] .login-access-panel {
  position: relative;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 18px;
  min-height: 0;
  padding: 0 !important;
  background: transparent;
}

body[data-view="login"] .login-card {
  position: relative;
  width: min(450px,100%);
  overflow: hidden;
  padding: clamp(30px,3.1vw,46px);
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 32px;
  background:
    radial-gradient(circle at 100% 0%,rgba(182,239,90,.18),transparent 18rem),
    linear-gradient(145deg,rgba(255,255,255,.97),rgba(232,243,236,.91));
  box-shadow:
    inset 0 1px 0 #fff,
    0 36px 100px rgba(0,20,13,.38),
    0 0 0 1px rgba(67,128,93,.07);
  backdrop-filter: blur(26px);
}

body[data-view="login"] .login-card::before {
  content: "";
  position: absolute;
  left: -18%;
  top: -70px;
  width: 74%;
  height: 150px;
  transform: rotate(-11deg);
  pointer-events: none;
  background: linear-gradient(115deg,transparent,rgba(255,255,255,.68),transparent);
  filter: blur(2px);
  opacity: .65;
}

body[data-view="login"] .login-card-symbol {
  position: relative;
  display: grid;
  width: 66px;
  height: 66px;
  margin-bottom: 25px;
  place-items: center;
  border: 1px solid rgba(55,139,91,.16);
  border-radius: 22px;
  background: linear-gradient(145deg,#0b8b61,#075239);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.28),0 15px 32px rgba(6,103,70,.25),0 0 0 9px rgba(61,168,103,.06);
  color: #d8ff8f;
  font-size: 23px;
}

body[data-view="login"] .login-card-symbol span {
  position: absolute;
  right: -4px;
  bottom: -4px;
  width: 16px;
  height: 16px;
  border: 4px solid #f4faf6;
  border-radius: 50%;
  background: #b7eb5d;
  box-shadow: 0 0 14px rgba(119,202,69,.55);
}

body[data-view="login"] .login-card-kicker {
  margin-bottom: 11px;
  color: #14865e;
  font-size: 10px;
  letter-spacing: .16em;
}

body[data-view="login"] .login-card h2 {
  margin: 0;
  color: #10261d;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(34px,3vw,43px);
  letter-spacing: -.055em;
}

body[data-view="login"] .login-card-copy {
  margin: 12px 0 28px;
  color: #688078;
  font-size: 13px;
  font-weight: 600;
}

body[data-view="login"] .login-card .form-group {
  margin: 17px 0;
}

body[data-view="login"] .login-card .form-group label {
  display: block;
  margin-bottom: 8px;
  color: #47655a;
  font-size: 9px;
  letter-spacing: .14em;
}

body[data-view="login"] .login-card .form-control {
  min-height: 52px;
  border: 1px solid rgba(45,104,78,.13);
  border-radius: 15px;
  background: rgba(255,255,255,.77);
  color: #10261d;
  box-shadow: inset 0 1px 3px rgba(7,51,33,.05),0 5px 15px rgba(10,66,43,.035);
  transition: border-color .25s ease,box-shadow .25s ease,background .25s ease;
}

body[data-view="login"] .login-card .form-control:focus {
  outline: 0;
  border-color: rgba(25,150,99,.48);
  background: #fff;
  box-shadow: 0 0 0 4px rgba(25,150,99,.10),0 10px 24px rgba(10,87,56,.08);
}

body[data-view="login"] .password-field {
  grid-template-columns: minmax(0,1fr) 88px;
}

body[data-view="login"] .password-field .btn {
  min-height: 52px;
  border-color: rgba(45,104,78,.13);
  border-radius: 15px;
  background: rgba(227,239,231,.80);
  color: #286149;
  font-size: 10px;
  font-weight: 800;
}

body[data-view="login"] .login-remember {
  margin: 15px 0 22px;
  color: #61766e;
  font-size: 9px;
  letter-spacing: .09em;
}

body[data-view="login"] .login-remember input {
  accent-color: #118259;
}

body[data-view="login"] .login-card .btn-primary {
  display: flex;
  min-height: 56px;
  align-items: center;
  justify-content: space-between;
  padding: 0 20px;
  border: 1px solid rgba(8,96,64,.35);
  border-radius: 17px;
  background:
    radial-gradient(circle at 15% 0%,rgba(195,240,100,.27),transparent 11rem),
    linear-gradient(105deg,#07583d,#0d8b60 64%,#18a474);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25),0 17px 30px rgba(5,108,72,.23);
}

body[data-view="login"] .login-card .btn-primary:hover {
  transform: translateY(-2px);
  background:
    radial-gradient(circle at 15% 0%,rgba(217,255,129,.32),transparent 11rem),
    linear-gradient(105deg,#064f37,#0b9565 64%,#18af7a);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.28),0 21px 35px rgba(5,108,72,.28),0 0 24px rgba(105,202,92,.12);
}

body[data-view="login"] .login-card .btn-primary span {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .025em;
}

body[data-view="login"] .login-card .btn-primary i {
  display: grid;
  width: 29px;
  height: 29px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  background: rgba(255,255,255,.10);
  font-style: normal;
  font-size: 17px;
}

body[data-view="login"] .login-secure-note {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 20px;
  padding-top: 17px;
  border-top: 1px solid rgba(38,92,68,.10);
  color: #7d9189;
  font-size: 9px;
}

body[data-view="login"] .login-secure-note i {
  color: #58a478;
  font-style: normal;
  font-size: 8px;
}

body[data-view="login"] .login-secure-note strong {
  color: #48685b;
}

body[data-view="login"] .login-credit {
  display: flex;
  gap: 10px;
  margin: 0;
  color: rgba(222,245,231,.58);
  font-size: 9px;
  letter-spacing: .09em;
}

body[data-view="login"] .login-credit span {
  color: #b8eb62;
}

@media(max-width:1180px) {
  body[data-view="login"] .login-page {
    grid-template-columns: minmax(0,1fr) minmax(370px,.72fr) !important;
    padding: 22px !important;
  }
  body[data-view="login"] .login-hero-panel { padding: 38px !important; }
  body[data-view="login"] .login-capability-strip { grid-template-columns: 1fr; }
  body[data-view="login"] .login-capability-strip article { padding: 10px 12px; }
  body[data-view="login"] .login-capability-strip article:nth-child(3) { display: none; }
  body[data-view="login"] .login-hero-copy h1 { font-size: clamp(44px,5.5vw,62px); }
}

@media(max-width:900px) {
  body[data-view="login"] { overflow: auto; }
  body[data-view="login"] .login-page {
    display: block !important;
    height: auto;
    min-height: 100vh;
    overflow: visible;
    padding: 16px !important;
  }
  body[data-view="login"] .login-hero-panel {
    min-height: 520px !important;
    padding: 28px !important;
    border-radius: 28px;
  }
  body[data-view="login"] .login-hero-brand > span { display: none; }
  body[data-view="login"] .login-hero-copy { padding: 70px 0 45px; }
  body[data-view="login"] .login-hero-copy h1 { font-size: clamp(43px,12vw,65px); }
  body[data-view="login"] .login-capability-strip { grid-template-columns: 1fr 1fr; }
  body[data-view="login"] .login-access-panel { min-height: 650px;padding: 50px 8px 24px !important; }
}

@media(max-width:520px) {
  body[data-view="login"] .login-hero-panel { min-height: 560px !important; }
  body[data-view="login"] .login-hero-logo { width: 175px; }
  body[data-view="login"] .login-hero-copy h1 { font-size: 44px; }
  body[data-view="login"] .login-capability-strip { grid-template-columns: 1fr; }
  body[data-view="login"] .login-capability-strip article:nth-child(2) { display: none; }
  body[data-view="login"] .login-card { padding: 29px 22px;border-radius: 25px; }
  body[data-view="login"] .password-field { grid-template-columns: 1fr; }
}

/* Restored full-bleed login — single photographic background */
body[data-view="login"] {
  overflow: hidden;
  background: #03140e;
}

body[data-view="login"] .login-page {
  display: grid !important;
  width: 100%;
  height: 100vh;
  min-height: 680px;
  grid-template-columns: minmax(0,1fr) minmax(390px,500px) !important;
  align-items: center !important;
  gap: clamp(42px,6vw,108px) !important;
  padding: clamp(34px,5vw,74px) !important;
  background:
    linear-gradient(90deg,rgba(2,20,13,.50) 0%,rgba(2,20,13,.58) 46%,rgba(2,18,13,.90) 78%,rgba(1,13,9,.96) 100%),
    linear-gradient(180deg,rgba(1,20,13,.12),rgba(1,17,11,.68)),
    url("../../photo-1583470790878-4f4f3811a01f.avif") center/cover no-repeat !important;
}

body[data-view="login"] .login-page::before {
  opacity: .34;
  background:
    linear-gradient(90deg,rgba(183,235,98,.055) 1px,transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px);
  background-size: 92px 92px;
  mask-image: linear-gradient(90deg,#000,transparent 72%);
}

body[data-view="login"] .login-page::after {
  left: -18vw;
  right: auto;
  bottom: -38vw;
  width: 64vw;
  height: 64vw;
  border-color: rgba(183,235,98,.14);
  box-shadow: 0 0 0 90px rgba(183,235,98,.018),0 0 0 180px rgba(37,199,183,.012);
}

body[data-view="login"] .login-hero-panel {
  min-height: min(760px,calc(100vh - 110px)) !important;
  height: auto;
  padding: 0 !important;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body[data-view="login"] .login-hero-panel::before,
body[data-view="login"] .login-hero-panel::after { display: none; }

body[data-view="login"] .login-hero-brand {
  align-items: flex-start;
}

body[data-view="login"] .login-hero-logo {
  width: clamp(210px,18vw,310px);
  max-height: 120px;
}

body[data-view="login"] .login-hero-copy {
  max-width: 760px;
  padding-bottom: clamp(24px,6vh,72px);
}

body[data-view="login"] .login-capability-strip article {
  border-color: rgba(207,247,177,.16);
  background: rgba(3,35,24,.54);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10),0 14px 34px rgba(0,12,8,.20);
}

body[data-view="login"] .login-access-panel {
  min-height: 0;
  padding: 0 !important;
  background: transparent;
}

body[data-view="login"] .login-card {
  width: min(470px,100%);
  padding: clamp(34px,3.2vw,48px);
  border: 1px solid rgba(209,242,216,.17);
  border-radius: 28px;
  background:
    radial-gradient(circle at 100% 0%,rgba(183,235,98,.10),transparent 19rem),
    linear-gradient(155deg,rgba(10,41,30,.91),rgba(3,23,16,.95));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10),0 34px 90px rgba(0,10,7,.48);
  backdrop-filter: blur(22px) saturate(120%);
}

body[data-view="login"] .login-card::before { opacity: .14; }
body[data-view="login"] .login-card-symbol { display: none; }

/* Unified application chrome — matches the dashboard's forest header */
body:not([data-view="login"]) {
  --shell-forest-black: #0b120f;
  --shell-forest-deep: #061a12;
  --shell-forest-mid: #10261b;
  --shell-lime: #a8db4d;
}

body:not([data-view="login"]) .sidebar {
  border-right-color: rgba(161, 207, 117, .14);
  background:
    radial-gradient(circle at 18% -4%, rgba(104, 158, 66, .23), transparent 17rem),
    radial-gradient(circle at 108% 36%, rgba(67, 115, 73, .11), transparent 18rem),
    linear-gradient(180deg, #11261b 0%, var(--shell-forest-deep) 42%, #02100b 100%);
  box-shadow: inset -1px 0 0 rgba(255,255,255,.035), 16px 0 42px rgba(1,15,10,.11);
}

body:not([data-view="login"]) .sidebar::before {
  border-color: rgba(175, 220, 121, .18);
  box-shadow: 0 0 0 40px rgba(164,255,141,.018), 0 0 64px rgba(104,158,66,.12);
}

body:not([data-view="login"]) .sidebar::after {
  background: linear-gradient(90deg, transparent, rgba(94, 153, 94, .06), transparent);
}

body:not([data-view="login"]) .sidebar-subtitle,
body:not([data-view="login"]) .sidebar-section-label {
  color: rgba(211, 229, 213, .48);
}

body:not([data-view="login"]) .nav a {
  color: rgba(226, 237, 228, .73);
}

body:not([data-view="login"]) .nav-link-icon {
  color: #9fcbaa;
}

body:not([data-view="login"]) .nav a:hover {
  border-color: rgba(179, 218, 133, .15);
  background: linear-gradient(100deg, rgba(112, 151, 81, .12), rgba(255,255,255,.025));
}

body:not([data-view="login"]) .nav a.active {
  border-color: rgba(177, 224, 114, .30);
  background:
    radial-gradient(circle at 96% 8%, rgba(171, 221, 81, .18), transparent 48%),
    linear-gradient(112deg, rgba(30, 111, 70, .94), rgba(24, 67, 47, .90));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 12px 26px rgba(0,0,0,.22), 0 0 20px rgba(135,183,72,.08);
}

body:not([data-view="login"]) .nav a.active::before {
  background: var(--shell-lime);
  box-shadow: 0 0 14px rgba(168,219,77,.62);
}

body:not([data-view="login"]) .nav a.active .nav-link-icon {
  color: #c3ee69;
}

body:not([data-view="login"]) .topbar {
  border-bottom-color: rgba(168, 207, 121, .15);
  background:
    radial-gradient(circle at 72% -210%, rgba(111, 164, 66, .24), transparent 28rem),
    linear-gradient(96deg, #10261b 0%, #0b1812 48%, var(--shell-forest-black) 100%);
  box-shadow: 0 10px 30px rgba(1,17,11,.18), inset 0 -1px 0 rgba(255,255,255,.025);
  color: #f5f8f5;
  backdrop-filter: blur(20px) saturate(125%);
}

body:not([data-view="login"]) .topbar h2 {
  color: #f7faf7;
}

body:not([data-view="login"]) .topbar-context p,
body:not([data-view="login"]) .topbar-clock span {
  color: rgba(218, 230, 220, .62);
}

body:not([data-view="login"]) .topbar-clock,
body:not([data-view="login"]) .topbar-clock strong {
  color: #b6e767;
}

body:not([data-view="login"]) .topbar-divider {
  background: rgba(220, 238, 218, .14);
}

body:not([data-view="login"]) .topbar-icon-btn {
  border-color: rgba(190, 222, 180, .18);
  background: linear-gradient(145deg, rgba(72, 105, 69, .34), rgba(21, 40, 30, .58));
  color: #e7f1e8;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11), 0 7px 18px rgba(0,0,0,.14);
}

body:not([data-view="login"]) .topbar-icon-btn:hover {
  border-color: rgba(182, 231, 103, .50);
  background: rgba(117, 159, 82, .22);
  color: #fff;
  box-shadow: 0 0 0 3px rgba(168,219,77,.07), 0 9px 22px rgba(0,0,0,.18);
}

body:not([data-view="login"]) .topbar-profile {
  border-color: rgba(190, 222, 180, .20);
  background: linear-gradient(145deg, rgba(244, 249, 244, .96), rgba(226, 237, 227, .94));
  box-shadow: inset 0 1px 0 #fff, 0 9px 24px rgba(0,0,0,.17);
}

body:not([data-view="login"]) .topbar-profile:hover {
  border-color: rgba(182, 231, 103, .56);
  box-shadow: inset 0 1px 0 #fff, 0 11px 28px rgba(0,0,0,.21), 0 0 0 3px rgba(168,219,77,.07);
}

body:not([data-view="login"]) .topbar-badge {
  background: #6a9d38;
  border-color: #0d1a13;
}
body[data-view="login"] .login-card-kicker { color: #b8eb62; }
body[data-view="login"] .login-card h2 { color: #fff; }
body[data-view="login"] .login-card-copy { color: rgba(229,244,234,.67); }
body[data-view="login"] .login-card .form-group label { color: rgba(199,230,207,.77); }
body[data-view="login"] .login-card .form-control {
  border-color: rgba(205,239,214,.17);
  background: rgba(255,255,255,.94);
}
body[data-view="login"] .password-field .btn {
  border-color: rgba(205,239,214,.17);
  background: rgba(255,255,255,.09);
  color: #e5f4e9;
}
body[data-view="login"] .login-remember { color: rgba(221,239,227,.67); }
body[data-view="login"] .login-secure-note {
  border-top-color: rgba(213,240,220,.12);
  color: rgba(209,231,216,.52);
}
body[data-view="login"] .login-secure-note strong { color: rgba(228,245,233,.75); }

@media(max-width:900px) {
  body[data-view="login"] { overflow: auto; }
  body[data-view="login"] .login-page {
    display: block !important;
    height: auto;
    min-height: 100vh;
    padding: 22px !important;
    background-position: 38% center !important;
  }
  body[data-view="login"] .login-hero-panel {
    min-height: 480px !important;
    padding: 18px !important;
  }
  body[data-view="login"] .login-access-panel {
    min-height: 620px;
    padding: 42px 8px 24px !important;
  }
}

/* Advisor blueprint v5 — the team card becomes a compact commercial cockpit. */
.projection-team-performance {
  position: relative;
  overflow: hidden;
  padding-bottom: 22px;
  border: 1px solid rgba(20,96,68,.11);
  border-radius: 28px;
  background:
    radial-gradient(circle at 97% 0%, rgba(167,216,59,.10), transparent 24rem),
    radial-gradient(circle at 2% 100%, rgba(37,199,183,.055), transparent 21rem),
    linear-gradient(145deg, rgba(255,255,255,.97), rgba(247,251,248,.87));
  box-shadow: 0 22px 56px rgba(4,58,39,.10), inset 0 1px 0 #fff;
}

.projection-team-performance::before {
  content: "";
  position: absolute;
  inset: 0 10% auto;
  height: 2px;
  background: linear-gradient(90deg, transparent, #63bd31 28%, #25c7b7 72%, transparent);
  box-shadow: 0 0 18px rgba(99,189,49,.22);
}

.projection-team-performance > header {
  position: relative;
  z-index: 1;
  align-items: flex-end;
  padding: 22px 22px 17px;
  border-bottom: 1px solid rgba(18,92,65,.09);
  background: linear-gradient(180deg, rgba(255,255,255,.58), transparent);
}

.projection-team-performance > header span {
  color: #38735b;
  letter-spacing: .15em;
}

.projection-team-performance > header h2 {
  margin-top: 5px;
  font-size: 21px;
  letter-spacing: -.04em;
}

.projection-team-performance > header small {
  max-width: 56%;
  color: #697c71;
  font-size: 9px;
  line-height: 1.5;
  text-align: right;
}

.projection-team-advisors {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 18px;
  padding: 18px 22px 2px;
  overflow: visible;
}

.projection-team-advisor-card {
  --tilt-x: 0deg;
  --tilt-y: 0deg;
  --glow-x: 50%;
  --glow-y: 14%;
  position: relative;
  min-height: 442px;
  padding: 20px 19px 17px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 18%,rgba(18,89,64,.10));
  border-top: 1px solid rgba(255,255,255,.96);
  border-radius: 22px;
  background:
    radial-gradient(circle at var(--glow-x) var(--glow-y),color-mix(in srgb,var(--advisor-tone) 11%,transparent),transparent 39%),
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(245,250,247,.86));
  box-shadow: 0 16px 38px rgba(4,58,39,.09),0 2px 6px rgba(4,58,39,.045),inset 0 1px 0 #fff;
  transform: perspective(1100px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));
  transform-style: preserve-3d;
  will-change: transform;
  transition: transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,border-color .28s ease;
}

.projection-team-advisor-card::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg,color-mix(in srgb,var(--advisor-tone) 64%,white),var(--advisor-tone),color-mix(in srgb,var(--advisor-tone) 72%,#087f5b));
  box-shadow: 0 0 18px color-mix(in srgb,var(--advisor-tone) 28%,transparent);
}

.projection-team-advisor-card::after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 150px;
  height: 150px;
  right: -88px;
  top: -90px;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 20%,transparent);
  border-radius: 50%;
  box-shadow: 0 0 0 18px color-mix(in srgb,var(--advisor-tone) 3%,transparent),0 0 0 36px color-mix(in srgb,var(--advisor-tone) 2%,transparent);
}

.projection-team-advisor-card:hover,
.projection-team-advisor-card.is-tilting {
  border-color: color-mix(in srgb,var(--advisor-tone) 34%,rgba(18,89,64,.12));
  box-shadow: 0 30px 66px rgba(4,58,39,.16),0 4px 13px rgba(4,58,39,.08),inset 0 1px 0 #fff,0 0 26px color-mix(in srgb,var(--advisor-tone) 9%,transparent);
}

.projection-team-advisor-card > * {
  position: relative;
  z-index: 1;
  transform: translateZ(10px);
}

.projection-team-advisor-card > header {
  grid-template-columns: 58px minmax(0,1fr) auto;
  gap: 13px;
  min-height: 62px;
}

.projection-team-advisor-avatar {
  width: 58px;
  height: 58px;
  border: 3px solid rgba(255,255,255,.94);
  background: radial-gradient(circle at 34% 25%,color-mix(in srgb,var(--advisor-tone) 17%,white),color-mix(in srgb,var(--advisor-tone) 6%,white));
  color: color-mix(in srgb,var(--advisor-tone) 76%,#071c16);
  box-shadow: 0 9px 20px rgba(4,58,39,.14),0 0 0 1px color-mix(in srgb,var(--advisor-tone) 18%,transparent),0 0 0 6px color-mix(in srgb,var(--advisor-tone) 5%,transparent);
  font-size: 15px;
  font-weight: 900;
}

.projection-team-advisor-card > header > div strong {
  font-family: "Space Grotesk",sans-serif;
  font-size: 16px;
  letter-spacing: -.025em;
}

.projection-team-advisor-card > header > div span {
  margin-top: 5px;
  color: #60736a;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .035em;
}

.projection-team-advisor-card > header > b {
  padding: 7px 11px;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 15%,transparent);
  background: linear-gradient(145deg,color-mix(in srgb,var(--advisor-tone) 15%,white),color-mix(in srgb,var(--advisor-tone) 7%,white));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.86),0 6px 14px color-mix(in srgb,var(--advisor-tone) 10%,transparent);
  font-size: 8px;
  letter-spacing: .015em;
}

.projection-team-advisor-summary {
  gap: 10px;
  margin-top: 18px;
}

.projection-team-advisor-summary > div {
  min-height: 92px;
  padding: 12px 13px;
  border: 1px solid rgba(18,92,65,.055);
  border-radius: 14px;
  background: linear-gradient(145deg,rgba(243,248,245,.96),rgba(235,244,238,.76));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.90),0 7px 17px rgba(4,57,39,.045);
}

.projection-team-advisor-summary > div > span {
  min-height: 26px;
  color: #53665c;
  font-size: 9px;
}

.projection-team-advisor-summary > div > span i {
  width: 25px;
  height: 25px;
  flex-basis: 25px;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 12%,transparent);
  border-radius: 9px;
  box-shadow: inset 0 1px 0 #fff,0 5px 11px color-mix(in srgb,var(--advisor-tone) 10%,transparent);
}

.projection-team-advisor-card .projection-team-advisor-summary > div > strong {
  margin-top: 10px;
  font-family: "Space Grotesk",sans-serif;
  font-size: clamp(24px,1.7vw,31px)!important;
  letter-spacing: -.065em;
  text-shadow: 0 5px 16px rgba(4,55,37,.07);
}

.projection-team-advisor-summary .is-compliance {
  min-height: 62px;
  padding: 11px 13px;
  border-color: color-mix(in srgb,var(--advisor-tone) 10%,transparent);
  background:
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--advisor-tone) 12%,transparent),transparent 11rem),
    linear-gradient(135deg,color-mix(in srgb,var(--advisor-tone) 9%,white),rgba(239,248,243,.90));
}

.projection-team-advisor-summary .is-compliance strong {
  font-family: "Space Grotesk",sans-serif;
  font-size: 30px;
  text-shadow: 0 0 17px color-mix(in srgb,var(--advisor-tone) 13%,transparent);
}

.projection-team-advisor-best {
  min-height: 58px;
  margin-top: 12px;
  padding: 10px 12px;
  border: 1px solid rgba(18,92,65,.055);
  border-radius: 14px;
  background: linear-gradient(145deg,rgba(244,249,245,.94),rgba(237,246,240,.78));
  box-shadow: inset 0 1px 0 #fff,0 7px 17px rgba(4,57,39,.04);
}

.projection-team-advisor-best > i {
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 13%,transparent);
  border-radius: 11px;
  box-shadow: inset 0 1px 0 #fff,0 5px 12px color-mix(in srgb,var(--advisor-tone) 10%,transparent);
}

.projection-team-advisor-best > b,
.projection-team-advisor-gap > strong {
  font-family: "Space Grotesk",sans-serif;
  font-size: 18px;
  letter-spacing: -.045em;
}

.projection-team-advisor-forecast {
  margin-top: 12px;
  padding: 11px 12px 10px;
  border-color: color-mix(in srgb,var(--conversion-tone) 13%,rgba(18,92,65,.08));
  border-radius: 13px;
  background: rgba(255,255,255,.64);
  box-shadow: inset 0 1px 0 #fff,0 6px 16px rgba(4,56,38,.035);
}

.projection-team-advisor-forecast > div:first-child strong,
.projection-team-advisor-conversion > div:first-child strong {
  font-family: "Space Grotesk",sans-serif;
  font-size: 18px;
  text-shadow: 0 0 14px color-mix(in srgb,var(--conversion-tone) 12%,transparent);
}

.projection-team-advisor-track {
  height: 8px;
  margin-top: 8px;
  padding: 1px;
  background: rgba(7,65,45,.09);
  box-shadow: inset 0 2px 4px rgba(5,45,32,.08);
}

.projection-team-advisor-track i {
  background: linear-gradient(90deg,color-mix(in srgb,var(--conversion-tone,var(--advisor-tone)) 72%,white),var(--conversion-tone,var(--advisor-tone)));
  box-shadow: 0 0 13px color-mix(in srgb,var(--conversion-tone,var(--advisor-tone)) 25%,transparent);
}

.projection-team-advisor-conversion {
  margin-top: 11px;
  padding: 0 2px;
}

.projection-team-advisor-gap {
  min-height: 46px;
  margin-top: 11px;
  padding: 11px 2px 0;
  border-color: rgba(18,92,65,.09);
}

.projection-team-advisor-gap > span i {
  border: 1px solid rgba(18,92,65,.07);
  background: linear-gradient(145deg,#f3f7f4,#e9f1ec);
  box-shadow: inset 0 1px 0 #fff;
}

@media(max-width:1320px) {
  .projection-team-advisors { grid-template-columns: repeat(2,minmax(320px,1fr)); }
}

@media(max-width:820px) {
  .projection-team-performance > header { align-items:flex-start;flex-direction:column;gap:7px; }
  .projection-team-performance > header small { max-width:none;text-align:left; }
  .projection-team-advisors { display:grid;grid-template-columns:1fr;overflow:visible; }
  .projection-team-advisor-card { width:auto;min-width:0;min-height:0; }
}

@media(max-width:520px) {
  .projection-team-performance { border-radius:20px; }
  .projection-team-performance > header { padding:18px 16px 14px; }
  .projection-team-advisors { padding:14px 12px 0; }
  .projection-team-advisor-card { padding:17px 14px 14px;border-radius:18px; }
  .projection-team-advisor-card > header { grid-template-columns:50px minmax(0,1fr); }
  .projection-team-advisor-avatar { width:50px;height:50px; }
  .projection-team-advisor-card > header > b { grid-column:2;width:max-content; }
  .projection-team-advisor-summary { grid-template-columns:1fr; }
  .projection-team-advisor-summary .is-compliance { grid-column:1; }
}

.projection-composition-donut::after {
  content: "";
  position: absolute;
  inset: 8px 18px auto;
  z-index: 1;
  height: 42%;
  pointer-events: none;
  border: 0;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(255,255,255,.42), transparent 70%);
  box-shadow: none;
  filter: blur(2px);
  animation: none;
}

/* Dashboard v17 — inline managerial analysis, no duplicated KPI strip or modal */
body[data-view="dashboard"] .executive-analysis-panel {
  margin-top: 20px;
  overflow: hidden;
  scroll-margin-top: 78px;
  border: 1px solid rgba(29,57,39,.10);
  border-radius: 25px;
  background: linear-gradient(145deg,#fff,#f4f6f2);
  box-shadow: 0 15px 34px rgba(14,34,21,.09),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-analysis-panel > header {
  display: flex;
  min-height: 92px;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: 17px 22px;
  background:
    radial-gradient(circle at 82% -120%,rgba(122,177,63,.28),transparent 23rem),
    linear-gradient(105deg,#0e2419,#08140e 72%);
  color: #fff;
}

body[data-view="dashboard"] .executive-analysis-panel > header > div > span,
body[data-view="dashboard"] .executive-analysis-table > header span,
body[data-view="dashboard"] .executive-analysis-formula > span {
  color: #a9d95b;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-analysis-panel > header h2 {
  margin: 3px 0 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 20px;
  letter-spacing: -.035em;
}

body[data-view="dashboard"] .executive-analysis-panel > header p {
  margin: 3px 0 0;
  color: rgba(222,236,225,.62);
  font-size: 8px;
}

.executive-analysis-panel nav {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 5px;
  border: 1px solid rgba(209,235,208,.13);
  border-radius: 999px;
  background: rgba(255,255,255,.055);
}

.executive-analysis-tab {
  min-height: 32px;
  padding: 0 13px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: rgba(229,240,231,.66);
  font: 750 8px/1 Manrope,sans-serif;
  cursor: pointer;
  transition: background .16s ease,color .16s ease,box-shadow .16s ease;
}

.executive-analysis-tab:hover {
  color: #fff;
  background: rgba(255,255,255,.08);
}

.executive-analysis-tab.is-active {
  background: linear-gradient(135deg,#76ad37,#9bcc4f);
  color: #0b1b11;
  box-shadow: 0 7px 17px rgba(0,0,0,.20),inset 0 1px 0 rgba(255,255,255,.35);
}

body[data-view="dashboard"] .executive-analysis-body {
  display: grid;
  grid-template-columns: minmax(270px,31%) minmax(0,1fr);
  gap: 0;
  min-height: 305px;
}

body[data-view="dashboard"] .executive-analysis-formula {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 25px 24px;
  border-right: 1px solid #dfe6de;
  background:
    radial-gradient(circle at 12% 8%,rgba(120,173,62,.10),transparent 15rem),
    linear-gradient(145deg,#f3f7f1,#e9efe7);
}

body[data-view="dashboard"] .executive-analysis-formula > strong {
  display: block;
  margin-top: 9px;
  color: #163a28;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(16px,1.25vw,21px);
  line-height: 1.22;
  letter-spacing: -.035em;
  overflow-wrap: anywhere;
}

body[data-view="dashboard"] .executive-analysis-formula > p {
  margin: 14px 0 0;
  color: #34463a;
  font-size: 9px;
  font-weight: 600;
  line-height: 1.6;
}

body[data-view="dashboard"] .executive-analysis-formula > small {
  display: block;
  margin-top: 18px;
  padding: 11px 12px;
  border: 1px solid rgba(63,112,70,.11);
  border-radius: 12px;
  background: rgba(255,255,255,.65);
  color: #657169;
  font-size: 7px;
  line-height: 1.45;
}

body[data-view="dashboard"] .executive-analysis-formula > small b {
  color: #335b35;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-analysis-table {
  min-width: 0;
  padding: 19px 20px 20px;
  background: rgba(255,255,255,.78);
}

body[data-view="dashboard"] .executive-analysis-table > header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  padding: 0 2px 12px;
  border-bottom: 1px solid #e0e6df;
}

body[data-view="dashboard"] .executive-analysis-table > header h3 {
  margin: 3px 0 0;
  color: #142119;
  font-size: 14px;
  letter-spacing: -.02em;
}

body[data-view="dashboard"] .executive-analysis-table > header p {
  max-width: 310px;
  margin: 0;
  color: #6f7972;
  font-size: 7px;
  line-height: 1.4;
  text-align: right;
}

.executive-analysis-table-scroll {
  max-height: 226px;
  overflow: auto;
  scrollbar-gutter: stable;
}

body[data-view="dashboard"] .executive-analysis-table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}

body[data-view="dashboard"] .executive-analysis-table thead {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f8faf7;
}

body[data-view="dashboard"] .executive-analysis-table th {
  padding: 9px 8px;
  border-bottom: 1px solid #dfe5de;
  color: #768178;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .05em;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-analysis-table td {
  padding: 8px;
  border-bottom: 1px solid #edf0ec;
  color: #445047;
  font-size: 8px;
  line-height: 1.25;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-analysis-table td strong {
  display: block;
  max-width: 175px;
  overflow: hidden;
  color: #17251c;
  font-size: 8px;
  font-weight: 850;
  text-overflow: ellipsis;
}

body[data-view="dashboard"] .executive-analysis-table tbody tr:hover {
  background: #eff6eb;
}

.executive-analysis-empty {
  display: grid;
  min-height: 180px;
  place-items: center;
  padding: 20px;
  color: #718078;
  font-size: 9px;
  text-align: center;
}

@media(max-width:1180px) {
  body[data-view="dashboard"] .executive-analysis-panel > header { align-items:flex-start;flex-direction:column; }
  .executive-analysis-panel nav { width:100%;overflow-x:auto;border-radius:14px; }
  .executive-analysis-tab { flex:1;white-space:nowrap; }
  body[data-view="dashboard"] .executive-analysis-body { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-analysis-formula { border-right:0;border-bottom:1px solid #dfe6de; }
}

@media(max-width:680px) {
  body[data-view="dashboard"] .executive-analysis-panel { border-radius:19px; }
  body[data-view="dashboard"] .executive-analysis-panel > header { padding:17px 15px; }
  body[data-view="dashboard"] .executive-analysis-formula,
  body[data-view="dashboard"] .executive-analysis-table { padding:18px 14px; }
  body[data-view="dashboard"] .executive-analysis-table > header { align-items:flex-start;flex-direction:column; }
  body[data-view="dashboard"] .executive-analysis-table > header p { text-align:left; }
}

/* Dashboard v19 — compact complementary indicators and unified review */
body[data-view="dashboard"] .executive-summary-view {
  display: grid;
  gap: 14px;
  width: 100%;
}

body[data-view="dashboard"] .executive-secondary-kpis {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 10px;
  width: 100%;
}

body[data-view="dashboard"] .executive-secondary-kpi {
  --support-tone: #728078;
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 120px;
  align-content: space-between;
  gap: 8px;
  overflow: hidden;
  padding: 13px 14px 11px;
  border: 1px solid color-mix(in srgb,var(--support-tone) 18%,#dce3dc);
  border-top: 2px solid var(--support-tone);
  border-radius: 18px;
  background:
    radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--support-tone) 10%,transparent),transparent 9rem),
    linear-gradient(145deg,#fff,#f5f7f4);
  box-shadow: 0 9px 23px rgba(15,32,21,.075),inset 0 1px 0 #fff;
  cursor: pointer;
  transition: transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}

body[data-view="dashboard"] .executive-secondary-kpi.is-positive { --support-tone:#4d8b31; }
body[data-view="dashboard"] .executive-secondary-kpi.is-negative { --support-tone:#cc3038; }
body[data-view="dashboard"] .executive-secondary-kpi.is-warning { --support-tone:#d89a0d; }
body[data-view="dashboard"] .executive-secondary-kpi.is-information { --support-tone:#2877b8; }

body[data-view="dashboard"] .executive-secondary-kpi:hover {
  transform: translateY(-2px);
  border-color: color-mix(in srgb,var(--support-tone) 42%,#dce3dc);
  box-shadow: 0 13px 28px rgba(15,32,21,.11),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-secondary-kpi:focus-visible {
  outline: 3px solid color-mix(in srgb,var(--support-tone) 28%,transparent);
  outline-offset: 2px;
}

body[data-view="dashboard"] .executive-secondary-kpi > header {
  display: grid;
  grid-template-columns: 32px minmax(0,1fr);
  align-items: center;
  gap: 9px;
}

body[data-view="dashboard"] .executive-secondary-kpi > header i {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 11px;
  background: color-mix(in srgb,var(--support-tone) 11%,white);
  color: var(--support-tone);
  box-shadow: inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-secondary-kpi > header i svg { width: 17px;height:17px; }
body[data-view="dashboard"] .executive-secondary-kpi > header span { min-width:0; }

body[data-view="dashboard"] .executive-secondary-kpi > header small,
body[data-view="dashboard"] .executive-secondary-kpi > header b {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-secondary-kpi > header small {
  color: #7b877f;
  font-size: 6px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-secondary-kpi > header b {
  margin-top: 2px;
  color: #17271d;
  font-size: 9px;
}

body[data-view="dashboard"] .executive-secondary-kpi > strong {
  overflow: hidden;
  color: var(--support-tone);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(17px,1.35vw,23px);
  line-height: 1;
  letter-spacing: -.045em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-secondary-kpi > footer {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-top: 7px;
  border-top: 1px solid rgba(45,64,50,.09);
}

body[data-view="dashboard"] .executive-secondary-kpi > footer span {
  overflow: hidden;
  color: #66736b;
  font-size: 7px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-secondary-kpi > footer em {
  flex: 0 0 auto;
  color: var(--support-tone);
  font-size: 6px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-review-view {
  width: 100%;
  height: 527px;
  min-height: 527px;
  overflow: hidden;
  border: 1px solid rgba(29,57,39,.10);
  border-radius: 25px;
  background: linear-gradient(145deg,#fff,#f4f6f2);
  box-shadow: 0 15px 34px rgba(14,34,21,.09),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-review-view > header {
  display: grid;
  min-height: 88px;
  grid-template-columns: auto minmax(190px,1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 14px 20px;
  background:
    radial-gradient(circle at 82% -120%,rgba(122,177,63,.28),transparent 23rem),
    linear-gradient(105deg,#0e2419,#08140e 72%);
  color: #fff;
}

body[data-view="dashboard"] .executive-review-back {
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid rgba(210,235,209,.17);
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  color: #eef7ee;
  font: 800 8px/1 Manrope,sans-serif;
  cursor: pointer;
  transition: background .16s ease,border-color .16s ease,transform .16s ease;
}

body[data-view="dashboard"] .executive-review-back:hover {
  border-color: rgba(171,218,103,.45);
  background: rgba(143,194,71,.15);
  transform: translateX(-2px);
}

body[data-view="dashboard"] .executive-review-view > header > div > span {
  color: #a9d95b;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-review-view > header h2 {
  margin: 3px 0 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 20px;
  letter-spacing: -.035em;
}

body[data-view="dashboard"] .executive-review-view > header p {
  margin: 3px 0 0;
  color: rgba(222,236,225,.62);
  font-size: 8px;
}

body[data-view="dashboard"] .executive-review-picker {
  display: grid;
  min-width: 220px;
  gap: 5px;
}

body[data-view="dashboard"] .executive-review-picker > span {
  color: #a9d95b;
  font-size: 6px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-review-picker select {
  width: 100%;
  height: 36px;
  padding: 0 34px 0 12px;
  border: 1px solid rgba(209,235,208,.18);
  border-radius: 11px;
  background: #173226;
  color: #fff;
  font: 800 8px/1 Manrope,sans-serif;
  outline: none;
  cursor: pointer;
}

body[data-view="dashboard"] .executive-review-view .executive-analysis-body {
  height: 439px;
  min-height: 0;
}

body[data-view="dashboard"] .executive-review-view .executive-analysis-table-scroll {
  max-height: 357px;
}

@media(max-width:1536px) and (min-width:1181px) {
  body[data-view="dashboard"] .executive-review-view {
    height: 480px;
    min-height: 480px;
  }
  body[data-view="dashboard"] .executive-review-view > header { min-height: 82px; }
  body[data-view="dashboard"] .executive-review-view .executive-analysis-body { height: 398px; }
  body[data-view="dashboard"] .executive-review-view .executive-analysis-formula { padding-block: 19px; }
  body[data-view="dashboard"] .executive-review-view .executive-analysis-table { padding-block: 15px; }
  body[data-view="dashboard"] .executive-review-view .executive-analysis-table-scroll { max-height: 315px; }
  body[data-view="dashboard"] .executive-secondary-kpi { min-height:116px; }
}

@media(max-width:1180px) {
  body[data-view="dashboard"] .executive-secondary-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-review-view {
    height: auto;
    min-height: 0;
  }
  body[data-view="dashboard"] .executive-review-view > header {
    grid-template-columns: auto minmax(0,1fr);
  }
  body[data-view="dashboard"] .executive-review-picker { width:100%;min-width:190px;grid-column:1 / -1; }
  body[data-view="dashboard"] .executive-review-view .executive-analysis-body {
    height: auto;
    grid-template-columns: 1fr;
  }
  body[data-view="dashboard"] .executive-review-view .executive-analysis-formula {
    border-right: 0;
    border-bottom: 1px solid #dfe6de;
  }
}

@media(max-width:680px) {
  body[data-view="dashboard"] .executive-secondary-kpis { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-review-view { border-radius: 19px; }
  body[data-view="dashboard"] .executive-review-view > header {
    grid-template-columns: 1fr;
    padding: 15px;
  }
  body[data-view="dashboard"] .executive-review-back { justify-self: start; }
  body[data-view="dashboard"] .executive-review-picker { width:100%;min-width:0; }
}

/* Dashboard v20 — compact header, taller KPI canvas and full review mode */
@media(min-width:1451px) {
  body[data-view="dashboard"] .content {
    padding: 14px 30px 18px;
  }

  body[data-view="dashboard"] .executive-hero {
    height: clamp(158px,18vh,190px);
    min-height: clamp(158px,18vh,190px);
    max-height: clamp(158px,18vh,190px);
    margin-inline: 28px;
  }

  body[data-view="dashboard"] .executive-hero-copy {
    grid-template-columns: 138px minmax(0,1fr);
  }

  body[data-view="dashboard"] .executive-bag-photo {
    width: 132px;
    height: clamp(154px,17.5vh,184px);
    margin-left: 3px;
  }

  body[data-view="dashboard"] .executive-story-copy {
    padding-block: 12px;
  }

  body[data-view="dashboard"] .executive-story-copy h2 {
    font-size: clamp(25px,1.65vw,29px);
  }

  body[data-view="dashboard"] .executive-story-copy > i {
    margin-block: 9px 8px;
  }

  body[data-view="dashboard"] .executive-story-copy p {
    font-size: 11px;
    line-height: 1.45;
  }

  body[data-view="dashboard"] .executive-hero-actions {
    height: clamp(108px,12.5vh,128px);
    padding-block: 8px;
  }

  body[data-view="dashboard"] .executive-control-icon {
    width: 48px;
    height: 48px;
  }

  body[data-view="dashboard"] .executive-cutoff {
    grid-template-columns: 48px minmax(0,1fr);
    gap: 11px;
  }

  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh {
    min-height: 56px;
  }

  body[data-view="dashboard"] .executive-source-bar {
    width: calc(60% - 28px);
    min-height: 58px;
    margin: -58px 28px 13px auto;
  }

  body[data-view="dashboard"] .executive-content {
    padding-inline: 30px;
  }

  body[data-view="dashboard"] .executive-kpi {
    display: flex;
    min-height: clamp(450px,53vh,570px);
    flex-direction: column;
  }

  body[data-view="dashboard"] .executive-gauge-kpi .executive-kpi-comparison,
  body[data-view="dashboard"] .executive-pipeline .executive-kpi-split,
  body[data-view="dashboard"] .executive-margin > footer {
    margin-top: auto;
  }

  body[data-view="dashboard"] .executive-secondary-kpi {
    min-height: clamp(136px,14vh,160px);
    padding-block: 15px 13px;
  }
}

body[data-view="dashboard"].dashboard-review-active .content {
  padding: 14px 30px 18px;
}

body[data-view="dashboard"].dashboard-review-active .executive-dashboard {
  min-height: calc(100vh - 106px);
}

body[data-view="dashboard"].dashboard-review-active .executive-dashboard .executive-hero,
body[data-view="dashboard"].dashboard-review-active .executive-dashboard .executive-source-bar {
  display: none;
}

body[data-view="dashboard"].dashboard-review-active .executive-content {
  height: 100%;
  padding: 0;
}

body[data-view="dashboard"].dashboard-review-active .executive-review-view {
  height: calc(100vh - 106px);
  min-height: 620px;
  border-radius: 28px;
}

body[data-view="dashboard"].dashboard-review-active .executive-review-view > header {
  min-height: 78px;
  padding: 12px 22px;
}

body[data-view="dashboard"].dashboard-review-active .executive-review-view > header h2 {
  font-size: 24px;
}

body[data-view="dashboard"].dashboard-review-active .executive-review-view .executive-analysis-body {
  height: calc(100% - 78px);
  min-height: 0;
  grid-template-columns: minmax(300px,27%) minmax(0,1fr);
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-formula {
  justify-content: flex-start;
  padding: 34px 30px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-formula > strong {
  font-size: clamp(21px,1.65vw,28px);
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-formula > p {
  font-size: 11px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-formula > small {
  font-size: 9px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-table {
  padding: 25px 28px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-table > header h3 {
  font-size: 18px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-table > header p {
  max-width: 430px;
  font-size: 9px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-table-scroll {
  max-height: calc(100vh - 225px);
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-table th {
  padding: 11px 10px;
  font-size: 8px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-table td,
body[data-view="dashboard"].dashboard-review-active .executive-analysis-table td strong {
  max-width: 260px;
  padding: 10px;
  font-size: 10px;
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-table td strong {
  padding: 0;
}

@media(min-width:1451px) and (max-height:1000px) {
  body[data-view="dashboard"].dashboard-review-active .executive-dashboard,
  body[data-view="dashboard"].dashboard-review-active .executive-review-view {
    height: calc(100vh - 96px);
    min-height: 600px;
  }
  body[data-view="dashboard"].dashboard-review-active .executive-analysis-table-scroll {
    max-height: calc(100vh - 210px);
  }
}

@media(max-width:1180px) {
  body[data-view="dashboard"].dashboard-review-active .executive-review-view {
    height: auto;
    min-height: 0;
  }
  body[data-view="dashboard"].dashboard-review-active .executive-review-view .executive-analysis-body {
    height: auto;
    grid-template-columns: 1fr;
  }
  body[data-view="dashboard"].dashboard-review-active .executive-analysis-table-scroll {
    max-height: 65vh;
  }
}

/* Dashboard v21 — equal cards with proportionally enlarged internal content */
@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-kpi-grid {
    align-items: stretch;
    grid-auto-rows: 1fr;
  }

  body[data-view="dashboard"] .executive-kpi {
    height: 100%;
    padding: 31px 23px 24px;
  }

  body[data-view="dashboard"] .executive-kpi-head {
    grid-template-columns: 56px minmax(0,1fr);
    gap: 15px;
  }

  body[data-view="dashboard"] .executive-kpi-icon {
    width: 56px;
    height: 56px;
  }

  body[data-view="dashboard"] .executive-kpi-icon svg {
    width: 29px;
    height: 29px;
  }

  body[data-view="dashboard"] .executive-kpi-head h2 {
    font-size: clamp(11px,.72vw,14px);
    line-height: 1.18;
  }

  body[data-view="dashboard"] .executive-kpi-head small {
    margin-top: 7px;
    font-size: clamp(10px,.67vw,12px);
    line-height: 1.3;
  }

  body[data-view="dashboard"] .executive-money {
    margin-top: 32px;
    font-size: clamp(24px,1.7vw,30px);
  }

  body[data-view="dashboard"] .executive-gauge {
    width: clamp(168px,12vw,210px);
    height: clamp(94px,6.5vw,116px);
    margin-top: 27px;
  }

  body[data-view="dashboard"] .executive-gauge > i {
    width: clamp(168px,12vw,210px);
    height: clamp(168px,12vw,210px);
    -webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px));
    mask: radial-gradient(farthest-side,transparent calc(100% - 12px),#000 calc(100% - 11px));
  }

  body[data-view="dashboard"] .executive-gauge > div {
    inset: clamp(43px,3.05vw,56px) 0 auto;
  }

  body[data-view="dashboard"] .executive-gauge b {
    font-size: clamp(24px,1.65vw,31px);
  }

  body[data-view="dashboard"] .executive-gauge span {
    margin-top: 8px;
    font-size: clamp(9px,.62vw,11px);
  }

  body[data-view="dashboard"] .executive-status-pill {
    margin-top: 7px;
    padding: 7px 14px;
    font-size: clamp(8px,.52vw,10px);
  }

  body[data-view="dashboard"] .executive-kpi-comparison {
    gap: 6px;
    padding: 20px 9px 2px;
  }

  body[data-view="dashboard"] .executive-kpi-comparison span {
    font-size: 11px;
  }

  body[data-view="dashboard"] .executive-kpi-comparison strong {
    font-size: 14px;
  }

  body[data-view="dashboard"] .executive-pipeline .executive-money {
    margin-top: 32px;
  }

  body[data-view="dashboard"] .executive-pipeline .executive-kpi-score {
    gap: 6px 12px;
    margin-top: 31px;
  }

  body[data-view="dashboard"] .executive-pipeline .executive-kpi-score b {
    font-size: 38px;
  }

  body[data-view="dashboard"] .executive-pipeline .executive-kpi-score span {
    font-size: 11px;
  }

  body[data-view="dashboard"] .executive-pipeline .executive-kpi-score em,
  body[data-view="dashboard"] .executive-margin .executive-kpi-score em {
    margin-top: 10px;
    padding: 6px 11px;
    font-size: 8px;
  }

  body[data-view="dashboard"] .executive-pipeline > p {
    margin-top: 25px;
    padding-top: 20px;
    font-size: 11px;
  }

  body[data-view="dashboard"] .executive-pipeline > p b {
    margin-top: 3px;
    font-size: 14px;
  }

  body[data-view="dashboard"] .executive-kpi-split {
    min-height: 72px;
    padding-block: 15px;
    border-radius: 17px;
  }

  body[data-view="dashboard"] .executive-kpi-split > * {
    font-size: 10px;
  }

  body[data-view="dashboard"] .executive-kpi-split b {
    margin-top: 6px;
    font-size: 21px;
  }

  body[data-view="dashboard"] .executive-margin .executive-ratio-value {
    margin-top: 34px;
    font-size: clamp(26px,1.7vw,32px);
  }

  body[data-view="dashboard"] .executive-margin .executive-kpi-score {
    gap: 7px 11px;
    margin-top: 27px;
  }

  body[data-view="dashboard"] .executive-margin .executive-kpi-score b {
    font-size: 25px;
  }

  body[data-view="dashboard"] .executive-margin .executive-kpi-score span {
    font-size: 11px;
  }

  body[data-view="dashboard"] .executive-margin .executive-kpi-split {
    min-height: 68px;
    margin-top: 30px;
    padding-inline: 15px;
  }

  body[data-view="dashboard"] .executive-margin .executive-kpi-split b {
    font-size: 12px;
  }

  body[data-view="dashboard"] .executive-margin > footer {
    padding: 17px 9px 2px;
  }

  body[data-view="dashboard"] .executive-margin > footer span {
    font-size: 10px;
  }

  body[data-view="dashboard"] .executive-margin > footer b {
    font-size: 15px;
  }

  body[data-view="dashboard"] .executive-kpi-action {
    right: 18px;
    bottom: 10px;
    font-size: 7px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi {
    height: 100%;
    padding: 18px 17px 15px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > header {
    grid-template-columns: 40px minmax(0,1fr);
    gap: 11px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > header i {
    width: 40px;
    height: 40px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > header i svg {
    width: 21px;
    height: 21px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > header small {
    font-size: 7px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > header b {
    margin-top: 3px;
    font-size: 11px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > strong {
    font-size: clamp(23px,1.65vw,30px);
  }

  body[data-view="dashboard"] .executive-secondary-kpi > footer {
    padding-top: 10px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > footer span {
    font-size: 8px;
  }

  body[data-view="dashboard"] .executive-secondary-kpi > footer em {
    font-size: 7px;
  }
}

/* Dashboard v22 — large managerial doughnut and percentage reading */
body[data-view="dashboard"] .executive-analysis-visual {
  display: grid;
  width: 100%;
  justify-items: center;
  gap: 18px;
  margin: 20px 0 25px;
}

body[data-view="dashboard"] .executive-analysis-donut {
  position: relative;
  display: grid;
  width: clamp(205px,14vw,245px);
  aspect-ratio: 1;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(from -90deg,var(--analysis-tone) 0 var(--analysis-progress),#e2e8e2 var(--analysis-progress) 100%);
  box-shadow:
    0 20px 38px color-mix(in srgb,var(--analysis-tone) 17%,transparent),
    inset 0 2px 0 rgba(255,255,255,.65),
    inset 0 -8px 18px rgba(22,48,31,.09);
}

body[data-view="dashboard"] .executive-analysis-donut::before {
  content: "";
  position: absolute;
  inset: 22px;
  border: 1px solid color-mix(in srgb,var(--analysis-tone) 13%,#e5ebe5);
  border-radius: 50%;
  background:
    radial-gradient(circle at 42% 31%,rgba(255,255,255,.98),rgba(246,249,245,.96) 54%,rgba(226,235,226,.94));
  box-shadow:
    inset 0 8px 18px rgba(255,255,255,.94),
    inset 0 -10px 18px rgba(31,68,42,.08),
    0 0 0 7px rgba(255,255,255,.58);
}

body[data-view="dashboard"] .executive-analysis-donut::after {
  content: "";
  position: absolute;
  inset: 8px 24px auto;
  height: 40%;
  border-radius: 50%;
  background: radial-gradient(ellipse at center,rgba(255,255,255,.42),transparent 70%);
  pointer-events: none;
}

body[data-view="dashboard"] .executive-analysis-donut > span {
  position: relative;
  z-index: 2;
  display: grid;
  max-width: 72%;
  justify-items: center;
  text-align: center;
}

body[data-view="dashboard"] .executive-analysis-donut strong {
  color: var(--analysis-tone);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(34px,2.6vw,46px);
  line-height: .95;
  letter-spacing: -.055em;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-analysis-donut small {
  margin-top: 10px;
  color: #314239;
  font-size: 9px;
  font-weight: 850;
  line-height: 1.35;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-analysis-visual figcaption {
  display: grid;
  width: min(100%,330px);
  grid-template-columns: repeat(2,minmax(0,1fr));
  overflow: hidden;
  border: 1px solid rgba(51,87,59,.11);
  border-radius: 15px;
  background: rgba(255,255,255,.72);
  box-shadow: inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-analysis-visual figcaption > span {
  display: grid;
  min-width: 0;
  gap: 5px;
  padding: 12px 13px;
}

body[data-view="dashboard"] .executive-analysis-visual figcaption > span + span {
  border-left: 1px dotted #bec9c0;
}

body[data-view="dashboard"] .executive-analysis-visual figcaption small {
  color: #758178;
  font-size: 7px;
  font-weight: 850;
  letter-spacing: .05em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-analysis-visual figcaption b {
  overflow: hidden;
  color: #183423;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-analysis-visual.is-empty .executive-analysis-donut {
  background: conic-gradient(from -90deg,#dfe5e0 0 100%);
  box-shadow: 0 16px 34px rgba(38,54,43,.10),inset 0 2px 0 rgba(255,255,255,.7);
}

body[data-view="dashboard"].dashboard-review-active .executive-analysis-formula > strong {
  margin-top: 0;
}

@media(max-height:820px) and (min-width:1181px) {
  body[data-view="dashboard"] .executive-analysis-visual {
    grid-template-columns: auto minmax(0,1fr);
    align-items: center;
    gap: 14px;
    margin-block: 14px 18px;
  }
  body[data-view="dashboard"] .executive-analysis-donut { width:170px; }
  body[data-view="dashboard"] .executive-analysis-donut::before { inset:18px; }
  body[data-view="dashboard"] .executive-analysis-donut strong { font-size:32px; }
  body[data-view="dashboard"] .executive-analysis-visual figcaption { width:100%;grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-analysis-visual figcaption > span + span { border-left:0;border-top:1px dotted #bec9c0; }
}

@media(max-width:680px) {
  body[data-view="dashboard"] .executive-analysis-donut { width:190px; }
  body[data-view="dashboard"] .executive-analysis-donut strong { font-size:34px; }
}

/* Dashboard v23 — módulo gerencial interactivo para los KPI principales */
body[data-view="dashboard"] .executive-analysis-body.is-primary-module {
  display: block;
  overflow: auto;
  padding: 16px;
  background:
    radial-gradient(circle at 13% 5%,rgba(126,183,77,.11),transparent 28rem),
    linear-gradient(145deg,#eef4ed,#f8f9f6 44%,#edf2ec);
  scrollbar-color: #a9b7ad transparent;
  scrollbar-width: thin;
}

body[data-view="dashboard"] .executive-deep-module {
  display: grid;
  width: 100%;
  gap: 14px;
  color: #14281c;
}

body[data-view="dashboard"] .executive-deep-overview {
  display: grid;
  grid-template-columns: minmax(230px,.82fr) minmax(560px,2.15fr) minmax(240px,.88fr);
  gap: 14px;
  align-items: stretch;
}

body[data-view="dashboard"] .executive-deep-insight,
body[data-view="dashboard"] .executive-deep-orbit,
body[data-view="dashboard"] .executive-deep-selection,
body[data-view="dashboard"] .executive-deep-metric-rail,
body[data-view="dashboard"] .executive-deep-detail {
  border: 1px solid rgba(41,76,50,.12);
  background:
    radial-gradient(circle at 90% 4%,rgba(122,170,76,.08),transparent 15rem),
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(246,248,244,.94));
  box-shadow: 0 16px 35px rgba(16,39,24,.09),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-deep-insight,
body[data-view="dashboard"] .executive-deep-selection {
  min-height: 500px;
  overflow: hidden;
  padding: 24px 22px;
  border-radius: 23px;
}

body[data-view="dashboard"] .executive-deep-insight {
  display: flex;
  flex-direction: column;
}

body[data-view="dashboard"] .executive-deep-eyebrow,
body[data-view="dashboard"] .executive-deep-orbit > header span,
body[data-view="dashboard"] .executive-deep-detail > header span,
body[data-view="dashboard"] .executive-deep-formula > span {
  color: #5f922e;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-deep-insight > h3 {
  margin: 9px 0 0;
  color: #12271a;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(22px,1.55vw,29px);
  line-height: 1.05;
  letter-spacing: -.045em;
}

body[data-view="dashboard"] .executive-deep-overall {
  --deep-status: #87948c;
  display: grid;
  width: 100%;
  justify-items: start;
  gap: 5px;
  margin-top: 27px;
  padding: 20px 18px;
  border: 1px solid color-mix(in srgb,var(--deep-status) 24%,#dce5dc);
  border-radius: 19px;
  background: linear-gradient(135deg,color-mix(in srgb,var(--deep-status) 9%,white),rgba(255,255,255,.83));
  box-shadow: inset 0 1px 0 #fff,0 9px 24px color-mix(in srgb,var(--deep-status) 10%,transparent);
}

body[data-view="dashboard"] .executive-deep-overall.is-excellent,
body[data-view="dashboard"] .executive-deep-overall.is-good { --deep-status:#3f8a36; }
body[data-view="dashboard"] .executive-deep-overall.is-warning { --deep-status:#dda00c; }
body[data-view="dashboard"] .executive-deep-overall.is-risk { --deep-status:#d52f37; }

body[data-view="dashboard"] .executive-deep-overall strong {
  color: var(--deep-status);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(38px,2.75vw,52px);
  line-height: .92;
  letter-spacing: -.065em;
}

body[data-view="dashboard"] .executive-deep-overall span {
  color: #48584e;
  font-size: 10px;
  font-weight: 850;
}

body[data-view="dashboard"] .executive-deep-insight > p {
  margin: 20px 0 0;
  color: #415148;
  font-size: 11px;
  line-height: 1.65;
}

body[data-view="dashboard"] .executive-deep-insight > dl {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin: 20px 0 0;
}

body[data-view="dashboard"] .executive-deep-insight > dl > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(49,83,57,.1);
  border-radius: 13px;
  background: rgba(255,255,255,.67);
}

body[data-view="dashboard"] .executive-deep-insight dt,
body[data-view="dashboard"] .executive-deep-selection dt {
  color: #718078;
  font-size: 7px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-deep-insight dd,
body[data-view="dashboard"] .executive-deep-selection dd {
  margin: 6px 0 0;
  color: #173322;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.15;
}

body[data-view="dashboard"] .executive-deep-formula {
  margin-top: auto;
  padding: 14px 0 0;
  border-top: 1px solid rgba(46,75,53,.11);
}

body[data-view="dashboard"] .executive-deep-formula > strong {
  display: block;
  margin-top: 6px;
  color: #193424;
  font-size: 11px;
  line-height: 1.45;
}

body[data-view="dashboard"] .executive-deep-insight > small {
  display: block;
  margin-top: 13px;
  color: #728079;
  font-size: 7px;
  line-height: 1.5;
}

body[data-view="dashboard"] .executive-deep-insight > small b { color:#477226; }

body[data-view="dashboard"] .executive-deep-orbit {
  min-height: 500px;
  overflow: hidden;
  padding: 20px;
  border-radius: 25px;
  background:
    radial-gradient(circle at 50% 50%,rgba(125,177,76,.12),transparent 17rem),
    radial-gradient(circle at 20% 10%,rgba(255,255,255,.98),transparent 24rem),
    linear-gradient(145deg,#f8faf7,#eef4ed);
}

body[data-view="dashboard"] .executive-deep-orbit > header,
body[data-view="dashboard"] .executive-deep-detail > header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
}

body[data-view="dashboard"] .executive-deep-orbit > header h3,
body[data-view="dashboard"] .executive-deep-detail > header h3 {
  margin: 4px 0 0;
  color: #15291d;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 18px;
  letter-spacing: -.035em;
}

body[data-view="dashboard"] .executive-deep-orbit > header p,
body[data-view="dashboard"] .executive-deep-detail > header p {
  margin: 0;
  color: #77837b;
  font-size: 8px;
}

body[data-view="dashboard"] .executive-deep-stage {
  position: relative;
  min-height: 420px;
  margin-top: 5px;
}

body[data-view="dashboard"] .executive-deep-ring {
  position: absolute;
  z-index: 0;
  top: 50%;
  left: 50%;
  aspect-ratio: 1;
  translate: -50% -50%;
  border: 1px dashed rgba(78,123,65,.19);
  border-radius: 50%;
  pointer-events: none;
}

body[data-view="dashboard"] .executive-deep-ring.ring-one { width:370px; }
body[data-view="dashboard"] .executive-deep-ring.ring-two { width:312px;border-style:solid;border-color:rgba(78,123,65,.1); }

body[data-view="dashboard"] .executive-deep-donut-wrap {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  display: grid;
  width: 270px;
  aspect-ratio: 1;
  place-items: center;
  translate: -50% -50%;
  border-radius: 50%;
  filter: drop-shadow(0 18px 22px rgba(21,46,29,.14));
}

body[data-view="dashboard"] .executive-deep-donut {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  rotate: -90deg;
  overflow: visible;
}

body[data-view="dashboard"] .executive-deep-segment {
  cursor: pointer;
  opacity: .78;
  transition: opacity .18s ease,stroke-width .18s ease,filter .18s ease;
}

body[data-view="dashboard"] .executive-deep-segment:hover,
body[data-view="dashboard"] .executive-deep-segment.is-selected {
  opacity: 1;
  stroke-width: 34;
  filter: drop-shadow(0 2px 3px rgba(14,34,21,.2));
}

body[data-view="dashboard"] .executive-deep-center {
  position: relative;
  z-index: 3;
  display: grid;
  width: 168px;
  aspect-ratio: 1;
  place-items: center;
  align-content: center;
  gap: 6px;
  padding: 16px;
  border: 1px solid rgba(65,105,67,.15);
  border-radius: 50%;
  background: radial-gradient(circle at 42% 30%,#fff,#f2f7f1 68%,#dce8dc);
  box-shadow: inset 0 9px 19px rgba(255,255,255,.9),inset 0 -10px 20px rgba(44,92,52,.1),0 0 0 8px rgba(255,255,255,.72);
  text-align: center;
}

body[data-view="dashboard"] .executive-deep-center span {
  color: #6c786f;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .07em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-deep-center strong {
  color: #153520;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 21px;
  line-height: 1;
  letter-spacing: -.05em;
}

body[data-view="dashboard"] .executive-deep-center b {
  color: var(--deep-overall);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 27px;
  line-height: 1;
}

body[data-view="dashboard"] .executive-deep-node {
  position: absolute;
  z-index: 4;
  display: grid;
  width: 148px;
  min-height: 51px;
  grid-template-columns: 34px minmax(0,1fr);
  align-items: center;
  gap: 8px;
  padding: 7px 9px;
  border: 1px solid color-mix(in srgb,var(--deep-tone) 25%,#dce4dc);
  border-radius: 16px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 8px 18px rgba(22,43,28,.09),inset 0 1px 0 #fff;
  color: #24372a;
  text-align: left;
  cursor: pointer;
  transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body[data-view="dashboard"] .executive-deep-node:hover,
body[data-view="dashboard"] .executive-deep-node.is-selected {
  z-index: 5;
  border-color: var(--deep-tone);
  box-shadow: 0 12px 25px color-mix(in srgb,var(--deep-tone) 18%,transparent),inset 0 1px 0 #fff;
  transform: translateY(-2px);
}

body[data-view="dashboard"] .executive-deep-node > i {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 3px solid color-mix(in srgb,var(--deep-tone) 22%,white);
  border-radius: 50%;
  background: var(--deep-tone);
  box-shadow: 0 5px 11px color-mix(in srgb,var(--deep-tone) 22%,transparent);
  color: #fff;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
}

body[data-view="dashboard"] .executive-deep-node span,
body[data-view="dashboard"] .executive-deep-node strong,
body[data-view="dashboard"] .executive-deep-node small { display:block;min-width:0; }

body[data-view="dashboard"] .executive-deep-node strong {
  overflow: hidden;
  color: #1d3023;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-deep-node small {
  margin-top: 3px;
  color: var(--deep-tone);
  font-size: 7px;
  font-weight: 800;
}

body[data-view="dashboard"] .executive-deep-node.node-1 { top:30px;left:3%; }
body[data-view="dashboard"] .executive-deep-node.node-2 { top:30px;right:3%; }
body[data-view="dashboard"] .executive-deep-node.node-3 { top:136px;left:0; }
body[data-view="dashboard"] .executive-deep-node.node-4 { top:136px;right:0; }
body[data-view="dashboard"] .executive-deep-node.node-5 { right:0;bottom:88px; }
body[data-view="dashboard"] .executive-deep-node.node-6 { bottom:88px;left:0; }
body[data-view="dashboard"] .executive-deep-node.node-7 { right:9%;bottom:9px; }
body[data-view="dashboard"] .executive-deep-node.node-8 { bottom:9px;left:9%; }

body[data-view="dashboard"] .executive-deep-selection {
  display: flex;
  flex-direction: column;
  --deep-selected:#87948c;
}

body[data-view="dashboard"] .executive-deep-person {
  display: grid;
  grid-template-columns: 60px minmax(0,1fr);
  align-items: center;
  gap: 13px;
  margin-top: 20px;
}

body[data-view="dashboard"] .executive-deep-person > i {
  display: grid;
  width: 60px;
  height: 60px;
  place-items: center;
  border: 5px solid color-mix(in srgb,var(--deep-selected) 17%,white);
  border-radius: 50%;
  background: var(--deep-selected);
  box-shadow: 0 10px 24px color-mix(in srgb,var(--deep-selected) 23%,transparent);
  color: #fff;
  font-size: 16px;
  font-style: normal;
  font-weight: 900;
}

body[data-view="dashboard"] .executive-deep-person h3 {
  margin: 0;
  overflow: hidden;
  color: #13281b;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 17px;
  line-height: 1.1;
  text-overflow: ellipsis;
}

body[data-view="dashboard"] .executive-deep-person p {
  margin: 6px 0 0;
  color: #728078;
  font-size: 8px;
  line-height: 1.4;
}

body[data-view="dashboard"] .executive-deep-share {
  display: grid;
  gap: 5px;
  margin-top: 24px;
  padding: 18px;
  border: 1px solid color-mix(in srgb,var(--deep-selected) 23%,#dde5dd);
  border-radius: 18px;
  background: linear-gradient(135deg,color-mix(in srgb,var(--deep-selected) 8%,white),rgba(255,255,255,.8));
}

body[data-view="dashboard"] .executive-deep-share span {
  color: #647168;
  font-size: 8px;
  font-weight: 800;
}

body[data-view="dashboard"] .executive-deep-share strong {
  color: var(--deep-selected);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: 37px;
  line-height: .95;
  letter-spacing: -.055em;
}

body[data-view="dashboard"] .executive-deep-selection > dl {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin: 20px 0 0;
}

body[data-view="dashboard"] .executive-deep-selection > dl > div {
  min-width: 0;
  padding: 12px 10px;
  border: 1px solid rgba(46,78,53,.1);
  border-radius: 13px;
  background: rgba(255,255,255,.62);
}

body[data-view="dashboard"] .executive-deep-selection dd {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-deep-selected-status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding: 13px 14px;
  border-radius: 13px;
  background: color-mix(in srgb,var(--deep-selected) 10%,white);
  color: var(--deep-selected);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-deep-selected-status > i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--deep-selected);
  box-shadow: 0 0 0 5px color-mix(in srgb,var(--deep-selected) 13%,transparent);
}

body[data-view="dashboard"] .executive-deep-metric-rail {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  overflow: hidden;
  border-radius: 20px;
}

body[data-view="dashboard"] .executive-deep-metric-rail > article {
  display: grid;
  min-width: 0;
  grid-template-columns: 39px minmax(0,1fr) auto;
  align-items: center;
  gap: 11px;
  min-height: 85px;
  padding: 13px 17px;
}

body[data-view="dashboard"] .executive-deep-metric-rail > article + article { border-left:1px dotted #bdc9bf; }

body[data-view="dashboard"] .executive-deep-metric-rail > article > i {
  display: grid;
  width: 39px;
  height: 39px;
  place-items: center;
  border-radius: 13px;
  background: #eaf3e6;
  color: #4f8b32;
}

body[data-view="dashboard"] .executive-deep-metric-rail > article.is-risk > i { background:#fde9e9;color:#d23038; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-warning > i { background:#fff3d9;color:#d69205; }
body[data-view="dashboard"] .executive-deep-metric-rail > article > i svg { width:20px;height:20px; }
body[data-view="dashboard"] .executive-deep-metric-rail > article > span { min-width:0; }

body[data-view="dashboard"] .executive-deep-metric-rail small,
body[data-view="dashboard"] .executive-deep-metric-rail b { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
body[data-view="dashboard"] .executive-deep-metric-rail small { color:#7a877e;font-size:6px;font-weight:900;letter-spacing:.08em;text-transform:uppercase; }
body[data-view="dashboard"] .executive-deep-metric-rail b { margin-top:4px;color:#35463b;font-size:8px; }
body[data-view="dashboard"] .executive-deep-metric-rail > article > strong { color:#173522;font-family:"Space Grotesk",Manrope,sans-serif;font-size:16px;letter-spacing:-.035em;white-space:nowrap; }

body[data-view="dashboard"] .executive-deep-detail {
  overflow: hidden;
  padding: 20px;
  border-radius: 22px;
}

body[data-view="dashboard"] .executive-deep-detail > header p { margin-top:5px; }

body[data-view="dashboard"] .executive-deep-tools {
  display: flex;
  align-items: center;
  gap: 8px;
}

body[data-view="dashboard"] .executive-deep-tools label {
  display: grid;
  width: min(300px,24vw);
  height: 38px;
  grid-template-columns: 18px minmax(0,1fr);
  align-items: center;
  gap: 7px;
  padding: 0 12px;
  border: 1px solid #d6dfd6;
  border-radius: 12px;
  background: #fff;
  color: #6d7b72;
}

body[data-view="dashboard"] .executive-deep-tools label svg { width:16px;height:16px; }
body[data-view="dashboard"] .executive-deep-tools input { min-width:0;border:0;background:transparent;color:#1e3526;font:700 9px/1 Manrope,sans-serif;outline:none; }
body[data-view="dashboard"] .executive-deep-tools input::placeholder { color:#98a29b; }

body[data-view="dashboard"] .executive-deep-tools button {
  height: 38px;
  padding: 0 14px;
  border: 1px solid #3e7130;
  border-radius: 12px;
  background: linear-gradient(135deg,#4f8d34,#2f6829);
  box-shadow: 0 7px 15px rgba(57,110,40,.16),inset 0 1px 0 rgba(255,255,255,.28);
  color: #fff;
  font: 850 8px/1 Manrope,sans-serif;
  cursor: pointer;
}

body[data-view="dashboard"] .executive-deep-table-scroll {
  max-height: 320px;
  overflow: auto;
  margin-top: 16px;
  border: 1px solid #dfe6df;
  border-radius: 14px;
  background: rgba(255,255,255,.78);
}

body[data-view="dashboard"] .executive-deep-detail table { width:100%;border-collapse:collapse; }

body[data-view="dashboard"] .executive-deep-detail thead {
  position: sticky;
  z-index: 2;
  top: 0;
  background: linear-gradient(180deg,#e9f2e7,#e3eee1);
}

body[data-view="dashboard"] .executive-deep-detail th {
  padding: 11px 12px;
  color: #68766d;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .05em;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-deep-detail td {
  padding: 10px 12px;
  border-top: 1px solid #e7ece7;
  color: #536158;
  font-size: 8px;
  line-height: 1.3;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-deep-detail tbody tr { cursor:pointer;transition:background .14s ease,box-shadow .14s ease; }
body[data-view="dashboard"] .executive-deep-detail tbody tr:hover,
body[data-view="dashboard"] .executive-deep-detail tbody tr.is-selected { background:#eef6eb;box-shadow:inset 3px 0 #69a33d; }
body[data-view="dashboard"] .executive-deep-detail td strong { display:block;max-width:220px;overflow:hidden;color:#1d3023;font-size:9px;text-overflow:ellipsis; }
body[data-view="dashboard"] .executive-deep-detail td > span { display:block;max-width:300px;overflow:hidden;text-overflow:ellipsis; }
body[data-view="dashboard"] .executive-deep-detail td > b { color:#233c2a;font-size:9px; }

body[data-view="dashboard"] .executive-deep-detail td > em {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 8px;
  border-radius: 999px;
  background: #f1f3f1;
  color: #59675e;
  font-size: 7px;
  font-style: normal;
  font-weight: 850;
}

body[data-view="dashboard"] .executive-deep-detail td > em > i { width:7px;height:7px;border-radius:50%;background:var(--deep-row-tone); }
body[data-view="dashboard"] .executive-deep-empty { min-height:120px;place-items:center;color:#738077;font-size:9px;text-align:center; }
body[data-view="dashboard"] .executive-deep-empty:not(.hidden) { display:grid; }

body[data-view="dashboard"].dashboard-review-active .executive-analysis-body.is-primary-module {
  height: calc(100% - 78px);
  grid-template-columns: none;
}

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-deep-overview { grid-template-columns:minmax(225px,.8fr) minmax(540px,2fr); }
  body[data-view="dashboard"] .executive-deep-selection { min-height:0;grid-column:1 / -1; }
  body[data-view="dashboard"] .executive-deep-selection > dl { grid-template-columns:repeat(4,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-deep-selected-status { margin-top:18px; }
}

@media(max-width:1050px) {
  body[data-view="dashboard"] .executive-deep-overview { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-deep-selection { grid-column:auto; }
  body[data-view="dashboard"] .executive-deep-insight,
  body[data-view="dashboard"] .executive-deep-orbit,
  body[data-view="dashboard"] .executive-deep-selection { min-height:0; }
  body[data-view="dashboard"] .executive-deep-stage { min-height:440px; }
  body[data-view="dashboard"] .executive-deep-metric-rail { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-deep-metric-rail > article:nth-child(3) { border-left:0;border-top:1px dotted #bdc9bf; }
  body[data-view="dashboard"] .executive-deep-metric-rail > article:nth-child(4) { border-top:1px dotted #bdc9bf; }
}

@media(max-width:680px) {
  body[data-view="dashboard"] .executive-analysis-body.is-primary-module { padding:9px; }
  body[data-view="dashboard"] .executive-deep-insight,
  body[data-view="dashboard"] .executive-deep-orbit,
  body[data-view="dashboard"] .executive-deep-selection,
  body[data-view="dashboard"] .executive-deep-detail { padding:16px;border-radius:18px; }
  body[data-view="dashboard"] .executive-deep-stage { min-height:630px; }
  body[data-view="dashboard"] .executive-deep-donut-wrap { top:48%;width:225px; }
  body[data-view="dashboard"] .executive-deep-center { width:138px; }
  body[data-view="dashboard"] .executive-deep-ring.ring-one { width:275px; }
  body[data-view="dashboard"] .executive-deep-ring.ring-two { width:245px; }
  body[data-view="dashboard"] .executive-deep-node { width:142px; }
  body[data-view="dashboard"] .executive-deep-node.node-1 { top:5px;left:0; }
  body[data-view="dashboard"] .executive-deep-node.node-2 { top:5px;right:0; }
  body[data-view="dashboard"] .executive-deep-node.node-3 { top:78px;left:0; }
  body[data-view="dashboard"] .executive-deep-node.node-4 { top:78px;right:0; }
  body[data-view="dashboard"] .executive-deep-node.node-5 { right:0;bottom:78px; }
  body[data-view="dashboard"] .executive-deep-node.node-6 { bottom:78px;left:0; }
  body[data-view="dashboard"] .executive-deep-node.node-7 { right:0;bottom:5px; }
  body[data-view="dashboard"] .executive-deep-node.node-8 { bottom:5px;left:0; }
  body[data-view="dashboard"] .executive-deep-selection > dl,
  body[data-view="dashboard"] .executive-deep-metric-rail { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-deep-metric-rail > article + article { border-left:0;border-top:1px dotted #bdc9bf; }
  body[data-view="dashboard"] .executive-deep-detail > header { align-items:flex-start;flex-direction:column; }
  body[data-view="dashboard"] .executive-deep-tools { width:100%;flex-direction:column;align-items:stretch; }
  body[data-view="dashboard"] .executive-deep-tools label { width:100%; }
}

@media(prefers-reduced-motion:reduce) {
  body[data-view="dashboard"] .executive-deep-node,
  body[data-view="dashboard"] .executive-deep-segment,
  body[data-view="dashboard"] .executive-deep-detail tbody tr { transition:none; }
}

/* Dashboard v24 — filtros año/mes/día y encabezado sin franja de fuentes */
body[data-view="dashboard"] .executive-source-bar { display:none !important; }

body[data-view="dashboard"] .executive-hero-actions {
  height: 100% !important;
  grid-template-columns: minmax(250px,1.25fr) minmax(82px,.43fr) minmax(118px,.62fr) minmax(108px,.56fr) minmax(122px,.62fr);
  align-self: stretch;
  padding: 16px 18px 16px 29px;
}

body[data-view="dashboard"] .executive-hero-actions::before { bottom:0; }

body[data-view="dashboard"] .executive-day-filter .form-control:disabled {
  opacity: .48;
  color: rgba(255,255,255,.72);
  cursor: not-allowed;
}

body[data-view="dashboard"] .executive-content { margin-top:14px; }
body[data-view="dashboard"].dashboard-review-active .executive-content { margin-top:0; }

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-hero-actions {
    height: auto !important;
    grid-template-columns: minmax(245px,1.25fr) minmax(90px,.45fr) minmax(125px,.65fr) minmax(112px,.56fr) minmax(125px,.63fr);
  }
}

@media(max-width:900px) {
  body[data-view="dashboard"] .executive-hero-actions { grid-template-columns:1fr 1fr; }
  body[data-view="dashboard"] .executive-cutoff { grid-column:1 / -1; }
}

@media(max-width:520px) {
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh { grid-column:1 / -1; }
}

/* Dashboard v25 — controles orgánicos, calendario real y uso completo del ancho */
body[data-view="dashboard"] .content {
  padding-inline: 12px;
}

body[data-view="dashboard"] .executive-hero {
  width: 100%;
  margin-inline: 0 !important;
}

body[data-view="dashboard"] .executive-hero-actions {
  grid-template-columns: minmax(260px,1.32fr) minmax(110px,.52fr) minmax(140px,.66fr) minmax(178px,.82fr) minmax(154px,.72fr);
  padding-inline: 25px 18px;
}

body[data-view="dashboard"] .executive-cutoff {
  grid-template-columns: 56px minmax(0,1fr);
  gap: 13px;
  padding-right: 19px;
}

body[data-view="dashboard"] .executive-control-icon {
  width: 56px;
  height: 56px;
}

body[data-view="dashboard"] .executive-control-icon svg { width:29px;height:29px; }

body[data-view="dashboard"] .executive-filter {
  min-height: 92px;
  padding: 0 11px;
  border-left-color: rgba(139,188,78,.31);
}

body[data-view="dashboard"] .executive-cutoff span,
body[data-view="dashboard"] .executive-filter > span {
  margin-bottom: 8px;
  font-size: 8px;
  letter-spacing: .095em;
}

body[data-view="dashboard"] .executive-filter > span em {
  margin-left: 4px;
  color: rgba(223,239,219,.48);
  font-size: 6px;
  font-style: normal;
  letter-spacing: .05em;
}

body[data-view="dashboard"] .executive-filter-control {
  display: grid;
  width: 100%;
  height: 47px;
  min-width: 0;
  grid-template-columns: 32px minmax(0,1fr);
  align-items: center;
  gap: 8px;
  padding: 0 9px;
  border: 1px solid rgba(198,225,188,.13);
  border-radius: 14px;
  background:
    radial-gradient(circle at 0 0,rgba(143,195,78,.11),transparent 5rem),
    rgba(255,255,255,.055);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055),0 8px 18px rgba(0,0,0,.11);
  transition: border-color .18s ease,background .18s ease,box-shadow .18s ease;
}

body[data-view="dashboard"] .executive-filter-control:focus-within {
  border-color: rgba(169,220,91,.52);
  background: rgba(255,255,255,.085);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08),0 0 0 3px rgba(140,196,69,.09),0 9px 20px rgba(0,0,0,.14);
}

body[data-view="dashboard"] .executive-filter-control > i {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 1px solid rgba(157,207,91,.18);
  border-radius: 10px;
  background: linear-gradient(145deg,rgba(93,137,55,.55),rgba(34,65,31,.48));
  color: #d9f1b5;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.09);
}

body[data-view="dashboard"] .executive-filter-control > i svg { width:17px;height:17px;stroke-width:1.7; }

body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
  width: 100%;
  min-width: 0;
  min-height: 43px;
  padding: 0 24px 0 0;
  border: 0;
  background-color: transparent;
  color: #fff;
  box-shadow: none;
  font: 800 11px/1 Manrope,sans-serif;
  outline: none;
}

body[data-view="dashboard"] .executive-filter .executive-filter-control select.form-control { cursor:pointer; }

body[data-view="dashboard"] .executive-date-control {
  grid-template-columns: 32px minmax(0,1fr) 24px;
}

body[data-view="dashboard"] .executive-date-control input[type="date"] {
  padding-right: 2px !important;
  color-scheme: dark;
  cursor: pointer;
}

body[data-view="dashboard"] .executive-date-control input[type="date"]::-webkit-calendar-picker-indicator {
  margin: 0;
  opacity: .7;
  cursor: pointer;
}

body[data-view="dashboard"] .executive-date-control input[type="date"]:disabled { cursor:not-allowed;opacity:.46; }

body[data-view="dashboard"] .executive-date-clear {
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(205,227,197,.14);
  border-radius: 8px;
  background: rgba(255,255,255,.07);
  color: #dce9d8;
  font: 700 16px/1 Manrope,sans-serif;
  cursor: pointer;
}

body[data-view="dashboard"] .executive-date-clear:hover { border-color:rgba(180,225,110,.42);background:rgba(152,202,78,.13);color:#c8ef80; }
body[data-view="dashboard"] .executive-date-clear[hidden] { display:none; }

body[data-view="dashboard"] .executive-refresh {
  min-height: 92px;
  justify-content: flex-start;
  gap: 11px;
  padding: 0 6px 0 15px;
  border-left-color: rgba(255,255,255,.13);
  border-radius: 0;
}

body[data-view="dashboard"] .executive-refresh > i {
  display: grid;
  width: 50px;
  height: 50px;
  flex: 0 0 auto;
  place-items: center;
  border: 1px solid rgba(155,210,86,.29);
  border-radius: 16px;
  background:
    radial-gradient(circle at 31% 24%,rgba(171,225,100,.27),transparent 48%),
    linear-gradient(145deg,#4e7932,#263f22);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14),0 9px 20px rgba(0,0,0,.22);
  color: #fff;
  transition: transform .2s ease,background .2s ease,box-shadow .2s ease;
}

body[data-view="dashboard"] .executive-refresh > i svg {
  width: 23px !important;
  height: 23px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-view="dashboard"] .executive-refresh > span {
  display: grid;
  min-width: 0;
  gap: 4px;
  text-align: left;
}

body[data-view="dashboard"] .executive-refresh > span b {
  color: #fff;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .045em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-refresh > span small {
  color: rgba(223,237,220,.52);
  font-size: 6px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: none;
}

body[data-view="dashboard"] .executive-refresh:hover > i {
  transform: translateY(-2px) rotate(8deg);
  background: radial-gradient(circle at 31% 24%,rgba(193,239,126,.34),transparent 48%),linear-gradient(145deg,#639341,#315329);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.17),0 13px 25px rgba(0,0,0,.25),0 0 18px rgba(147,205,77,.11);
}

body[data-view="dashboard"] .executive-refresh:hover > i svg { transform:rotate(28deg); }

body[data-view="dashboard"] .executive-refresh.is-loading > i svg { animation:executive-spin .8s linear infinite; }

@media(max-width:1650px) and (min-width:1451px) {
  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: minmax(235px,1.2fr) minmax(96px,.48fr) minmax(122px,.62fr) minmax(164px,.78fr) minmax(140px,.67fr);
    padding-inline: 20px 12px;
  }
  body[data-view="dashboard"] .executive-filter { padding-inline:8px; }
  body[data-view="dashboard"] .executive-refresh { padding-left:11px; }
  body[data-view="dashboard"] .executive-refresh > span small { display:none; }
}

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: minmax(240px,1.18fr) minmax(105px,.52fr) minmax(132px,.64fr) minmax(174px,.82fr) minmax(148px,.7fr);
  }
}

@media(max-width:900px) {
  body[data-view="dashboard"] .content { padding-inline:8px; }
  body[data-view="dashboard"] .executive-hero-actions { grid-template-columns:1fr 1fr;gap:0; }
  body[data-view="dashboard"] .executive-filter { padding:12px; }
  body[data-view="dashboard"] .executive-refresh { padding:12px; }
}

/* Dashboard v26 — filtro ejecutivo por período, rango y asesor */
@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-hero {
    grid-template-columns: minmax(455px,38%) minmax(0,62%);
  }
}

body[data-view="dashboard"] .executive-hero-actions {
  grid-template-columns: minmax(220px,1.12fr) minmax(132px,.67fr) minmax(145px,.72fr) minmax(145px,.72fr) minmax(185px,.92fr) minmax(130px,.65fr);
  gap: 0;
  padding: 12px 14px 12px 20px;
}

body[data-view="dashboard"] .executive-cutoff {
  grid-template-columns: 50px minmax(0,1fr);
  gap: 11px;
  padding-right: 14px;
}

body[data-view="dashboard"] .executive-control-icon {
  width: 50px;
  height: 50px;
}

body[data-view="dashboard"] .executive-control-icon svg { width:25px;height:25px; }

body[data-view="dashboard"] .executive-filter,
body[data-view="dashboard"] .executive-refresh {
  min-height: 82px;
}

body[data-view="dashboard"] .executive-filter { padding-inline:8px; }

body[data-view="dashboard"] .executive-cutoff span,
body[data-view="dashboard"] .executive-filter > span {
  margin-bottom: 6px;
  color: #9edb58;
  font-size: 7px;
  letter-spacing: .09em;
}

body[data-view="dashboard"] .executive-filter-control,
body[data-view="dashboard"] .executive-period-switch {
  height: 44px;
  border: 1px solid rgba(195,224,184,.14);
  border-radius: 13px;
  background: linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.045));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.055),0 7px 17px rgba(0,0,0,.11);
}

body[data-view="dashboard"] .executive-filter-control {
  grid-template-columns: 30px minmax(0,1fr);
  gap: 7px;
  padding: 0 8px;
}

body[data-view="dashboard"] .executive-filter-control > i {
  width: 30px;
  height: 30px;
  border-radius: 9px;
}

body[data-view="dashboard"] .executive-filter-control > i svg { width:16px;height:16px; }

body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
  min-height: 40px;
  padding-right: 18px;
  font-size: 10px;
}

body[data-view="dashboard"] .executive-date-control { grid-template-columns:30px minmax(0,1fr); }

body[data-view="dashboard"] .executive-date-control input[type="date"] {
  min-width: 0;
  padding-right: 0 !important;
  color: #f4f8f2;
  letter-spacing: -.025em;
}

body[data-view="dashboard"] .executive-date-control input[type="date"]::-webkit-calendar-picker-indicator {
  width: 14px;
  height: 14px;
  padding: 2px;
  border-radius: 5px;
  background-color: rgba(151,205,83,.13);
  filter: invert(1);
  opacity: .72;
}

body[data-view="dashboard"] .executive-advisor-filter .executive-filter-control { grid-template-columns:30px minmax(0,1fr); }
body[data-view="dashboard"] .executive-advisor-filter select option { background:#17201b;color:#f2f6ef; }

body[data-view="dashboard"] .executive-period-switch {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: center;
  gap: 3px;
  padding: 4px;
}

body[data-view="dashboard"] .executive-period-switch button {
  height: 34px;
  padding: 0 8px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: rgba(231,240,228,.62);
  font: 750 10px/1 Manrope,sans-serif;
  cursor: pointer;
  transition: color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}

body[data-view="dashboard"] .executive-period-switch button:hover {
  color: #fff;
  background: rgba(157,211,87,.09);
}

body[data-view="dashboard"] .executive-period-switch button.is-active {
  color: #fff;
  background: linear-gradient(145deg,#43742d,#1d4f35);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14),0 5px 12px rgba(0,0,0,.2),0 0 0 1px rgba(163,218,91,.16);
  transform: translateY(-1px);
}

body[data-view="dashboard"] .executive-refresh {
  gap: 9px;
  min-width: 0;
  padding: 0 5px 0 12px;
}

body[data-view="dashboard"] .executive-refresh > i {
  width: 45px;
  height: 45px;
  border-radius: 14px;
}

body[data-view="dashboard"] .executive-refresh > i svg { width:21px !important;height:21px !important; }
body[data-view="dashboard"] .executive-refresh > span b { font-size:8px; }

@media(min-width:1451px) and (max-width:1700px) {
  body[data-view="dashboard"] .executive-hero { grid-template-columns:minmax(440px,35%) minmax(0,65%); }
  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: minmax(200px,1.05fr) minmax(115px,.6fr) minmax(127px,.67fr) minmax(127px,.67fr) minmax(165px,.86fr) minmax(112px,.59fr);
    padding-inline: 14px 8px;
  }
  body[data-view="dashboard"] .executive-filter { padding-inline:6px; }
  body[data-view="dashboard"] .executive-refresh { padding-left:8px; }
  body[data-view="dashboard"] .executive-refresh > span small { display:none; }
}

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: minmax(230px,1.05fr) minmax(135px,.62fr) minmax(150px,.7fr) minmax(150px,.7fr) minmax(205px,.95fr) minmax(135px,.62fr);
  }
}

@media(max-width:1100px) {
  body[data-view="dashboard"] .executive-hero-actions { grid-template-columns:repeat(3,minmax(0,1fr));padding:14px; }
  body[data-view="dashboard"] .executive-cutoff { grid-column:span 2; }
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh { min-height:78px;padding:9px; }
}

@media(max-width:700px) {
  body[data-view="dashboard"] .executive-hero-actions { grid-template-columns:1fr 1fr; }
  body[data-view="dashboard"] .executive-cutoff,
  body[data-view="dashboard"] .executive-advisor-filter { grid-column:1 / -1; }
}

@media(max-width:520px) {
  body[data-view="dashboard"] .executive-hero-actions { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-cutoff,
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh { grid-column:1; }
}

/* Dashboard v27 — lectura ampliada del análisis financiero */
body[data-view="dashboard"].dashboard-review-active .executive-review-view > header {
  min-height: 88px;
  padding: 14px 24px;
}

body[data-view="dashboard"] .executive-review-back {
  min-height: 42px;
  padding-inline: 17px;
  font-size: 10px;
}

body[data-view="dashboard"] .executive-review-view > header > div > span { font-size:8px; }
body[data-view="dashboard"].dashboard-review-active .executive-review-view > header h2 { font-size:clamp(26px,1.8vw,31px); }
body[data-view="dashboard"] .executive-review-view > header p { margin-top:5px;font-size:10px; }
body[data-view="dashboard"] .executive-review-picker { min-width:245px;gap:6px; }
body[data-view="dashboard"] .executive-review-picker > span { font-size:8px; }
body[data-view="dashboard"] .executive-review-picker select { height:42px;padding-left:14px;font-size:10px; }

body[data-view="dashboard"].dashboard-review-active .executive-review-view .executive-analysis-body,
body[data-view="dashboard"].dashboard-review-active .executive-analysis-body.is-primary-module {
  height: calc(100% - 88px);
}

body[data-view="dashboard"] .executive-analysis-body.is-primary-module { padding:18px; }
body[data-view="dashboard"] .executive-deep-module { gap:16px; }
body[data-view="dashboard"] .executive-deep-overview {
  grid-template-columns:minmax(270px,.88fr) minmax(610px,2.12fr) minmax(275px,.92fr);
  gap:16px;
}

body[data-view="dashboard"] .executive-deep-insight,
body[data-view="dashboard"] .executive-deep-selection { padding:27px 25px; }

body[data-view="dashboard"] .executive-deep-eyebrow,
body[data-view="dashboard"] .executive-deep-orbit > header span,
body[data-view="dashboard"] .executive-deep-detail > header span,
body[data-view="dashboard"] .executive-deep-formula > span { font-size:9px; }

body[data-view="dashboard"] .executive-deep-insight > h3 {
  margin-top:11px;
  font-size:clamp(28px,1.9vw,36px);
  line-height:1.08;
}

body[data-view="dashboard"] .executive-deep-overall {
  gap:7px;
  margin-top:30px;
  padding:24px 21px;
}

body[data-view="dashboard"] .executive-deep-overall strong { font-size:clamp(45px,3vw,60px); }
body[data-view="dashboard"] .executive-deep-overall span { font-size:12px; }
body[data-view="dashboard"] .executive-deep-insight > p { margin-top:23px;font-size:13px;line-height:1.7; }
body[data-view="dashboard"] .executive-deep-insight > dl { gap:10px;margin-top:23px; }
body[data-view="dashboard"] .executive-deep-insight > dl > div { padding:15px 14px; }

body[data-view="dashboard"] .executive-deep-insight dt,
body[data-view="dashboard"] .executive-deep-selection dt { font-size:8.5px; }

body[data-view="dashboard"] .executive-deep-insight dd,
body[data-view="dashboard"] .executive-deep-selection dd { margin-top:7px;font-size:14px; }

body[data-view="dashboard"] .executive-deep-formula { padding-top:17px; }
body[data-view="dashboard"] .executive-deep-formula > strong { margin-top:8px;font-size:13px;line-height:1.55; }
body[data-view="dashboard"] .executive-deep-insight > small { margin-top:15px;font-size:8.5px;line-height:1.6; }

body[data-view="dashboard"] .executive-deep-orbit { padding:23px; }
body[data-view="dashboard"] .executive-deep-orbit > header h3,
body[data-view="dashboard"] .executive-deep-detail > header h3 { margin-top:6px;font-size:22px; }
body[data-view="dashboard"] .executive-deep-orbit > header p,
body[data-view="dashboard"] .executive-deep-detail > header p { font-size:10px; }

body[data-view="dashboard"] .executive-deep-ring.ring-one { width:400px; }
body[data-view="dashboard"] .executive-deep-ring.ring-two { width:338px; }
body[data-view="dashboard"] .executive-deep-donut-wrap { width:292px; }
body[data-view="dashboard"] .executive-deep-center { width:182px;padding:18px;gap:7px; }
body[data-view="dashboard"] .executive-deep-center span { font-size:8px; }
body[data-view="dashboard"] .executive-deep-center strong { font-size:24px; }
body[data-view="dashboard"] .executive-deep-center b { font-size:31px; }

body[data-view="dashboard"] .executive-deep-node {
  width:174px;
  min-height:61px;
  grid-template-columns:40px minmax(0,1fr);
  gap:10px;
  padding:9px 11px;
}

body[data-view="dashboard"] .executive-deep-node > i { width:40px;height:40px;font-size:10px; }
body[data-view="dashboard"] .executive-deep-node strong { font-size:9.5px; }
body[data-view="dashboard"] .executive-deep-node small { margin-top:4px;font-size:8.5px; }
body[data-view="dashboard"] .executive-deep-node.node-1 { left:1%; }
body[data-view="dashboard"] .executive-deep-node.node-2 { right:1%; }
body[data-view="dashboard"] .executive-deep-node.node-3 { left:0; }
body[data-view="dashboard"] .executive-deep-node.node-4 { right:0; }

body[data-view="dashboard"] .executive-deep-person {
  grid-template-columns:68px minmax(0,1fr);
  gap:15px;
  margin-top:23px;
}

body[data-view="dashboard"] .executive-deep-person > i { width:68px;height:68px;font-size:18px; }
body[data-view="dashboard"] .executive-deep-person h3 { font-size:20px; }
body[data-view="dashboard"] .executive-deep-person p { margin-top:7px;font-size:10px; }
body[data-view="dashboard"] .executive-deep-share { gap:7px;margin-top:27px;padding:21px; }
body[data-view="dashboard"] .executive-deep-share span { font-size:10px; }
body[data-view="dashboard"] .executive-deep-share strong { font-size:43px; }
body[data-view="dashboard"] .executive-deep-selection > dl { gap:10px;margin-top:23px; }
body[data-view="dashboard"] .executive-deep-selection > dl > div { padding:15px 12px; }
body[data-view="dashboard"] .executive-deep-selected-status { padding:15px 16px;font-size:10px; }

body[data-view="dashboard"] .executive-deep-metric-rail > article {
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:13px;
  min-height:96px;
  padding:15px 19px;
}

body[data-view="dashboard"] .executive-deep-metric-rail > article > i { width:44px;height:44px; }
body[data-view="dashboard"] .executive-deep-metric-rail > article > i svg { width:23px;height:23px; }
body[data-view="dashboard"] .executive-deep-metric-rail small { font-size:7.5px; }
body[data-view="dashboard"] .executive-deep-metric-rail b { margin-top:5px;font-size:10px; }
body[data-view="dashboard"] .executive-deep-metric-rail > article > strong { font-size:20px; }

body[data-view="dashboard"] .executive-deep-detail { padding:24px; }
body[data-view="dashboard"] .executive-deep-tools label { width:min(340px,26vw);height:43px;grid-template-columns:20px minmax(0,1fr); }
body[data-view="dashboard"] .executive-deep-tools label svg { width:18px;height:18px; }
body[data-view="dashboard"] .executive-deep-tools input { font-size:11px; }
body[data-view="dashboard"] .executive-deep-tools button { height:43px;padding-inline:17px;font-size:10px; }
body[data-view="dashboard"] .executive-deep-table-scroll { max-height:370px;margin-top:19px; }
body[data-view="dashboard"] .executive-deep-detail th { padding:13px 14px;font-size:9px; }
body[data-view="dashboard"] .executive-deep-detail td { padding:12px 14px;font-size:10px; }
body[data-view="dashboard"] .executive-deep-detail td strong { max-width:260px;font-size:11px; }
body[data-view="dashboard"] .executive-deep-detail td > b { font-size:11px; }
body[data-view="dashboard"] .executive-deep-detail td > em { padding:6px 10px;font-size:8.5px; }
body[data-view="dashboard"] .executive-deep-empty { font-size:11px; }

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-deep-overview { grid-template-columns:minmax(255px,.82fr) minmax(560px,2fr); }
  body[data-view="dashboard"] .executive-deep-node { width:164px; }
}

@media(max-width:1050px) {
  body[data-view="dashboard"] .executive-deep-overview { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-deep-node { width:158px; }
}

@media(max-width:680px) {
  body[data-view="dashboard"].dashboard-review-active .executive-review-view > header { min-height:0;padding:16px; }
  body[data-view="dashboard"].dashboard-review-active .executive-review-view .executive-analysis-body,
  body[data-view="dashboard"].dashboard-review-active .executive-analysis-body.is-primary-module { height:auto; }
  body[data-view="dashboard"] .executive-deep-node { width:146px;min-height:57px;grid-template-columns:36px minmax(0,1fr); }
  body[data-view="dashboard"] .executive-deep-node > i { width:36px;height:36px; }
  body[data-view="dashboard"] .executive-deep-metric-rail > article > strong { font-size:18px; }
}

/* Dashboard v28 — semáforo visible y homogéneo en el análisis */
body[data-view="dashboard"] .executive-deep-traffic-legend {
  display: grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin-top:14px;
}

body[data-view="dashboard"] .executive-deep-traffic-legend > span {
  --traffic-tone:#87948c;
  display:grid;
  min-width:0;
  grid-template-columns:8px minmax(0,1fr);
  align-items:center;
  gap:3px 7px;
  padding:8px 9px;
  border:1px solid color-mix(in srgb,var(--traffic-tone) 22%,#e1e6e1);
  border-radius:10px;
  background:color-mix(in srgb,var(--traffic-tone) 7%,white);
  color:#68766d;
  font-size:7.5px;
  font-weight:750;
  line-height:1.2;
}

body[data-view="dashboard"] .executive-deep-traffic-legend > span > i {
  grid-row:1 / span 2;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--traffic-tone);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--traffic-tone) 13%,transparent);
}

body[data-view="dashboard"] .executive-deep-traffic-legend > span > b {
  overflow:hidden;
  color:var(--traffic-tone);
  font-size:8px;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-view="dashboard"] .executive-deep-traffic-legend .is-excellent { --traffic-tone:#07815f; }
body[data-view="dashboard"] .executive-deep-traffic-legend .is-good { --traffic-tone:#4a9138; }
body[data-view="dashboard"] .executive-deep-traffic-legend .is-warning { --traffic-tone:#d99808; }
body[data-view="dashboard"] .executive-deep-traffic-legend .is-risk { --traffic-tone:#d3323a; }

body[data-view="dashboard"] .executive-deep-overall {
  border-left-width:5px;
  border-left-color:var(--deep-status);
}

body[data-view="dashboard"] .executive-deep-node.is-excellent,
body[data-view="dashboard"] .executive-deep-node.is-good,
body[data-view="dashboard"] .executive-deep-node.is-warning,
body[data-view="dashboard"] .executive-deep-node.is-risk {
  background:linear-gradient(135deg,color-mix(in srgb,var(--deep-tone) 8%,white),rgba(255,255,255,.95));
}

body[data-view="dashboard"] .executive-deep-selection.is-excellent,
body[data-view="dashboard"] .executive-deep-selection.is-good,
body[data-view="dashboard"] .executive-deep-selection.is-warning,
body[data-view="dashboard"] .executive-deep-selection.is-risk {
  border-top:4px solid var(--deep-selected);
}

body[data-view="dashboard"] .executive-deep-metric-rail > article.is-excellent > i { background:#e1f3eb;color:#07815f; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-good > i { background:#e8f4e4;color:#4a9138; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-warning > i { background:#fff1d2;color:#d99808; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-risk > i { background:#fde5e7;color:#d3323a; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-excellent > strong { color:#07815f; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-good > strong { color:#4a9138; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-warning > strong { color:#c88400; }
body[data-view="dashboard"] .executive-deep-metric-rail > article.is-risk > strong { color:#c92d35; }

body[data-view="dashboard"] .executive-deep-detail tbody tr.is-excellent { --deep-row-state:#07815f; }
body[data-view="dashboard"] .executive-deep-detail tbody tr.is-good { --deep-row-state:#4a9138; }
body[data-view="dashboard"] .executive-deep-detail tbody tr.is-warning { --deep-row-state:#d99808; }
body[data-view="dashboard"] .executive-deep-detail tbody tr.is-risk { --deep-row-state:#d3323a; }
body[data-view="dashboard"] .executive-deep-detail tbody tr.is-neutral { --deep-row-state:#87948c; }

body[data-view="dashboard"] .executive-deep-detail tbody tr > td:first-child {
  box-shadow:inset 3px 0 color-mix(in srgb,var(--deep-row-state,#87948c) 75%,transparent);
}

body[data-view="dashboard"] .executive-deep-detail td > em.is-excellent { background:#e2f3ec;color:#067556; }
body[data-view="dashboard"] .executive-deep-detail td > em.is-good { background:#e9f4e5;color:#427f34; }
body[data-view="dashboard"] .executive-deep-detail td > em.is-warning { background:#fff1d4;color:#b97800; }
body[data-view="dashboard"] .executive-deep-detail td > em.is-risk { background:#fde6e8;color:#bd2831; }
body[data-view="dashboard"] .executive-deep-detail td > em.is-neutral { background:#eef1ef;color:#6f7b73; }

@media(max-width:680px) {
  body[data-view="dashboard"] .executive-deep-traffic-legend { grid-template-columns:1fr; }
}

/* Dashboard v29 — ficha gerencial del asesor dentro del análisis KPI */
body[data-view="dashboard"] .executive-deep-person {
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  margin-top:14px;
  text-align:center;
}

body[data-view="dashboard"] .executive-deep-profile-photo {
  position:relative;
  display:grid;
  width:104px;
  height:104px;
  flex:0 0 104px;
  place-items:center;
  overflow:hidden;
  border:5px solid #fff;
  border-radius:50%;
  outline:2px solid color-mix(in srgb,var(--deep-selected) 68%,#fff);
  background:linear-gradient(145deg,color-mix(in srgb,var(--deep-selected) 90%,#fff),var(--deep-selected));
  box-shadow:0 13px 30px color-mix(in srgb,var(--deep-selected) 23%,transparent),0 0 0 8px color-mix(in srgb,var(--deep-selected) 7%,transparent);
  color:#fff;
  font-family:"Space Grotesk",Manrope,sans-serif;
  font-size:25px;
  font-style:normal;
  font-weight:900;
}

body[data-view="dashboard"] .executive-deep-profile-photo > span { transition:opacity .18s ease; }

body[data-view="dashboard"] .executive-deep-profile-photo > img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  object-fit:cover;
  object-position:center;
  transition:opacity .18s ease;
}

body[data-view="dashboard"] .executive-deep-profile-photo.has-photo > span { opacity:0; }
body[data-view="dashboard"] .executive-deep-profile-photo.has-photo > img { opacity:1; }

body[data-view="dashboard"] .executive-deep-person > div { min-width:0; }
body[data-view="dashboard"] .executive-deep-person h3 { font-size:22px;line-height:1.05; }
body[data-view="dashboard"] .executive-deep-person p { margin-top:5px;font-size:10px; }

body[data-view="dashboard"] .executive-deep-period {
  display:inline-flex;
  margin-top:9px;
  padding:6px 10px;
  border-radius:999px;
  background:color-mix(in srgb,var(--deep-selected) 10%,#fff);
  color:var(--deep-selected);
  font-size:8px;
  font-weight:900;
  line-height:1;
}

body[data-view="dashboard"] .executive-deep-advisor-facts {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin-top:15px;
}

body[data-view="dashboard"] .executive-deep-advisor-facts > article {
  display:grid;
  min-width:0;
  grid-template-columns:31px minmax(0,1fr);
  align-items:center;
  gap:8px;
  padding:9px;
  border:1px solid rgba(43,78,51,.11);
  border-radius:12px;
  background:rgba(255,255,255,.68);
}

body[data-view="dashboard"] .executive-deep-advisor-facts > article.is-wide { grid-column:1 / -1; }

body[data-view="dashboard"] .executive-deep-advisor-facts > article > i {
  display:grid;
  width:31px;
  height:31px;
  place-items:center;
  border-radius:50%;
  background:color-mix(in srgb,var(--deep-selected) 9%,#edf3ec);
  color:var(--deep-selected);
}

body[data-view="dashboard"] .executive-deep-advisor-facts svg { width:16px;height:16px; }
body[data-view="dashboard"] .executive-deep-advisor-facts article > span { min-width:0;color:#77837b;font-size:7.5px;line-height:1.2; }
body[data-view="dashboard"] .executive-deep-advisor-facts article > span > strong { display:block;margin-top:4px;overflow:hidden;color:#23412c;font-size:9px;line-height:1.25;text-overflow:ellipsis; }

body[data-view="dashboard"] .executive-deep-channel-chips {
  display:flex !important;
  flex-wrap:wrap;
  gap:4px;
}

body[data-view="dashboard"] .executive-deep-channel-chips > b {
  padding:4px 7px;
  border-radius:999px;
  background:color-mix(in srgb,var(--deep-selected) 11%,#f1f5ef);
  color:var(--deep-selected);
  font-size:7px;
  line-height:1;
}

body[data-view="dashboard"] .executive-deep-channel-chips > b.is-empty { color:#738078;background:#f0f3f0; }

body[data-view="dashboard"] .executive-deep-percentages {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:14px;
}

body[data-view="dashboard"] .executive-deep-percentages .executive-deep-share {
  min-width:0;
  gap:6px;
  margin-top:0;
  padding:13px 11px;
  border-radius:14px;
}

body[data-view="dashboard"] .executive-deep-percentages .executive-deep-share span { min-height:23px;font-size:8px;line-height:1.35; }
body[data-view="dashboard"] .executive-deep-percentages .executive-deep-share strong { font-size:30px;letter-spacing:-.06em; }

body[data-view="dashboard"] .executive-deep-selection > dl {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  margin-top:13px;
}

body[data-view="dashboard"] .executive-deep-selection > dl > div { padding:10px 9px; }
body[data-view="dashboard"] .executive-deep-selection > dl > div:last-child { grid-column:1 / -1; }
body[data-view="dashboard"] .executive-deep-selection dd { font-size:12px; }
body[data-view="dashboard"] .executive-deep-selected-status { margin-top:14px;padding:12px 14px; }

@media(max-width:1450px) and (min-width:1051px) {
  body[data-view="dashboard"] .executive-deep-selection { display:grid;grid-template-columns:180px minmax(240px,1fr) minmax(310px,1.25fr);align-items:start;gap:15px; }
  body[data-view="dashboard"] .executive-deep-selection > .executive-deep-eyebrow { grid-column:1 / -1; }
  body[data-view="dashboard"] .executive-deep-selection .executive-deep-person { grid-row:2 / span 3;margin-top:0; }
  body[data-view="dashboard"] .executive-deep-selection .executive-deep-advisor-facts { grid-column:2;margin-top:0; }
  body[data-view="dashboard"] .executive-deep-selection .executive-deep-percentages { grid-column:3;margin-top:0; }
  body[data-view="dashboard"] .executive-deep-selection > dl { grid-column:2 / -1;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:0; }
  body[data-view="dashboard"] .executive-deep-selection > dl > div:last-child { grid-column:auto; }
  body[data-view="dashboard"] .executive-deep-selection .executive-deep-selected-status { grid-column:2 / -1;margin-top:0; }
}

@media(max-width:680px) {
  body[data-view="dashboard"] .executive-deep-profile-photo { width:92px;height:92px;flex-basis:92px; }
  body[data-view="dashboard"] .executive-deep-percentages { grid-template-columns:1fr; }
}

/* Dashboard v30 — navegación del asesor hacia Proyección */
body[data-view="dashboard"] .executive-deep-selection { cursor:pointer; }

body[data-view="dashboard"] .executive-deep-open-advisor {
  display:flex;
  width:100%;
  min-height:42px;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:12px;
  padding:10px 13px;
  border:1px solid color-mix(in srgb,var(--deep-selected) 25%,#dce5dc);
  border-radius:13px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--deep-selected) 12%,#fff),#fff);
  box-shadow:0 8px 18px color-mix(in srgb,var(--deep-selected) 9%,transparent);
  color:var(--deep-selected);
  cursor:pointer;
  font:850 9px/1.2 Manrope,sans-serif;
  text-align:left;
}

body[data-view="dashboard"] .executive-deep-open-advisor > i {
  display:grid;
  width:25px;
  height:25px;
  flex:0 0 25px;
  place-items:center;
  border-radius:50%;
  background:var(--deep-selected);
  color:#fff;
  font-size:13px;
  font-style:normal;
}

body[data-view="dashboard"] .executive-deep-open-advisor:hover,
body[data-view="dashboard"] .executive-deep-open-advisor:focus-visible {
  border-color:var(--deep-selected);
  outline:none;
  transform:translateY(-1px);
}

@media(max-width:1450px) and (min-width:1051px) {
  body[data-view="dashboard"] .executive-deep-selection .executive-deep-open-advisor { grid-column:2 / -1;margin-top:0; }
}

/* Application shell v31 — chrome fijo y una sola superficie desplazable */
@media(min-width:721px) {
  body:not([data-view="login"]) {
    width: 100%;
    height: 100dvh;
    min-height: 0;
    overflow: hidden;
  }

  body:not([data-view="login"]) .layout {
    width: 100%;
    height: 100dvh;
    min-height: 0;
    align-items: stretch;
    overflow: hidden;
  }

  body:not([data-view="login"]) .sidebar {
    position: relative;
    top: auto;
    height: 100dvh;
    min-height: 0;
    overflow: hidden;
  }

  body:not([data-view="login"]) .sidebar-shell {
    height: 100%;
    min-height: 0;
    overflow: hidden;
  }

  body:not([data-view="login"]) .nav {
    flex: 1 1 auto;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(183,234,117,.24) transparent;
  }

  body:not([data-view="login"]) .main {
    display: grid;
    height: 100dvh;
    min-height: 0;
    grid-template-rows: auto minmax(0,1fr);
    overflow: hidden;
  }

  body:not([data-view="login"]) .topbar {
    position: relative;
    top: auto;
    z-index: 30;
    flex: 0 0 auto;
  }

  body:not([data-view="login"]) .content {
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  html.dashboard-scroll-hidden .content {
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  html.dashboard-scroll-hidden .content::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }
}

/* Dashboard v31 — mismo lenguaje glass/gloss del resto de módulos */
body[data-view="dashboard"] .main {
  background:
    radial-gradient(circle at 88% 3%,rgba(183,235,98,.18),transparent 31rem),
    radial-gradient(circle at 36% 84%,rgba(37,199,183,.09),transparent 38rem),
    linear-gradient(145deg,#f7faf8 0%,#eaf2ec 54%,#f4f7f4 100%);
}

body[data-view="dashboard"] .main::before,
body[data-view="dashboard"] .main::after {
  display: block;
  opacity: .68;
}

body[data-view="dashboard"] .executive-dashboard {
  border: 1px solid rgba(25,105,73,.14);
  background:
    radial-gradient(circle at 91% 1%,rgba(183,235,98,.12),transparent 29rem),
    radial-gradient(circle at 13% 76%,rgba(37,199,183,.07),transparent 32rem),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(239,246,241,.77));
  box-shadow:
    0 30px 76px rgba(8,48,34,.14),
    inset 0 1px 0 rgba(255,255,255,.98),
    0 0 0 1px rgba(255,255,255,.48);
  backdrop-filter: blur(24px) saturate(132%);
}

body[data-view="dashboard"] .executive-hero {
  border: 1px solid rgba(205,241,193,.16);
  box-shadow:
    0 25px 58px rgba(2,29,20,.24),
    inset 0 1px 0 rgba(255,255,255,.16),
    0 0 36px rgba(118,190,72,.08);
  backdrop-filter: blur(18px) saturate(128%);
}

body[data-view="dashboard"] .executive-kpi {
  border-top-color: rgba(255,255,255,.98);
  background:
    radial-gradient(circle at var(--glow-x) var(--glow-y),color-mix(in srgb,var(--performance-color) 17%,transparent),transparent 43%),
    linear-gradient(145deg,rgba(255,255,255,.97),rgba(240,247,242,.76));
  box-shadow:
    0 22px 48px rgba(8,48,34,.12),
    inset 0 1px 0 rgba(255,255,255,1),
    inset -18px -22px 42px rgba(48,104,76,.025);
  backdrop-filter: blur(20px) saturate(128%);
}

body[data-view="dashboard"] .executive-secondary-kpi {
  background:
    radial-gradient(circle at 95% 0%,color-mix(in srgb,var(--support-tone) 13%,transparent),transparent 11rem),
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(241,247,242,.72));
  box-shadow:
    0 18px 38px rgba(8,48,34,.10),
    inset 0 1px 0 rgba(255,255,255,.98);
  backdrop-filter: blur(18px) saturate(125%);
}

/* Unified module header v1 — identidad del dashboard en toda la aplicación */
.app-module-hero {
  position: relative;
  display: grid;
  width: 100%;
  min-height: 174px;
  grid-template-columns: minmax(430px,42%) minmax(0,58%);
  margin: 0 0 18px;
  overflow: hidden;
  border: 1px solid rgba(205,241,193,.16);
  border-radius: 28px;
  background:
    radial-gradient(circle at 78% 8%,rgba(126,183,76,.15),transparent 19rem),
    linear-gradient(110deg,#030504 0%,#090d0b 56%,#161917 100%);
  box-shadow:
    0 25px 58px rgba(2,29,20,.22),
    inset 0 1px 0 rgba(255,255,255,.15),
    0 0 34px rgba(118,190,72,.07);
  color: #fff;
  isolation: isolate;
}

.app-module-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
  background:
    repeating-radial-gradient(circle at 40% 108%,transparent 0 22px,rgba(255,255,255,.025) 23px 24px),
    linear-gradient(96deg,transparent 56%,rgba(115,172,76,.055));
  opacity: .72;
}

.app-module-hero-story {
  position: relative;
  display: grid;
  min-width: 0;
  grid-template-columns: 138px minmax(0,1fr);
  align-items: stretch;
  overflow: hidden;
  background:
    linear-gradient(90deg,rgba(0,0,0,.34),rgba(0,0,0,.79)),
    url("../../photo-1583470790878-4f4f3811a01f.avif") center/cover;
}

.app-module-hero-story::after {
  content: "";
  position: absolute;
  z-index: 0;
  top: -30px;
  right: -48px;
  width: 92px;
  height: 240px;
  transform: skewX(-22deg);
  background: linear-gradient(100deg,transparent,rgba(7,10,9,.94) 62%);
}

.app-module-hero-bag {
  position: relative;
  z-index: 1;
  align-self: end;
  width: 132px;
  height: 169px;
  margin-left: 5px;
  object-fit: contain;
  object-position: center bottom;
  filter: drop-shadow(14px 15px 18px rgba(0,0,0,.40));
}

.app-module-hero-branding {
  position: relative;
  z-index: 1;
  align-self: center;
  padding: 19px 26px 19px 5px;
}

.app-module-hero-branding h2 {
  margin: 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(25px,1.75vw,31px);
  font-weight: 650;
  line-height: .99;
  letter-spacing: -.045em;
  text-shadow: 0 9px 25px rgba(0,0,0,.24);
}

.app-module-hero-branding h2 span { white-space: nowrap; }
.app-module-hero-branding h2 em { color:#6aa63d;font-style:normal; }

.app-module-hero-branding > i {
  display: block;
  width: 49px;
  height: 2px;
  margin: 15px 0 12px;
  border-radius: 99px;
  background: #83b942;
  box-shadow: 0 0 14px rgba(131,185,66,.24);
}

.app-module-hero-branding p {
  margin: 0;
  color: rgba(255,255,255,.86);
  font-size: 11px;
  font-weight: 540;
  line-height: 1.45;
}

.app-module-hero-panel {
  position: relative;
  z-index: 1;
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(300px,1.35fr) minmax(250px,.9fr);
  align-items: center;
  gap: 22px;
  padding: 24px 28px 24px 34px;
}

.app-module-hero-panel::after {
  content: "";
  position: absolute;
  right: 7%;
  bottom: -118px;
  width: 260px;
  height: 260px;
  border: 1px solid rgba(196,235,168,.08);
  border-radius: 50%;
  box-shadow: 0 0 0 42px rgba(255,255,255,.012),0 0 0 84px rgba(168,219,77,.01);
  pointer-events: none;
}

.app-module-hero-identity {
  position: relative;
  z-index: 1;
  display: grid;
  min-width: 0;
  grid-template-columns: 58px minmax(0,1fr);
  align-items: center;
  gap: 15px;
}

.app-module-hero-icon {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  border: 1px solid rgba(187,233,127,.30);
  border-radius: 50%;
  background:
    radial-gradient(circle at 29% 22%,rgba(205,244,145,.32),transparent 46%),
    linear-gradient(145deg,#4d7d31,#1c3c23);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18),0 14px 28px rgba(0,0,0,.24),0 0 18px rgba(137,196,70,.10);
  color: #f4ffe8;
}

.app-module-hero-icon svg { width:26px;height:26px; }

.app-module-hero-identity span,
.app-module-hero-facts span {
  display: block;
  color: #9ed45d;
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .095em;
  text-transform: uppercase;
}

.app-module-hero-identity h1 {
  margin: 5px 0 4px;
  overflow: hidden;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(25px,2vw,34px);
  font-weight: 720;
  line-height: 1.02;
  letter-spacing: -.045em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-module-hero-identity p {
  max-width: 560px;
  margin: 0;
  color: rgba(224,239,226,.67);
  font-size: 10px;
  line-height: 1.45;
}

.app-module-hero-facts {
  position: relative;
  z-index: 1;
  display: grid;
  min-width: 0;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  padding-left: 21px;
  border-left: 1px solid rgba(151,202,92,.22);
}

.app-module-hero-facts > div {
  min-width: 0;
  min-height: 57px;
  padding: 10px 12px;
  border: 1px solid rgba(218,239,216,.10);
  border-radius: 13px;
  background: linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.022));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(13px);
}

.app-module-hero-facts strong {
  display: block;
  margin-top: 6px;
  overflow: hidden;
  color: #f4f8f4;
  font-size: 10px;
  font-weight: 780;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.app-module-hero-facts > b {
  display: flex;
  grid-column: 1 / -1;
  align-items: center;
  gap: 7px;
  color: rgba(220,237,220,.70);
  font-size: 8px;
  font-weight: 780;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.app-module-hero-facts > b i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #9ed45d;
  box-shadow: 0 0 0 4px rgba(158,212,93,.10),0 0 13px rgba(158,212,93,.42);
}

@media(max-width:1280px) {
  .app-module-hero { grid-template-columns:minmax(360px,40%) minmax(0,60%); }
  .app-module-hero-story { grid-template-columns:116px minmax(0,1fr); }
  .app-module-hero-bag { width:111px;height:164px; }
  .app-module-hero-panel { grid-template-columns:minmax(260px,1.2fr) minmax(210px,.8fr);gap:15px;padding-inline:24px 20px; }
  .app-module-hero-branding h2 { font-size:24px; }
}

@media(max-width:980px) {
  .app-module-hero { grid-template-columns:minmax(320px,44%) minmax(0,56%); }
  .app-module-hero-panel { display:block;padding:22px; }
  .app-module-hero-facts { grid-template-columns:1fr;margin-top:14px;padding:12px 0 0;border-top:1px solid rgba(151,202,92,.18);border-left:0; }
  .app-module-hero-facts > div { min-height:0;padding:8px 10px; }
  .app-module-hero-facts > div:nth-child(2) { display:none; }
}

@media(max-width:720px) {
  .app-module-hero { min-height:0;grid-template-columns:1fr;border-radius:22px; }
  .app-module-hero-story { min-height:145px;grid-template-columns:105px minmax(0,1fr); }
  .app-module-hero-story::after { display:none; }
  .app-module-hero-bag { width:100px;height:142px; }
  .app-module-hero-branding { padding-right:15px; }
  .app-module-hero-branding h2 { font-size:24px; }
  .app-module-hero-panel { padding:18px; }
  .app-module-hero-identity { grid-template-columns:48px minmax(0,1fr);gap:11px; }
  .app-module-hero-icon { width:48px;height:48px; }
  .app-module-hero-identity h1 { font-size:25px;white-space:normal; }
  .app-module-hero-facts { grid-template-columns:1fr 1fr; }
  .app-module-hero-facts > div:nth-child(2) { display:block; }
}

/* Unified header v2 — composición limpia sin bolsa decorativa */
.app-module-hero-story,
body[data-view="dashboard"] .executive-hero-copy {
  grid-template-columns: minmax(0,1fr);
}

.app-module-hero-branding {
  width: min(100%,430px);
  padding: 24px 40px;
}

body[data-view="dashboard"] .executive-story-copy {
  width: min(100%,470px);
  padding: 26px 42px;
}

@media(max-width:1280px) {
  .app-module-hero-story { grid-template-columns:minmax(0,1fr); }
  .app-module-hero-branding { padding-inline:30px; }
}

@media(max-width:720px) {
  .app-module-hero-story { grid-template-columns:minmax(0,1fr); }
  .app-module-hero-branding,
  body[data-view="dashboard"] .executive-story-copy { width:100%;padding:24px; }
}

/* Unified header v3 — controles y navegación viven en el encabezado superior */
.app-module-hero.has-module-controls {
  z-index: 18;
  overflow: visible;
}

.app-module-hero.has-module-tabs {
  grid-template-rows: minmax(174px,auto) auto;
  border-radius: 28px;
}

.app-module-hero.has-module-tabs > .app-module-hero-story {
  grid-column: 1;
  grid-row: 1;
  border-radius: 27px 0 0;
}

.app-module-hero.has-module-tabs > .app-module-hero-panel {
  grid-column: 2;
  grid-row: 1;
}

.app-module-hero.has-module-controls .app-module-hero-panel {
  grid-template-columns: minmax(250px,.78fr) minmax(460px,1.5fr);
  gap: 18px;
}

.app-module-hero-tools {
  position: relative;
  z-index: 4;
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  padding-left: 20px;
  border-left: 1px solid rgba(151,202,92,.22);
}

.app-module-hero-tools .hubspot-command-sync,
.app-module-hero-tools .projection-team-sync {
  width: 100%;
  justify-content: flex-end;
}

.app-module-hero-tools .projection-team-sync {
  flex-wrap: wrap;
  row-gap: 7px;
}

.projection-team-year-context {
  display: grid;
  min-height: 34px;
  align-content: center;
  gap: 1px;
  padding: 5px 10px;
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 9px;
  background: rgba(255,255,255,.07);
  color: #fff;
}

.projection-team-year-context small {
  color: #9ed45d;
  font-size: 6px;
  font-weight: 850;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
}

.projection-team-year-context b { font-size:10px;line-height:1.1; }

.app-module-hero-nav {
  position: relative;
  z-index: 3;
  grid-column: 1 / -1;
  grid-row: 2;
  min-width: 0;
  padding: 7px 13px 10px;
  border-top: 1px solid rgba(195,229,190,.12);
  border-radius: 0 0 27px 27px;
  background:
    radial-gradient(circle at 82% 0%,rgba(141,196,74,.10),transparent 18rem),
    linear-gradient(100deg,rgba(5,31,22,.94),rgba(10,22,16,.96));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

.app-module-hero-nav .hubspot-command-tabs,
.app-module-hero-nav .projection-team-tabs {
  min-height: 43px;
  padding: 3px 5px;
  border: 1px solid rgba(203,230,200,.13);
  border-radius: 14px;
  background: linear-gradient(145deg,rgba(255,255,255,.10),rgba(255,255,255,.035));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10),0 10px 26px rgba(0,0,0,.12);
  backdrop-filter: blur(16px) saturate(120%);
}

.app-module-hero-nav .hubspot-command-tab,
.app-module-hero-nav .projection-team-tab {
  min-height: 37px;
  border-radius: 10px;
}

.hubspot-v3.hubspot-workspace { padding-top:14px; }

@media(max-width:1450px) {
  .app-module-hero.has-module-controls .app-module-hero-panel {
    grid-template-columns: minmax(210px,.68fr) minmax(390px,1.45fr);
    padding-inline: 22px 18px;
  }
  .app-module-hero.has-module-controls .app-module-hero-identity p { display:none; }
  .app-module-hero-tools { padding-left:14px; }
}

@media(max-width:1120px) {
  .app-module-hero.has-module-controls { grid-template-columns:minmax(310px,36%) minmax(0,64%); }
  .app-module-hero.has-module-controls .app-module-hero-panel { display:block;padding:18px; }
  .app-module-hero.has-module-controls .app-module-hero-tools {
    margin-top:12px;
    padding:11px 0 0;
    border-top:1px solid rgba(151,202,92,.18);
    border-left:0;
  }
  .app-module-hero-tools .hubspot-command-sync,
  .app-module-hero-tools .projection-team-sync { justify-content:flex-start; }
}

@media(max-width:720px) {
  .app-module-hero.has-module-tabs { grid-template-rows:auto auto auto; }
  .app-module-hero.has-module-tabs > .app-module-hero-story { grid-column:1;grid-row:1;border-radius:21px 21px 0 0; }
  .app-module-hero.has-module-tabs > .app-module-hero-panel { grid-column:1;grid-row:2; }
  .app-module-hero.has-module-tabs > .app-module-hero-nav { grid-column:1;grid-row:3; }
  .app-module-hero.has-module-controls { grid-template-columns:1fr; }
  .app-module-hero.has-module-controls .app-module-hero-panel { padding:17px; }
  .app-module-hero-tools .hubspot-command-sync,
  .app-module-hero-tools .projection-team-sync { flex-wrap:wrap; }
  .app-module-hero-nav { padding:7px;border-radius:0 0 21px 21px; }
  .hubspot-v3.hubspot-workspace { padding-top:9px; }
}

/* Dashboard v32 — filtros amplios, uniformes y distribuidos */
@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-hero {
    height: 218px;
    min-height: 218px;
    max-height: 218px;
    grid-template-columns: minmax(360px,31%) minmax(0,69%);
  }

  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: minmax(220px,1.22fr) minmax(125px,.67fr) minmax(150px,.82fr) minmax(150px,.82fr) minmax(180px,1fr) minmax(125px,.7fr);
    gap: 8px;
    padding: 14px 16px 14px 24px;
  }
}

body[data-view="dashboard"] .executive-hero-actions > * {
  position: relative;
  z-index: 1;
}

body[data-view="dashboard"] .executive-cutoff,
body[data-view="dashboard"] .executive-filter,
body[data-view="dashboard"] .executive-refresh {
  height: 94px;
  min-height: 94px;
  align-self: center;
  padding: 11px;
  border: 1px solid rgba(197,225,186,.14);
  border-radius: 17px;
  background:
    radial-gradient(circle at 0 0,rgba(145,201,75,.10),transparent 7rem),
    linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07),0 10px 23px rgba(0,0,0,.12);
}

body[data-view="dashboard"] .executive-cutoff {
  grid-template-columns: 52px minmax(0,1fr);
  gap: 12px;
}

body[data-view="dashboard"] .executive-control-icon,
body[data-view="dashboard"] .executive-refresh > i {
  width: 52px;
  height: 52px;
  border-radius: 15px;
}

body[data-view="dashboard"] .executive-control-icon svg,
body[data-view="dashboard"] .executive-refresh > i svg {
  width: 24px !important;
  height: 24px !important;
}

body[data-view="dashboard"] .executive-cutoff span,
body[data-view="dashboard"] .executive-filter > span {
  margin-bottom: 7px;
  font-size: 8.5px;
}

body[data-view="dashboard"] .executive-cutoff strong {
  overflow: hidden;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-cutoff small { font-size:6.5px; }

body[data-view="dashboard"] .executive-filter-control,
body[data-view="dashboard"] .executive-period-switch {
  height: 52px;
  border-radius: 14px;
}

body[data-view="dashboard"] .executive-filter-control {
  grid-template-columns: 35px minmax(0,1fr);
  gap: 8px;
  padding-inline: 8px 10px;
}

body[data-view="dashboard"] .executive-filter-control > i {
  width: 35px;
  height: 35px;
  border-radius: 10px;
}

body[data-view="dashboard"] .executive-filter-control > i svg { width:18px;height:18px; }

body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
  min-height: 48px;
  font-size: 11px;
}

body[data-view="dashboard"] .executive-date-control,
body[data-view="dashboard"] .executive-advisor-filter .executive-filter-control {
  grid-template-columns: 35px minmax(0,1fr);
}

body[data-view="dashboard"] .executive-period-switch button {
  height: 42px;
  font-size: 11px;
}

body[data-view="dashboard"] .executive-refresh {
  justify-content: center;
  gap: 10px;
}

body[data-view="dashboard"] .executive-refresh > span b { font-size:9px; }
body[data-view="dashboard"] .executive-refresh > span small { font-size:6.5px; }

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 9px;
    padding: 16px;
  }
  body[data-view="dashboard"] .executive-cutoff,
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh { height:90px;min-height:90px; }
}

@media(max-width:700px) {
  body[data-view="dashboard"] .executive-hero-actions { grid-template-columns:1fr 1fr; }
  body[data-view="dashboard"] .executive-cutoff,
  body[data-view="dashboard"] .executive-advisor-filter { grid-column:1 / -1; }
}

@media(max-width:520px) {
  body[data-view="dashboard"] .executive-hero-actions { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-cutoff,
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh { grid-column:1; }
}

/* Controles compartidos del encabezado — misma escala y respuesta */
@media(min-width:1451px) {
  .app-module-hero.has-module-controls { grid-template-columns:minmax(360px,32%) minmax(0,68%); }
  .app-module-hero.has-module-controls .app-module-hero-panel { grid-template-columns:minmax(245px,.68fr) minmax(560px,1.65fr); }
}

.app-module-hero.has-module-controls .app-module-hero-identity h1 { white-space:normal; }

.app-module-hero-tools .projection-team-year-context,
.app-module-hero-tools .projection-team-period-toggle,
.app-module-hero-tools .projection-live-source,
.app-module-hero-tools .projection-ai-open,
.app-module-hero-tools .projection-team-refresh,
.app-module-hero-tools .hubspot-refresh-btn {
  min-height: 46px;
  height: 46px;
  border-radius: 13px;
}

.app-module-hero-tools .projection-team-period-toggle,
.app-module-hero-tools .projection-live-source,
.app-module-hero-tools .projection-team-refresh,
.app-module-hero-tools .hubspot-refresh-btn { padding-inline:13px; }

.app-module-hero-tools .projection-team-period-panel {
  width: min(520px,calc(100vw - 40px));
  gap: 12px;
  padding: 16px;
  border-radius: 17px;
  box-shadow: 0 22px 55px rgba(3,30,20,.30);
}

.app-module-hero-tools .projection-team-period-panel select,
.app-module-hero-tools .projection-team-period-panel input {
  height: 44px;
  border-radius: 11px;
  font-size: 11px;
}

/* El análisis por doble clic permanece dentro del dashboard actual */
body[data-view="dashboard"].dashboard-review-active .content {
  padding: 28px 12px 50px;
}

body[data-view="dashboard"].dashboard-review-active .executive-dashboard {
  min-height: 0;
}

body[data-view="dashboard"].dashboard-review-active .executive-dashboard .executive-hero {
  display: grid;
}

body[data-view="dashboard"].dashboard-review-active .executive-content {
  height: auto;
  margin-top: 14px;
  padding: 0 35px 28px;
}

body[data-view="dashboard"].dashboard-review-active .executive-review-view {
  height: auto;
  min-height: 620px;
}

body[data-view="dashboard"].dashboard-review-active .executive-review-view .executive-analysis-body,
body[data-view="dashboard"].dashboard-review-active .executive-analysis-body.is-primary-module {
  height: auto;
  min-height: 530px;
}

body[data-view="dashboard"] .executive-review-back,
body[data-view="dashboard"] .executive-deep-open-advisor {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12),0 9px 22px rgba(0,0,0,.14);
}

@media(max-width:1180px) {
  body[data-view="dashboard"].dashboard-review-active .executive-dashboard .executive-hero { display:block; }
  body[data-view="dashboard"].dashboard-review-active .executive-content { padding-inline:14px; }
  body[data-view="dashboard"].dashboard-review-active .executive-review-view,
  body[data-view="dashboard"].dashboard-review-active .executive-review-view .executive-analysis-body,
  body[data-view="dashboard"].dashboard-review-active .executive-analysis-body.is-primary-module { min-height:0; }
}

/* Filtros v34 — una sola escala visual, sin halo exterior */
body[data-view="dashboard"] .executive-dashboard {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92) !important;
}

body[data-view="dashboard"] .executive-hero,
.app-module-hero {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14) !important;
}

body[data-view="dashboard"] .executive-cutoff,
body[data-view="dashboard"] .executive-filter,
body[data-view="dashboard"] .executive-refresh {
  height: 112px;
  min-height: 112px;
  padding: 13px;
  border-color: rgba(197,225,186,.16);
  border-radius: 18px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.065);
}

@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-hero {
    height: 236px;
    min-height: 236px;
    max-height: 236px;
    grid-template-columns: minmax(390px,28%) minmax(0,72%);
  }

  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: minmax(0,1.38fr) minmax(0,.74fr) minmax(0,.9fr) minmax(0,.9fr) minmax(0,1.1fr) minmax(0,.76fr);
    gap: 10px;
    padding: 17px 18px 17px 26px;
  }
}

body[data-view="dashboard"] .executive-cutoff {
  grid-template-columns: 58px minmax(0,1fr);
  gap: 13px;
}

body[data-view="dashboard"] .executive-control-icon,
body[data-view="dashboard"] .executive-refresh > i {
  width: 58px;
  height: 58px;
  border-radius: 17px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14),0 8px 17px rgba(0,0,0,.17);
}

body[data-view="dashboard"] .executive-control-icon svg,
body[data-view="dashboard"] .executive-refresh > i svg {
  width: 27px !important;
  height: 27px !important;
}

body[data-view="dashboard"] .executive-cutoff span,
body[data-view="dashboard"] .executive-filter > span {
  margin-bottom: 8px;
  font-size: 9.5px;
  letter-spacing: .1em;
}

body[data-view="dashboard"] .executive-cutoff strong {
  font-size: 13px;
  line-height: 1.2;
  text-overflow: clip;
  white-space: normal;
}

body[data-view="dashboard"] .executive-cutoff small {
  margin-top: 6px;
  font-size: 7.5px;
}

body[data-view="dashboard"] .executive-filter-control,
body[data-view="dashboard"] .executive-period-switch {
  height: 60px;
  border-radius: 15px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.065);
}

body[data-view="dashboard"] .executive-filter-control {
  grid-template-columns: 40px minmax(0,1fr);
  gap: 9px;
  padding-inline: 9px 12px;
}

body[data-view="dashboard"] .executive-filter-control > i {
  width: 40px;
  height: 40px;
  border-radius: 12px;
}

body[data-view="dashboard"] .executive-filter-control > i svg {
  width: 20px;
  height: 20px;
}

body[data-view="dashboard"] .executive-date-control,
body[data-view="dashboard"] .executive-advisor-filter .executive-filter-control {
  grid-template-columns: 40px minmax(0,1fr);
}

body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
  min-height: 56px;
  font-size: 12.5px;
  letter-spacing: -.015em;
}

body[data-view="dashboard"] .executive-period-switch {
  gap: 4px;
  padding: 5px;
}

body[data-view="dashboard"] .executive-period-switch button {
  height: 48px;
  border-radius: 11px;
  font-size: 12px;
}

body[data-view="dashboard"] .executive-refresh {
  justify-content: center;
  gap: 11px;
}

body[data-view="dashboard"] .executive-refresh > span b { font-size:10px; }
body[data-view="dashboard"] .executive-refresh > span small { font-size:7px; }

/* Encabezados compartidos: la misma altura y profundidad de los filtros gerenciales. */
.app-module-hero-tools .projection-team-year-context,
.app-module-hero-tools .projection-team-period-toggle,
.app-module-hero-tools .projection-live-source,
.app-module-hero-tools .projection-ai-open,
.app-module-hero-tools .projection-team-refresh,
.app-module-hero-tools .hubspot-refresh-btn {
  height: 56px;
  min-height: 56px;
  padding-inline: 15px;
  border-radius: 15px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.075) !important;
}

.app-module-hero-tools .projection-team-period-toggle > b,
.app-module-hero-tools .projection-live-source,
.app-module-hero-tools .projection-ai-open,
.app-module-hero-tools .projection-team-refresh,
.app-module-hero-tools .hubspot-refresh-btn {
  font-size: 10.5px;
}

.app-module-hero-tools .projection-team-period-panel {
  width: min(610px,calc(100vw - 40px));
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
  padding: 18px;
  border-radius: 18px;
}

.app-module-hero-tools .projection-team-period-panel label { gap:7px; }

.app-module-hero-tools .projection-team-period-panel label > span {
  font-size: 9.5px;
}

.app-module-hero-tools .projection-team-period-panel select,
.app-module-hero-tools .projection-team-period-panel input {
  height: 54px;
  padding-inline: 14px;
  border-radius: 14px;
  font-size: 12.5px;
}

.app-module-hero-tools .projection-team-period-panel > p,
.app-module-hero-tools .projection-team-period-panel > button {
  padding: 12px 14px;
  border-radius: 13px;
  font-size: 10.5px;
}

/* Controles internos de todos los módulos: misma geometría en superficies claras. */
:where(
  .pedidos-filter-panel,
  .module-toolbar-card,
  .projection-workspace,
  .projection-team-period-panel,
  .projection-advisor-year-filter,
  .projection-advisor-client-filters,
  .projection-production-filters,
  .hubspot-period-toolbar,
  .hubspot-table-actions,
  .production-live-filter,
  .cot-toolbar-actions,
  .coordinator-filters
) :where(input.form-control,select.form-control,input:not([type="checkbox"]):not([type="radio"]),select) {
  height: 54px !important;
  min-height: 54px !important;
  padding-inline: 14px !important;
  border: 1px solid rgba(69,111,81,.18) !important;
  border-radius: 14px !important;
  background: linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,249,244,.94)) !important;
  color: #1a3022 !important;
  box-shadow: inset 0 1px 0 #fff !important;
  font-size: 12px !important;
  font-weight: 720 !important;
  outline: none !important;
}

:where(
  .pedidos-filter-panel,
  .module-toolbar-card,
  .projection-workspace,
  .projection-team-period-panel,
  .projection-advisor-year-filter,
  .projection-advisor-client-filters,
  .projection-production-filters,
  .hubspot-period-toolbar,
  .hubspot-table-actions,
  .production-live-filter,
  .cot-toolbar-actions,
  .coordinator-filters
) :where(input.form-control,select.form-control,input:not([type="checkbox"]):not([type="radio"]),select):focus {
  border-color: #78a85d !important;
  outline: 2px solid rgba(104,158,74,.16) !important;
  outline-offset: 1px !important;
  box-shadow: inset 0 1px 0 #fff !important;
}

.pedidos-date-control,
.projection-filter-field,
.projection-advisor-year-filter,
.projection-advisor-client-filters label,
.projection-production-filters label,
.hubspot-period-toolbar label {
  gap: 7px !important;
}

.pedidos-date-control > span,
.projection-filter-field > span,
.projection-advisor-year-filter > span,
.projection-advisor-client-filters label > span,
.projection-production-filters label > span,
.hubspot-period-toolbar label > span {
  color: #5d7464 !important;
  font-size: 9.5px !important;
  font-weight: 850 !important;
  letter-spacing: .09em !important;
}

.pedidos-filter-panel,
.projection-detail-tools,
.production-live-filter,
.coordinator-filters {
  gap: 13px;
}

.pedidos-filter-panel :where(.btn,.btn-light),
.projection-detail-tools :where(.btn,.btn-light),
.projection-advisor-client-filters button,
.projection-production-filters button,
.cot-toolbar-actions :where(.btn,.btn-light),
.coordinator-filters :where(.btn,.btn-light) {
  min-height: 54px !important;
  border-radius: 14px !important;
}

.hubspot-period-pills {
  min-height: 54px;
  padding: 5px;
  border-radius: 14px;
  box-shadow: inset 0 1px 0 #fff;
}

.hubspot-period-pills button {
  min-width: 64px;
  height: 42px;
  border-radius: 10px;
  font-size: 10.5px;
}

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-hero {
    height: auto;
    min-height: 236px;
    max-height: none;
  }

  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 10px;
    padding: 16px;
  }

  body[data-view="dashboard"] .executive-cutoff,
  body[data-view="dashboard"] .executive-filter,
  body[data-view="dashboard"] .executive-refresh {
    height: 104px;
    min-height: 104px;
  }
}

@media(max-width:700px) {
  .app-module-hero-tools .projection-team-period-panel {
    grid-template-columns: 1fr;
  }

  :where(.pedidos-filter-main,.pedidos-filter-advanced,.production-live-filter,.cot-toolbar-actions) {
    grid-template-columns: 1fr;
  }
}

/* Dashboard v35 — barra de filtros plana, sin tarjetas duplicadas */
body[data-view="dashboard"] .executive-hero-actions {
  gap: 0;
}

body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
  height: 94px;
  min-height: 94px;
  padding: 0 14px;
  border: 0 !important;
  border-left: 1px solid rgba(147,194,84,.25) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff {
  padding-left: 0;
  padding-right: 20px;
  border-left: 0 !important;
}

body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
  padding-right: 0;
}

body[data-view="dashboard"] .executive-filter-control,
body[data-view="dashboard"] .executive-period-switch {
  height: 58px;
  border: 1px solid rgba(197,225,186,.15);
  border-radius: 14px;
  background: linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.045));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

body[data-view="dashboard"] .executive-filter-control:focus-within {
  border-color: rgba(169,220,91,.52);
  background: rgba(255,255,255,.085);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
  outline: 2px solid rgba(140,196,69,.12);
  outline-offset: 1px;
}

body[data-view="dashboard"] .executive-period-switch {
  padding: 5px;
}

body[data-view="dashboard"] .executive-period-switch button {
  height: 46px;
}

body[data-view="dashboard"] .executive-control-icon,
body[data-view="dashboard"] .executive-refresh > i {
  width: 54px;
  height: 54px;
  border-radius: 15px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.13),0 6px 13px rgba(0,0,0,.14);
}

body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
  min-height: 54px;
}

@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-hero {
    height: 218px;
    min-height: 218px;
    max-height: 218px;
    grid-template-columns: minmax(390px,29%) minmax(0,71%);
  }

  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: minmax(0,1.42fr) minmax(0,.72fr) minmax(0,.91fr) minmax(0,.91fr) minmax(0,1.12fr) minmax(0,.76fr);
    padding: 14px 18px 14px 25px;
  }
}

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-hero-actions {
    gap: 10px;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    height: 94px;
    min-height: 94px;
    padding: 0 10px;
    border-left: 0 !important;
  }
}

/* Evita paneles internos alrededor de controles que ya son tarjetas. */
.module-toolbar-card .pedidos-filter-panel,
.module-toolbar-card .coordinator-filters,
.projection-detail-tools .projection-filter-advanced,
.hubspot-period-toolbar,
.production-live-filter {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

/* Encabezado v36 — una sola identidad y filtros del módulo en línea */
.app-module-hero {
  min-height: 190px;
  grid-template-columns: minmax(350px,29%) minmax(0,71%);
}

.app-module-hero-story {
  grid-template-columns: minmax(0,1fr) !important;
}

.app-module-hero-module {
  display: grid;
  width: 100%;
  max-width: none;
  align-content: center;
  gap: 12px;
  padding: 28px 36px;
}

.app-module-hero-module-area {
  color: #9ed45d;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.app-module-hero-module-row {
  display: grid;
  min-width: 0;
  grid-template-columns: 58px minmax(0,1fr);
  align-items: center;
  gap: 15px;
}

.app-module-hero-module-row h2 {
  margin: 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(28px,2.1vw,37px);
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: -.045em;
}

.app-module-hero-module-row p {
  max-width: 430px;
  margin: 8px 0 0;
  color: rgba(228,241,229,.72);
  font-size: 10.5px;
  line-height: 1.45;
}

.app-module-hero-panel,
.app-module-hero.has-module-controls .app-module-hero-panel {
  display: flex;
  min-width: 0;
  align-items: center;
  padding: 18px 22px;
}

.app-module-hero-tools {
  width: 100%;
  padding-left: 0;
  border-left: 0;
}

.app-module-hero:not(.has-module-controls) .app-module-hero-facts {
  width: 100%;
}

.app-module-hero.has-module-tabs {
  grid-template-rows: minmax(190px,auto) auto;
}

.app-module-hero.has-module-tabs > .app-module-hero-story,
.app-module-hero.has-module-tabs > .app-module-hero-panel {
  min-height: 190px;
}

body[data-view="dashboard"] .executive-module-copy > span {
  display: block;
  margin-bottom: 10px;
  color: #9ed45d;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-module-copy h2 {
  font-size: clamp(31px,2.35vw,39px);
  line-height: 1;
}

/* Proyección adopta exactamente la barra de período, rango y asesor del dashboard. */
.app-module-hero-tools .projection-unified-filters {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: minmax(0,1.42fr) minmax(0,.72fr) minmax(0,.91fr) minmax(0,.91fr) minmax(0,1.12fr) minmax(0,.82fr);
  align-items: center;
  gap: 0;
  white-space: normal;
}

.projection-unified-filters > * {
  min-width: 0;
  min-height: 94px;
  padding: 0 12px;
  border-left: 1px solid rgba(147,194,84,.25);
}

.projection-unified-filters > :first-child {
  padding-left: 0;
  border-left: 0;
}

.projection-unified-filters > :last-child {
  padding-right: 0;
}

.projection-header-cutoff {
  display: grid;
  grid-template-columns: 54px minmax(0,1fr);
  align-items: center;
  gap: 12px;
}

.projection-header-cutoff > div { min-width:0; }

.projection-header-cutoff > div > span,
.projection-header-filter > span {
  display: block;
  margin-bottom: 8px;
  color: #9ed45d;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.projection-header-cutoff strong {
  display: block;
  overflow: hidden;
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-header-control-icon,
.projection-header-filter-control > i {
  display: grid;
  place-items: center;
  border: 1px solid rgba(157,207,91,.23);
  background: linear-gradient(145deg,#4e7932,#263f22);
  color: #eefbdd;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.13),0 6px 13px rgba(0,0,0,.14);
}

.projection-header-control-icon {
  width: 54px;
  height: 54px;
  border-radius: 15px;
}

.projection-header-control-icon svg { width:25px;height:25px; }

.projection-unified-filters .projection-live-source {
  display: flex;
  min-height: 0;
  align-items: center;
  gap: 5px;
  margin-top: 6px;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(220,236,219,.57) !important;
  font-size: 7px;
  font-weight: 750;
}

.projection-header-filter {
  display: grid;
  align-content: center;
}

.projection-header-filter-control,
.projection-header-period-switch {
  height: 58px;
  border: 1px solid rgba(197,225,186,.15);
  border-radius: 14px;
  background: linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.045));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

.projection-header-filter-control {
  display: grid;
  min-width: 0;
  grid-template-columns: 38px minmax(0,1fr);
  align-items: center;
  gap: 8px;
  padding: 0 10px;
}

.projection-header-filter-control > i {
  width: 38px;
  height: 38px;
  border-radius: 11px;
}

.projection-header-filter-control > i svg { width:19px;height:19px; }

.projection-header-filter-control input,
.projection-header-filter-control select {
  width: 100%;
  min-width: 0;
  height: 54px;
  padding: 0 22px 0 0;
  border: 0;
  background: transparent;
  color: #fff;
  box-shadow: none;
  font: 800 11px/1 Manrope,sans-serif;
  outline: 0;
}

.projection-header-filter-control input[type="date"] {
  padding-right: 0;
  color-scheme: dark;
}

.projection-header-filter-control select option { background:#17201b;color:#f2f6ef; }

.projection-header-period-switch {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: center;
  gap: 4px;
  padding: 5px;
}

.projection-header-period-switch button {
  height: 46px;
  padding: 0 6px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: rgba(231,240,228,.62);
  font: 780 10.5px/1 Manrope,sans-serif;
  cursor: pointer;
}

.projection-header-period-switch button.is-active {
  color: #fff;
  background: linear-gradient(145deg,#43742d,#1d4f35);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.14),0 4px 10px rgba(0,0,0,.18);
}

.projection-header-actions {
  display: grid;
  align-content: center;
  gap: 7px;
}

.projection-header-actions .projection-ai-open,
.projection-header-actions .projection-team-refresh {
  display: flex;
  width: 100%;
  height: 42px;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 9px;
  border-radius: 12px;
  font-size: 9px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.projection-header-actions button b { font:inherit; }

@media(max-width:1450px) {
  .app-module-hero {
    grid-template-columns: minmax(300px,27%) minmax(0,73%);
  }

  .app-module-hero-module { padding-inline:26px; }
  .app-module-hero-panel,
  .app-module-hero.has-module-controls .app-module-hero-panel { padding-inline:16px; }
  .projection-unified-filters > * { padding-inline:8px; }
  .projection-header-cutoff { grid-template-columns:46px minmax(0,1fr);gap:9px; }
  .projection-header-control-icon { width:46px;height:46px; }
  .projection-header-filter-control { grid-template-columns:32px minmax(0,1fr);padding-inline:7px; }
  .projection-header-filter-control > i { width:32px;height:32px; }
  .projection-header-actions button b { display:none; }
}

@media(max-width:1100px) {
  .app-module-hero.has-module-controls {
    grid-template-columns: 1fr;
  }

  .app-module-hero.has-module-tabs {
    grid-template-rows: auto auto auto;
  }

  .app-module-hero.has-module-tabs > .app-module-hero-story,
  .app-module-hero.has-module-tabs > .app-module-hero-panel,
  .app-module-hero.has-module-tabs > .app-module-hero-nav {
    grid-column: 1;
  }

  .app-module-hero.has-module-tabs > .app-module-hero-story { grid-row:1; }
  .app-module-hero.has-module-tabs > .app-module-hero-panel { grid-row:2; }
  .app-module-hero.has-module-tabs > .app-module-hero-nav { grid-row:3; }
  .app-module-hero.has-module-tabs > .app-module-hero-story,
  .app-module-hero.has-module-tabs > .app-module-hero-panel { min-height:0; }
  .projection-unified-filters { grid-template-columns:repeat(3,minmax(0,1fr)) !important;row-gap:12px !important; }
  .projection-unified-filters > * { border-left:0; }
}

/* Dashboard v37 — menor peso visual y filtros completos en escritorio */
@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-hero {
    height: 190px;
    min-height: 190px;
    max-height: 190px;
    grid-template-columns: minmax(315px,24%) minmax(0,76%);
  }

  body[data-view="dashboard"] .executive-story-copy {
    width: 100%;
    padding: 22px 28px;
  }

  body[data-view="dashboard"] .executive-story-copy h2 {
    font-size: clamp(25px,1.62vw,28px);
    line-height: 1;
  }

  body[data-view="dashboard"] .executive-story-copy > i {
    width: 46px;
    margin-block: 15px 12px;
  }

  body[data-view="dashboard"] .executive-story-copy p {
    font-size: 11px;
    line-height: 1.45;
  }

  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns:
      minmax(165px,1fr)
      minmax(100px,.6fr)
      minmax(165px,1fr)
      minmax(165px,1fr)
      minmax(220px,1.32fr)
      minmax(110px,.66fr);
    padding: 11px 14px 11px 20px;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    height: 80px;
    min-height: 80px;
    padding-inline: 10px;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff {
    grid-template-columns: 44px minmax(0,1fr);
    gap: 10px;
    padding-left: 0;
    padding-right: 14px;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    gap: 8px;
    padding-right: 0;
  }

  body[data-view="dashboard"] .executive-control-icon,
  body[data-view="dashboard"] .executive-refresh > i {
    width: 44px;
    height: 44px;
    border-radius: 13px;
  }

  body[data-view="dashboard"] .executive-control-icon svg,
  body[data-view="dashboard"] .executive-refresh > i svg {
    width: 21px !important;
    height: 21px !important;
  }

  body[data-view="dashboard"] .executive-cutoff span,
  body[data-view="dashboard"] .executive-filter > span {
    margin-bottom: 6px;
    font-size: 8px;
  }

  body[data-view="dashboard"] .executive-cutoff strong {
    font-size: 11px;
    line-height: 1.2;
  }

  body[data-view="dashboard"] .executive-cutoff small {
    margin-top: 4px;
    font-size: 6.5px;
  }

  body[data-view="dashboard"] .executive-filter-control,
  body[data-view="dashboard"] .executive-period-switch {
    height: 48px;
    border-radius: 12px;
  }

  body[data-view="dashboard"] .executive-filter-control,
  body[data-view="dashboard"] .executive-date-control,
  body[data-view="dashboard"] .executive-advisor-filter .executive-filter-control {
    grid-template-columns: 30px minmax(0,1fr);
    gap: 7px;
    padding-inline: 6px 8px;
  }

  body[data-view="dashboard"] .executive-filter-control > i {
    width: 30px;
    height: 30px;
    border-radius: 9px;
  }

  body[data-view="dashboard"] .executive-filter-control > i svg {
    width: 16px;
    height: 16px;
  }

  body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
    min-height: 44px;
    padding-right: 16px;
    font-size: 10.5px;
  }

  body[data-view="dashboard"] .executive-date-control input[type="date"] {
    padding-right: 0 !important;
    letter-spacing: -.035em;
  }

  body[data-view="dashboard"] .executive-period-switch {
    padding: 4px;
  }

  body[data-view="dashboard"] .executive-period-switch button {
    height: 40px;
    padding-inline: 5px;
    border-radius: 9px;
    font-size: 10.5px;
  }

  body[data-view="dashboard"] .executive-refresh > span b {
    font-size: 8.5px;
  }

  body[data-view="dashboard"] .executive-refresh > span small {
    font-size: 6px;
  }
}

/* Encabezados v38 — orden único de filtros para HubSpot y Proyección */
@media(min-width:1451px) {
  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-controls {
    grid-template-columns: minmax(315px,24%) minmax(0,76%);
  }

  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs {
    grid-template-rows: minmax(190px,auto) auto;
  }

  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-story,
  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-panel {
    min-height: 190px;
  }
}

:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero-module {
  gap: 8px;
  padding: 22px 28px;
}

:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero-module-row {
  grid-template-columns: 44px minmax(0,1fr);
  gap: 12px;
}

:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero-module-row h2 {
  font-size: clamp(25px,1.62vw,28px);
}

:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero-module-row p {
  margin-top: 6px;
  font-size: 10px;
}

:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero-icon {
  width: 44px;
  height: 44px;
  border-radius: 13px;
}

:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero-icon svg {
  width: 21px;
  height: 21px;
}

:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero-panel,
:is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-controls .app-module-hero-panel {
  padding: 11px 14px 11px 20px;
}

.app-module-hero-tools .module-unified-filters {
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns:
    minmax(140px,1.3fr)
    minmax(78px,.75fr)
    minmax(132px,1.25fr)
    minmax(132px,1.25fr)
    minmax(160px,1.65fr)
    minmax(88px,.9fr);
  align-items: center;
  gap: 0;
}

body[data-view="proyeccion"] .app-module-hero-tools .module-unified-filters {
  grid-template-columns:
    minmax(88px,.78fr)
    minmax(154px,1.35fr)
    minmax(154px,1.35fr)
    minmax(210px,1.82fr)
    minmax(96px,.9fr);
}

.module-unified-filters > * {
  min-width: 0;
  min-height: 80px;
  padding: 0 10px;
  border-left: 1px solid rgba(147,194,84,.25);
}

.module-unified-filters > :first-child {
  padding-left: 0;
  padding-right: 14px;
  border-left: 0;
}

.module-unified-filters > :last-child { padding-right:0; }

.module-unified-filters .projection-header-cutoff {
  grid-template-columns: 44px minmax(0,1fr);
  gap: 10px;
}

.module-unified-filters .projection-header-control-icon {
  width: 44px;
  height: 44px;
  border-radius: 13px;
}

.module-unified-filters .projection-header-control-icon svg {
  width: 21px;
  height: 21px;
}

.module-unified-filters .projection-header-cutoff > div > span,
.module-unified-filters .projection-header-filter > span {
  margin-bottom: 6px;
  font-size: 8px;
}

.module-unified-filters .projection-header-cutoff strong {
  font-size: 11px;
  line-height: 1.2;
  white-space: normal;
}

.module-header-source,
.module-unified-filters .projection-live-source {
  display: flex;
  height: auto;
  min-width: 0;
  min-height: 0;
  align-items: center;
  gap: 5px;
  margin-top: 4px;
  padding: 0;
  border: 0;
  border-radius: 0;
  overflow: hidden;
  background: transparent;
  box-shadow: none !important;
  color: rgba(220,236,219,.57) !important;
  font-size: 6.5px;
  font-weight: 750;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.module-header-source b { overflow:hidden;font:inherit;text-overflow:ellipsis;white-space:nowrap; }

.module-unified-filters .projection-header-filter-control,
.module-unified-filters .projection-header-period-switch {
  height: 48px;
  border-radius: 12px;
}

.module-unified-filters .projection-header-filter-control {
  grid-template-columns: 30px minmax(0,1fr);
  gap: 7px;
  padding-inline: 6px 8px;
}

.module-unified-filters .projection-header-filter-control > i {
  width: 30px;
  height: 30px;
  border-radius: 9px;
}

.module-unified-filters .projection-header-filter-control > i svg {
  width: 16px;
  height: 16px;
}

.module-unified-filters .projection-header-filter-control input,
.module-unified-filters .projection-header-filter-control select {
  height: 44px;
  min-height: 44px;
  padding-right: 16px;
  font-size: 10.5px;
}

.module-unified-filters .projection-header-filter-control input[type="date"] {
  padding-right: 0;
  letter-spacing: -.035em;
}

.module-unified-filters .projection-header-period-switch { padding:4px; }

.module-unified-filters .projection-header-period-switch button {
  height: 40px;
  padding-inline: 5px;
  border-radius: 9px;
  font-size: 10.5px;
}

.module-unified-filters .projection-header-actions {
  display: flex;
  min-width: 0;
  align-items: center;
}

.module-header-refresh {
  display: flex;
  width: 100%;
  min-width: 0;
  height: 80px;
  align-items: center;
  justify-content: flex-start;
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff;
  cursor: pointer;
}

.module-header-refresh > i {
  display: grid;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  place-items: center;
  border: 1px solid rgba(155,210,86,.29);
  border-radius: 13px;
  background: radial-gradient(circle at 31% 24%,rgba(171,225,100,.27),transparent 48%),linear-gradient(145deg,#4e7932,#263f22);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.13),0 6px 13px rgba(0,0,0,.14);
}

.module-header-refresh > i svg { width:19px;height:19px; }

.module-header-refresh > span {
  display: grid;
  min-width: 0;
  gap: 3px;
  text-align: left;
}

.module-header-refresh > span b {
  font-size: 8.5px;
  font-weight: 900;
  letter-spacing: .04em;
  white-space: nowrap;
  text-transform: uppercase;
}

.module-header-refresh > span small {
  color: rgba(223,237,220,.52);
  font-size: 6px;
  font-weight: 700;
  white-space: nowrap;
}

.module-header-refresh:hover > i {
  transform: translateY(-1px) rotate(8deg);
  background: radial-gradient(circle at 31% 24%,rgba(193,239,126,.34),transparent 48%),linear-gradient(145deg,#639341,#315329);
}

.module-header-refresh.is-loading > i svg { animation:executive-spin .8s linear infinite; }
.module-header-refresh:disabled { cursor:wait;opacity:.72; }

.projection-secondary-actions {
  display: flex;
  justify-content: flex-end;
  margin: 0 0 10px;
}

.projection-secondary-actions .projection-ai-open {
  min-height: 38px;
  padding: 0 13px;
  border-radius: 11px;
  font-size: 9px;
}

@media(max-width:1450px) {
  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-controls {
    grid-template-columns: 1fr;
  }

  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs {
    grid-template-rows: auto auto auto;
  }

  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-story,
  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-panel,
  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-nav {
    grid-column: 1;
  }

  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-story { grid-row:1;min-height:150px; }
  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-panel { grid-row:2;min-height:0; }
  :is(body[data-view="hubspot"],body[data-view="proyeccion"]) .app-module-hero.has-module-tabs > .app-module-hero-nav { grid-row:3; }

  .app-module-hero-tools .module-unified-filters {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    row-gap: 10px;
  }

  .module-unified-filters > * { border-left:0; }
}

@media(max-width:700px) {
  .app-module-hero-tools .module-unified-filters {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    row-gap: 8px;
  }

  .module-unified-filters > *,
  .module-unified-filters > :first-child,
  .module-unified-filters > :last-child { padding-inline:7px; }

  .module-unified-filters .projection-header-advisor .projection-header-filter-control {
    grid-template-columns: 28px minmax(0,1fr);
    gap: 5px;
    padding-inline: 5px 6px;
  }

  .module-unified-filters .projection-header-advisor .projection-header-filter-control > i {
    width: 28px;
    height: 28px;
  }

  .module-unified-filters .projection-header-advisor select {
    padding-right: 13px;
    font-size: 9px;
    letter-spacing: -.035em;
  }

  .projection-secondary-actions { margin-bottom:8px; }
}

/* Encabezados v39 — coincidencia visual exacta con los filtros del Dashboard */
.app-module-hero-tools .module-unified-filters {
  grid-template-columns:
    minmax(140px,1fr)
    minmax(78px,.6fr)
    minmax(132px,1fr)
    minmax(132px,1fr)
    minmax(160px,1.32fr)
    minmax(88px,.68fr);
}

.module-unified-filters .projection-header-filter-control input:not([type="checkbox"]):not([type="radio"]),
.module-unified-filters .projection-header-filter-control select {
  width: 100%;
  min-width: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #fff !important;
  box-shadow: none !important;
  -webkit-text-fill-color: #fff;
  color-scheme: dark;
  outline: 0;
}

body[data-view="dashboard"] .executive-date-control input[type="date"]::-webkit-calendar-picker-indicator,
.module-unified-filters .projection-header-filter-control input[type="date"]::-webkit-calendar-picker-indicator {
  width: 14px;
  height: 14px;
  margin-left: 3px;
  padding: 0;
  background: center / 14px 14px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M8 3v4M16 3v4M3 10h18'/%3E%3C/svg%3E");
  opacity: .88;
  filter: none;
  cursor: pointer;
}

body[data-view="dashboard"] .executive-control-icon,
body[data-view="dashboard"] .executive-date-control > i {
  color: #fff !important;
}

body[data-view="dashboard"] .executive-control-icon svg,
body[data-view="dashboard"] .executive-date-control > i svg {
  fill: none !important;
  stroke: #fff !important;
}

.module-unified-filters .projection-header-control-icon,
.module-unified-filters .projection-header-filter-control > i,
.module-unified-filters .module-header-refresh > i {
  color: #fff !important;
}

.module-unified-filters svg {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.module-header-refresh {
  gap: 8px;
}

.module-header-refresh > i {
  width: 44px;
  height: 44px;
  flex-basis: 44px;
}

.module-header-refresh > i svg {
  width: 21px;
  height: 21px;
}

/* Dashboard v41 — encabezado único y scroll contenido dentro del análisis */
body[data-view="dashboard"] .executive-review-context {
  position: relative;
  z-index: 2;
  display: none;
  width: 100%;
  min-width: 0;
  grid-template-columns: auto minmax(0,1fr);
  grid-template-areas:
    "back identity"
    "picker picker";
  align-content: center;
  align-items: center;
  gap: 8px 11px;
  padding: 12px 24px;
  color: #fff;
}

body[data-view="dashboard"].dashboard-review-active .executive-story-copy {
  display: none;
}

body[data-view="dashboard"].dashboard-review-active .executive-review-context {
  display: grid;
}

body[data-view="dashboard"] .executive-review-context .executive-review-back {
  grid-area: back;
  min-height: 32px;
  padding-inline: 11px;
  font-size: 8px;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-review-identity {
  grid-area: identity;
  min-width: 0;
}

body[data-view="dashboard"] .executive-review-identity > span,
body[data-view="dashboard"] .executive-review-context .executive-review-picker > span {
  color: #a9d95b;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-review-identity h2 {
  overflow: hidden;
  margin: 2px 0 0;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(18px,1.25vw,22px);
  line-height: 1.05;
  letter-spacing: -.035em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-review-identity p {
  margin: 2px 0 0;
  color: rgba(222,236,225,.62);
  font-size: 7px;
  line-height: 1.2;
}

body[data-view="dashboard"] .executive-review-context .executive-review-picker {
  grid-area: picker;
  display: grid;
  width: 100%;
  min-width: 0;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 8px;
}

body[data-view="dashboard"] .executive-review-context .executive-review-picker select {
  width: 100%;
  height: 34px;
  min-width: 0;
  padding: 0 30px 0 10px;
  border-radius: 9px;
  font-size: 8px;
}

@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-hero {
    height: 144px;
    min-height: 144px;
    max-height: 144px;
    grid-template-columns: minmax(315px,24%) minmax(0,76%);
  }

  body[data-view="dashboard"] .executive-story-copy {
    width: 100%;
    padding: 15px 28px;
  }

  body[data-view="dashboard"] .executive-story-copy h2 {
    font-size: clamp(22px,1.45vw,25px);
  }

  body[data-view="dashboard"] .executive-story-copy > i {
    width: 42px;
    margin-block: 10px 8px;
  }

  body[data-view="dashboard"] .executive-story-copy p {
    font-size: 9.5px;
    line-height: 1.35;
  }

  body[data-view="dashboard"] .executive-hero-actions {
    padding: 7px 13px 7px 18px;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    height: 66px;
    min-height: 66px;
    padding-inline: 9px;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff {
    grid-template-columns: 38px minmax(0,1fr);
    gap: 8px;
    padding-left: 0;
    padding-right: 12px;
  }

  body[data-view="dashboard"] .executive-control-icon,
  body[data-view="dashboard"] .executive-refresh > i {
    width: 38px;
    height: 38px;
    border-radius: 11px;
  }

  body[data-view="dashboard"] .executive-cutoff span,
  body[data-view="dashboard"] .executive-filter > span {
    margin-bottom: 4px;
    font-size: 7px;
  }

  body[data-view="dashboard"] .executive-cutoff strong { font-size:10px; }
  body[data-view="dashboard"] .executive-cutoff small { margin-top:2px;font-size:5.8px; }

  body[data-view="dashboard"] .executive-filter-control,
  body[data-view="dashboard"] .executive-period-switch {
    height: 42px;
    border-radius: 11px;
  }

  body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
    min-height: 38px;
    font-size: 9.5px;
  }

  body[data-view="dashboard"] .executive-period-switch { padding:3px; }
  body[data-view="dashboard"] .executive-period-switch button { height:34px;font-size:9px; }
  body[data-view="dashboard"] .executive-filter-control > i { width:27px;height:27px;border-radius:8px; }
  body[data-view="dashboard"] .executive-refresh > span b { font-size:8px; }
  body[data-view="dashboard"] .executive-refresh > span small { font-size:5.6px; }
}

@media(min-width:721px) and (max-width:1450px) {
  body[data-view="dashboard"] .executive-hero {
    min-height: 180px;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    height: 70px;
    min-height: 70px;
  }
}

@media(min-width:721px) {
  html.dashboard-review-open body[data-view="dashboard"] .content {
    overflow: hidden !important;
    padding: 10px 12px 12px !important;
    overscroll-behavior: none;
    touch-action: auto;
  }

  html.dashboard-review-open body[data-view="dashboard"] .executive-dashboard {
    display: grid;
    height: 100%;
    min-height: 0;
    grid-template-rows: auto minmax(0,1fr);
    overflow: hidden;
  }

  html.dashboard-review-open body[data-view="dashboard"] .executive-content {
    display: block;
    height: auto;
    min-height: 0;
    margin-top: 9px;
    padding: 0 14px 12px;
    overflow: hidden;
  }

  html.dashboard-review-open body[data-view="dashboard"] .executive-review-view {
    height: 100%;
    min-height: 0;
    overflow: hidden;
    border-radius: 22px;
  }

  html.dashboard-review-open body[data-view="dashboard"] .executive-review-view .executive-analysis-body,
  html.dashboard-review-open body[data-view="dashboard"] .executive-analysis-body.is-primary-module {
    height: 100% !important;
    min-height: 0 !important;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(82,139,55,.58) rgba(229,238,229,.72);
    touch-action: pan-x pan-y;
  }

  html.dashboard-review-open body[data-view="dashboard"] .executive-analysis-body::-webkit-scrollbar {
    width: 10px;
    height: 10px;
  }

  html.dashboard-review-open body[data-view="dashboard"] .executive-analysis-body::-webkit-scrollbar-track {
    background: rgba(229,238,229,.72);
  }

  html.dashboard-review-open body[data-view="dashboard"] .executive-analysis-body::-webkit-scrollbar-thumb {
    border: 2px solid rgba(229,238,229,.72);
    border-radius: 999px;
    background: rgba(82,139,55,.58);
  }
}

@media(max-width:720px) {
  body[data-view="dashboard"] .executive-hero {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  body[data-view="dashboard"] .executive-hero-actions {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 7px !important;
    padding: 9px !important;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    height: 64px;
    min-height: 64px;
    grid-column: auto !important;
    padding: 6px !important;
    border: 1px solid rgba(197,225,186,.13) !important;
    border-radius: 12px !important;
  }

  body[data-view="dashboard"] .executive-control-icon,
  body[data-view="dashboard"] .executive-refresh > i {
    width: 36px;
    height: 36px;
    border-radius: 10px;
  }

  body[data-view="dashboard"] .executive-cutoff {
    grid-template-columns: 36px minmax(0,1fr);
    gap: 7px;
  }

  body[data-view="dashboard"] .executive-cutoff small,
  body[data-view="dashboard"] .executive-refresh > span small {
    display: none;
  }

  body[data-view="dashboard"] .executive-filter-control,
  body[data-view="dashboard"] .executive-period-switch {
    height: 42px;
  }

  body[data-view="dashboard"] .executive-filter .executive-filter-control .form-control {
    min-height: 38px;
    font-size: 9px;
  }

  body[data-view="dashboard"] .executive-review-context {
    grid-template-columns: 1fr;
    grid-template-areas: "back" "identity" "picker";
    padding: 16px;
  }

  body[data-view="dashboard"] .executive-review-context .executive-review-back {
    justify-self: start;
  }

  body[data-view="dashboard"] .executive-review-context .executive-review-picker {
    grid-template-columns: 1fr;
  }

  body[data-view="dashboard"].dashboard-review-active .executive-review-view {
    height: clamp(420px,72dvh,720px) !important;
    min-height: 0 !important;
    overflow: hidden;
  }

  body[data-view="dashboard"].dashboard-review-active .executive-review-view .executive-analysis-body,
  body[data-view="dashboard"].dashboard-review-active .executive-analysis-body.is-primary-module {
    height: 100% !important;
    min-height: 0 !important;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(82,139,55,.58) rgba(229,238,229,.72);
  }
}

html.dashboard-review-open body[data-view="dashboard"] .executive-review-context,
html.dashboard-review-open body[data-view="dashboard"] .executive-review-context button,
html.dashboard-review-open body[data-view="dashboard"] .executive-review-context select,
html.dashboard-review-open body[data-view="dashboard"] .executive-review-view,
html.dashboard-review-open body[data-view="dashboard"] [data-deep-orbit-index],
html.dashboard-review-open body[data-view="dashboard"] [data-deep-item-index] {
  pointer-events: auto;
}

/* Dashboard v42 — ficha del asesor dentro del análisis, sin cambiar de ruta */
body[data-view="dashboard"] .executive-deep-selection-actions {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(0,1fr);
  gap: 8px;
  margin-top: 12px;
}

body[data-view="dashboard"] .executive-deep-selection-actions .executive-deep-open-advisor {
  margin-top: 0;
}

body[data-view="dashboard"] .executive-deep-open-advisor.is-secondary {
  border-color: #dfe6df;
  background: rgba(247,249,246,.88);
  box-shadow: none;
  color: #647168;
}

body[data-view="dashboard"] .executive-deep-open-advisor.is-secondary > i {
  background: #839087;
}

body[data-view="dashboard"] .executive-deep-module.is-advisor-open > .executive-deep-overview,
body[data-view="dashboard"] .executive-deep-module.is-advisor-open > .executive-deep-metric-rail,
body[data-view="dashboard"] .executive-deep-module.is-advisor-open > .executive-deep-detail {
  display: none !important;
}

body[data-view="dashboard"] .executive-advisor-dossier {
  display: grid;
  gap: 14px;
  min-width: 0;
  color: #14281c;
}

body[data-view="dashboard"] .executive-advisor-dossier-head {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 16px;
  padding: 17px 20px;
  border: 1px solid rgba(193,224,184,.16);
  border-radius: 20px;
  background:
    radial-gradient(circle at 84% -70%,rgba(147,205,76,.25),transparent 23rem),
    linear-gradient(105deg,#0e281b,#08150f 72%);
  box-shadow: 0 16px 34px rgba(6,34,22,.18),inset 0 1px 0 rgba(255,255,255,.08);
  color: #fff;
}

body[data-view="dashboard"] .executive-advisor-dossier-head > button {
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid rgba(210,235,209,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  color: #edf7ee;
  cursor: pointer;
  font: 850 9px/1 Manrope,sans-serif;
}

body[data-view="dashboard"] .executive-advisor-dossier-head > button:hover,
body[data-view="dashboard"] .executive-advisor-dossier-head > button:focus-visible {
  border-color: rgba(171,218,103,.48);
  background: rgba(143,194,71,.15);
  outline: none;
}

body[data-view="dashboard"] .executive-advisor-dossier-head > div { min-width:0; }
body[data-view="dashboard"] .executive-advisor-dossier-head > div > span {
  color: #a9d95b;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-advisor-dossier-head h3 {
  margin: 3px 0 0;
  overflow: hidden;
  color: #fff;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(24px,2vw,31px);
  line-height: 1;
  letter-spacing: -.045em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-advisor-dossier-head p {
  margin: 5px 0 0;
  color: rgba(222,236,225,.66);
  font-size: 9px;
}

body[data-view="dashboard"] .executive-advisor-dossier-head > em {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 11px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: #dcebdc;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
}

body[data-view="dashboard"] .executive-advisor-dossier-head > em > i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: currentColor;
}

body[data-view="dashboard"] .executive-advisor-dossier-head > em.is-excellent,
body[data-view="dashboard"] .executive-advisor-dossier-head > em.is-good { color:#9edb7d; }
body[data-view="dashboard"] .executive-advisor-dossier-head > em.is-warning { color:#f0b735; }
body[data-view="dashboard"] .executive-advisor-dossier-head > em.is-risk { color:#ef7777; }

body[data-view="dashboard"] .executive-advisor-dossier-kpis {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
}

body[data-view="dashboard"] .executive-advisor-dossier-kpis > article {
  min-width: 0;
  padding: 16px 17px;
  border: 1px solid rgba(41,76,50,.12);
  border-radius: 17px;
  background: linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,248,243,.92));
  box-shadow: 0 12px 27px rgba(16,39,24,.08),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-advisor-dossier-kpis span,
body[data-view="dashboard"] .executive-advisor-dossier-kpis strong,
body[data-view="dashboard"] .executive-advisor-dossier-kpis small { display:block; }
body[data-view="dashboard"] .executive-advisor-dossier-kpis span { min-height:22px;color:#68766c;font-size:8px;font-weight:850; }
body[data-view="dashboard"] .executive-advisor-dossier-kpis strong { margin-top:7px;color:#2f7533;font-family:"Space Grotesk",Manrope,sans-serif;font-size:23px;letter-spacing:-.045em; }
body[data-view="dashboard"] .executive-advisor-dossier-kpis small { margin-top:4px;color:#88938b;font-size:7px; }

body[data-view="dashboard"] .executive-advisor-dossier-body {
  display: grid;
  grid-template-columns: minmax(250px,.7fr) minmax(0,2.3fr);
  gap: 12px;
  align-items: start;
}

body[data-view="dashboard"] .executive-advisor-dossier-profile,
body[data-view="dashboard"] .executive-advisor-dossier-detail {
  min-width: 0;
  border: 1px solid rgba(41,76,50,.12);
  border-radius: 20px;
  background: linear-gradient(145deg,rgba(255,255,255,.98),rgba(245,248,244,.94));
  box-shadow: 0 15px 32px rgba(16,39,24,.08),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-advisor-dossier-profile {
  display: grid;
  justify-items: center;
  padding: 22px 20px;
  text-align: center;
}

body[data-view="dashboard"] .executive-advisor-dossier-profile .executive-deep-profile-photo {
  width: 112px;
  height: 112px;
  flex-basis: 112px;
}

body[data-view="dashboard"] .executive-advisor-dossier-name { margin-top:12px; }
body[data-view="dashboard"] .executive-advisor-dossier-name > span { color:#7a887e;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.08em; }
body[data-view="dashboard"] .executive-advisor-dossier-name h3 { margin:4px 0 0;color:#172b1d;font-family:"Space Grotesk",Manrope,sans-serif;font-size:20px;line-height:1; }
body[data-view="dashboard"] .executive-advisor-dossier-name b { display:inline-block;margin-top:8px;padding:5px 9px;border-radius:999px;background:#edf5ea;color:#4d7e3e;font-size:8px; }

body[data-view="dashboard"] .executive-advisor-dossier-profile > dl {
  display: grid;
  width: 100%;
  gap: 7px;
  margin: 18px 0 0;
  text-align: left;
}

body[data-view="dashboard"] .executive-advisor-dossier-profile > dl > div {
  padding: 10px 11px;
  border: 1px solid #e1e8df;
  border-radius: 12px;
  background: rgba(250,252,249,.88);
}

body[data-view="dashboard"] .executive-advisor-dossier-profile dt { color:#7d897f;font-size:7px;font-weight:800; }
body[data-view="dashboard"] .executive-advisor-dossier-profile dd { margin:4px 0 0;color:#24372a;font-size:9px;font-weight:850; }
body[data-view="dashboard"] .executive-advisor-dossier-profile > small { margin-top:15px;color:#7d897f;font-size:7px;line-height:1.5;text-align:left; }

body[data-view="dashboard"] .executive-advisor-dossier-detail { overflow:hidden; }
body[data-view="dashboard"] .executive-advisor-dossier-detail > header {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:17px 19px;
  border-bottom:1px solid #e0e7df;
}
body[data-view="dashboard"] .executive-advisor-dossier-detail > header span { color:#568e3e;font-size:7px;font-weight:900;letter-spacing:.09em;text-transform:uppercase; }
body[data-view="dashboard"] .executive-advisor-dossier-detail > header h3 { margin:3px 0 0;color:#172b1d;font-family:"Space Grotesk",Manrope,sans-serif;font-size:17px; }
body[data-view="dashboard"] .executive-advisor-dossier-detail > header > strong { padding:7px 10px;border-radius:999px;background:#edf5ea;color:#4b7e3c;font-size:8px;white-space:nowrap; }
body[data-view="dashboard"] .executive-advisor-dossier-detail > div { max-height:520px;overflow:auto;scrollbar-width:thin; }
body[data-view="dashboard"] .executive-advisor-dossier-detail table { width:100%;min-width:760px;border-collapse:collapse; }
body[data-view="dashboard"] .executive-advisor-dossier-detail th { position:sticky;top:0;z-index:1;padding:10px 12px;background:#f2f6f1;color:#68756b;font-size:7px;text-align:left;text-transform:uppercase;letter-spacing:.05em; }
body[data-view="dashboard"] .executive-advisor-dossier-detail td { padding:11px 12px;border-top:1px solid #e7ece6;color:#48564c;font-size:8px;vertical-align:middle; }
body[data-view="dashboard"] .executive-advisor-dossier-detail td strong,
body[data-view="dashboard"] .executive-advisor-dossier-detail td small { display:block; }
body[data-view="dashboard"] .executive-advisor-dossier-detail td strong { color:#1c3122;font-size:9px; }
body[data-view="dashboard"] .executive-advisor-dossier-detail td small { margin-top:3px;color:#89938b;font-size:7px; }
body[data-view="dashboard"] .executive-advisor-dossier-detail td > em { display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border-radius:999px;background:#f1f3f1;font-size:7px;font-style:normal;font-weight:850;white-space:nowrap; }
body[data-view="dashboard"] .executive-advisor-dossier-detail td > em > i { width:7px;height:7px;border-radius:50%;background:var(--deep-row-tone); }
body[data-view="dashboard"] .executive-advisor-dossier-empty { padding:34px;color:#7d897f;text-align:center; }

@media(max-width:1450px) and (min-width:1051px) {
  body[data-view="dashboard"] .executive-deep-selection .executive-deep-selection-actions { grid-column:2 / -1;margin-top:0; }
}

@media(max-width:1100px) {
  body[data-view="dashboard"] .executive-advisor-dossier-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-advisor-dossier-body { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-advisor-dossier-profile { grid-template-columns:auto minmax(0,1fr);justify-items:start;gap:0 18px;text-align:left; }
  body[data-view="dashboard"] .executive-advisor-dossier-profile > dl,
  body[data-view="dashboard"] .executive-advisor-dossier-profile > small { grid-column:1 / -1; }
}

@media(max-width:680px) {
  body[data-view="dashboard"] .executive-deep-selection-actions { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-advisor-dossier-head { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-advisor-dossier-head > button { justify-self:start; }
  body[data-view="dashboard"] .executive-advisor-dossier-head > em { justify-self:start; }
  body[data-view="dashboard"] .executive-advisor-dossier-kpis { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-advisor-dossier-profile { grid-template-columns:1fr;justify-items:center;text-align:center; }
  body[data-view="dashboard"] .executive-advisor-dossier-profile > dl,
  body[data-view="dashboard"] .executive-advisor-dossier-profile > small { grid-column:auto; }
}

/* Dashboard v41 — integración gerencial SAP con valores y fórmulas trazables */
body[data-view="dashboard"] .executive-sap-panel {
  position: relative;
  display: grid;
  box-sizing: border-box;
  gap: 15px;
  width: 100%;
  overflow: hidden;
  padding: 20px;
  border: 1px solid rgba(27,92,63,.13);
  border-radius: 24px;
  background:
    radial-gradient(circle at 95% 0%,rgba(155,216,84,.14),transparent 23rem),
    radial-gradient(circle at 4% 100%,rgba(36,176,154,.07),transparent 22rem),
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,247,241,.82));
  box-shadow: 0 20px 46px rgba(8,48,34,.10),inset 0 1px 0 #fff;
}

body[data-view="dashboard"] .executive-sap-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
}

body[data-view="dashboard"] .executive-sap-head > div { min-width:0; }

body[data-view="dashboard"] .executive-sap-head span {
  display: block;
  color: #64952f;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-sap-head h2 {
  margin: 4px 0 0;
  color: #12271b;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(19px,1.45vw,25px);
  line-height: 1.08;
  letter-spacing: -.035em;
}

body[data-view="dashboard"] .executive-sap-head p {
  max-width: 850px;
  margin: 6px 0 0;
  color: #65766b;
  font-size: 10px;
  line-height: 1.45;
}

body[data-view="dashboard"] .executive-sap-head > em {
  flex: 0 0 auto;
  padding: 8px 12px;
  border: 1px solid rgba(85,144,49,.22);
  border-radius: 999px;
  background: rgba(116,177,63,.09);
  color: #4d842d;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-sap-head > em.is-partial,
body[data-view="dashboard"] .executive-sap-panel.is-unavailable .executive-sap-head > em {
  border-color: rgba(214,153,18,.25);
  background: rgba(221,164,35,.10);
  color: #a36f00;
}

body[data-view="dashboard"] .executive-sap-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 10px;
}

body[data-view="dashboard"] .executive-sap-card {
  --sap-tone:#4f8b34;
  display: grid;
  min-width: 0;
  min-height: 184px;
  align-content: start;
  gap: 10px;
  padding: 14px;
  border: 1px solid color-mix(in srgb,var(--sap-tone) 18%,#d9e3dc);
  border-top: 2px solid var(--sap-tone);
  border-radius: 17px;
  background:
    radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--sap-tone) 11%,transparent),transparent 9rem),
    rgba(255,255,255,.74);
  box-shadow: 0 10px 24px rgba(11,47,30,.065),inset 0 1px 0 #fff;
  cursor: pointer;
  transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body[data-view="dashboard"] .executive-sap-card:hover { transform:translateY(-3px);box-shadow:0 15px 30px rgba(11,47,30,.11),inset 0 1px 0 #fff; }
body[data-view="dashboard"] .executive-sap-card:focus-visible { outline:3px solid color-mix(in srgb,var(--sap-tone) 40%,white);outline-offset:3px; }

body[data-view="dashboard"] .executive-sap-card.is-sales { --sap-tone:#4f8b34; }
body[data-view="dashboard"] .executive-sap-card.is-margin { --sap-tone:#218b72; }
body[data-view="dashboard"] .executive-sap-card.is-inventory { --sap-tone:#337caf; }
body[data-view="dashboard"] .executive-sap-card.is-customers { --sap-tone:#7d9d28; }
body[data-view="dashboard"] .executive-sap-card.is-receivables { --sap-tone:#b47a08; }
body[data-view="dashboard"] .executive-sap-card.is-validation { --sap-tone:#8d6f43; }

body[data-view="dashboard"] .executive-sap-card > header {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr);
  align-items: center;
  gap: 9px;
}

body[data-view="dashboard"] .executive-sap-card > header i {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 11px;
  background: color-mix(in srgb,var(--sap-tone) 12%,white);
  color: var(--sap-tone);
}

body[data-view="dashboard"] .executive-sap-card > header i svg { width:19px;height:19px; }
body[data-view="dashboard"] .executive-sap-card > header span { min-width:0; }

body[data-view="dashboard"] .executive-sap-card > header small,
body[data-view="dashboard"] .executive-sap-card > header b {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-sap-card > header small {
  color: var(--sap-tone);
  font-size: 6px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body[data-view="dashboard"] .executive-sap-card > header b {
  margin-top: 3px;
  color: #1c2f23;
  font-size: 9px;
  line-height: 1.2;
}

body[data-view="dashboard"] .executive-sap-card > strong {
  overflow: hidden;
  margin-top: 5px;
  color: var(--sap-tone);
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(21px,1.42vw,28px);
  line-height: 1;
  letter-spacing: -.05em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-sap-card > p {
  min-height: 24px;
  margin: 0;
  color: #53655a;
  font-size: 8px;
  font-weight: 750;
  line-height: 1.42;
}

body[data-view="dashboard"] .executive-sap-card > footer {
  display: grid;
  gap: 5px;
  margin-top: auto;
  padding-top: 9px;
  border-top: 1px solid rgba(43,69,53,.09);
  color: #7a877f;
  font-size: 7px;
  line-height: 1.35;
}

body[data-view="dashboard"] .executive-sap-card > footer em { color:var(--sap-tone);font-size:6px;font-style:normal;font-weight:900;letter-spacing:.03em;text-transform:uppercase; }

body[data-view="dashboard"] .executive-sap-foot {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  align-items: center;
  gap: 18px;
  padding: 12px 14px;
  border: 1px solid rgba(52,100,72,.10);
  border-radius: 14px;
  background: rgba(237,245,239,.66);
}

body[data-view="dashboard"] .executive-sap-foot > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #467831;
  font-size: 8px;
  font-weight: 850;
  white-space: nowrap;
}

body[data-view="dashboard"] .executive-sap-foot > span svg { width:16px;height:16px; }

body[data-view="dashboard"] .executive-sap-foot > p {
  margin: 0;
  color: #6d796f;
  font-size: 8px;
  line-height: 1.45;
  text-align: right;
}

body[data-view="dashboard"] .executive-sap-foot > p b { color:#785d2d; }

body[data-view="dashboard"] .executive-sap-empty {
  display: flex;
  min-height: 106px;
  align-items: center;
  gap: 14px;
  padding: 18px;
  border: 1px dashed rgba(119,137,125,.28);
  border-radius: 17px;
  background: rgba(255,255,255,.58);
}

body[data-view="dashboard"] .executive-sap-empty > i {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  border-radius: 14px;
  background: #edf3ed;
  color: #738176;
}

body[data-view="dashboard"] .executive-sap-empty > i svg { width:22px;height:22px; }
body[data-view="dashboard"] .executive-sap-empty strong { color:#26382d;font-size:11px; }
body[data-view="dashboard"] .executive-sap-empty p { margin:4px 0 0;color:#728077;font-size:9px; }

@media(max-width:1450px) {
  body[data-view="dashboard"] .executive-sap-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-sap-card { min-height:165px; }
}

@media(max-width:900px) {
  body[data-view="dashboard"] .executive-sap-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-view="dashboard"] .executive-sap-foot { grid-template-columns:1fr;gap:7px; }
  body[data-view="dashboard"] .executive-sap-foot > p { text-align:left; }
}

@media(max-width:620px) {
  body[data-view="dashboard"] .executive-sap-panel { padding:15px;border-radius:19px; }
  body[data-view="dashboard"] .executive-sap-head { align-items:flex-start;flex-direction:column;gap:10px; }
  body[data-view="dashboard"] .executive-sap-grid { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-sap-card { min-height:152px; }
}

/* Explorador SAP v1 — trazabilidad y detalle de solo lectura */
body[data-view="sap"] .content {
  overflow-x: hidden;
  overflow-y: auto;
  padding: 24px;
}

body[data-view="sap"] .sap-explorer {
  --sap-ink:#10291d;
  --sap-green:#63a63a;
  --sap-teal:#1d8d75;
  display: grid;
  gap: 16px;
  min-width: 0;
}

body[data-view="sap"] .sap-explorer-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,390px);
  align-items: end;
  gap: 30px;
  overflow: hidden;
  min-height: 250px;
  padding: clamp(28px,3.2vw,48px);
  border: 1px solid rgba(136,211,105,.22);
  border-radius: 30px;
  background:
    radial-gradient(circle at 82% -10%,rgba(151,220,91,.27),transparent 25rem),
    radial-gradient(circle at 8% 110%,rgba(28,165,136,.23),transparent 23rem),
    linear-gradient(132deg,#071d15 0%,#123928 58%,#173e2c 100%);
  box-shadow: 0 26px 60px rgba(4,37,25,.22),inset 0 1px 0 rgba(255,255,255,.11);
  color: #fff;
}

body[data-view="sap"] .sap-explorer-hero::before,
body[data-view="sap"] .sap-explorer-hero::after {
  position: absolute;
  content: "";
  pointer-events: none;
  transform: rotate(35deg);
  border: 1px solid rgba(190,240,167,.12);
  background: linear-gradient(145deg,rgba(255,255,255,.055),transparent 64%);
}

body[data-view="sap"] .sap-explorer-hero::before { width:210px;height:210px;right:18%;top:-115px;border-radius:42px; }
body[data-view="sap"] .sap-explorer-hero::after { width:145px;height:145px;right:2%;bottom:-86px;border-radius:34px; }

body[data-view="sap"] .sap-explorer-title,
body[data-view="sap"] .sap-connection-card { position:relative;z-index:1; }

body[data-view="sap"] .sap-back-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 25px;
  color: #cce9c2;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
}

body[data-view="sap"] .sap-back-link svg { width:16px;height:16px; }
body[data-view="sap"] .sap-explorer-title > span { display:block;color:#8fd468;font-size:9px;font-weight:900;letter-spacing:.15em; }

body[data-view="sap"] .sap-explorer-title h1 {
  margin: 8px 0 0;
  font-family: "Space Grotesk",Manrope,sans-serif;
  font-size: clamp(32px,3.1vw,51px);
  line-height: .98;
  letter-spacing: -.055em;
}

body[data-view="sap"] .sap-explorer-title h1 em { color:#a2df72;font-style:normal; }
body[data-view="sap"] .sap-explorer-title p { max-width:670px;margin:15px 0 0;color:#b9cfc3;font-size:12px;line-height:1.55; }

body[data-view="sap"] .sap-connection-card {
  display: grid;
  grid-template-columns: 54px minmax(0,1fr);
  align-items: center;
  gap: 15px;
  padding: 18px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 19px;
  background: rgba(4,27,18,.48);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07),0 18px 36px rgba(0,0,0,.14);
  backdrop-filter: blur(14px);
}

body[data-view="sap"] .sap-connection-card > i {
  display: grid;
  width: 54px;
  height: 54px;
  place-items: center;
  border-radius: 16px;
  background: rgba(143,212,104,.12);
  color: #9add75;
}

body[data-view="sap"] .sap-connection-card > i svg { width:25px;height:25px; }
body[data-view="sap"] .sap-connection-card span,
body[data-view="sap"] .sap-connection-card strong,
body[data-view="sap"] .sap-connection-card small { display:block; }
body[data-view="sap"] .sap-connection-card span { color:#86a392;font-size:7px;font-weight:900;letter-spacing:.11em;text-transform:uppercase; }
body[data-view="sap"] .sap-connection-card strong { margin-top:5px;color:#f6fff9;font-size:13px; }
body[data-view="sap"] .sap-connection-card small { margin-top:4px;color:#a9c0b3;font-size:8px;line-height:1.45; }
body[data-view="sap"] .sap-connection-card.is-partial > i { background:rgba(234,178,45,.12);color:#e4b344; }
body[data-view="sap"] .sap-connection-card.is-disconnected > i { background:rgba(222,91,72,.12);color:#e47666; }

body[data-view="sap"] .sap-filter-bar {
  display: grid;
  grid-template-columns: minmax(142px,.7fr) minmax(142px,.7fr) minmax(180px,1fr) minmax(250px,1.35fr) auto 46px;
  align-items: end;
  gap: 10px;
  padding: 15px;
  border: 1px solid rgba(22,76,52,.11);
  border-radius: 20px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 14px 36px rgba(8,48,34,.08),inset 0 1px 0 #fff;
}

body[data-view="sap"] .sap-filter-bar label { display:grid;gap:6px;min-width:0; }
body[data-view="sap"] .sap-filter-bar label > span { color:#6f7f75;font-size:8px;font-weight:850;letter-spacing:.05em;text-transform:uppercase; }
body[data-view="sap"] .sap-filter-bar .form-control { box-sizing:border-box;width:100%;height:42px;border-color:#dce5df;background:#f8faf8;color:#25392c;font-size:10px; }

body[data-view="sap"] .sap-filter-submit,
body[data-view="sap"] .sap-filter-refresh {
  height: 42px;
  border: 0;
  border-radius: 13px;
  cursor: pointer;
}

body[data-view="sap"] .sap-filter-submit {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 16px;
  background: linear-gradient(135deg,#153e2b,#255a3d);
  box-shadow: 0 10px 20px rgba(12,66,43,.18);
  color: #fff;
}

body[data-view="sap"] .sap-filter-submit svg { width:17px;height:17px; }
body[data-view="sap"] .sap-filter-submit span,
body[data-view="sap"] .sap-filter-submit b,
body[data-view="sap"] .sap-filter-submit small { display:block;text-align:left;white-space:nowrap; }
body[data-view="sap"] .sap-filter-submit b { font-size:9px; }
body[data-view="sap"] .sap-filter-submit small { margin-top:2px;color:#bcd3c5;font-size:7px; }
body[data-view="sap"] .sap-filter-refresh { display:grid;width:46px;place-items:center;border:1px solid #d9e4dc;background:#f4f8f5;color:#467b59; }
body[data-view="sap"] .sap-filter-refresh svg { width:18px;height:18px; }
body[data-view="sap"] button:disabled { cursor:not-allowed;opacity:.5; }

body[data-view="sap"] .sap-dataset-tabs {
  display: grid;
  grid-template-columns: repeat(7,minmax(0,1fr));
  gap: 8px;
}

body[data-view="sap"] .sap-dataset-tabs button {
  display: grid;
  grid-template-columns: 34px minmax(0,1fr);
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 66px;
  padding: 10px;
  border: 1px solid rgba(31,77,55,.11);
  border-radius: 16px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 8px 18px rgba(11,53,35,.045),inset 0 1px 0 #fff;
  color: #506257;
  cursor: pointer;
  text-align: left;
  transition: transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}

body[data-view="sap"] .sap-dataset-tabs button:hover { transform:translateY(-2px);border-color:rgba(76,143,48,.35);box-shadow:0 13px 24px rgba(11,53,35,.09); }
body[data-view="sap"] .sap-dataset-tabs button.is-active { border-color:rgba(80,145,48,.42);background:linear-gradient(145deg,#f9fdf7,#edf7e9);box-shadow:0 12px 26px rgba(62,119,38,.12),inset 0 1px 0 #fff; }
body[data-view="sap"] .sap-dataset-tabs button > i { display:grid;width:34px;height:34px;place-items:center;border-radius:11px;background:#edf3ef;color:#64766b; }
body[data-view="sap"] .sap-dataset-tabs button.is-active > i { background:#e2f1da;color:#548d35; }
body[data-view="sap"] .sap-dataset-tabs svg { width:17px;height:17px; }
body[data-view="sap"] .sap-dataset-tabs span,
body[data-view="sap"] .sap-dataset-tabs small,
body[data-view="sap"] .sap-dataset-tabs b { display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
body[data-view="sap"] .sap-dataset-tabs small { color:#91a097;font-size:6px;font-weight:900;letter-spacing:.07em;text-transform:uppercase; }
body[data-view="sap"] .sap-dataset-tabs b { margin-top:3px;color:#2d4034;font-size:8px; }

body[data-view="sap"] .sap-insight-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(300px,360px);
  align-items: stretch;
  gap: 14px;
}

body[data-view="sap"] .sap-summary-panel,
body[data-view="sap"] .sap-trace-panel,
body[data-view="sap"] .sap-data-panel {
  min-width: 0;
  border: 1px solid rgba(30,78,56,.11);
  border-radius: 22px;
  background: rgba(255,255,255,.93);
  box-shadow: 0 16px 38px rgba(8,48,34,.075),inset 0 1px 0 #fff;
}

body[data-view="sap"] .sap-summary-panel { padding:20px; }
body[data-view="sap"] .sap-trace-panel { overflow:hidden;background:linear-gradient(155deg,#102e21,#173e2c);color:#fff; }

body[data-view="sap"] .sap-section-head,
body[data-view="sap"] .sap-data-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
}

body[data-view="sap"] .sap-section-head > div,
body[data-view="sap"] .sap-data-head > div { min-width:0; }
body[data-view="sap"] .sap-section-head span,
body[data-view="sap"] .sap-data-head span,
body[data-view="sap"] .sap-trace-panel > header span { color:#619437;font-size:7px;font-weight:900;letter-spacing:.12em;text-transform:uppercase; }
body[data-view="sap"] .sap-section-head h2,
body[data-view="sap"] .sap-data-head h2,
body[data-view="sap"] .sap-trace-panel > header h2 { margin:4px 0 0;color:var(--sap-ink);font-family:"Space Grotesk",Manrope,sans-serif;font-size:20px;letter-spacing:-.035em; }
body[data-view="sap"] .sap-section-head p,
body[data-view="sap"] .sap-data-head p { max-width:720px;margin:6px 0 0;color:#6b7c71;font-size:9px;line-height:1.5; }
body[data-view="sap"] .sap-section-head > em { flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#eff6ec;color:#5b893e;font-size:7px;font-style:normal;font-weight:850; }

body[data-view="sap"] .sap-summary-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 9px;
  margin-top: 16px;
}

body[data-view="sap"] .sap-summary-grid article {
  min-width: 0;
  min-height: 91px;
  padding: 13px;
  border: 1px solid #e3eae5;
  border-radius: 15px;
  background: linear-gradient(145deg,#fff,#f6f9f6);
}

body[data-view="sap"] .sap-summary-grid article > span,
body[data-view="sap"] .sap-summary-grid article > strong,
body[data-view="sap"] .sap-summary-grid article > small { display:block;overflow:hidden;text-overflow:ellipsis; }
body[data-view="sap"] .sap-summary-grid article > span { min-height:20px;color:#7b8980;font-size:7px;font-weight:800;line-height:1.4;text-transform:uppercase; }
body[data-view="sap"] .sap-summary-grid article > strong { margin-top:7px;color:#1c5d40;font-family:"Space Grotesk",Manrope,sans-serif;font-size:15px;white-space:nowrap; }
body[data-view="sap"] .sap-summary-grid article > small { margin-top:7px;color:#a0aaa3;font-size:6px;white-space:nowrap; }

body[data-view="sap"] .sap-trace-panel > header { padding:20px 20px 15px;border-bottom:1px solid rgba(255,255,255,.08); }
body[data-view="sap"] .sap-trace-panel > header span { color:#8fd168; }
body[data-view="sap"] .sap-trace-panel > header h2 { color:#f5fff8; }
body[data-view="sap"] .sap-trace-list { margin:0;padding:5px 20px 14px; }
body[data-view="sap"] .sap-trace-list > div { display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.07); }
body[data-view="sap"] .sap-trace-list dt { color:#799487;font-size:7px;font-weight:850;text-transform:uppercase; }
body[data-view="sap"] .sap-trace-list dd { min-width:0;margin:0;color:#dcebe2;font-size:8px;font-weight:700;text-align:right;overflow-wrap:anywhere; }
body[data-view="sap"] .sap-trace-list code { color:#a7dc88;font-family:"Space Grotesk",monospace;font-size:7px; }
body[data-view="sap"] .sap-trace-status { display:inline-flex;align-items:center;gap:6px; }
body[data-view="sap"] .sap-trace-status i { width:7px;height:7px;border-radius:50%;background:#83cf5d;box-shadow:0 0 0 4px rgba(131,207,93,.10); }
body[data-view="sap"] .sap-trace-status.is-warning i { background:#e5ad43; }

body[data-view="sap"] .sap-formula-note { margin:0 14px 14px;padding:13px;border:1px solid rgba(152,215,113,.16);border-radius:13px;background:rgba(131,207,93,.07); }
body[data-view="sap"] .sap-formula-note span { color:#87ca62;font-size:6px;font-weight:900;letter-spacing:.1em; }
body[data-view="sap"] .sap-formula-note p { margin:5px 0 0;color:#c3d7ca;font-size:7px;line-height:1.5; }
body[data-view="sap"] .sap-warning-list { margin:0 14px 14px;padding:12px;border-radius:13px;background:rgba(225,168,48,.09); }
body[data-view="sap"] .sap-warning-list strong { color:#e3ba62;font-size:7px;text-transform:uppercase; }
body[data-view="sap"] .sap-warning-list p { display:flex;gap:6px;margin:7px 0 0;color:#d5c9ad;font-size:7px;line-height:1.4; }
body[data-view="sap"] .sap-warning-list svg { width:12px;height:12px;flex:0 0 12px; }

body[data-view="sap"] .sap-data-panel { overflow:hidden; }
body[data-view="sap"] .sap-data-head { align-items:center;padding:18px 20px;border-bottom:1px solid #e4ebe6; }
body[data-view="sap"] .sap-data-head > button { display:inline-flex;align-items:center;gap:7px;min-height:35px;padding:0 12px;border:1px solid #d8e4db;border-radius:11px;background:#f5f9f6;color:#416b51;font-size:8px;font-weight:850;cursor:pointer;white-space:nowrap; }
body[data-view="sap"] .sap-data-head > button svg { width:15px;height:15px; }
body[data-view="sap"] .sap-limit-warning { display:flex;align-items:center;gap:8px;padding:10px 20px;background:#fff8e7;color:#8d6919;font-size:8px;font-weight:750; }
body[data-view="sap"] .sap-limit-warning svg { width:14px;height:14px; }

body[data-view="sap"] .sap-table-wrap { max-height:580px;overflow:auto;scrollbar-width:thin; }
body[data-view="sap"] .sap-table-wrap table { width:100%;min-width:980px;border-collapse:collapse; }
body[data-view="sap"] .sap-table-wrap th { position:sticky;top:0;z-index:2;padding:11px 12px;border-bottom:1px solid #dce6df;background:#f0f5f1;color:#697a70;font-size:7px;font-weight:900;letter-spacing:.05em;text-align:left;text-transform:uppercase;white-space:nowrap; }
body[data-view="sap"] .sap-table-wrap td { max-width:250px;padding:11px 12px;border-bottom:1px solid #e8ede9;color:#4a5c51;font-size:8px;line-height:1.45;vertical-align:middle;overflow-wrap:anywhere; }
body[data-view="sap"] .sap-table-wrap tbody tr:nth-child(even) { background:#fbfcfb; }
body[data-view="sap"] .sap-table-wrap tbody tr:hover { background:#f4f9f2; }
body[data-view="sap"] .sap-table-wrap td .is-numeric { color:#1e4932;font-family:"Space Grotesk",Manrope,sans-serif;font-size:8px;white-space:nowrap; }
body[data-view="sap"] .sap-category-chip { display:inline-flex;padding:5px 8px;border-radius:999px;background:#edf5e9;color:#4f7c38;font-size:7px;font-style:normal;font-weight:850;white-space:nowrap; }
body[data-view="sap"] .sap-table-empty { height:130px!important;color:#89958d!important;text-align:center; }

body[data-view="sap"] .sap-pagination { display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 20px;border-top:1px solid #e4ebe6;background:#fafcfb; }
body[data-view="sap"] .sap-pagination > span { color:#78877e;font-size:8px; }
body[data-view="sap"] .sap-pagination > div { display:flex;align-items:center;gap:8px; }
body[data-view="sap"] .sap-pagination button { display:inline-flex;align-items:center;gap:5px;height:31px;padding:0 10px;border:1px solid #d8e3da;border-radius:9px;background:#fff;color:#4b6655;font-size:7px;font-weight:800;cursor:pointer; }
body[data-view="sap"] .sap-pagination button svg { width:13px;height:13px; }
body[data-view="sap"] .sap-pagination em { min-width:55px;color:#718078;font-size:7px;font-style:normal;text-align:center; }

body[data-view="sap"] .sap-data-message,
body[data-view="sap"] .sap-panel-empty { display:flex;align-items:center;gap:16px;min-height:150px;padding:30px; }
body[data-view="sap"] .sap-data-message > i,
body[data-view="sap"] .sap-panel-empty > i { display:grid;width:50px;height:50px;flex:0 0 50px;place-items:center;border-radius:15px;background:#eef4ef;color:#60786a; }
body[data-view="sap"] .sap-data-message > i svg,
body[data-view="sap"] .sap-panel-empty > i svg { width:23px;height:23px; }
body[data-view="sap"] .sap-data-message span { color:#75907f;font-size:7px;font-weight:900;letter-spacing:.1em; }
body[data-view="sap"] .sap-data-message strong,
body[data-view="sap"] .sap-panel-empty strong { display:block;margin-top:4px;color:#20382a;font-size:12px; }
body[data-view="sap"] .sap-data-message p,
body[data-view="sap"] .sap-panel-empty p { max-width:780px;margin:5px 0 0;color:#75837a;font-size:9px;line-height:1.5; }
body[data-view="sap"] .sap-data-message > button { margin-left:auto;padding:9px 12px;border:0;border-radius:10px;background:#173d2b;color:#fff;font-size:8px;font-weight:800;cursor:pointer; }
body[data-view="sap"] .sap-data-message.is-error > i { background:#fff0ed;color:#c85e4f; }
body[data-view="sap"] .sap-data-message.is-info > i { background:#edf4f7;color:#477b91; }

body[data-view="sap"] .sap-skeleton-head span,
body[data-view="sap"] .sap-skeleton-head h2,
body[data-view="sap"] .sap-skeleton-head p,
body[data-view="sap"] .sap-skeleton-card > *,
body[data-view="sap"] .sap-trace-skeleton i,
body[data-view="sap"] .sap-table-skeleton i {
  display:block;
  border-radius:7px;
  background:linear-gradient(90deg,rgba(198,212,203,.22),rgba(255,255,255,.72),rgba(198,212,203,.22));
  background-size:220% 100%;
  animation:sap-shimmer 1.35s linear infinite;
}

body[data-view="sap"] .sap-skeleton-head span { width:120px;height:7px; }
body[data-view="sap"] .sap-skeleton-head h2 { width:180px;height:21px; }
body[data-view="sap"] .sap-skeleton-head p { width:min(520px,70%);height:9px; }
body[data-view="sap"] .sap-skeleton-card > span { height:15px; }
body[data-view="sap"] .sap-skeleton-card > strong { width:75%;height:18px; }
body[data-view="sap"] .sap-skeleton-card > small { width:55%;height:7px; }
body[data-view="sap"] .sap-trace-skeleton { display:grid;gap:11px;padding:20px; }
body[data-view="sap"] .sap-trace-skeleton i { height:17px;background-color:rgba(255,255,255,.08); }
body[data-view="sap"] .sap-table-skeleton { display:grid;gap:1px;padding:12px 20px 20px; }
body[data-view="sap"] .sap-table-skeleton i { height:35px; }
@keyframes sap-shimmer { to { background-position:-220% 0; } }

body[data-view="sap"] :is(button,a,input):focus-visible { outline:3px solid rgba(111,173,68,.45);outline-offset:3px; }

@media(max-width:1450px) {
  body[data-view="sap"] .sap-filter-bar { grid-template-columns:repeat(3,minmax(140px,1fr)) auto 46px; }
  body[data-view="sap"] .sap-search-field { grid-column:1 / span 2; }
  body[data-view="sap"] .sap-dataset-tabs { grid-template-columns:repeat(4,minmax(0,1fr)); }
  body[data-view="sap"] .sap-summary-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

@media(max-width:1120px) {
  body[data-view="sap"] .sap-explorer-hero { grid-template-columns:1fr;align-items:start; }
  body[data-view="sap"] .sap-connection-card { max-width:500px; }
  body[data-view="sap"] .sap-insight-grid { grid-template-columns:1fr; }
  body[data-view="sap"] .sap-summary-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media(max-width:760px) {
  body[data-view="sap"] .content { padding:14px; }
  body[data-view="sap"] .sap-explorer-hero { min-height:0;padding:25px;border-radius:23px; }
  body[data-view="sap"] .sap-explorer-title h1 { font-size:34px; }
  body[data-view="sap"] .sap-filter-bar { grid-template-columns:1fr 1fr; }
  body[data-view="sap"] .sap-filter-bar label,
  body[data-view="sap"] .sap-search-field { grid-column:auto; }
  body[data-view="sap"] .sap-filter-bar label:nth-child(3),
  body[data-view="sap"] .sap-search-field { grid-column:1 / -1; }
  body[data-view="sap"] .sap-filter-submit { justify-content:center; }
  body[data-view="sap"] .sap-dataset-tabs { display:flex;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory; }
  body[data-view="sap"] .sap-dataset-tabs button { min-width:155px;scroll-snap-align:start; }
  body[data-view="sap"] .sap-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-view="sap"] .sap-section-head,
  body[data-view="sap"] .sap-data-head { flex-direction:column;align-items:flex-start; }
  body[data-view="sap"] .sap-pagination { align-items:flex-start;flex-direction:column; }
}

@media(max-width:480px) {
  body[data-view="sap"] .sap-explorer-title h1 { font-size:29px; }
  body[data-view="sap"] .sap-connection-card { grid-template-columns:44px minmax(0,1fr); }
  body[data-view="sap"] .sap-connection-card > i { width:44px;height:44px; }
  body[data-view="sap"] .sap-summary-grid { grid-template-columns:1fr; }
  body[data-view="sap"] .sap-filter-bar { grid-template-columns:1fr 46px; }
  body[data-view="sap"] .sap-filter-bar label { grid-column:1 / -1; }
}

@media(prefers-reduced-motion:reduce) {
  body[data-view="sap"] .sap-dataset-tabs button { transition:none; }
  body[data-view="sap"] .sap-skeleton-head *,
  body[data-view="sap"] .sap-skeleton-card > *,
  body[data-view="sap"] .sap-trace-skeleton i,
  body[data-view="sap"] .sap-table-skeleton i { animation:none; }
}

/* ─────────────────────────────────────────────────────────────
   Proyección · advisor overview cards v9
   ───────────────────────────────────────────────────────────── */
body[data-view="proyeccion"] .projection-team-advisor-card.is-overview {
  min-width: 294px;
  min-height: 0;
  padding: 18px;
  border-radius: 24px;
  cursor: pointer;
  container-type: inline-size;
  background:
    radial-gradient(circle at var(--glow-x) var(--glow-y),color-mix(in srgb,var(--advisor-tone) 10%,transparent),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.99),rgba(243,249,245,.93));
  box-shadow: inset 0 1px 0 #fff,0 18px 40px rgba(4,58,39,.10),0 3px 9px rgba(4,58,39,.045);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview:focus-visible {
  outline: 3px solid color-mix(in srgb,var(--advisor-tone) 45%,white);
  outline-offset: 4px;
  border-color: var(--advisor-tone);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview::before {
  height: 3px;
  background: linear-gradient(90deg,transparent,var(--advisor-tone) 22% 78%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview::after {
  width: 190px;
  height: 190px;
  right: -106px;
  top: -116px;
  border-color: color-mix(in srgb,var(--advisor-tone) 13%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header {
  display: grid;
  grid-template-columns: 54px minmax(0,1fr) auto;
  gap: 12px;
  min-height: 56px;
  align-items: center;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview .projection-team-advisor-avatar {
  width: 54px;
  height: 54px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > div {
  min-width: 0;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > div strong,
body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > div span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > div strong {
  color: #10251c;
  font-family: "Space Grotesk",sans-serif;
  font-size: 16px;
  letter-spacing: -.025em;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > div span {
  margin-top: 5px;
  color: #66776f;
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .045em;
  text-transform: uppercase;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > b {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 7px 9px;
  border: 1px solid color-mix(in srgb,var(--advisor-tone) 16%,transparent);
  border-radius: 999px;
  background: color-mix(in srgb,var(--advisor-tone) 10%,white);
  color: var(--advisor-tone);
  font-size: 8px;
  font-weight: 900;
  white-space: nowrap;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > b i {
  font-style: normal;
  font-size: 11px;
}

.projection-advisor-overview-score {
  --overview-tone: var(--advisor-tone);
  display: grid;
  grid-template-columns: minmax(104px,.82fr) minmax(128px,1.18fr);
  gap: 14px;
  align-items: center;
  min-height: 118px;
  margin-top: 16px;
  padding: 15px;
  border: 1px solid color-mix(in srgb,var(--overview-tone) 16%,rgba(21,91,64,.08));
  border-radius: 17px;
  background:
    radial-gradient(circle at 0 0,color-mix(in srgb,var(--overview-tone) 12%,transparent),transparent 12rem),
    rgba(255,255,255,.72);
  box-shadow: inset 0 1px 0 #fff,0 9px 21px rgba(5,59,40,.055);
}

.projection-advisor-overview-score.is-excellent,
.projection-advisor-overview-score.is-good { --overview-tone:#0a9468; }
.projection-advisor-overview-score.is-warning { --overview-tone:#d99a16; }
.projection-advisor-overview-score.is-risk { --overview-tone:#e65050; }
.projection-advisor-overview-score.is-neutral { --overview-tone:#84938c; }

.projection-advisor-overview-score-value {
  min-width: 0;
  padding-right: 13px;
  border-right: 1px solid rgba(24,91,65,.09);
}

.projection-advisor-overview-score-value > span,
.projection-advisor-overview-score-context > span {
  display: block;
  color: #66776f;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .055em;
  line-height: 1.35;
  text-transform: uppercase;
}

.projection-advisor-overview-score-value > strong {
  display: block;
  margin-top: 7px;
  color: #10251c;
  font-family: "Space Grotesk",sans-serif;
  font-size: clamp(32px,2.25vw,40px);
  font-weight: 900;
  letter-spacing: -.065em;
  line-height: 1;
}

.projection-advisor-overview-score-value > mark {
  display: inline-flex;
  margin-top: 9px;
  padding: 4px 7px;
  border: 0;
  border-radius: 999px;
  background: color-mix(in srgb,var(--overview-tone) 12%,white);
  color: var(--overview-tone);
  font-size: 7px;
  font-weight: 900;
}

.projection-advisor-overview-score-context {
  min-width: 0;
}

.projection-advisor-overview-score-context > strong {
  display: block;
  min-width: 0;
  margin-top: 7px;
  overflow: hidden;
  color: #14281f;
  font-family: "Space Grotesk",sans-serif;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-overview-score-context .projection-team-kpi-money,
.projection-advisor-overview-metrics .projection-team-kpi-money,
.projection-advisor-overview-period .projection-team-kpi-money {
  display: inline-flex;
  max-width: 100%;
  align-items: baseline;
  white-space: nowrap;
}

.projection-advisor-overview-score-context .projection-team-kpi-money b { font-size:15px; }
.projection-advisor-overview-score-context .projection-team-kpi-money small { font-size:9px; }

.projection-advisor-overview-score-context > small {
  display: block;
  margin-top: 7px;
  overflow: hidden;
  color: #78877f;
  font-size: 7px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-overview-track {
  height: 7px;
  margin-top: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(14,75,52,.10);
  box-shadow: inset 0 2px 4px rgba(5,45,32,.07);
}

.projection-advisor-overview-track > i {
  display: block;
  width: var(--advisor-compliance);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg,color-mix(in srgb,var(--overview-tone) 66%,white),var(--overview-tone));
  box-shadow: 0 0 11px color-mix(in srgb,var(--overview-tone) 24%,transparent);
}

.projection-advisor-overview-metrics {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  margin-top: 10px;
}

.projection-advisor-overview-metrics > div {
  min-width: 0;
  min-height: 78px;
  padding: 11px 12px;
  border: 1px solid rgba(21,91,64,.07);
  border-radius: 13px;
  background: linear-gradient(145deg,rgba(249,252,250,.96),rgba(238,246,241,.80));
  box-shadow: inset 0 1px 0 #fff;
}

.projection-advisor-overview-metrics > div.is-excellent,
.projection-advisor-overview-metrics > div.is-good { background:linear-gradient(145deg,#f8fcf9,#eaf7f0); }
.projection-advisor-overview-metrics > div.is-warning,
.projection-advisor-overview-metrics > div.is-pending { background:linear-gradient(145deg,#fffdf7,#fcf3dc); }
.projection-advisor-overview-metrics > div.is-risk { background:linear-gradient(145deg,#fffafa,#fdeceb); }

.projection-advisor-overview-metrics > div > span {
  display: block;
  min-height: 19px;
  color: #65766e;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .045em;
  line-height: 1.3;
  text-transform: uppercase;
}

.projection-advisor-overview-metrics > div > strong {
  display: block;
  min-width: 0;
  margin-top: 8px;
  overflow: hidden;
  color: #12261d;
  font-family: "Space Grotesk",sans-serif;
  font-size: 16px;
  font-weight: 850;
  letter-spacing: -.035em;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-overview-metrics .projection-team-kpi-money b { font-size:clamp(12px,1vw,16px); }
.projection-advisor-overview-metrics .projection-team-kpi-money small { font-size:clamp(7px,.6vw,9px); }

.projection-advisor-overview-metrics > div > small {
  display: block;
  margin-top: 5px;
  overflow: hidden;
  color: #7c8a82;
  font-size: 7px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-overview-conversion {
  --overview-tone: var(--advisor-tone);
  margin-top: 10px;
  padding: 11px 12px;
  border: 1px solid color-mix(in srgb,var(--overview-tone) 13%,rgba(21,91,64,.07));
  border-radius: 13px;
  background: rgba(255,255,255,.65);
}

.projection-advisor-overview-conversion.is-excellent,
.projection-advisor-overview-conversion.is-good { --overview-tone:#0a9468; }
.projection-advisor-overview-conversion.is-warning { --overview-tone:#d99a16; }
.projection-advisor-overview-conversion.is-risk { --overview-tone:#e65050; }
.projection-advisor-overview-conversion.is-neutral { --overview-tone:#84938c; }

.projection-advisor-overview-conversion > header,
.projection-advisor-overview-conversion > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.projection-advisor-overview-conversion > header > span {
  color: #42564b;
  font-size: 9px;
  font-weight: 900;
}

.projection-advisor-overview-conversion > header > strong {
  color: var(--overview-tone);
  font-family: "Space Grotesk",sans-serif;
  font-size: 19px;
  font-weight: 900;
}

.projection-advisor-overview-conversion .projection-advisor-overview-track > i {
  width: var(--advisor-conversion);
}

.projection-advisor-overview-conversion > footer {
  margin-top: 7px;
  color: #708078;
  font-size: 7px;
  font-weight: 750;
}

.projection-advisor-overview-conversion > footer span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-overview-conversion > footer b {
  color: #283b31;
  font-weight: 900;
}

.projection-advisor-overview-footer {
  display: grid;
  gap: 9px;
  margin-top: 10px;
}

.projection-advisor-overview-period {
  display: grid;
  grid-template-columns: 31px minmax(0,1fr) auto;
  gap: 9px;
  min-width: 0;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid rgba(21,91,64,.07);
  border-radius: 12px;
  background: rgba(243,248,245,.78);
}

.projection-advisor-overview-period > i {
  display: grid;
  width: 31px;
  height: 31px;
  place-items: center;
  border-radius: 9px;
  background: color-mix(in srgb,var(--advisor-tone) 10%,white);
  color: var(--advisor-tone);
}

.projection-advisor-overview-period > i svg { width:15px;height:15px; }
.projection-advisor-overview-period > span { min-width:0; }
.projection-advisor-overview-period > span small,
.projection-advisor-overview-period > span strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.projection-advisor-overview-period > span small { color:#74837b;font-size:7px;font-weight:850;text-transform:uppercase; }
.projection-advisor-overview-period > span strong { margin-top:3px;color:#193026;font-size:11px;font-weight:900; }
.projection-advisor-overview-period > b { color:#172b22;font-size:11px;font-weight:850;white-space:nowrap; }
.projection-advisor-overview-period .projection-team-kpi-money b { font-size:11px; }
.projection-advisor-overview-period .projection-team-kpi-money small { font-size:7px; }

.projection-advisor-overview-open {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 29px;
  border: 1px dashed color-mix(in srgb,var(--advisor-tone) 24%,transparent);
  border-radius: 10px;
  background: color-mix(in srgb,var(--advisor-tone) 5%,white);
  color: color-mix(in srgb,var(--advisor-tone) 77%,#193128);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .025em;
}

.projection-advisor-overview-open > i { font-style:normal;font-size:11px; }

@container(max-width:340px) {
  body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header {
    grid-template-columns: 54px minmax(0,1fr);
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > b {
    grid-column: 2;
    width: max-content;
  }
}

@media(max-width:520px) {
  body[data-view="proyeccion"] .projection-team-advisor-card.is-overview {
    min-width: 0;
    padding: 15px;
    border-radius: 20px;
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header {
    grid-template-columns: 50px minmax(0,1fr);
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-overview > header > b {
    grid-column: 2;
    width: max-content;
  }
  .projection-advisor-overview-score { grid-template-columns:minmax(100px,.82fr) minmax(120px,1.18fr);padding:13px; }
  .projection-advisor-overview-score-value > strong { font-size:32px; }
}

/* ─────────────────────────────────────────────────────────────
   Proyección · radial cards reorganized v10
   ───────────────────────────────────────────────────────────── */
body[data-view="proyeccion"] .projection-team-advisor-card.is-radial.is-organized {
  min-width: 294px;
  min-height: 0;
  padding: 18px 15px 14px;
  cursor: pointer;
  container-type: inline-size;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-radial.is-organized:focus-visible {
  outline: 3px solid color-mix(in srgb,var(--advisor-tone) 45%,white);
  outline-offset: 4px;
  border-color: var(--advisor-tone);
}

.projection-team-radial-headline {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  margin-top: 13px;
}

.projection-team-radial-headline > div {
  min-width: 0;
  min-height: 73px;
  padding: 10px 11px;
  border: 1px solid rgba(20,91,64,.08);
  border-radius: 13px;
  background: linear-gradient(145deg,rgba(250,253,251,.96),rgba(236,246,240,.82));
  box-shadow: inset 0 1px 0 #fff,0 7px 15px rgba(4,57,39,.04);
}

.projection-team-radial-headline > div.is-billed.is-excellent,
.projection-team-radial-headline > div.is-billed.is-good { background:linear-gradient(145deg,#f9fdfb,#eaf7f0); }
.projection-team-radial-headline > div.is-billed.is-warning { background:linear-gradient(145deg,#fffdf8,#fbf3df); }
.projection-team-radial-headline > div.is-billed.is-risk { background:linear-gradient(145deg,#fffafa,#fcebea); }

.projection-team-radial-headline span,
.projection-team-radial-headline strong,
.projection-team-radial-headline small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-team-radial-headline span {
  color: #65766e;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.projection-team-radial-headline strong {
  margin-top: 7px;
  color: #14281f;
  font-family: "Space Grotesk",sans-serif;
  font-weight: 850;
  letter-spacing: -.035em;
}

.projection-team-radial-headline .projection-team-kpi-money {
  display: inline-flex;
  max-width: 100%;
  align-items: baseline;
  white-space: nowrap;
}

.projection-team-radial-headline .projection-team-kpi-money b { font-size:clamp(13px,1.05vw,17px); }
.projection-team-radial-headline .projection-team-kpi-money small { font-size:clamp(7px,.62vw,9px); }

.projection-team-radial-headline > div > small {
  margin-top: 4px;
  color: #7a8981;
  font-size: 7px;
  font-weight: 750;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-stage {
  height: 316px;
  margin: 8px -2px 0;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-stage::before {
  top: 207px;
  width: 208px;
  height: 56px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-face {
  width: min(246px,92%);
  margin-top: 0;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-ring.is-forecast { inset:11px; }
body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-ring.is-billed { inset:47px; }

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-center {
  inset: 80px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-center strong {
  font-size: 29px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-center span {
  margin-top: 6px;
  font-size: 6.5px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite {
  width: 78px;
  height: 78px;
  padding: 7px 6px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite.is-best {
  left: max(0px,calc(50% - 174px));
  top: 143px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite.is-pending {
  right: max(0px,calc(50% - 174px));
  top: 143px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite.is-status {
  bottom: 0;
  width: 86px;
  height: 86px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite > i {
  width: 22px;
  height: 22px;
  margin-bottom: 3px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite > span { font-size:5.5px; }
body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite > strong { margin-top:2px;font-size:8px; }
body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite > small { margin-top:3px;font-size:6.5px; }
body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite .projection-team-kpi-money b { font-size:6.5px; }
body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-satellite .projection-team-kpi-money small { font-size:4.5px; }

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-breakdown {
  min-height: 92px;
  margin-top: 0;
  padding: 11px 9px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-donut {
  width: 48px;
  height: 48px;
}

.projection-team-radial-open {
  position: relative;
  z-index: 3;
  display: flex;
  min-height: 28px;
  margin-top: 9px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px dashed color-mix(in srgb,var(--advisor-tone) 24%,transparent);
  border-radius: 10px;
  background: color-mix(in srgb,var(--advisor-tone) 5%,white);
  color: color-mix(in srgb,var(--advisor-tone) 77%,#193128);
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .02em;
  transform: translateZ(10px);
}

.projection-team-radial-open > i { font-style:normal;font-size:11px; }

@container(max-width:340px) {
  body[data-view="proyeccion"] .projection-team-advisor-card.is-radial.is-organized > header {
    grid-template-columns: 54px minmax(0,1fr);
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-radial.is-organized > header > b {
    grid-column: 2;
    width: max-content;
  }
  .projection-team-radial-headline .projection-team-kpi-money b { font-size:13px; }
  .projection-team-radial-headline .projection-team-kpi-money small { font-size:7px; }
}

@media(max-width:520px) {
  body[data-view="proyeccion"] .projection-team-advisor-card.is-radial.is-organized {
    min-width: 0;
    min-height: 0;
    padding-inline: 12px;
  }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-stage { height:306px; }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-organized .projection-team-radial-face { width:min(238px,92%); }
}

/* ─────────────────────────────────────────────────────────────
   Proyección · integrated advisor reference v11
   ───────────────────────────────────────────────────────────── */
body[data-view="proyeccion"] .projection-team-advisors {
  grid-template-columns: repeat(4,minmax(330px,1fr));
  gap: 14px;
  overflow-x: auto;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design {
  --ref-tone: var(--advisor-tone,#078f68);
  --ref-amber: #e89a0b;
  --ref-ink: #12382d;
  --ref-muted: #687871;
  --ref-line: rgba(27,85,65,.14);
  min-width: 330px;
  min-height: 0;
  padding: 20px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb,var(--ref-tone) 20%,#d5dfd8);
  border-top-color: rgba(255,255,255,.98);
  border-radius: 27px;
  background:
    radial-gradient(circle at 86% 0%,color-mix(in srgb,var(--ref-tone) 8%,transparent),transparent 25rem),
    linear-gradient(135deg,#f7faf7 0%,#fffdf9 58%,#f1f7f3 100%);
  box-shadow: inset 0 1px 0 #fff,0 22px 48px rgba(7,64,46,.11),0 3px 8px rgba(7,64,46,.045);
  cursor: pointer;
  container-type: inline-size;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design::before {
  height: 3px;
  background: linear-gradient(90deg,transparent,var(--ref-tone) 18% 82%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design::after {
  width: 230px;
  height: 230px;
  right: -142px;
  top: -152px;
  border-color: color-mix(in srgb,var(--ref-tone) 16%,transparent);
  box-shadow: 0 0 0 28px color-mix(in srgb,var(--ref-tone) 2.5%,transparent),0 0 0 56px color-mix(in srgb,var(--ref-tone) 1.5%,transparent);
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design:focus-visible {
  outline: 3px solid color-mix(in srgb,var(--ref-tone) 45%,white);
  outline-offset: 4px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design > * {
  position: relative;
  z-index: 1;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design > .projection-advisor-ref-profile {
  display: flex;
  min-height: 68px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.projection-advisor-ref-person {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 15px;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design .projection-advisor-ref-avatar {
  width: 68px;
  height: 68px;
  flex: 0 0 68px;
  border: 4px solid rgba(255,255,255,.95);
  box-shadow: 0 8px 20px rgba(5,70,49,.13),0 0 0 1px color-mix(in srgb,var(--ref-tone) 22%,transparent);
}

.projection-advisor-ref-person > div {
  min-width: 0;
}

.projection-advisor-ref-person > div > strong,
.projection-advisor-ref-person > div > span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-ref-person > div > strong {
  color: var(--ref-ink);
  font-family: "Space Grotesk",sans-serif;
  font-size: clamp(18px,1.55vw,23px);
  font-weight: 850;
  letter-spacing: -.045em;
}

.projection-advisor-ref-person > div > span {
  margin-top: 6px;
  color: #6b7772;
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .035em;
  text-transform: uppercase;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design > .projection-advisor-ref-profile > b {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 16px;
  border: 1px solid color-mix(in srgb,var(--ref-tone) 30%,white);
  border-radius: 999px;
  background: linear-gradient(145deg,rgba(255,255,255,.92),color-mix(in srgb,var(--ref-tone) 8%,white));
  color: var(--ref-tone);
  box-shadow: 0 8px 16px color-mix(in srgb,var(--ref-tone) 9%,transparent);
  font-size: 9px;
  font-weight: 900;
  white-space: nowrap;
}

.projection-advisor-ref-profile > b > i { font-style:normal;font-size:13px; }

.projection-advisor-ref-period {
  display: grid;
  grid-template-columns: 30px auto 1px minmax(0,1fr);
  gap: 13px;
  width: min(75%,520px);
  min-height: 45px;
  margin: 13px 0 15px;
  padding: 7px 16px;
  align-items: center;
  border: 1px solid rgba(73,83,77,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.55);
  box-shadow: 0 5px 13px rgba(37,63,54,.035);
}

.projection-advisor-ref-period > i {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  color: var(--ref-ink);
}

.projection-advisor-ref-period > i svg { width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8; }
.projection-advisor-ref-period > span,
.projection-advisor-ref-period > strong { overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.projection-advisor-ref-period > span { color:#53655d;font-size:9px;font-weight:850; }
.projection-advisor-ref-period > strong { color:var(--ref-ink);font-size:10px;font-weight:900; }
.projection-advisor-ref-period > em { width:1px;height:23px;background:#cbcfc9; }

.projection-advisor-ref-hero {
  display: grid;
  grid-template-columns: minmax(285px,1.58fr) minmax(165px,.92fr);
  min-height: 350px;
  overflow: hidden;
  align-items: center;
  border: 1px solid rgba(92,79,55,.14);
  border-radius: 22px;
  background:
    linear-gradient(45deg,rgba(248,242,229,.48) 0 10%,transparent 10%),
    radial-gradient(circle at 42% 60%,rgba(220,243,234,.55),transparent 44%),
    rgba(255,255,255,.76);
  box-shadow: 0 11px 25px rgba(13,70,53,.07);
}

.projection-advisor-ref-radial-column {
  display: grid;
  min-width: 0;
  padding: 20px 0 18px 11px;
  place-items: center;
}

.projection-advisor-ref-radial {
  position: relative;
  width: min(305px,100%);
  aspect-ratio: 1;
}

.projection-advisor-ref-radial > .is-main-ring,
.projection-advisor-ref-radial > .is-forecast-ring,
.projection-advisor-ref-radial > .is-orbit {
  position: absolute;
  display: block;
  border-radius: 50%;
}

.projection-advisor-ref-radial > .is-main-ring {
  inset: 6.5%;
  background: conic-gradient(from -3deg,var(--ref-tone) 0 var(--ref-compliance-angle),rgba(18,75,56,.075) var(--ref-compliance-angle) 360deg);
  filter: drop-shadow(0 6px 5px color-mix(in srgb,var(--ref-tone) 20%,transparent));
  -webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 29px),#000 calc(100% - 27px));
  mask: radial-gradient(farthest-side,transparent calc(100% - 29px),#000 calc(100% - 27px));
}

.projection-advisor-ref-radial > .is-forecast-ring {
  inset: 20%;
  background: conic-gradient(from 170deg,var(--ref-amber) 0 var(--ref-forecast-angle),rgba(232,154,11,.11) var(--ref-forecast-angle) 360deg);
  -webkit-mask: radial-gradient(farthest-side,transparent calc(100% - 7px),#000 calc(100% - 6px));
  mask: radial-gradient(farthest-side,transparent calc(100% - 7px),#000 calc(100% - 6px));
}

.projection-advisor-ref-radial > .is-orbit.is-outer {
  inset: 1.5%;
  border: 1px dashed color-mix(in srgb,var(--ref-tone) 56%,transparent);
}

.projection-advisor-ref-radial > .is-orbit.is-inner {
  inset: 22%;
  border: 1px solid rgba(81,98,89,.18);
}

.projection-advisor-ref-radial-center {
  position: absolute;
  z-index: 5;
  inset: 28%;
  display: grid;
  place-content: center;
  text-align: center;
}

.projection-advisor-ref-radial-center > span {
  color: var(--ref-ink);
  font-size: 10px;
  font-weight: 900;
  line-height: 1.22;
  text-transform: uppercase;
}

.projection-advisor-ref-radial-center > strong {
  display: block;
  margin-top: 8px;
  color: var(--ref-ink);
  font-family: "Space Grotesk",sans-serif;
  font-size: clamp(34px,3.15vw,48px);
  font-weight: 900;
  letter-spacing: -.07em;
  line-height: 1;
}

.projection-advisor-ref-radial > .is-ring-break {
  position: absolute;
  z-index: 6;
  display: block;
  width: 7px;
  height: 34px;
  background: #fbfaf6;
}

.projection-advisor-ref-radial > .is-ring-break.is-top { top:6%;left:49.5%;transform:rotate(-5deg); }
.projection-advisor-ref-radial > .is-ring-break.is-bottom { bottom:6.5%;left:63%;height:40px;transform:rotate(-12deg); }

.projection-advisor-ref-radial > .is-target-caret {
  position: absolute;
  z-index: 7;
  display: block;
  width: 0;
  height: 0;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  border-top: 8px solid var(--ref-ink);
}

.projection-advisor-ref-radial > .is-target-caret.is-top { top:16%;left:49%; }
.projection-advisor-ref-radial > .is-target-caret.is-right { top:41%;right:1.3%;transform:rotate(103deg); }
.projection-advisor-ref-radial > .is-target-caret.is-bottom { bottom:2.5%;left:34%;transform:rotate(-27deg); }

.projection-advisor-ref-target {
  position: absolute;
  z-index: 8;
  top: 50%;
  left: -5px;
  display: flex;
  align-items: center;
  color: var(--ref-ink);
  font-size: 9px;
  font-weight: 900;
}

.projection-advisor-ref-target > i {
  position: relative;
  display: block;
  width: 35px;
  height: 1px;
  margin-left: 5px;
  background: var(--ref-tone);
}

.projection-advisor-ref-target > i::after {
  content: "";
  position: absolute;
  top: -3px;
  right: -2px;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid var(--ref-tone);
}

.projection-advisor-ref-summary {
  min-width: 0;
  padding: 24px 20px 22px 5px;
}

.projection-advisor-ref-summary > header h3 {
  margin: 0;
  color: var(--ref-ink);
  font-family: "Space Grotesk",sans-serif;
  font-size: clamp(24px,2.2vw,34px);
  font-weight: 900;
  letter-spacing: -.055em;
  line-height: 1.02;
}

.projection-advisor-ref-summary > header > i {
  display: block;
  width: 70px;
  height: 2px;
  margin: 16px 0;
  background: var(--ref-tone);
}

.projection-advisor-ref-summary dl {
  display: grid;
  gap: 12px;
  margin: 0;
}

.projection-advisor-ref-summary dl > div { min-width:0; }
.projection-advisor-ref-summary dt {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #4c5e56;
  font-size: 9px;
  font-weight: 850;
}

.projection-advisor-ref-summary dt > i {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
}

.projection-advisor-ref-summary .is-projected dt > i { background:var(--ref-amber); }
.projection-advisor-ref-summary .is-billed dt > i { background:var(--ref-tone); }
.projection-advisor-ref-summary .is-pending dt > i { background:#bedacd; }

.projection-advisor-ref-summary dd {
  min-width: 0;
  margin: 3px 0 0;
  overflow: hidden;
  color: var(--ref-ink);
  font-family: "Space Grotesk",sans-serif;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-ref-summary .is-projected dd { color:var(--ref-amber); }
.projection-advisor-ref-summary .is-billed dd { color:var(--ref-tone); }
.projection-advisor-ref-summary .projection-team-kpi-money { display:inline-flex;max-width:100%;align-items:baseline; }
.projection-advisor-ref-summary .projection-team-kpi-money b { font-size:clamp(14px,1.25vw,19px); }
.projection-advisor-ref-summary .projection-team-kpi-money small { font-size:clamp(8px,.72vw,11px); }

.projection-advisor-ref-mini {
  display: grid;
  min-height: 67px;
  margin: 18px 0 0 -16px;
  padding: 9px 11px;
  place-items: center;
  border: 1px solid color-mix(in srgb,var(--ref-tone) 25%,white);
  border-radius: 18px;
  background: linear-gradient(145deg,rgba(255,255,255,.80),color-mix(in srgb,var(--ref-tone) 7%,white));
  box-shadow: 0 8px 17px rgba(18,82,62,.06);
  text-align: center;
}

.projection-advisor-ref-mini > span { color:#40564c;font-size:8px;font-weight:900; }
.projection-advisor-ref-mini > strong { color:var(--ref-tone);font-family:"Space Grotesk",sans-serif;font-size:25px;font-weight:900;letter-spacing:-.05em; }

.projection-advisor-ref-metrics {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
  margin-top: 10px;
}

.projection-advisor-ref-metrics > div {
  position: relative;
  display: grid;
  grid-template-columns: 40px minmax(0,1fr);
  gap: 9px;
  min-width: 0;
  min-height: 86px;
  overflow: hidden;
  padding: 12px 11px;
  align-items: center;
  border: 1px solid rgba(37,82,64,.12);
  border-radius: 16px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 8px 16px rgba(22,66,52,.055);
}

.projection-advisor-ref-metrics > div::before {
  content: "";
  position: absolute;
  inset: 10px auto 10px 5px;
  width: 4px;
  border-radius: 999px;
  background: #bad8ca;
}

.projection-advisor-ref-metrics > div.is-projected::before { background:var(--ref-amber); }
.projection-advisor-ref-metrics > div.is-billed::before { background:var(--ref-tone); }

.projection-advisor-ref-metrics > div > i {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(145deg,#eff8f4,#cce9dd);
  color: var(--ref-ink);
  box-shadow: 0 4px 11px rgba(12,80,59,.09);
}

.projection-advisor-ref-metrics > div.is-projected > i { background:linear-gradient(145deg,#ffe0a0,#ffc45f);color:#6b4b00; }
.projection-advisor-ref-metrics > div.is-billed > i { background:linear-gradient(145deg,color-mix(in srgb,var(--ref-tone) 72%,white),var(--ref-tone));color:#fff; }
.projection-advisor-ref-metrics > div > i svg { width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9; }
.projection-advisor-ref-metrics > div > span { min-width:0; }
.projection-advisor-ref-metrics > div > span > small { display:block;color:#52655c;font-size:8px;font-weight:900; }
.projection-advisor-ref-metrics > div > span > strong { display:block;min-width:0;margin-top:6px;overflow:hidden;color:var(--ref-ink);font-family:"Space Grotesk",sans-serif;text-overflow:ellipsis;white-space:nowrap; }
.projection-advisor-ref-metrics .projection-team-kpi-money { display:inline-flex;max-width:100%;align-items:baseline; }
.projection-advisor-ref-metrics .projection-team-kpi-money b { font-size:clamp(12px,1vw,16px); }
.projection-advisor-ref-metrics .projection-team-kpi-money small { font-size:clamp(7px,.58vw,9px); }

.projection-advisor-ref-comparison {
  --ref-comparison-tone: var(--ref-tone);
  position: relative;
  margin-top: 10px;
  padding: 13px 17px 17px;
  border: 1px solid rgba(37,82,64,.13);
  border-radius: 16px;
  background: rgba(255,255,255,.82);
  box-shadow: 0 7px 15px rgba(20,70,55,.05);
}

.projection-advisor-ref-comparison.is-excellent,
.projection-advisor-ref-comparison.is-good { --ref-comparison-tone:#078f68; }
.projection-advisor-ref-comparison.is-warning { --ref-comparison-tone:#dc990e; }
.projection-advisor-ref-comparison.is-risk { --ref-comparison-tone:#e65353; }
.projection-advisor-ref-comparison.is-neutral { --ref-comparison-tone:#88958e; }

.projection-advisor-ref-comparison > header { display:flex;align-items:center;justify-content:space-between;gap:12px; }
.projection-advisor-ref-comparison > header > strong { color:var(--ref-ink);font-size:10px;font-weight:900; }
.projection-advisor-ref-comparison > header > b { color:var(--ref-comparison-tone);font-family:"Space Grotesk",sans-serif;font-size:23px;font-weight:900;letter-spacing:-.04em; }
.projection-advisor-ref-comparison > div { position:relative;height:10px;margin-top:9px;border-radius:999px;background:#e2e7e3;box-shadow:inset 0 2px 4px rgba(33,54,47,.07); }
.projection-advisor-ref-comparison > div > i { display:block;width:var(--ref-conversion);height:100%;border-radius:inherit;background:linear-gradient(90deg,color-mix(in srgb,var(--ref-comparison-tone) 72%,white),var(--ref-comparison-tone));transform-origin:left; }
.projection-advisor-ref-comparison > div > span { position:absolute;top:-4px;right:0;width:2px;height:18px;background:var(--ref-ink); }
.projection-advisor-ref-comparison > small { position:absolute;right:12px;bottom:2px;color:#697871;font-size:7px;font-weight:850; }

.projection-advisor-ref-result {
  position: relative;
  display: flex;
  min-height: 70px;
  margin-top: 10px;
  overflow: hidden;
  padding: 10px 17px;
  align-items: center;
  border: 1px solid color-mix(in srgb,var(--ref-tone) 27%,white);
  border-radius: 16px;
  background: linear-gradient(98deg,color-mix(in srgb,var(--ref-tone) 7%,white),color-mix(in srgb,var(--ref-tone) 16%,white));
}

.projection-advisor-ref-result > i {
  z-index: 2;
  display: grid;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  margin-right: 14px;
  place-items: center;
  border: 5px solid rgba(255,255,255,.52);
  border-radius: 50%;
  background: linear-gradient(145deg,color-mix(in srgb,var(--ref-tone) 72%,white),var(--ref-tone));
  color: white;
  box-shadow: 0 6px 13px color-mix(in srgb,var(--ref-tone) 20%,transparent);
  font-style: normal;
  font-size: 22px;
}

.projection-advisor-ref-result > span { z-index:2;display:grid; }
.projection-advisor-ref-result > span > small { color:#42594e;font-size:8px;font-weight:900; }
.projection-advisor-ref-result > span > strong { color:var(--ref-ink);font-family:"Space Grotesk",sans-serif;font-size:20px;font-weight:900;letter-spacing:-.04em; }
.projection-advisor-ref-result > em { position:absolute;right:-40px;bottom:-95px;width:160px;height:160px;transform:rotate(42deg);background:linear-gradient(145deg,color-mix(in srgb,var(--ref-tone) 55%,white),var(--ref-tone)); }

.projection-advisor-ref-open {
  display: flex;
  min-height: 29px;
  margin-top: 10px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px dashed color-mix(in srgb,var(--ref-tone) 24%,transparent);
  border-radius: 10px;
  background: color-mix(in srgb,var(--ref-tone) 5%,white);
  color: color-mix(in srgb,var(--ref-tone) 77%,#193128);
  font-size: 8px;
  font-weight: 900;
}

.projection-advisor-ref-open > i { font-style:normal;font-size:11px; }

@keyframes projection-ref-reveal {
  from { opacity:0;transform:rotate(-18deg) scale(.93); }
  to { opacity:1;transform:rotate(0) scale(1); }
}

@keyframes projection-ref-fill {
  from { transform:scaleX(0); }
  to { transform:scaleX(1); }
}

@media(max-width:1240px) {
  body[data-view="proyeccion"] .projection-team-advisors { grid-template-columns:repeat(2,minmax(340px,1fr)); }
}

@container(max-width:620px) {
  .projection-advisor-ref-period { width:100%; }
  .projection-advisor-ref-hero { grid-template-columns:1fr; }
  .projection-advisor-ref-radial-column { padding:18px 18px 0; }
  .projection-advisor-ref-radial { width:min(310px,92%); }
  .projection-advisor-ref-summary { display:grid;grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr);gap:15px;padding:0 20px 20px; }
  .projection-advisor-ref-summary > header { align-self:center; }
  .projection-advisor-ref-summary > header > i { margin-bottom:0; }
  .projection-advisor-ref-summary > dl { align-self:center; }
  .projection-advisor-ref-mini { grid-column:1 / -1;margin:0; }
}

@container(max-width:430px) {
  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design > .projection-advisor-ref-profile { align-items:flex-start; }
  .projection-advisor-ref-person { gap:10px; }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design .projection-advisor-ref-avatar { width:56px;height:56px;flex-basis:56px; }
  .projection-advisor-ref-person > div > strong { font-size:17px; }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design > .projection-advisor-ref-profile > b { min-height:32px;padding:0 10px;font-size:7px; }
  .projection-advisor-ref-period { grid-template-columns:27px 1fr;gap:3px 9px;border-radius:16px; }
  .projection-advisor-ref-period > i { grid-row:1 / 3; }
  .projection-advisor-ref-period > em { display:none; }
  .projection-advisor-ref-summary { grid-template-columns:1fr;gap:12px;padding:0 20px 20px; }
  .projection-advisor-ref-summary > header { display:flex;align-items:center;gap:14px; }
  .projection-advisor-ref-summary > header h3 { font-size:28px;white-space:nowrap; }
  .projection-advisor-ref-summary > header > i { flex:1;max-width:74px;margin:0; }
  .projection-advisor-ref-summary > dl { grid-template-columns:repeat(3,minmax(0,1fr));gap:5px; }
  .projection-advisor-ref-summary dt { gap:4px;font-size:7px; }
  .projection-advisor-ref-summary dt > i { width:6px;height:6px;flex-basis:6px; }
  .projection-advisor-ref-summary .projection-team-kpi-money b { font-size:11px; }
  .projection-advisor-ref-summary .projection-team-kpi-money small { font-size:5.5px; }
  .projection-advisor-ref-radial { width:min(248px,92%); }
  .projection-advisor-ref-radial-center > strong { font-size:34px; }
  .projection-advisor-ref-metrics { grid-template-columns:repeat(3,minmax(0,1fr));gap:5px; }
  .projection-advisor-ref-metrics > div { display:block;min-height:66px;padding:9px 7px; }
  .projection-advisor-ref-metrics > div > i { position:absolute;top:7px;right:6px;width:24px;height:24px; }
  .projection-advisor-ref-metrics > div > i svg { width:13px;height:13px; }
  .projection-advisor-ref-metrics > div > span { display:block;min-width:0; }
  .projection-advisor-ref-metrics > div > span > small { padding-right:24px;font-size:6px; }
  .projection-advisor-ref-metrics > div > span > strong { margin-top:10px; }
  .projection-advisor-ref-metrics .projection-team-kpi-money b { font-size:10px; }
  .projection-advisor-ref-metrics .projection-team-kpi-money small { font-size:5.5px; }
}

@media(max-width:700px) {
  body[data-view="proyeccion"] .projection-team-advisors { grid-template-columns:1fr; }
}

@media(max-width:520px) {
  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design { min-width:0;padding:15px;border-radius:21px; }
}

@media(prefers-reduced-motion:reduce) {
  .projection-advisor-ref-radial > .is-main-ring,
  .projection-advisor-ref-radial > .is-forecast-ring,
  .projection-advisor-ref-comparison > div > i { animation:none; }
}

/* ─────────────────────────────────────────────────────────────
   Responsive stabilization v12
   Dashboard + Proyeccion: desktop, laptop, tablet and mobile
   ───────────────────────────────────────────────────────────── */
:is(body[data-view="dashboard"],body[data-view="proyeccion"]) .main,
:is(body[data-view="dashboard"],body[data-view="proyeccion"]) .content,
:is(body[data-view="dashboard"],body[data-view="proyeccion"]) .content > *,
body[data-view="proyeccion"] .module-shell,
body[data-view="proyeccion"] .projection-team-dashboard,
body[data-view="proyeccion"] .projection-team-body,
body[data-view="proyeccion"] .projection-team-body > [data-projection-team-group] {
  min-width: 0;
  max-width: 100%;
}

:is(body[data-view="dashboard"],body[data-view="proyeccion"]) img,
:is(body[data-view="dashboard"],body[data-view="proyeccion"]) canvas {
  max-width: 100%;
}

body[data-view="dashboard"] .executive-content,
body[data-view="dashboard"] .executive-summary-view,
body[data-view="dashboard"] .executive-kpi-grid,
body[data-view="proyeccion"] .projection-team-kpis,
body[data-view="proyeccion"] .projection-team-channels,
body[data-view="proyeccion"] .projection-team-advisors {
  min-width: 0;
  max-width: 100%;
}

/* Four advisors per row on a wide screen, without hidden horizontal overflow. */
body[data-view="proyeccion"] .projection-team-advisors {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
  overflow: visible;
}

body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design {
  width: 100%;
  min-width: 0;
  max-width: 100%;
}

body[data-view="proyeccion"] .module-header-refresh > span b {
  display: block;
}

@container(max-width:430px) {
  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design > .projection-advisor-ref-profile {
    display: grid;
    grid-template-columns: 56px minmax(0,1fr);
    gap: 8px 10px;
  }

  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design .projection-advisor-ref-person {
    display: contents;
  }

  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design > .projection-advisor-ref-profile > b {
    grid-column: 2;
    justify-self: start;
    width: max-content;
    max-width: 100%;
  }
}

/* Laptop: keep the projection header compact and use the available width. */
@media(min-width:1181px) and (max-width:1450px) {
  body[data-view="proyeccion"] .app-module-hero.has-module-controls {
    grid-template-columns: minmax(250px,24%) minmax(0,76%);
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs {
    grid-template-rows: minmax(150px,auto) auto;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-story {
    grid-column: 1;
    grid-row: 1;
    min-height: 150px;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-panel {
    grid-column: 2;
    grid-row: 1;
    min-height: 150px;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-nav {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  body[data-view="proyeccion"] .app-module-hero-tools .module-unified-filters {
    grid-template-columns:
      minmax(76px,.68fr)
      minmax(118px,1fr)
      minmax(118px,1fr)
      minmax(158px,1.38fr)
      minmax(78px,.72fr) !important;
    row-gap: 0;
  }

  body[data-view="proyeccion"] .module-unified-filters > * {
    min-height: 70px;
    padding-inline: 7px;
    border-left: 1px solid rgba(147,194,84,.25);
  }

  body[data-view="proyeccion"] .module-unified-filters > :first-child {
    padding-left: 0;
    border-left: 0;
  }

  body[data-view="proyeccion"] .module-unified-filters > :last-child { padding-right:0; }
}

/* Desktop and laptop content grids. */
@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-kpi-grid {
    grid-template-columns: repeat(5,minmax(0,1fr));
  }

  body[data-view="proyeccion"] .projection-team-kpis {
    grid-template-columns: repeat(5,minmax(0,1fr));
  }

  body[data-view="proyeccion"] .projection-team-kpi.is-compliance { grid-column:span 2; }
  body[data-view="proyeccion"] .projection-team-channels { grid-template-columns:repeat(4,minmax(0,1fr)); }
}

@media(min-width:1101px) and (max-width:1450px) {
  body[data-view="dashboard"] .executive-kpi-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  body[data-view="dashboard"] .executive-kpi {
    min-height: 350px;
  }

  body[data-view="proyeccion"] .projection-team-kpis {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  body[data-view="proyeccion"] .projection-team-kpi.is-compliance { grid-column:1 / -1; }
  body[data-view="proyeccion"] .projection-team-channels { grid-template-columns:repeat(4,minmax(0,1fr)); }
  body[data-view="proyeccion"] .projection-team-advisors { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Tablet and small laptop: controls become complete rows, never clipped columns. */
@media(max-width:1180px) {
  body[data-view="proyeccion"] .app-module-hero.has-module-controls {
    grid-template-columns: 1fr;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs {
    grid-template-rows: auto auto auto;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-story,
  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-panel,
  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-nav {
    grid-column: 1;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-story {
    grid-row: 1;
    min-height: 138px;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-panel {
    grid-row: 2;
    min-height: 0;
  }

  body[data-view="proyeccion"] .app-module-hero.has-module-tabs > .app-module-hero-nav { grid-row:3; }

  body[data-view="proyeccion"] .app-module-hero-tools .module-unified-filters {
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    row-gap: 8px;
  }

  body[data-view="proyeccion"] .module-unified-filters > * {
    min-height: 68px;
    padding-inline: 7px;
    border-left: 0;
  }
}

/* Tarjetas de asesor v68 — reserva el borde de estado sin tapar cifras. */
@container(max-width:620px) {
  .projection-advisor-ref-metrics > div {
    padding: 9px 7px 9px 14px;
  }

  .projection-advisor-ref-metrics > div::before {
    inset-inline-start: 6px;
  }

  .projection-advisor-ref-metrics > div > span > strong {
    margin-top: 8px;
  }

  .projection-advisor-ref-metrics .projection-advisor-exact-money {
    font-size: clamp(7.5px,2.35cqi,10px);
    letter-spacing: -.06em;
  }
}

/* Tarjetas de asesor v67 — cifras completas y apertura consistente. */
body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design {
  user-select: none;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.projection-advisor-exact-money {
  display: block;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  font-family: "Space Grotesk",sans-serif;
  font-size: clamp(8px,2.6cqi,11px);
  font-weight: 900;
  letter-spacing: -.045em;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.projection-advisor-ref-metrics > div.is-goal::before { background:#98760e; }
.projection-advisor-ref-metrics > div.is-compliance::before { background:var(--ref-tone); }

.projection-advisor-ref-metrics > div.is-goal > i {
  background:linear-gradient(145deg,#fff1b6,#dec054);
  color:#5f4b00;
}

.projection-advisor-ref-metrics > div.is-compliance > i {
  background:linear-gradient(145deg,color-mix(in srgb,var(--ref-tone) 72%,white),var(--ref-tone));
  color:#fff;
}

.projection-advisor-ref-rate {
  color:var(--ref-tone) !important;
  font-family:"Space Grotesk",sans-serif;
  font-size:clamp(11px,3.6cqi,16px);
  font-weight:900;
  letter-spacing:-.045em;
}

@media(min-width:721px) and (max-width:1100px) {
  body[data-view="dashboard"] .executive-hero {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  body[data-view="dashboard"] .executive-hero-copy { min-height:200px; }

  body[data-view="dashboard"] .executive-hero-actions {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 8px !important;
    padding: 12px !important;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    height: 68px;
    min-height: 68px;
    padding: 6px 8px !important;
    border: 1px solid rgba(197,225,186,.13) !important;
    border-radius: 12px !important;
  }

  body[data-view="dashboard"] .executive-kpi-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  body[data-view="dashboard"] .executive-kpi { min-height:340px; }
  body[data-view="proyeccion"] .projection-team-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-view="proyeccion"] .projection-team-kpi.is-compliance { grid-column:1 / -1; }
  body[data-view="proyeccion"] .projection-team-channels { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-view="proyeccion"] .projection-team-advisors { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

/* Mobile and narrow tablet. */
@media(max-width:720px) {
  :is(body[data-view="dashboard"],body[data-view="proyeccion"]) .content {
    padding-inline: 8px;
  }

  body[data-view="dashboard"] .executive-hero-copy { min-height:170px; }
  body[data-view="dashboard"] .executive-story-copy { padding:18px 20px; }

  body[data-view="dashboard"] .executive-hero-actions {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 7px !important;
    padding: 9px !important;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    height: 64px;
    min-height: 64px;
    padding: 6px !important;
    border: 1px solid rgba(197,225,186,.13) !important;
    border-radius: 12px !important;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-advisor-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh { grid-column:1 / -1 !important; }

  body[data-view="dashboard"] .executive-content { padding-inline:8px; }
  body[data-view="dashboard"] .executive-kpi-grid { grid-template-columns:1fr; }
  body[data-view="dashboard"] .executive-kpi { min-height:330px; }

  body[data-view="proyeccion"] .app-module-hero-module { padding:18px; }
  body[data-view="proyeccion"] .app-module-hero-module-row { grid-template-columns:40px minmax(0,1fr);gap:10px; }
  body[data-view="proyeccion"] .app-module-hero-module-row h2 { font-size:23px; }
  body[data-view="proyeccion"] .app-module-hero-panel { padding:10px; }

  body[data-view="proyeccion"] .app-module-hero-tools .module-unified-filters {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    row-gap: 7px;
  }

  body[data-view="proyeccion"] .module-unified-filters > *,
  body[data-view="proyeccion"] .module-unified-filters > :first-child,
  body[data-view="proyeccion"] .module-unified-filters > :last-child {
    min-height: 64px;
    padding-inline: 5px;
  }

  body[data-view="proyeccion"] .projection-header-actions { grid-column:1 / -1; }
  body[data-view="proyeccion"] .module-header-refresh { justify-content:center; }
  body[data-view="proyeccion"] .projection-team-tabs { overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin; }
  body[data-view="proyeccion"] .projection-team-kpis,
  body[data-view="proyeccion"] .projection-team-channels,
  body[data-view="proyeccion"] .projection-team-advisors { grid-template-columns:1fr; }
  body[data-view="proyeccion"] .projection-team-kpi.is-compliance { grid-column:1; }
  body[data-view="proyeccion"] .projection-team-advisors { display:grid;overflow:visible; }
  body[data-view="proyeccion"] .projection-team-advisor-card.is-reference-design { width:100%;min-width:0;scroll-snap-align:none; }
  body[data-view="proyeccion"] .projection-team-performance > header,
  body[data-view="proyeccion"] .projection-team-channel-panel > header,
  body[data-view="proyeccion"] .projection-team-evolution > header { align-items:flex-start;flex-direction:column;gap:6px; }
  body[data-view="proyeccion"] .projection-team-performance > header > small,
  body[data-view="proyeccion"] .projection-team-channel-panel > header > small { max-width:none;text-align:left; }
}

@media(max-width:560px) {
  body[data-view="dashboard"] .executive-hero-actions {
    grid-template-columns: 1fr !important;
  }

  body[data-view="dashboard"] .executive-hero-actions > .executive-cutoff,
  body[data-view="dashboard"] .executive-hero-actions > .executive-filter,
  body[data-view="dashboard"] .executive-hero-actions > .executive-refresh {
    grid-column: 1 !important;
  }

  body[data-view="proyeccion"] .app-module-hero-tools .module-unified-filters {
    grid-template-columns: 1fr !important;
  }

  body[data-view="proyeccion"] .projection-header-actions { grid-column:1; }
  body[data-view="proyeccion"] .projection-team-body { padding:8px; }
  body[data-view="proyeccion"] .projection-team-channel-card > header {
    display: grid;
    justify-items: start;
    gap: 4px;
  }
  body[data-view="proyeccion"] .projection-team-channel-card > header > * {
    max-width: 100%;
    text-align: left;
    white-space: normal;
  }
  body[data-view="proyeccion"] .projection-team-compliance-stages { grid-template-columns:1fr; }
  body[data-view="proyeccion"] .projection-team-compliance-stage + .projection-team-compliance-stage {
    margin-top: 10px;
    padding-top: 10px;
    padding-left: 0;
    border-top: 1px solid #e2e8e0;
    border-left: 0;
  }
}

/* ─────────────────────────────────────────────────────────────
   Application responsive stabilization v13
   Shared shell, navigation, content, tables and dialogs
   ───────────────────────────────────────────────────────────── */
body:not([data-view="login"]) .layout,
body:not([data-view="login"]) .main,
body:not([data-view="login"]) .content,
body:not([data-view="login"]) .content > *,
body:not([data-view="login"]) :is(
  .module-shell,
  .module-toolbar-card,
  .module-table-card,
  .table-card,
  .chart-card,
  .card,
  .request-panel,
  .production-live-panel,
  .hubspot-workspace,
  .hubspot-analytics-card,
  .hubspot-records-card,
  .cot-module,
  .cot-wizard-card,
  .cot-detail-card,
  .config-shell,
  .config-panel
) {
  min-width: 0;
  max-width: 100%;
}

body:not([data-view="login"]) :is(img,canvas) {
  max-width: 100%;
}

body:not([data-view="login"]) :is(
  .table-wrap,
  .hubspot-table-wrap,
  .hubspot-detail-table-wrap,
  .projection-spreadsheet-wrap,
  .projection-advisor-portfolio-table-wrap,
  .projection-advisor-client-lines-wrap,
  .projection-production-table-wrap,
  .projection-quote-bridge-table-wrap
) {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}

@media(max-width:720px) {
  html,
  body:not([data-view="login"]),
  body:not([data-view="login"]) #app,
  body:not([data-view="login"]) .layout,
  body:not([data-view="login"]) .main {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  /* These fixed decorative circles extended the document by 140 px. */
  body:not([data-view="login"]) .main::before,
  body:not([data-view="login"]) .main::after {
    display: none;
  }

  body:not([data-view="login"]) :is(
    .pedido-mini-kpi,
    .production-machine-card,
    .production-op-card,
    .notification-card,
    .coordinator-request-card,
    .projection-health-card,
    .projection-insight-card,
    .config-form-card
  ) {
    transform: none;
    transform-style: flat;
  }

  body:not([data-view="login"]) :is(
    .pedido-mini-kpi,
    .production-machine-card,
    .production-op-card,
    .projection-health-card,
    .projection-insight-card,
    .hubspot-chart-card,
    .chart-card,
    .executive-trend-section
  )::after {
    display: none;
  }

  body:not([data-view="login"]) {
    overflow-x: clip;
  }

  body:not([data-view="login"]) .topbar {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-width: 0;
    min-height: 58px;
    padding: 8px 12px;
  }

  body:not([data-view="login"]) .topbar-context {
    min-width: 0;
    overflow: hidden;
  }

  body:not([data-view="login"]) .topbar-context h2 {
    overflow: hidden;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  body:not([data-view="login"]) .topbar-tools {
    min-width: 0;
    gap: 6px;
  }

  body:not([data-view="login"]) .topbar-profile-wrap {
    min-width: 0;
  }

  body:not([data-view="login"]) .topbar-profile {
    width: 38px;
    min-width: 38px;
    max-width: 38px;
    height: 38px;
    gap: 0;
    padding: 2px;
  }

  body:not([data-view="login"]) .topbar-profile-caret {
    display: none;
  }

  body:not([data-view="login"]) .topbar-profile-menu {
    max-width: calc(100vw - 24px);
  }

  body:not([data-view="login"]) .sidebar {
    right: 10px;
    left: 10px;
    max-width: calc(100vw - 20px);
    min-width: 0;
  }

  body:not([data-view="login"]) :is(.sidebar-shell,.nav) {
    min-width: 0;
    max-width: 100%;
  }

  body:not([data-view="login"]) .content {
    width: 100%;
    padding: 12px 8px 94px;
  }

  body:not([data-view="login"]) .app-module-hero {
    grid-template-columns: minmax(0,1fr);
    min-height: 0;
  }

  body:not([data-view="login"]) .app-module-hero-story {
    min-width: 0;
    min-height: 138px;
  }

  body:not([data-view="login"]) .app-module-hero-module {
    min-width: 0;
    padding: 19px 20px;
  }

  body:not([data-view="login"]) .app-module-hero-module-row {
    grid-template-columns: 46px minmax(0,1fr);
    gap: 11px;
  }

  body:not([data-view="login"]) .app-module-hero-module-row h2 {
    overflow-wrap: anywhere;
    font-size: clamp(22px,7vw,29px);
  }

  body:not([data-view="login"]) .app-module-hero-panel,
  body:not([data-view="login"]) .app-module-hero.has-module-controls .app-module-hero-panel {
    width: 100%;
    min-width: 0;
    padding: 13px;
  }

  body:not([data-view="login"]) .app-module-hero:not(.has-module-controls) .app-module-hero-facts {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 7px;
    padding: 0;
    border: 0;
  }

  body:not([data-view="login"]) :is(.page-header,.module-section-head,.module-table-head,.chart-card > header,.table-card > header) {
    min-width: 0;
    max-width: 100%;
  }

  body:not([data-view="login"]) :is(.page-header,.module-section-head,.module-table-head) > * {
    min-width: 0;
    max-width: 100%;
  }

  body:not([data-view="login"]) :is(.module-toolbar-card,.module-table-card,.table-card,.chart-card) {
    padding-right: 12px;
    padding-left: 12px;
  }

  body:not([data-view="login"]) :is(.filters,.module-filters,.cot-toolbar-actions,.request-actions,.production-live-actions) {
    max-width: 100%;
  }

  body:not([data-view="login"]) :is(.filters,.request-actions,.production-live-actions) {
    flex-wrap: wrap;
  }

  body:not([data-view="login"]) :is(.filters,.filters > *,.request-actions > *,.production-live-actions > *) {
    min-width: 0;
  }

  body:not([data-view="login"]) :is(.modal-backdrop,.profile-modal,.cot-modal) {
    padding: 10px;
  }

  body:not([data-view="login"]) :is(.modal,.profile-modal-card,.cot-wizard-card,.cot-detail-card,.request-form-modal,.projection-ai-dialog) {
    width: 100%;
    min-width: 0;
    max-width: calc(100vw - 20px);
    max-height: calc(100dvh - 20px);
    overflow-x: hidden;
    overflow-y: auto;
  }

  body[data-view="estado"] .config-user-edit {
    grid-template-columns: 1fr;
    min-width: 0;
  }
}

@media(max-width:420px) {
  body:not([data-view="login"]) .topbar-icon-btn {
    width: 32px;
    height: 32px;
  }

  body:not([data-view="login"]) .topbar-profile {
    width: 34px;
    min-width: 34px;
    max-width: 34px;
    height: 34px;
  }

  body:not([data-view="login"]) .topbar-avatar {
    width: 28px;
    height: 28px;
  }
}

/* Encabezados v66 — escala uniforme para los módulos generales.
   HubSpot y Proyección conservan su composición especializada. */
@media(min-width:1451px) {
  body[data-view="dashboard"] .executive-hero,
  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero {
    height: 144px;
    min-height: 144px;
    max-height: 144px;
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero {
    grid-template-columns: minmax(315px,24%) minmax(0,76%);
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-story,
  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-panel {
    min-height: 144px;
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-module {
    gap: 8px;
    padding: 15px 28px;
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-module-row {
    grid-template-columns: 44px minmax(0,1fr);
    gap: 12px;
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-module-row h2 {
    font-size: clamp(22px,1.45vw,25px);
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-module-row p {
    margin-top: 6px;
    font-size: 9.5px;
    line-height: 1.35;
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-icon {
    width: 44px;
    height: 44px;
    border-radius: 13px;
  }

  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero-icon svg {
    width: 21px;
    height: 21px;
  }
}

@media(min-width:1101px) and (max-width:1450px) {
  body[data-view="dashboard"] .executive-hero,
  body[data-view]:not([data-view="login"]):not([data-view="dashboard"]):not([data-view="hubspot"]):not([data-view="proyeccion"]) .app-module-hero {
    height: 180px;
    min-height: 180px;
    max-height: 180px;
  }
}

/* Navegación lateral v69 — una sola apariencia para todos los módulos. */
body:not([data-view="login"]) .sidebar-brand {
  min-height: 0;
  margin: 4px 10px 24px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

@media(max-width:720px) {
  body:not([data-view="login"]) .layout {
    perspective: none;
  }

  body:not([data-view="login"]) .sidebar {
    padding: 0;
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .sidebar {
    position: fixed;
    inset: auto 10px 10px;
    z-index: 40;
    width: auto;
    height: 66px;
    min-height: 0;
    padding: 0;
    overflow: hidden;
    border: 1px solid rgba(188,255,185,.20);
    border-radius: 22px;
    box-shadow: 0 18px 50px rgba(1,29,20,.35);
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .sidebar-shell {
    display: block;
    height: 100%;
    min-height: 0;
    padding: 8px;
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .sidebar-brand {
    display: none;
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .nav {
    display: block;
    height: 100%;
    padding: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .nav-group {
    display: inline;
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .nav-group-items {
    display: inline-flex;
    gap: 4px;
    height: 100%;
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .nav-link {
    justify-content: center;
    width: 48px;
    min-width: 48px;
    height: 48px;
    min-height: 48px;
    padding: 0;
    border-radius: 14px;
    font-size: inherit;
  }

  body:not([data-view="login"]) .layout:has(.projection-sales-command) .nav-link-icon {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
  }
}
/* Proyeccion independiente: Grandes Superficies, Distribuidores y Arana */
.gsd-workspace {
  --gsd-ink:#102820;
  --gsd-muted:#65766f;
  --gsd-line:rgba(18,68,51,.14);
  --gsd-green:#118e68;
  --gsd-lime:#9ddb36;
  --gsd-amber:#e7a415;
  --gsd-red:#db3c49;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:16px;
  width:100%;
  max-width:none!important;
}

.gsd-workspace,
.gsd-control-card,
.gsd-control-card > *,
.gsd-filters,
.gsd-filters > *,
.gsd-filters .form-control,
.gsd-source-notice,
.gsd-source-notice > div {
  min-width:0;
  max-width:100%;
}

.gsd-control-card,
.gsd-panel,
.gsd-kpi {
  border:1px solid var(--gsd-line);
  background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(246,251,247,.94));
  box-shadow:0 16px 42px rgba(13,53,39,.07);
}

.gsd-control-card {
  display:grid;
  grid-template-columns:minmax(280px,1fr) minmax(620px,1.55fr);
  gap:24px;
  align-items:end;
  padding:22px 24px;
  border-radius:24px;
  overflow:hidden;
  position:relative;
}

.gsd-control-card::after {
  content:"";
  position:absolute;
  width:280px;
  height:280px;
  right:-120px;
  top:-190px;
  border:1px solid rgba(126,198,69,.23);
  border-radius:50%;
  box-shadow:0 0 0 34px rgba(126,198,69,.05),0 0 0 72px rgba(17,142,104,.035);
  pointer-events:none;
}

.gsd-control-copy { position:relative;z-index:1; }
.gsd-control-copy h3 { margin:5px 0 4px;color:var(--gsd-ink);font:700 clamp(22px,2vw,30px)/1.12 "Space Grotesk",sans-serif; }
.gsd-control-copy p { max-width:680px;margin:0;color:var(--gsd-muted);font-size:13px;line-height:1.55;overflow-wrap:anywhere; }

.gsd-filters {
  display:grid;
  grid-template-columns:minmax(110px,.65fr) minmax(170px,1fr) minmax(220px,1.25fr) auto;
  gap:10px;
  align-items:end;
  position:relative;
  z-index:1;
}

.gsd-filters label { display:grid;gap:6px;min-width:0; }
.gsd-filters label > span { color:#5a756b;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase; }
.gsd-filters .form-control { width:100%;height:44px;border-color:rgba(22,91,68,.18);background:#fff;color:var(--gsd-ink);font-weight:700; }
.gsd-filters .btn { min-height:44px;padding-inline:20px;white-space:nowrap; }

.gsd-source-notice {
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:12px;
  align-items:center;
  min-height:58px;
  padding:12px 16px;
  border:1px solid rgba(17,142,104,.18);
  border-radius:16px;
  background:rgba(230,248,240,.7);
  color:#205443;
}

.gsd-source-notice.is-proposal { border-color:rgba(231,164,21,.28);background:rgba(255,248,228,.84);color:#735410; }
.gsd-source-notice.is-warning { border-color:rgba(219,60,73,.24);background:rgba(255,239,241,.78);color:#8c2730; }
.gsd-source-dot { width:10px;height:10px;border-radius:50%;background:currentColor;box-shadow:0 0 0 5px color-mix(in srgb,currentColor 12%,transparent); }
.gsd-source-notice div { display:grid;gap:2px;min-width:0; }
.gsd-source-notice strong { font-size:12px; }
.gsd-source-notice small { color:inherit;font-size:10px;line-height:1.45;opacity:.78;overflow-wrap:anywhere; }
.gsd-source-notice > b { padding:6px 9px;border:1px solid currentColor;border-radius:999px;font-size:9px;letter-spacing:.07em;white-space:nowrap; }

.gsd-kpi-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px; }
.gsd-kpi { display:grid;grid-template-rows:auto auto auto 1fr;gap:7px;min-height:176px;padding:17px;border-radius:20px;border-top:3px solid rgba(17,142,104,.45);overflow:hidden; }
.gsd-kpi[data-kpi="target"] { border-top-color:var(--gsd-amber); }
.gsd-kpi[data-kpi="gap"] { border-top-color:#dd665d; }
.gsd-kpi[data-kpi="margin"] { border-top-color:#4c9bb2; }
.gsd-kpi.is-risk { background:linear-gradient(145deg,#fff,#fff3f3);border-top-color:var(--gsd-red); }
.gsd-kpi.is-warning { background:linear-gradient(145deg,#fff,#fff9e8);border-top-color:var(--gsd-amber); }
.gsd-kpi.is-good,.gsd-kpi.is-excellent { background:linear-gradient(145deg,#fff,#effbf5);border-top-color:var(--gsd-green); }
.gsd-kpi-top { display:flex;align-items:center;justify-content:space-between;gap:8px; }
.gsd-kpi-icon { display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#e5f4ed;color:var(--gsd-green); }
.gsd-kpi-icon svg { width:20px;height:20px; }
.gsd-kpi-badge { max-width:120px;padding:5px 8px;border-radius:999px;background:#edf4ef;color:#577067;font-size:8px;font-weight:800;letter-spacing:.05em;text-align:center; }
.gsd-kpi > span { color:#40584f;font-size:11px;font-weight:800; }
.gsd-kpi > strong { color:var(--gsd-ink);font:700 clamp(20px,1.55vw,29px)/1.05 "Space Grotesk",sans-serif;overflow-wrap:anywhere; }
.gsd-kpi > small { align-self:end;color:var(--gsd-muted);font-size:10px;line-height:1.4; }

.gsd-panel { padding:20px;border-radius:24px; }
.gsd-panel-head { display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:16px;padding-bottom:13px;border-bottom:1px solid var(--gsd-line); }
.gsd-panel-head h3 { margin:3px 0 0;color:var(--gsd-ink);font:700 21px/1.2 "Space Grotesk",sans-serif; }
.gsd-panel-head > small { max-width:520px;color:var(--gsd-muted);font-size:10px;line-height:1.45;text-align:right; }

.gsd-channel-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.gsd-channel-card { display:grid;gap:12px;min-height:150px;padding:16px;border:1px solid rgba(18,68,51,.12);border-radius:18px;background:#fff; }
.gsd-channel-card header,.gsd-channel-card footer { display:flex;align-items:center;justify-content:space-between;gap:10px; }
.gsd-channel-card header span { color:var(--gsd-ink);font-size:12px;font-weight:800; }
.gsd-channel-card header b,.gsd-company-tag { padding:4px 7px;border-radius:999px;background:#e9f5ef;color:#227454;font-size:8px;font-weight:800;letter-spacing:.05em; }
.gsd-channel-card.is-arana header b { background:#fff0d9;color:#a66808; }
.gsd-channel-card > strong { color:var(--gsd-ink);font:700 clamp(19px,1.5vw,26px)/1.1 "Space Grotesk",sans-serif;overflow-wrap:anywhere; }
.gsd-share { height:7px;border-radius:999px;background:#e8efeb;overflow:hidden; }
.gsd-share i { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gsd-lime),var(--gsd-green)); }
.gsd-channel-card.is-arana .gsd-share i { background:linear-gradient(90deg,#ffca55,#e78d11); }
.gsd-channel-card footer { color:var(--gsd-muted);font-size:9px; }

.gsd-advisor-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px; }
.gsd-advisor-card { display:grid;gap:14px;min-height:190px;padding:16px;border:1px solid rgba(18,68,51,.13);border-radius:20px;background:linear-gradient(150deg,#fff,#f3faf6);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.gsd-advisor-card:hover,.gsd-advisor-card:focus-visible { transform:translateY(-3px);border-color:rgba(17,142,104,.45);box-shadow:0 16px 30px rgba(17,80,59,.11);outline:none; }
.gsd-advisor-card header { display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center; }
.gsd-advisor-avatar { display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,#daf4e8,#8fd2b9);color:#075f45;font:700 13px "Space Grotesk",sans-serif;box-shadow:inset 0 0 0 1px rgba(17,142,104,.18); }
.gsd-advisor-card h4 { margin:0;color:var(--gsd-ink);font-size:12px;line-height:1.25; }
.gsd-advisor-card header p { margin:3px 0 0;color:var(--gsd-muted);font-size:9px; }
.gsd-advisor-card header > b { color:var(--gsd-green);font:700 14px "Space Grotesk",sans-serif; }
.gsd-advisor-metrics { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px; }
.gsd-advisor-metrics span { display:grid;gap:4px;min-width:0;padding:9px 8px;border:1px solid rgba(18,68,51,.1);border-radius:12px;background:rgba(255,255,255,.82); }
.gsd-advisor-metrics small { color:#718078;font-size:7px;font-weight:800;letter-spacing:.06em; }
.gsd-advisor-metrics strong { color:var(--gsd-ink);font-size:9px;overflow-wrap:anywhere; }
.gsd-advisor-card footer { display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:10px;border-top:1px dashed rgba(18,68,51,.16);color:var(--gsd-muted);font-size:8px; }
.gsd-advisor-card footer b { color:var(--gsd-green);white-space:nowrap; }

.gsd-trend-wrap { width:100%;overflow:auto; }
.gsd-trend-table { width:100%;min-width:700px;border-collapse:separate;border-spacing:0 7px; }
.gsd-trend-table th { padding:0 12px 6px;color:#718078;font-size:8px;letter-spacing:.07em;text-align:left;text-transform:uppercase; }
.gsd-trend-table td { padding:12px;background:#f7faf8;color:#42594f;font-size:10px; }
.gsd-trend-table td:first-child { border-radius:12px 0 0 12px;color:var(--gsd-ink); }
.gsd-trend-table td:last-child { border-radius:0 12px 12px 0; }
.gsd-trend-table td.is-positive { color:var(--gsd-green);font-weight:800; }
.gsd-status,.gsd-pending { display:inline-flex;padding:5px 8px;border-radius:999px;background:#e9efec;color:#66766f;font-size:8px;font-weight:800; }
.gsd-status.is-risk { background:#ffe8e9;color:#bd2633; }
.gsd-status.is-warning { background:#fff1cd;color:#9d6800; }
.gsd-status.is-good,.gsd-status.is-excellent { background:#def5e9;color:#087a57; }

body.gsd-modal-open { overflow:hidden; }
.gsd-modal { position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:24px; }
.gsd-modal.hidden { display:none; }
.gsd-modal-backdrop { position:absolute;inset:0;border:0;background:rgba(4,21,16,.68);backdrop-filter:blur(8px);cursor:default; }
.gsd-modal-sheet { position:relative;z-index:1;display:grid;grid-template-rows:auto minmax(0,1fr);width:min(1180px,calc(100vw - 48px));max-height:min(850px,calc(100vh - 48px));overflow:hidden;border:1px solid rgba(166,224,197,.34);border-radius:26px;background:#f8fbf9;box-shadow:0 34px 90px rgba(0,20,14,.38); }
.gsd-modal-sheet > header { display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid var(--gsd-line);background:linear-gradient(115deg,#effaf4,#fff); }
.gsd-modal-sheet h3 { margin:4px 0 3px;color:var(--gsd-ink);font:700 24px "Space Grotesk",sans-serif; }
.gsd-modal-sheet header p { margin:0;color:var(--gsd-muted);font-size:10px; }
.gsd-modal-close { display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(18,68,51,.15);border-radius:12px;background:#fff;color:var(--gsd-ink);font-size:24px;cursor:pointer; }
.gsd-modal-body { min-height:0;padding:18px 22px 24px;overflow:auto; }
.gsd-modal-summary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px; }
.gsd-modal-summary article { display:grid;gap:6px;padding:14px;border:1px solid var(--gsd-line);border-radius:16px;background:#fff; }
.gsd-modal-summary span { color:var(--gsd-muted);font-size:9px;font-weight:700; }
.gsd-modal-summary strong { color:var(--gsd-ink);font:700 19px "Space Grotesk",sans-serif;overflow-wrap:anywhere; }
.gsd-modal-separation { margin:12px 0;padding:10px 12px;border-radius:12px;background:#e8f7ef;color:#23644e;font-size:9px;line-height:1.45; }
.gsd-proposal-detail h4,.gsd-history-title h4 { margin:18px 0 10px;color:var(--gsd-ink);font-size:14px; }
.gsd-proposal-detail > div { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px; }
.gsd-proposal-detail article { display:grid;gap:5px;padding:12px;border-radius:14px;background:#fff;border:1px solid var(--gsd-line); }
.gsd-proposal-detail article span { color:var(--gsd-muted);font-size:9px; }
.gsd-proposal-detail article strong { color:var(--gsd-ink);font-size:13px; }
.gsd-proposal-detail > p { margin:14px 0 0;color:var(--gsd-muted);font-size:10px;line-height:1.55; }
.gsd-modal-loading,.gsd-empty { grid-column:1/-1;padding:24px;border:1px dashed rgba(18,68,51,.2);border-radius:16px;background:rgba(247,251,248,.8);color:var(--gsd-muted);font-size:11px;text-align:center; }
.gsd-empty.is-error { border-color:rgba(219,60,73,.3);background:#fff1f2;color:#9c2a34; }
.gsd-history-title { display:flex;align-items:center;justify-content:space-between;gap:10px; }
.gsd-history-title span { color:var(--gsd-muted);font-size:9px; }
.gsd-history-table-wrap { max-height:450px;overflow:auto;border:1px solid var(--gsd-line);border-radius:16px;background:#fff; }
.gsd-history-table-wrap table { width:100%;min-width:900px;border-collapse:collapse; }
.gsd-history-table-wrap th { position:sticky;top:0;z-index:1;padding:10px 12px;background:#edf6f1;color:#587067;font-size:8px;text-align:left;text-transform:uppercase; }
.gsd-history-table-wrap td { padding:10px 12px;border-top:1px solid #edf1ef;color:#40574e;font-size:9px; }
.gsd-history-table-wrap td:last-child { color:var(--gsd-ink);font-weight:800;white-space:nowrap; }

@media (max-width:1450px) {
  .gsd-control-card { grid-template-columns:1fr; }
  .gsd-kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .gsd-advisor-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:1080px) {
  .gsd-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gsd-channel-grid,.gsd-advisor-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gsd-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:720px) {
  .gsd-workspace { gap:12px; }
  .gsd-control-card,.gsd-panel { padding:15px;border-radius:18px; }
  .gsd-control-card,.gsd-filters,.gsd-kpi-grid,.gsd-channel-grid,.gsd-advisor-grid,.gsd-modal-summary,.gsd-proposal-detail > div { grid-template-columns:minmax(0,1fr); }
  .gsd-source-notice { grid-template-columns:auto 1fr; }
  .gsd-source-notice > b { grid-column:1/-1;justify-self:start; }
  .gsd-panel-head { align-items:flex-start;flex-direction:column; }
  .gsd-panel-head > small { text-align:left; }
  .gsd-kpi { min-height:148px; }
  .gsd-modal { padding:0;place-items:stretch; }
  .gsd-modal-sheet { width:100%;max-height:100vh;border-radius:0; }
  .gsd-modal-body { padding:15px; }
}

/* El encabezado de GS + Distribuidores replica la composicion de Proyeccion Nacional. */
body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-module {
  gap:8px;
  padding:22px 28px;
}

body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-module-row {
  grid-template-columns:44px minmax(0,1fr);
  gap:12px;
}

body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-module-row h2 {
  font-size:clamp(25px,1.62vw,28px);
}

body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-module-row p {
  margin-top:6px;
  font-size:10px;
}

body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-icon {
  width:44px;
  height:44px;
  border-radius:13px;
}

body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-icon svg {
  width:21px;
  height:21px;
}

body[data-view="proyeccion-gs-distribuidores"] :is(.app-module-hero-panel,.app-module-hero.has-module-controls .app-module-hero-panel) {
  padding:11px 14px 11px 20px;
}

body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-tools .module-unified-filters {
  grid-template-columns:minmax(88px,.78fr) minmax(154px,1.35fr) minmax(154px,1.35fr) minmax(210px,1.82fr) minmax(96px,.9fr);
}

body[data-view="proyeccion-gs-distribuidores"] .gsd-header-filters select option {
  background:#12231c;
  color:#fff;
}

body[data-view="proyeccion-gs-distribuidores"] .projection-header-period-switch button:disabled {
  cursor:not-allowed;
  opacity:.42;
}

@media(min-width:1451px) {
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-controls {
    grid-template-columns:minmax(315px,24%) minmax(0,76%);
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
  }

  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs {
    grid-template-rows:minmax(190px,auto) auto;
  }

  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs > :is(.app-module-hero-story,.app-module-hero-panel) {
    min-height:190px!important;
  }
}

@media(max-width:1450px) {
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-controls {
    grid-template-columns:1fr;
  }

  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs {
    grid-template-rows:auto auto auto;
  }

  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs > .app-module-hero-story,
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs > .app-module-hero-panel,
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs > .app-module-hero-nav {
    grid-column:1;
  }

  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs > .app-module-hero-story { grid-row:1;min-height:150px; }
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs > .app-module-hero-panel { grid-row:2;min-height:0; }
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero.has-module-tabs > .app-module-hero-nav { grid-row:3; }
}

@media(max-width:720px) {
  body[data-view="proyeccion-gs-distribuidores"] .content { padding-inline:8px; }
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-module { padding:18px; }
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-module-row { grid-template-columns:40px minmax(0,1fr);gap:10px; }
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-module-row h2 { font-size:23px; }
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-panel { padding:10px; }
  body[data-view="proyeccion-gs-distribuidores"] .app-module-hero-tools .module-unified-filters { grid-template-columns:repeat(2,minmax(0,1fr))!important;row-gap:7px; }
  body[data-view="proyeccion-gs-distribuidores"] .projection-header-actions { grid-column:1 / -1; }
  body[data-view="proyeccion-gs-distribuidores"] .module-header-refresh { justify-content:center; }
  body[data-view="proyeccion-gs-distribuidores"] .projection-team-tabs { overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin; }
}

/* GS + Distribuidores v2: réplica estructural de Proyección Nacional */
.gsd-projection-clone #gsdTeamOverview {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  min-width:0;
  width:100%;
  max-width:100%;
  gap:14px;
}

.gsd-projection-clone #gsdAdvisorProfileHost { min-width:0;width:100%;max-width:100%; }

.gsd-projection-clone [hidden] { display:none!important; }

.gsd-projection-clone .gsd-source-notice {
  margin:0;
  box-shadow:0 7px 18px rgba(25,48,32,.04);
}

.gsd-budget-lines { min-width:0;padding:0 16px 16px; }
.gsd-budget-chart { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px; }
.gsd-budget-chart > article {
  --gsd-budget-tone:#4f9639;
  display:grid;
  gap:13px;
  min-width:0;
  padding:16px;
  border:1px solid #e1e7df;
  border-top:3px solid var(--gsd-budget-tone);
  border-radius:12px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--gsd-budget-tone) 4%,white),#fff 44%);
  box-shadow:0 6px 15px rgba(27,52,35,.045);
}
.gsd-budget-chart > article.is-risk { --gsd-budget-tone:var(--performance-risk); }
.gsd-budget-chart > article.is-warning { --gsd-budget-tone:var(--performance-warning); }
.gsd-budget-chart > article.is-good { --gsd-budget-tone:var(--performance-good); }
.gsd-budget-chart > article.is-excellent { --gsd-budget-tone:var(--performance-excellent); }
.gsd-budget-chart > article > header { display:flex;align-items:center;justify-content:space-between;gap:12px; }
.gsd-budget-chart > article > header div { min-width:0; }
.gsd-budget-chart > article > header strong,.gsd-budget-chart > article > header small { display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.gsd-budget-chart > article > header strong { color:#10251a;font-size:13px;font-weight:900; }
.gsd-budget-chart > article > header small { margin-top:4px;color:#5c6b62;font-size:9px;font-weight:750; }
.gsd-budget-chart > article > header b { flex:0 0 auto;padding:6px 9px;border-radius:999px;background:color-mix(in srgb,var(--gsd-budget-tone) 12%,white);color:var(--gsd-budget-tone);font-size:8px;font-weight:900;text-transform:uppercase; }
.gsd-budget-bars { display:grid;gap:11px; }
.gsd-budget-bars > span { display:grid;grid-template-columns:minmax(90px,1fr) auto;gap:5px 12px;align-items:center; }
.gsd-budget-bars > span > i { grid-column:1 / -1;display:block;min-width:2px;height:11px;border-radius:999px;background:#25356d;box-shadow:inset 0 1px 1px rgba(255,255,255,.24); }
.gsd-budget-bars > span:last-child > i { background:#6d99d6; }
.gsd-budget-bars em { color:#637168;font-size:9px;font-style:normal;font-weight:800; }
.gsd-budget-bars strong { color:#14251b;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap; }

.gsd-monthly-ledger { margin:0 16px 16px; }
.gsd-profile-scope-note {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:8px 12px;
  align-items:center;
  padding:10px 12px;
  border:1px solid #d8e7da;
  border-radius:11px;
  background:#edf7ef;
  color:#285e3c;
  font-size:9px;
  line-height:1.45;
}
.gsd-profile-scope-note strong { text-transform:uppercase;letter-spacing:.06em; }
.gsd-profile-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); }
.gsd-profile-back { min-height:36px;white-space:nowrap; }
.gsd-profile-billing-table { min-width:1180px; }
.gsd-profile-billing-table th:first-child { min-width:220px; }
.gsd-profile-billing-table td:first-child { min-width:220px; }

.gsd-advisor-month-bars {
  display:grid;
  grid-template-columns:repeat(12,minmax(28px,1fr));
  gap:7px;
  min-height:230px;
  align-items:end;
  margin-top:14px;
  padding:12px 4px 0;
  overflow-x:auto;
}
.gsd-advisor-month-bars article { display:grid;grid-template-rows:auto 150px auto;gap:6px;min-width:30px;text-align:center; }
.gsd-advisor-month-bars article > span { color:#6c7a71;font-size:7px;font-weight:850;text-transform:uppercase; }
.gsd-advisor-month-bars article > div { display:flex;align-items:flex-end;justify-content:center;border-bottom:1px solid #dce5dc;background:linear-gradient(180deg,rgba(237,243,237,.2),rgba(237,243,237,.75)); }
.gsd-advisor-month-bars article > div > i { display:block;width:min(22px,72%);min-height:3px;border-radius:5px 5px 0 0;background:#148269;box-shadow:inset 0 1px 0 rgba(255,255,255,.35); }
.gsd-advisor-month-bars article > strong { color:#395247;font-size:7px;font-weight:850;white-space:nowrap; }

/* La fila de cuatro conserva la ficha completa aun cuando cada tarjeta queda cerca de 290 px. */
@container(max-width:330px) {
  .gsd-projection-clone .projection-advisor-ref-person > div > strong {
    display:-webkit-box;
    overflow:hidden;
    font-size:14px;
    line-height:1.08;
    white-space:normal;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }

  .gsd-projection-clone .projection-advisor-ref-hero,
  .gsd-projection-clone .projection-advisor-ref-summary {
    width:100%;
    min-width:0;
    max-width:100%;
  }

  .gsd-projection-clone .projection-advisor-ref-summary > header h3 {
    max-width:100%;
    overflow-wrap:anywhere;
    font-size:20px;
    line-height:1.02;
    white-space:normal;
  }

  .gsd-projection-clone .projection-advisor-ref-result > span > strong {
    font-size:17px;
    line-height:1.05;
  }
}

@media(max-width:900px) {
  .gsd-budget-chart { grid-template-columns:1fr; }
  .gsd-profile-tabs { grid-template-columns:1fr; }
}

@media(max-width:680px) {
  .gsd-budget-lines { padding:0 10px 12px; }
  .gsd-monthly-ledger { margin:0 10px 12px; }
  .gsd-profile-scope-note { grid-template-columns:1fr; }
  .gsd-advisor-month-bars { grid-template-columns:repeat(12,42px); }
}
