/* Experimento aislado de Testing. El modo día sigue siendo el predeterminado. */
body[data-cfc-environment="production"] .cfc-theme-toggle {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  width: 90px;
  height: 46px;
  padding: 4px;
  border: 1px solid #cbdce5;
  border-radius: 999px;
  background: #f7fbfd;
  color: #8294a7;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
body[data-cfc-environment="production"] .cfc-theme-toggle:focus-visible {
  outline: 3px solid #ffd166;
  outline-offset: 3px;
}
body[data-cfc-environment="production"] .cfc-theme-choice {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 50%;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
body[data-cfc-environment="production"] .cfc-theme-choice svg { width: 21px; height: 21px; }
body[data-cfc-environment="production"][data-cfc-theme="light"] .cfc-theme-sun {
  background: #dce7ef;
  color: #142235;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cfc-theme-toggle {
  background: #080e1a;
  border-color: #3a4a63;
  color: #96aac5;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cfc-theme-moon {
  background: #344363;
  color: #fff;
}

/* Modo día: recuperar detalles que heredaban colores del antiguo sidebar oscuro. */
body[data-cfc-environment="production"][data-cfc-theme="light"] .sidebar-support > span {
  border-color: #a9c0c8;
  background: #e7f2f4;
  color: #075d66;
  font-weight: 800;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .sidebar .user-card b {
  color: #285661;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .setlist-auto-header .eyebrow {
  color: #08737a;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .setlist-auto-header h3 {
  color: #172b39;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .setlist-auto-header p:not(.eyebrow) {
  color: #526672;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .setlist-auto-header > span {
  background: #eaf3f4;
  color: #385360;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .setlist-auto-track-copy small {
  color: #536976;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .activities-heading :is(.eyebrow, h2, p:last-child) {
  color: #fff;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-summary strong,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-request-heading > strong,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-empty h3 {
  color: #172b39;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-request-row {
  border-color: #dce8eb;
  background: #f7fafb;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-request-row.resolved {
  opacity: 1;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-request-avatar {
  background: #e5f2f3;
  color: #08737a;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-request-info > a {
  color: #086970;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-request-info > small,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-summary small {
  color: #526672;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-status.aprobada {
  background: #dff6eb;
  color: #086547;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-status.pendiente {
  background: #fff1d5;
  color: #76520d;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-access-status.rechazada {
  background: #ffe5e8;
  color: #a22d3e;
}

body[data-cfc-environment="production"][data-cfc-theme="dark"] {
  color-scheme: dark;
  background: #0b1220 !important;
  color: #edf5ff;
  --bg: #0b1220;
  --bg-2: #0e1929;
  --card: #172437;
  --card-2: #1d2e43;
  --card-3: #253a50;
  --line: #34475b;
  --line-strong: #4c6278;
  --text: #edf5ff;
  --muted: #b2c2d1;
  --cfc-ui-ink: #edf5ff;
  --cfc-ui-muted: #b2c2d1;
  --cfc-ui-line: #354b60;
  --cfc-ui-soft: #203946;
  --cfc-ui-accent-dark: #6de0df;
  --fresh-ink: #edf5ff;
  --fresh-accent-soft: #203946;
  --fresh-accent-shadow: #04383f;
}
body.cfc-fresh-home[data-cfc-environment="production"][data-cfc-theme="dark"],
body.cfc-fresh-app:not(.cfc-fresh-home)[data-cfc-environment="production"][data-cfc-theme="dark"] {
  color-scheme: dark;
  background: #0b1220 !important;
  color: #edf5ff;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .main::before {
  background: radial-gradient(ellipse at 75% 105%, #17616b, #103e50 42%, transparent 72%), #10283b !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .sidebar {
  background: #101b2c !important;
  border-color: #304258 !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .sidebar :is(.brand-lockup strong, .support-block strong, .user-card, .nav-btn) {
  color: #eaf3fc !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .sidebar :is(.brand-lockup small, .support-block a, .user-card small) {
  color: #b3c5d6 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .sidebar :is(.nav-btn.active, .user-card) {
  background: #20394d !important;
  border-color: #39566b !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .sidebar .nav-btn span {
  background: transparent !important;
  color: #aebfd1 !important;
  border-radius: 0 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .sidebar .nav-btn.active span {
  color: #82e6e3 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .top-actions :is(.circle-btn, .profile-chip) {
  background: #1c2b40 !important;
  border-color: #577187 !important;
  color: #d3f5f4 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .mobile-nav {
  background: #142135 !important;
  border-color: #34475b !important;
  box-shadow: 0 -10px 30px #02071155 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .mobile-nav-btn {
  color: #aebed0 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .mobile-nav-btn.active {
  color: #83e6e3 !important;
}

/* Superficies compartidas: Inicio, Confirmo, Setlist, Cronograma, Admin y Tasks. */
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(
  .card, .fresh-card, .visual-team-card, .cronograma-program-panel,
  .cronograma-announcements-panel, .production-summary-card, .production-column,
  .production-task, .admin-v2-card, .setlist-auto-player
) {
  background: #172437 !important;
  border-color: #354b60 !important;
  color: #edf5ff !important;
  box-shadow: 0 14px 34px #0207114d !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(
  .clean-item, .assignment-row, .setlist-card, .confirmo-schedule-item,
  .admin-edit-row, .admin-convocation-card, .admin-team-builder,
  .song-studio-form-section, .song-studio-library-row,
  .cronograma-arrival-card, .cronograma-announcement-card,
  .setlist-auto-track, .fresh-shortcut, .fresh-team-row, .fresh-upcoming button
) {
  background: #1d2d42 !important;
  border-color: #3a5065 !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(
  h2, h3, h4, .setlist-song-title, .setlist-tonality-label,
  .confirmo-date-label, .confirmo-team-title, .fresh-meeting h2,
  .fresh-card strong, .cronograma-step-copy strong
) {
  color: #f0f6ff;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(
  small, .subtitle, .fresh-card p, .setlist-artist, .cronograma-step-copy span,
  .confirmo-meeting-info p
) {
  color: #b9c9d9;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(
  .confirmo-date-title, .confirmo-date-tab:not(.active), .setlist-date-tab:not(.active),
  .songs-tab:not(.active), .setlist-number, .setlist-category-badge,
  .setlist-edit-tone-btn, .setlist-auto-track[aria-current="true"]
) {
  background: #213b48 !important;
  border-color: #48878b !important;
  color: #c8f4f1 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(
  input:not([type="checkbox"]):not([type="radio"]), textarea, select
) {
  background: #101e30;
  color: #f1f7ff;
  border-color: #52677c;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(input, textarea)::placeholder {
  color: #a5b8c8;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view :is(
  .fresh-meeting, .fresh-schedule, .fresh-invitation, .fresh-upcoming,
  .confirmo-meeting-info, .setlist-auto-missing
) {
  background-color: #172437 !important;
  border-color: #354b60 !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view .fresh-meeting :is(h2, h3, strong, p, small),
body[data-cfc-environment="production"][data-cfc-theme="dark"] .view .fresh-schedule :is(h2, h3, strong, p, small) {
  color: #edf5ff;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] #notificationsPanel {
  background: #172437 !important;
  border-color: #43586c !important;
  color: #edf5ff !important;
}

/* Calendario y Chat mantienen colores de eventos/personas pero oscurecen el lienzo. */
body[data-cfc-environment="production"][data-cfc-theme="dark"] .activities-page {
  color: #edf5ff;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .activities-heading :is(h2, p),
body[data-cfc-environment="production"][data-cfc-theme="dark"] .activities-month-controls h3 {
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] :is(
  .activities-calendar, .activities-toolbar, .activities-weekdays,
  .activities-day, .activities-day.is-outside, .activities-dialog-panel,
  .chat-stream, .chat-presence, .chat-mention-options
) {
  background: #172437 !important;
  border-color: #354b60 !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] :is(
  .activities-today, .activities-month-arrow, .activities-undated,
  .chat-room-tab:not(.is-active), .chat-quick-toggle,
  .chat-topic-groups button, .chat-compose textarea, .chat-mention-options button
) {
  background: #21384a !important;
  border-color: #527083 !important;
  color: #e1f6f5 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] :is(
  .activities-day, .activities-weekdays span, .activities-toolbar-meta,
  .chat-header h2, .chat-room-note, .chat-empty, .chat-status
) {
  color: #c0d0df !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-bubble {
  color: #17303e;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-speaker-1,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-speaker-2,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-speaker-3,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-speaker-4,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-speaker-5 {
  color: #17303e;
}
@media (max-width: 600px) {
  body[data-cfc-environment="production"] .cfc-theme-toggle {
    width: 82px;
    height: 42px;
    padding: 3px;
  }
  body[data-cfc-environment="production"] .cfc-theme-choice {
    width: 35px;
    height: 35px;
    flex-basis: 35px;
  }
  body[data-cfc-environment="production"] .cfc-theme-choice svg { width: 19px; height: 19px; }
}
@media (prefers-reduced-motion: reduce) {
  body[data-cfc-environment="production"] .cfc-theme-choice { transition: none; }
}

/* Correcciones de contraste verificadas en el recorrido visual de Testing. */
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-date-blocks strong {
  background: linear-gradient(#22364d 49.4%, #39536a 49.5%, #39536a 50.5%, #22364d 50.6%) !important;
  border-color: #536d83 !important;
  color: #f6fbff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-date-blocks small,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-kicker,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-text-button,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-signoff {
  color: #b7c9da !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-invitation {
  color: #9aeac0 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-invitation.is-pending {
  color: #ffd180 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-team-row,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .fresh-upcoming > button {
  border-top-color: #354b60 !important;
}

body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-hero,
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-produccion .production-header {
  background: #172437 !important;
  border-color: #354b60 !important;
  color: #f0f6ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-hero-copy :is(h2, p),
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-hero-summary > strong,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-summary-stats b {
  color: #eef6ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-hero-copy h2 em,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-kicker,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-hero-summary > span {
  color: #7be4e0 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cronograma-hero-summary {
  background: #20384b !important;
  border-color: #3b586a !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] :is(
  .production-loading, .production-empty, .production-error, .production-denied,
  .cronograma-loading-state, .cronograma-empty-state, .cronograma-error-state
) {
  background: #172437 !important;
  border-color: #354b60 !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] :is(
  .production-loading, .production-empty, .production-error, .production-denied,
  .cronograma-loading-state, .cronograma-empty-state, .cronograma-error-state
) :is(h2, h3, h4, strong) {
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] :is(
  .production-loading, .production-empty, .production-error, .production-denied,
  .cronograma-loading-state, .cronograma-empty-state, .cronograma-error-state
) :is(p, small) {
  color: #b9c9d9 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .production-filters button:not(.active),
body[data-cfc-environment="production"][data-cfc-theme="dark"] .production-view-switch button:not(.active) {
  background: #22374b !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .production-view-switch {
  background: #172437 !important;
  border-color: #354b60 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .production-summary-card :is(strong, small) {
  color: #edf5ff !important;
}

body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin .admin-v2-tool-card,
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin .admin-v2-summary > summary,
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin :is(
  .convocation-summary-details-body, .summary-stats > div, .admin-editor-section
) {
  background: #203249 !important;
  border-color: #40586e !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin .admin-v2-tool-card :is(h3, p, small, strong),
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin .admin-v2-summary > summary span,
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin .admin-v2-card-title :is(h3, p) {
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin .admin-v2-tool-card p,
body[data-cfc-environment="production"][data-cfc-theme="dark"] #view-admin .admin-v2-card-title p {
  color: #b9c9d9 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-room-date,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-presence > strong {
  color: #82e6e3 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-presence-empty {
  color: #bed0df !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .chat-presence-person {
  background: #243b50 !important;
  border-color: #4d7380 !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cancionero-song-card,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .cancionero-search,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .song-studio-search {
  background: #1d2d42 !important;
  border-color: #3a5065 !important;
  color: #edf5ff !important;
}

/* Admin > Confirmaciones: superficies y estados legibles en modo día. */
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmations-toolbar label > span,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-stat span {
  color: #435b68;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] :is(
  .admin-confirmation-stat, .admin-confirmation-group
) {
  border-color: #d8e5e9;
  background: #f7fafb;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-stat.total strong,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-group-header strong,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-person-copy strong {
  color: #172b39;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-stat.confirmed strong,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-group.confirmed .admin-confirmation-group-header b {
  color: #087451;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-stat.pending strong,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-group.pending .admin-confirmation-group-header b {
  color: #94600a;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-stat.cant strong,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-group.cant .admin-confirmation-group-header b {
  color: #b72f47;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-group-header {
  border-bottom-color: #d8e5e9;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-group-header b,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-person {
  border-color: #d8e5e9;
  background: #fff;
}
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-person-copy small,
body[data-cfc-environment="production"][data-cfc-theme="light"] .admin-confirmation-empty {
  color: #526672;
}

/* Admin > Enviar notificaciones: modal y contenido desplazable en modo oscuro. */
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal {
  color-scheme: dark;
  background: #172437 !important;
  border-color: #40586e !important;
  color: #edf5ff !important;
  scrollbar-color: #526f82 #172437;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal :is(
  .auth-modal-header h2, .admin-push-option strong, .admin-push-preview h3,
  .admin-push-reach strong, .push-admin-panel h3, .push-admin-panel h4,
  .push-admin-user strong, .push-admin-history summary, .push-admin-history ul
) {
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal :is(
  .auth-modal-header p, .admin-push-option small, .admin-push-preview > p,
  .admin-push-reach span, .admin-push-reach small, .push-admin-panel p,
  .push-admin-user small, .push-admin-search, .push-admin-target
) {
  color: #b9c9d9 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .auth-modal-header small,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .admin-push-preview > small {
  color: #82e6e3 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal :is(
  .auth-modal-icon, .auth-modal-close, .admin-push-option, .admin-push-preview,
  .push-admin-history
) {
  background: #203249 !important;
  border-color: #456076 !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .admin-push-option:is(:hover, .is-selected) {
  background: #224a50 !important;
  border-color: #5cbfc1 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .admin-push-option > span {
  background: #294b59;
  color: #9df1ec;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .push-admin-panel {
  border-top-color: #40586e;
  color: #edf5ff;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .push-admin-user {
  border-bottom-color: #40586e;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .push-admin-search input {
  background: #101e30 !important;
  border-color: #52677c !important;
  color: #edf5ff !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .push-admin-search input::placeholder {
  color: #a5b8c8;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .push-admin-history,
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .push-admin-panel button:disabled {
  background: #203249 !important;
  color: #b9c9d9 !important;
}
body[data-cfc-environment="production"][data-cfc-theme="dark"] .admin-push-modal .auth-modal-actions {
  border-top-color: #40586e;
}

