/**
 * ERP Admin — capa final dark premium (glass + CTA + profundidad).
 * Referencia: belleza-public-dark.css · .btn-reservar · .section-content
 * Solo CSS — carga al final del head.
 */

/* —— Utilidad glass (módulos admin) —— */
body.crud-admin-saas,
body.reportes-dashboard-saas,
body.facturar-admin-saas,
body.cfg-admin-page,
body.usuarios-admin-saas,
body:has(.admin-gal-wrapper),
body:has(.header-panel),
html:has(.admin-app) body {
  --erp-glass-surface: rgba(12, 17, 24, 0.55);
  --erp-glass-elevated: rgba(15, 23, 35, 0.6);
  --erp-glass-deep: rgba(10, 15, 25, 0.45);
  --erp-glass-border: rgba(42, 53, 68, 0.5);
  --erp-glass-ring: 0 0 0 1px rgba(196, 165, 116, 0.08);
  --erp-glass-shadow: 0 10px 40px rgba(0, 0, 0, 0.36), var(--erp-glass-ring);
  --erp-glass-blur: blur(12px);
}

/* Catch-all: paneles claros residuales */
body.crud-admin-saas .card,
body.crud-admin-saas .panel,
body.crud-admin-saas .well,
body.reportes-dashboard-saas .card,
body.facturar-admin-saas .card,
body.cfg-admin-page .card,
body.cfg-admin-page .cfg-card-panel.saas-card,
body.cfg-admin-page .cfg-card-panel.saas-card-premium,
body:has(.admin-gal-wrapper) .card {
  background: var(--erp-glass-surface) !important;
  border: 1px solid var(--erp-glass-border) !important;
  box-shadow: var(--erp-glass-shadow) !important;
  backdrop-filter: var(--erp-glass-blur);
  -webkit-backdrop-filter: var(--erp-glass-blur);
  color: #cbd5e1 !important;
}

/* =========================================================
   CTA — estilo Reservar Cita (todo el ERP)
========================================================= */
body.crud-admin-saas .btn-primary,
body.crud-admin-saas .saas-btn-primary,
body.reportes-dashboard-saas .btn-primary,
body.reportes-dashboard-saas .saas-btn-primary,
body.facturar-admin-saas .btn-primary,
body.facturar-admin-saas .btn-facturar,
body.cfg-admin-page .btn-primary,
body.cfg-admin-page .saas-btn-primary,
body.usuarios-admin-saas .btn-primary,
body.disponibilidad-admin-page .btn-guardar,
body:has(.admin-gal-wrapper) .btn-primary:not(#btnUpload),
body:has(#panelCitasTable) .btn-primary,
html[data-belleza-surface="light"] .saas-btn-primary,
html[data-belleza-surface="light"] body .btn-primary,
html[data-theme="obsidian-lux"] .btn-primary,
html[data-theme="obsidian-lux"] .saas-btn-primary {
  background: linear-gradient(
    135deg,
    color-mix(in srgb, #c4a574 22%, #0f141c),
    color-mix(in srgb, #1a2332 92%, #0c1118)
  ) !important;
  color: #ff5c7a !important;
  font-weight: 600 !important;
  text-shadow: 0 0 6px rgba(255, 77, 109, 0.32), 0 1px 2px rgba(0, 0, 0, 0.28) !important;
  border: 1px solid color-mix(in srgb, #c4a574 48%, rgba(42, 53, 68, 0.55)) !important;
  box-shadow:
    var(--erp-glass-ring),
    0 8px 22px rgba(0, 0, 0, 0.35),
    0 0 16px color-mix(in srgb, #c4a574 12%, transparent) !important;
  filter: none !important;
}

body.crud-admin-saas .btn-primary:hover,
body.crud-admin-saas .saas-btn-primary:hover,
body.reportes-dashboard-saas .btn-primary:hover,
body.facturar-admin-saas .btn-primary:hover,
body.cfg-admin-page .btn-primary:hover,
body:has(.admin-gal-wrapper) .btn-primary:not(#btnUpload):hover,
html[data-belleza-surface="light"] .saas-btn-primary:hover,
html[data-belleza-surface="light"] body .btn-primary:hover,
html[data-theme="obsidian-lux"] .btn-primary:hover,
html[data-theme="obsidian-lux"] .saas-btn-primary:hover {
  background: linear-gradient(135deg, #121a26, #222d3d) !important;
  color: #ff6d88 !important;
  border-color: color-mix(in srgb, #d4b896 55%, rgba(42, 53, 68, 0.55)) !important;
  box-shadow:
    0 0 0 1px rgba(196, 165, 116, 0.14),
    0 10px 28px rgba(0, 0, 0, 0.4),
    0 0 20px color-mix(in srgb, #c4a574 16%, transparent) !important;
}

/* Outline → CTA secundario premium */
body:has(.admin-gal-wrapper) .btn-outline-primary,
body.crud-admin-saas .btn-outline-primary,
body.cfg-admin-page .btn-outline-primary {
  color: #ff5c7a !important;
  border-color: color-mix(in srgb, #c4a574 42%, rgba(42, 53, 68, 0.55)) !important;
  background: rgba(10, 15, 25, 0.35) !important;
  text-shadow: 0 0 4px rgba(255, 77, 109, 0.2);
}

body:has(.admin-gal-wrapper) .btn-outline-primary:hover,
body.crud-admin-saas .btn-outline-primary:hover {
  background: rgba(15, 23, 35, 0.65) !important;
  color: #ff6d88 !important;
  border-color: #c4a574 !important;
}

/* Sin verde/azul bootstrap en admin */
body.crud-admin-saas .btn-success,
body.crud-admin-saas .btn-info,
body.reportes-dashboard-saas .btn-success,
body.reportes-dashboard-saas .btn-info,
body.facturar-admin-saas .btn-success {
  background: var(--erp-glass-elevated) !important;
  color: #cbd5e1 !important;
  border: 1px solid var(--erp-glass-border) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

/* =========================================================
   CONFIGURACIÓN — restaurar, upload, identidad, temas
========================================================= */
body.cfg-admin-page .cfg-section-title {
  color: #94a3b8 !important;
}

body.cfg-admin-page .cfg-theme-card {
  background: var(--erp-glass-surface) !important;
  border: 1px solid var(--erp-glass-border) !important;
  box-shadow: var(--erp-glass-shadow) !important;
  backdrop-filter: var(--erp-glass-blur);
}

body.cfg-admin-page .cfg-theme-card__name {
  color: #f1f5f9 !important;
}

body.cfg-admin-page .cfg-theme-card__font {
  color: #94a3b8 !important;
}

body.cfg-admin-page .cfg-reset-zone {
  background: var(--erp-glass-elevated) !important;
  border: 1px solid color-mix(in srgb, #f43f5e 22%, var(--erp-glass-border)) !important;
  box-shadow:
    var(--erp-glass-shadow),
    inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
  backdrop-filter: var(--erp-glass-blur);
}

body.cfg-admin-page .cfg-reset-zone__icon {
  background: color-mix(in srgb, #f43f5e 18%, rgba(10, 15, 25, 0.5)) !important;
  border-color: color-mix(in srgb, #f43f5e 28%, transparent) !important;
  color: #fda4af !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

body.cfg-admin-page .cfg-reset-zone__title {
  color: #fecdd3 !important;
}

body.cfg-admin-page .cfg-reset-zone__lead {
  color: #fca5a5 !important;
}

body.cfg-admin-page .cfg-reset-zone__desc {
  color: #94a3b8 !important;
  border-bottom-color: rgba(244, 63, 94, 0.15) !important;
}

body.cfg-admin-page .cfg-reset-zone__desc code {
  color: #cbd5e1 !important;
  background: rgba(10, 15, 25, 0.45) !important;
}

body.cfg-admin-page .cfg-reset-zone__label {
  color: #fecdd3 !important;
}

body.cfg-admin-page .cfg-reset-zone__input {
  background: var(--erp-glass-deep) !important;
  border-color: color-mix(in srgb, #f43f5e 25%, var(--erp-glass-border)) !important;
  color: #f1f5f9 !important;
}

body.cfg-admin-page .cfg-reset-zone__input::placeholder {
  color: #64748b !important;
}

body.cfg-admin-page .cfg-reset-zone__btn,
body.cfg-admin-page .cfg-reset-zone__btn.saas-btn {
  background: linear-gradient(145deg, rgba(10, 15, 25, 0.7), rgba(30, 20, 28, 0.75)) !important;
  color: #fda4af !important;
  border: 1px solid color-mix(in srgb, #f43f5e 38%, var(--erp-glass-border)) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.28) !important;
  text-shadow: none !important;
}

body.cfg-admin-page .cfg-reset-zone__btn:hover {
  background: linear-gradient(145deg, rgba(20, 12, 18, 0.85), rgba(40, 24, 32, 0.8)) !important;
  color: #fecdd3 !important;
  border-color: color-mix(in srgb, #f43f5e 48%, transparent) !important;
}

body.cfg-admin-page .cfg-brand-preview__frame {
  background: var(--erp-glass-deep) !important;
  border: 1px solid var(--erp-glass-border) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 8px 24px rgba(0, 0, 0, 0.28) !important;
}

body.cfg-admin-page .cfg-brand-preview__caption {
  color: #94a3b8 !important;
}

body.cfg-admin-page .cfg-brand-preview__placeholder,
body.cfg-admin-page .cfg-brand-preview__ph-text {
  color: #94a3b8 !important;
}

body.cfg-admin-page .cfg-brand-preview__ph-icon {
  background: rgba(15, 23, 35, 0.55) !important;
  border-color: var(--erp-glass-border) !important;
  color: #64748b !important;
}

body.cfg-admin-page .cfg-upload-zone,
body.cfg-admin-page .cfg-logo-drop,
body.cfg-admin-page [class*="dropzone"],
body.cfg-admin-page [class*="upload"] {
  background: var(--erp-glass-deep) !important;
  border: 2px dashed color-mix(in srgb, #c4a574 35%, var(--erp-glass-border)) !important;
  color: #cbd5e1 !important;
  backdrop-filter: var(--erp-glass-blur);
}

body.cfg-admin-page .cfg-social-row,
body.cfg-admin-page .cfg-social-row.is-off,
body.cfg-admin-page .cfg-social-row--instagram.is-off,
body.cfg-admin-page .cfg-social-row--facebook.is-off,
body.cfg-admin-page .cfg-social-row--tiktok.is-off,
body.cfg-admin-page .cfg-social-row--twitter.is-off,
body.cfg-admin-page .cfg-social-row--youtube.is-off {
  background: var(--erp-glass-surface) !important;
  border-color: var(--erp-glass-border) !important;
  box-shadow: var(--erp-glass-shadow) !important;
}

body.cfg-admin-page .cfg-social-row__header,
body.cfg-admin-page .cfg-social-url-wrap.cfg-social-row__body,
body.cfg-admin-page .cfg-social-row__footer,
body.cfg-admin-page .cfg-social-row--instagram:not(.is-off) .cfg-social-row__header,
body.cfg-admin-page .cfg-social-row--facebook:not(.is-off) .cfg-social-row__header,
body.cfg-admin-page .cfg-social-row--tiktok:not(.is-off) .cfg-social-row__header,
body.cfg-admin-page .cfg-social-row--twitter:not(.is-off) .cfg-social-row__header,
body.cfg-admin-page .cfg-social-row--youtube:not(.is-off) .cfg-social-row__header {
  background: var(--erp-glass-deep) !important;
  border-color: var(--erp-glass-border) !important;
}

body.cfg-admin-page .text-muted,
body.cfg-admin-page .form-text,
body.cfg-admin-page small {
  color: #94a3b8 !important;
}

body.cfg-admin-page .cfg-hero h1 {
  color: #f1f5f9 !important;
}

/* =========================================================
   GALERÍA — dropzone, thumbs (override inline galeria.php)
========================================================= */
body:has(.admin-gal-wrapper) {
  background:
    radial-gradient(900px 480px at 12% -8%, color-mix(in srgb, #c4a574 10%, transparent), transparent 50%),
    linear-gradient(165deg, #141b26 0%, #0c1118 50%, #080b10 100%) !important;
  color: #cbd5e1 !important;
}

body:has(.admin-gal-wrapper) .dropzone {
  background: rgba(10, 15, 25, 0.45) !important;
  border: 2px dashed color-mix(in srgb, #c4a574 38%, rgba(42, 53, 68, 0.5)) !important;
  box-shadow: var(--erp-glass-shadow) !important;
  backdrop-filter: blur(12px);
}

body:has(.admin-gal-wrapper) .dropzone.dragover {
  background: rgba(15, 23, 35, 0.62) !important;
  border-color: color-mix(in srgb, #c4a574 55%, transparent) !important;
  box-shadow:
    0 0 0 1px rgba(196, 165, 116, 0.12),
    0 12px 32px rgba(0, 0, 0, 0.38) !important;
}

body:has(.admin-gal-wrapper) .dropzone [style*="font-weight"] {
  color: #f1f5f9 !important;
}

body:has(.admin-gal-wrapper) .thumb-card {
  background: rgba(12, 17, 24, 0.55) !important;
  border: 1px solid var(--erp-glass-border) !important;
  box-shadow: var(--erp-glass-shadow) !important;
  backdrop-filter: blur(12px);
}

body:has(.admin-gal-wrapper) .thumb-card .img-wrap {
  background: rgba(10, 15, 25, 0.5) !important;
}

body:has(.admin-gal-wrapper) .thumb-card .meta .txt {
  color: #cbd5e1 !important;
}

body:has(.admin-gal-wrapper) .preview-item {
  background: rgba(15, 23, 35, 0.55) !important;
  border-color: var(--erp-glass-border) !important;
}

body:has(.admin-gal-wrapper) .loading-overlay {
  background: rgba(10, 15, 25, 0.72) !important;
  backdrop-filter: blur(8px);
}

body:has(.admin-gal-wrapper) .form-label,
body:has(.admin-gal-wrapper) label {
  color: #cbd5e1 !important;
}

body:has(.admin-gal-wrapper) .form-control {
  background: rgba(18, 26, 38, 0.92) !important;
  border-color: var(--erp-glass-border) !important;
  color: #f1f5f9 !important;
}

body:has(.admin-gal-wrapper) .form-control::placeholder {
  color: #64748b !important;
}

body:has(.admin-gal-wrapper) .text-muted {
  color: #94a3b8 !important;
}

body:has(.admin-gal-wrapper) h2,
body:has(.admin-gal-wrapper) .h4 {
  color: #f1f5f9 !important;
}

body:has(.admin-gal-wrapper) .btn-danger-soft {
  background: color-mix(in srgb, #f43f5e 14%, rgba(10, 15, 25, 0.5)) !important;
  border-color: color-mix(in srgb, #f43f5e 28%, transparent) !important;
  color: #fda4af !important;
}

/* =========================================================
   Facturar / reportes — bloques secundarios
========================================================= */
body.facturar-admin-saas .pos-search-wrap,
body.facturar-admin-saas .pos-category-tabs,
body.facturar-admin-saas .pos-empty,
body.reportes-dashboard-saas .reportes-toolbar,
body.reportes-dashboard-saas .reportes-chart-wrap {
  background: var(--erp-glass-deep) !important;
  border-color: var(--erp-glass-border) !important;
  color: #cbd5e1 !important;
}

/* Inputs color picker / secundarios config */
body.cfg-admin-page input[type="color"],
body.cfg-admin-page .form-control-color {
  background: var(--erp-glass-deep) !important;
  border-color: var(--erp-glass-border) !important;
}

/* Profundidad en cards internas (no planas) */
body.crud-admin-saas .saas-card-body,
body.cfg-admin-page .cfg-card-body,
body.reportes-dashboard-saas .saas-card-body {
  background: transparent !important;
  color: #cbd5e1 !important;
}

body.crud-admin-saas .saas-card-header,
body.reportes-dashboard-saas .saas-card-header {
  background: var(--erp-glass-deep) !important;
  border-bottom: 1px solid var(--erp-glass-border) !important;
  color: #f1f5f9 !important;
}
