/* =========================================================================
   COSTA8 • TEMA VERDE SELVA — cobertura total
   -------------------------------------------------------------------
   Muchas pantallas heredadas usan colores fijos en el HTML
   (background:#fff, color:#0F172A, border:#CBD5E1...). Este archivo los
   corrige en modo Verde Selva sin tener que reescribir cada página.

   Se carga en TODAS las páginas, después del CSS propio de cada una.
   ========================================================================= */

/* ---------- 1. Superficies blancas fijas ---------- */
[data-theme="dark-green"] [style*="background: #fff"],
[data-theme="dark-green"] [style*="background:#fff"],
[data-theme="dark-green"] [style*="background: #FFFFFF"],
[data-theme="dark-green"] [style*="background:#FFFFFF"],
[data-theme="dark-green"] [style*="background: white"],
[data-theme="dark-green"] [style*="background-color: #fff"],
[data-theme="dark-green"] [style*="background-color: #FFFFFF"],
[data-theme="dark-green"] [style*="background: #F8FAFC"],
[data-theme="dark-green"] [style*="background: #F1F5F9"],
[data-theme="dark-green"] [style*="background: #F7F6F1"],
[data-theme="dark-green"] [style*="background: #FAF9F5"] {
  background: var(--bg-surface, #154237) !important;
}

/* ---------- 2. Texto oscuro fijo ---------- */
[data-theme="dark-green"] [style*="color: #0F172A"],
[data-theme="dark-green"] [style*="color:#0F172A"],
[data-theme="dark-green"] [style*="color: #141E19"],
[data-theme="dark-green"] [style*="color: #10231D"],
[data-theme="dark-green"] [style*="color: #1E293B"],
[data-theme="dark-green"] [style*="color: #334155"],
[data-theme="dark-green"] [style*="color: #000"] {
  color: var(--text-primary, #F8FAFC) !important;
}

[data-theme="dark-green"] [style*="color: #64748B"],
[data-theme="dark-green"] [style*="color: #475569"],
[data-theme="dark-green"] [style*="color: #4A5F57"],
[data-theme="dark-green"] [style*="color: #5A6E65"],
[data-theme="dark-green"] [style*="color: #94A3B8"] {
  color: var(--text-secondary, #A7F3D0) !important;
}

/* ---------- 3. Bordes claros fijos ---------- */
[data-theme="dark-green"] [style*="border: 1.5px solid #CBD5E1"],
[data-theme="dark-green"] [style*="border: 1px solid #CBD5E1"],
[data-theme="dark-green"] [style*="border: 1.5px solid #E2DDD5"],
[data-theme="dark-green"] [style*="border: 1px solid #E2DDD5"],
[data-theme="dark-green"] [style*="border: 1.5px solid #E2E8F0"],
[data-theme="dark-green"] [style*="border: 1px solid #E2E8F0"] {
  border-color: var(--border-color, rgba(255,255,255,.16)) !important;
}

/* ---------- 4. Campos de formulario ---------- */
[data-theme="dark-green"] input:not([type="checkbox"]):not([type="radio"]),
[data-theme="dark-green"] textarea,
[data-theme="dark-green"] select {
  color: var(--text-primary, #F8FAFC) !important;
  border-color: var(--border-color, rgba(255,255,255,.16)) !important;
}
[data-theme="dark-green"] input::placeholder,
[data-theme="dark-green"] textarea::placeholder { color: #7FA99B !important; }

[data-theme="dark-green"] [style*="background: #fff"] input,
[data-theme="dark-green"] [style*="background: #FFFFFF"] input {
  background: var(--bg-surface-elevated, #1A4D40) !important;
}

/* ---------- 5. Modales heredados ---------- */
[data-theme="dark-green"] [style*="background: #FFFFFF"][style*="border-radius"],
[data-theme="dark-green"] [style*="background: #fff"][style*="border-radius"] {
  background: var(--bg-surface, #154237) !important;
  color: var(--text-primary, #F8FAFC);
}

/* ---------- 6. Chat de Mariam (IA) ---------- */
[data-theme="dark-green"] #ai-chat-modal {
  background: var(--bg-surface, #154237) !important;
  border-color: var(--border-color, rgba(255,255,255,.16)) !important;
}
[data-theme="dark-green"] #ai-chat-messages [style*="background: #fff"],
[data-theme="dark-green"] #ai-chat-messages [style*="background:#fff"],
[data-theme="dark-green"] #ai-chat-messages [style*="background: rgb(255, 255, 255)"],
[data-theme="dark-green"] #ai-chat-messages [style*="background:#FFFFFF"],
[data-theme="dark-green"] #ai-chat-messages [style*="background: #F1F5F9"],
[data-theme="dark-green"] #ai-chat-messages [style*="background: #F8FAFC"] {
  background: var(--bg-subtle, rgba(255,255,255,.08)) !important;
  color: var(--text-primary, #F8FAFC) !important;
}
[data-theme="dark-green"] #ai-chat-input {
  background: var(--bg-subtle, rgba(255,255,255,.08)) !important;
  color: var(--text-primary, #F8FAFC) !important;
  border-color: var(--border-color, rgba(255,255,255,.16)) !important;
}
/* Burbuja del usuario: verde de marca en ambos temas */
[data-theme="dark-green"] #ai-chat-messages [style*="background: var(--primary-color)"],
[data-theme="dark-green"] #ai-chat-messages [style*="background: var(--primary-color); color: #fff"] {
  color: #06231C !important;
}

/* ---------- 7. Componentes propios de Costa8 ---------- */
[data-theme="dark-green"] .c8-modal { background: var(--bg-surface, #154237); color: var(--text-primary, #F8FAFC); }
[data-theme="dark-green"] .c8-modal-body { color: var(--text-primary, #F8FAFC); }
[data-theme="dark-green"] .c8-modal-btn.ghost { background: transparent; color: var(--text-secondary, #A7F3D0); }

/* ---------- 8. Tarjetas y tablas del catálogo ---------- */
[data-theme="dark-green"] .listing-card { background: var(--bg-surface, #154237); border-color: var(--border-color, rgba(255,255,255,.16)); }
[data-theme="dark-green"] .rest-card { background: var(--bg-surface, #154237); }

/* ---------- 9. Selector de tema flotante ---------- */
.c8-theme-fab {
  position: fixed; right: 16px; bottom: 84px; z-index: 8999;
  width: 46px; height: 46px; border-radius: 50%; border: 2px solid rgba(255,255,255,.8);
  background: #0B332A; color: #fff; font-size: 1.15rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 6px 18px rgba(0,0,0,.28);
}
[data-theme="dark-green"] .c8-theme-fab { background: #F8FAFC; color: #0B332A; }
.c8-theme-fab { text-shadow: none; }
@media print { .c8-theme-fab { display: none !important; } }

/* ---------- 10. Impresión siempre clara ---------- */
@media print {
  [data-theme="dark-green"] body,
  [data-theme="dark-green"] .hoja,
  [data-theme="dark-green"] .cuerpo {
    background: #fff !important;
    color: #10231D !important;
  }
}

/* =========================================================================
   CAPA DE LEGIBILIDAD — Verde Selva
   Corrige los colores fijos escritos dentro del HTML (estilos en línea) que
   en modo oscuro quedaban ilegibles: enlaces azules por defecto, textos
   verdes sobre fondos verdes y grises demasiado oscuros.
   Solo se ajusta el COLOR DEL TEXTO, nunca los fondos.
   ========================================================================= */

/* 11. Enlaces con el azul por defecto del navegador */
[data-theme="dark-green"] a[style*="color: #0000EE"],
[data-theme="dark-green"] a[style*="color: blue"] { color: #A7F3D0 !important; }

/* 20. Menú hamburguesa y modales: fondo sólido y texto claro */
[data-theme="dark-green"] .mobile-drawer,
[data-theme="dark-green"] #mobile-drawer,
[data-theme="dark-green"] [id*="drawer"] {
  background: var(--bg-surface, #154237) !important;
  color: var(--text-primary, #F8FAFC);
}
[data-theme="dark-green"] [id*="drawer"] [style*="background: #FFFFFF"],
[data-theme="dark-green"] [id*="drawer"] [style*="background: #fff"] {
  background: var(--bg-subtle, rgba(255,255,255,.08)) !important;
  color: var(--text-primary, #F8FAFC) !important;
}

/* 21. Campos de formulario dentro de modales y del panel */
[data-theme="dark-green"] #modal-editor input,
[data-theme="dark-green"] #modal-editor textarea,
[data-theme="dark-green"] #modal-editor select,
[data-theme="dark-green"] #modal-perfil input,
[data-theme="dark-green"] #modal-perfil textarea,
[data-theme="dark-green"] #modal-perfil select {
  background: var(--bg-surface-elevated, #1A4D40) !important;
  color: var(--text-primary, #F8FAFC) !important;
}

/* ---------- 23. Controles de fecha y botones secundarios ----------
   Los inputs date y los botones de atajo traen fondo claro y texto oscuro
   escritos a mano; en verde quedaban ilegibles antes de que actuara el
   normalizador. Aquí se declaran de una vez. */
[data-theme="dark-green"] input[type="date"],
[data-theme="dark-green"] input[type="time"],
[data-theme="dark-green"] input[type="datetime-local"] {
  background: #154237 !important;
  color: #F8FAFC !important;
  border-color: rgba(255,255,255,.28) !important;
  color-scheme: dark;
}
[data-theme="dark-green"] input[type="date"]::-webkit-calendar-picker-indicator,
[data-theme="dark-green"] input[type="time"]::-webkit-calendar-picker-indicator {
  filter: invert(1) brightness(1.6);
  opacity: .9;
}
[data-theme="dark-green"] button[onclick*="setQuickDates"],
[data-theme="dark-green"] [style*="background: #F1F5F9"],
[data-theme="dark-green"] [style*="background:#F1F5F9"] {
  background: rgba(255,255,255,.12) !important;
  color: #F8FAFC !important;
  border-color: rgba(255,255,255,.28) !important;
}

/* =========================================================================
   FASE 20 • CAPA DEFINITIVA DE CONTRASTE Y COMPONENTES
   -------------------------------------------------------------------------
   Causa raíz del texto claro sobre fondo blanco (ventana de fechas):
   cuando un script toca el estilo en línea (p. ej. style.display='block'),
   el navegador reescribe TODO el atributo y convierte #FFFFFF en
   rgb(255, 255, 255). Las reglas [style*="background: #FFFFFF"] dejaban de
   coincidir y la ventana volvía a blanco con el texto ya aclarado.
   Aquí se cubren también las formas rgb() y los componentes nuevos usan
   variables, no colores fijos.
   ========================================================================= */

/* ---------- 30. Formas rgb() de las superficies claras ---------- */
[data-theme="dark-green"] [style*="background: rgb(255, 255, 255)"],
[data-theme="dark-green"] [style*="background-color: rgb(255, 255, 255)"],
[data-theme="dark-green"] [style*="background: white"],
[data-theme="dark-green"] [style*="background: rgb(248, 250, 252)"],
[data-theme="dark-green"] [style*="background: rgb(247, 246, 241)"],
[data-theme="dark-green"] [style*="background: rgb(250, 249, 245)"],
[data-theme="dark-green"] [style*="background: #F8FAFC"],
[data-theme="dark-green"] [style*="background:#F8FAFC"],
[data-theme="dark-green"] [style*="background: #f8fafc"],
[data-theme="dark-green"] [style*="background: #fafafa"],
[data-theme="dark-green"] [style*="background: #FAFAFA"] {
  background: var(--bg-surface, #154237) !important;
}
[data-theme="dark-green"] [style*="background: rgb(241, 245, 249)"],
[data-theme="dark-green"] [style*="background: #F1EFE9"],
[data-theme="dark-green"] [style*="background: rgb(241, 239, 233)"] {
  background: rgba(255,255,255,.10) !important;
}

/* ---------- 31. Formas rgb() de los textos oscuros ---------- */
[data-theme="dark-green"] [style*="color: rgb(15, 23, 42)"],
[data-theme="dark-green"] [style*="color: rgb(20, 30, 25)"],
[data-theme="dark-green"] [style*="color: rgb(16, 35, 29)"],
[data-theme="dark-green"] [style*="color: rgb(30, 41, 59)"],
[data-theme="dark-green"] [style*="color: rgb(51, 65, 85)"],
[data-theme="dark-green"] [style*="color: rgb(0, 0, 0)"],
[data-theme="dark-green"] [style*="color:#141E19"],
[data-theme="dark-green"] [style*="color: #111"],
[data-theme="dark-green"] [style*="color: #222"],
[data-theme="dark-green"] [style*="color: #333"] {
  color: var(--text-primary, #F8FAFC) !important;
}
[data-theme="dark-green"] [style*="color: rgb(100, 116, 139)"],
[data-theme="dark-green"] [style*="color: rgb(71, 85, 105)"],
[data-theme="dark-green"] [style*="color: rgb(74, 95, 87)"],
[data-theme="dark-green"] [style*="color: rgb(90, 110, 101)"],
[data-theme="dark-green"] [style*="color: rgb(148, 163, 184)"],
[data-theme="dark-green"] [style*="color: #666"],
[data-theme="dark-green"] [style*="color: #555"] {
  color: var(--text-secondary, #A7F3D0) !important;
}
/* Verdes oscuros usados como texto: sobre selva se aclaran */
[data-theme="dark-green"] [style*="color: #059669"],
[data-theme="dark-green"] [style*="color:#059669"],
[data-theme="dark-green"] [style*="color: rgb(5, 150, 105)"],
[data-theme="dark-green"] [style*="color: #047857"],
[data-theme="dark-green"] [style*="color: #065F46"],
[data-theme="dark-green"] [style*="color: #0E3A2F"],
[data-theme="dark-green"] [style*="color: #7c3aed"] {
  color: #6EE7B7 !important;
}

/* ---------- 32. Botones verdes con texto blanco: contraste AA ----------
   En selva --primary-color es #10B981 (verde claro, ideal para texto) y el
   blanco encima solo daba 2.5:1. Como relleno de botón se usa un esmeralda
   profundo (5.5:1). */
.btn-primary,
button.btn-primary,
a.btn-primary {
  background: linear-gradient(135deg, #047857, #065F46) !important;
  color: #FFFFFF !important;
}
[style*="linear-gradient(135deg, #059669, #047857)"],
[style*="linear-gradient(135deg,#059669,#047857)"] {
  background: linear-gradient(135deg, #047857, #065F46) !important;
}
[data-theme="dark-green"] [style*="background: var(--primary-color)"],
[data-theme="dark-green"] [style*="background:var(--primary-color)"],
[data-theme="dark-green"] [style*="background: #10B981"],
[data-theme="dark-green"] [style*="background: #059669"],
[data-theme="dark-green"] [style*="background:#059669"],
[data-theme="dark-green"] [style*="background: rgb(5, 150, 105)"],
[data-theme="dark-green"] [style*="background: rgb(16, 185, 129)"] {
  background: #047857 !important;
  color: #FFFFFF !important;
}
/* La regla antigua del chat ponía texto oscuro sobre el verde: ya no hace falta */
[data-theme="dark-green"] #ai-chat-messages [style*="background: var(--primary-color)"] { color: #FFFFFF !important; }

/* ---------- 33. Ventanas de fechas y huéspedes (inicio) ---------- */
.c8-pop {
  position: absolute; top: calc(100% + 14px); left: -30px; width: 320px; z-index: 10000; text-align: left;
  background: var(--bg-surface, #FFFFFF); color: var(--text-primary, #141E19);
  border: 1.5px solid var(--border-color, #E2DDD5); border-radius: 20px; padding: 18px;
  box-shadow: 0 22px 50px rgba(0,0,0,.25);
}
.c8-pop-guests { left: -60px; width: 290px; }
.c8-pop-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px;
  font-size: .92rem; font-weight: 800; color: var(--text-primary, #141E19); }
.c8-pop-x { width: 32px; height: 32px; border-radius: 50%; border: 1px solid var(--border-color, #E2DDD5);
  background: transparent; color: var(--text-primary, #141E19); font-size: .95rem; cursor: pointer;
  display: flex; align-items: center; justify-content: center; }
.c8-pop-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 12px; }
.c8-pop-label { display: block; margin-bottom: 4px; font-size: .7rem; font-weight: 800; letter-spacing: .5px;
  text-transform: uppercase; color: var(--text-secondary, #5A6E65); }
.c8-pop-input { width: 100%; min-height: 44px; padding: 8px 10px; border-radius: 12px; font: inherit; font-size: .86rem; font-weight: 700;
  background: var(--bg-page, #FAF9F5); color: var(--text-primary, #141E19); border: 1.5px solid var(--border-color, #E2DDD5); }
.c8-pop-input:focus { outline: none; border-color: #059669; box-shadow: 0 0 0 3px rgba(5,150,105,.18); }
.c8-pop-chips { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
.c8-chip { padding: 8px 12px; border-radius: 9999px; font-size: .76rem; font-weight: 700; cursor: pointer;
  background: transparent; color: var(--text-primary, #141E19); border: 1.5px solid var(--border-color, #E2DDD5); }
.c8-chip:hover { border-color: #059669; }
.c8-pop-error { margin: -2px 0 10px; padding: 8px 10px; border-radius: 10px; font-size: .78rem; font-weight: 700;
  background: rgba(220,38,38,.10); color: #B91C1C; border: 1px solid rgba(220,38,38,.35); }
.c8-pop-ok { width: 100%; min-height: 44px; border: none; border-radius: 12px; cursor: pointer; font-weight: 800; font-size: .86rem;
  background: linear-gradient(135deg, #047857, #065F46); color: #FFFFFF; }
.c8-pop-row { display: flex; justify-content: space-between; align-items: center; padding: 10px 0;
  border-bottom: 1px solid var(--border-color, #E2DDD5); }
.c8-pop-row:last-of-type { border-bottom: none; margin-bottom: 8px; }
.c8-pop-name { font-weight: 800; font-size: .86rem; color: var(--text-primary, #141E19); }
.c8-pop-sub { font-size: .72rem; color: var(--text-secondary, #5A6E65); }
.c8-stepper { display: flex; align-items: center; gap: 10px; }
.c8-stepper span { min-width: 18px; text-align: center; font-weight: 900; color: var(--text-primary, #141E19); }
.c8-stepper button { width: 34px; height: 34px; border-radius: 50%; cursor: pointer; font-size: 1.05rem; font-weight: 800; line-height: 1;
  background: transparent; color: var(--text-primary, #141E19); border: 1.5px solid var(--border-color, #E2DDD5); }
.c8-stepper button:last-child { border-color: #059669; color: #059669; }
[data-theme="dark-green"] .c8-pop { background: #154237 !important; border-color: rgba(255,255,255,.18) !important; color: #F8FAFC !important; }
[data-theme="dark-green"] .c8-pop-input { background: #0F3329 !important; color: #F8FAFC !important; border-color: rgba(255,255,255,.22) !important; color-scheme: dark; }
[data-theme="dark-green"] .c8-pop-label,
[data-theme="dark-green"] .c8-pop-sub { color: #A7F3D0 !important; }
[data-theme="dark-green"] .c8-pop-head,
[data-theme="dark-green"] .c8-pop-name,
[data-theme="dark-green"] .c8-stepper span,
[data-theme="dark-green"] .c8-chip,
[data-theme="dark-green"] .c8-pop-x,
[data-theme="dark-green"] .c8-stepper button { color: #F8FAFC !important; }
[data-theme="dark-green"] .c8-chip,
[data-theme="dark-green"] .c8-pop-x,
[data-theme="dark-green"] .c8-stepper button { border-color: rgba(255,255,255,.24) !important; background: transparent !important; }
[data-theme="dark-green"] .c8-stepper button:last-child { border-color: #34D399 !important; color: #6EE7B7 !important; }
[data-theme="dark-green"] .c8-pop-error { color: #FECACA !important; background: rgba(220,38,38,.18) !important; }
[data-theme="dark-green"] .c8-pop-ok { background: linear-gradient(135deg, #047857, #065F46) !important; color: #FFFFFF !important; }
@media (max-width: 768px) {
  .c8-pop { position: fixed !important; top: 50% !important; left: 50% !important; transform: translate(-50%, -50%) !important;
    width: calc(100vw - 32px) !important; max-width: 380px !important; max-height: 85vh; overflow-y: auto; z-index: 10005 !important; }
  .c8-pop-grid { grid-template-columns: 1fr; }
}

/* ---------- 34. Píldoras de categoría (rediseño) ---------- */
.prop-pill {
  display: inline-flex !important; align-items: center; gap: 6px;
  background: transparent !important; color: var(--text-primary, #141E19) !important;
  border: 1.5px solid var(--border-color, #E2DDD5) !important; box-shadow: none !important;
  font-weight: 700 !important; letter-spacing: .1px;
}
.prop-pill:hover { border-color: #059669 !important; }
.prop-pill.active {
  background: #0B332A !important; color: #FFFFFF !important; border-color: #0B332A !important;
  box-shadow: 0 6px 16px rgba(11,51,42,.22) !important;
}
[data-theme="dark-green"] .prop-pill { color: #E7F7F0 !important; border-color: rgba(255,255,255,.22) !important; }
[data-theme="dark-green"] .prop-pill:hover { border-color: #6EE7B7 !important; }
[data-theme="dark-green"] .prop-pill.active {
  background: #F8FAFC !important; color: #0B332A !important; border-color: #F8FAFC !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.30) !important;
}

/* ---------- 35. Botón flotante de cuenta (rediseño) ---------- */
.c8-account-fab {
  position: fixed; left: 16px; bottom: 20px; z-index: 9000;
  width: 52px; height: 52px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center; text-decoration: none;
  background: #FFFFFF; color: #0B332A; border: 1.5px solid rgba(11,51,42,.14);
  box-shadow: 0 10px 26px rgba(11,51,42,.22); transition: transform .2s ease, box-shadow .2s ease;
}
.c8-account-fab:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(11,51,42,.28); }
.c8-account-fab svg { width: 24px; height: 24px; }
.c8-account-fab .c8-fab-ini { font-weight: 900; font-size: 1.05rem; letter-spacing: .5px; }
.c8-account-fab .c8-fab-dot { position: absolute; right: 2px; bottom: 2px; width: 12px; height: 12px; border-radius: 50%;
  background: #10B981; border: 2px solid #FFFFFF; }
[data-theme="dark-green"] .c8-account-fab { background: #F8FAFC !important; color: #0B332A !important; border-color: rgba(255,255,255,.6) !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.40) !important; }
@media print { .c8-account-fab { display: none !important; } }

/* ---------- 36. Acceso único en la cabecera ---------- */
.c8-header-cta svg, .c8-drawer-cta svg { width: 18px; height: 18px; flex-shrink: 0; }

/* 37. Píldora activa: sin sombra (el carrusel horizontal la recortaba y
       dejaba un recuadro gris detrás). */
.prop-pill.active, [data-theme="dark-green"] .prop-pill.active { box-shadow: none !important; }

/* =====================================================================
   38. FASE 20 · Contraste medido con capturas reales (320–1280 px)
   ===================================================================== */
/* Paleta común en TODAS las páginas: el menú lateral y los componentes
   compartidos leen estas variables; sin ellas caían en colores del tema
   oscuro (☰ blanco sobre blanco en cuenta, panel, perfil, chat…). */
html:not([data-theme="dark-green"]) {
  --primary-color: #047857;          /* verde selva legible en texto pequeño (5.5:1) */
  --primary-hover: #065F46;
  --text-primary: #141E19;
  --text-secondary: #4F635A;
  --bg-surface: #FFFFFF;
  --bg-subtle: #F1EFE9;
  --border-color: #E2DDD5;
  --ink3: #5B6D65;
}
html[data-theme="dark-green"] {
  --primary-color: #34D399;          /* 5.8:1 sobre la superficie selva */
  --ink3: #B6D8CA;
}
/* Botones con fondo verde y texto blanco: verde profundo en ambos temas */
html[data-theme="dark-green"] #btn-search-explore,
.btn-dark,
.nav-link-btn {
  background: linear-gradient(135deg, #047857, #065F46) !important;
  color: #FFFFFF !important;
}
#btn-search-explore *, .btn-dark *, .nav-link-btn * { color: #FFFFFF !important; }
/* Botón ☰ del menú compartido */
html:not([data-theme="dark-green"]) #c8-menu-btn {
  background: #FFFFFF !important; color: #0B332A !important; border-color: #D6E4DD !important;
}
html[data-theme="dark-green"] #c8-menu-btn {
  background: rgba(255,255,255,.08) !important; color: #F8FAFC !important; border-color: rgba(255,255,255,.22) !important;
}
/* Insignias legales y de sección */
.legal-badge { color: #047857 !important; }
html[data-theme="dark-green"] .legal-badge { color: #6EE7B7 !important; background: rgba(110,231,183,.12) !important; }
/* Gastro8: filtro activo ámbar con texto blanco legible */
.craving-btn.active { background: #B45309 !important; border-color: #B45309 !important; color: #FFFFFF !important; }
/* Insignias de cabecera de cada sección (texto 4.5:1 en ambos temas) */
.c8-hero-badge.c8-rojo  { color: #B91C1C !important; border-color: #B91C1C !important; }
.c8-hero-badge.c8-ambar { color: #92400E !important; border-color: #B45309 !important; }
.c8-hero-badge.c8-azul  { color: #1D4ED8 !important; border-color: #1D4ED8 !important; }
html[data-theme="dark-green"] .c8-hero-badge.c8-rojo  { color: #FECACA !important; border-color: #FCA5A5 !important; background: rgba(252,165,165,.12) !important; }
html[data-theme="dark-green"] .c8-hero-badge.c8-ambar { color: #FDE68A !important; border-color: #FCD34D !important; background: rgba(252,211,77,.12) !important; }
html[data-theme="dark-green"] .c8-hero-badge.c8-azul  { color: #BFDBFE !important; border-color: #93C5FD !important; background: rgba(147,197,253,.12) !important; }
/* Insignia OFICIAL dorada: texto oscuro siempre */
[data-c8-tema="fijo"][style*="gold-accent"] { color: #0E3A2F !important; }
/* anfitrion.html usa --primary / --text-muted propios */
html:not([data-theme="dark-green"]) { --primary: #047857; --text-muted: #56677A; }
html[data-theme="dark-green"] { --primary: #34D399; }
[style*="background: var(--primary)"], [style*="background-color: var(--primary)"] {
  background: #047857 !important; color: #FFFFFF !important;
}
/* Botón oscuro del estudio de anfitrión: misma prioridad en ambos temas */
html body .btn-dark, html[data-theme="dark-green"] body .btn-dark {
  background: linear-gradient(135deg, #047857, #065F46) !important; color: #FFFFFF !important;
}
#studio-header-tag { color: #4F635A !important; }
html[data-theme="dark-green"] #studio-header-tag { color: #A7F3D0 !important; }
.brand span { color: #047857 !important; }
html[data-theme="dark-green"] .brand span { color: #6EE7B7 !important; }
/* 39. Botón de cuenta dentro de la cabecera (móvil), del tamaño del ☰ */
.c8-account-fab.c8-account-head {
  position: relative !important; left: auto !important; bottom: auto !important; z-index: auto !important;
  width: 42px !important; height: 42px !important; flex: 0 0 42px; margin-right: 8px;
  box-shadow: none !important; border: 1.5px solid #D6E4DD !important;
}
.c8-account-fab.c8-account-head svg { width: 20px; height: 20px; }
html[data-theme="dark-green"] .c8-account-fab.c8-account-head {
  background: rgba(255,255,255,.08) !important; color: #F8FAFC !important; border-color: rgba(255,255,255,.22) !important;
}
html[data-theme="dark-green"] .c8-account-fab.c8-account-head .c8-fab-dot { border-color: #10342B; }
