/* ════════════════════════════════════════════════════════════════════
   Odyssey Icon System · helper classes
   Uso: <svg class="odi odi-sm"><use href="/visual/icons/sprite.svg#i-organize"/></svg>
   ════════════════════════════════════════════════════════════════════ */

.odi {
  display: inline-block;
  vertical-align: middle;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  color: currentColor;
  fill: none;
  stroke: currentColor;
}
.odi-xs { width: 14px; height: 14px; }
.odi-sm { width: 18px; height: 18px; }
.odi-md { width: 24px; height: 24px; }
.odi-lg { width: 32px; height: 32px; }
.odi-xl { width: 48px; height: 48px; }
.odi-2xl { width: 64px; height: 64px; }

/* Variantes de cor */
.odi-cyan { color: var(--cyan, #00e6b0); }
.odi-ice  { color: var(--ice, #f7faf8); }
.odi-muted { color: rgba(247, 250, 248, 0.62); }

/* Entry-points & zone cards: ícone destacado no topo */
.entry-card .odi-xl,
.zone-card .odi-xl {
  margin-bottom: 14px;
  color: var(--cyan, #00e6b0);
  opacity: 0.92;
  transition: transform 0.4s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.entry-card:hover .odi-xl,
.zone-card:hover .odi-xl {
  transform: scale(1.06) rotate(-3deg);
}

/* Bullets de listas: ícone leading + texto */
ul.odi-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
ul.odi-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 6px 0;
}
ul.odi-list .odi {
  margin-top: 2px;
  color: var(--cyan, #00e6b0);
  flex-shrink: 0;
}

/* Botões CTA com ícone trailing */
.cta-primary .odi,
.cta-secondary .odi,
.header-action .odi {
  width: 18px;
  height: 18px;
  margin-left: 4px;
}

/* Footer links com ícone leading */
.site-foot a .odi,
.site-footer a .odi,
.foot-grid a .odi {
  margin-right: 6px;
  vertical-align: -3px;
  opacity: 0.85;
  transition: opacity 0.2s, transform 0.2s;
}
.site-foot a:hover .odi,
.site-footer a:hover .odi,
.foot-grid a:hover .odi {
  opacity: 1;
  transform: translateX(2px);
}

/* Telemetry strip t-tag icon */
.telemetry-row .t-tag .odi {
  margin-right: 4px;
  vertical-align: -2px;
}

/* Phase-card letter as icon container */
.phase-letter .odi {
  width: 56px;
  height: 56px;
  display: block;
}
.phase-card .phase-letter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Roster code with sector icon */
.roster-code .odi {
  margin-right: 4px;
  vertical-align: -3px;
}

/* Case-full card with sector icon overlay */
.case-icon {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  background: rgba(9, 13, 16, 0.72);
  border: 1px solid rgba(0, 230, 176, 0.32);
  border-radius: 50%;
  backdrop-filter: blur(8px);
}
.case-icon .odi { width: 28px; height: 28px; }
.case-full { position: relative; }

/* Lead-magnet cover icon */
.cover-icon {
  display: grid;
  place-items: center;
  width: 96px;
  height: 96px;
  margin: 0 auto 24px;
  background: rgba(0, 230, 176, 0.08);
  border: 2px solid rgba(0, 230, 176, 0.45);
  border-radius: 50%;
  position: relative;
  z-index: 5;
}
.cover-icon .odi { width: 48px; height: 48px; }

/* Manifesto principles num + icon together */
.manifesto-card .manifesto-num {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
