/* ===================================================================
   mutual.css - Tema AMUPSEPP / Mutual
   Paleta basada en el logo: celeste institucional + naranja dorado
   Tipografia: Nunito (amigable, moderna)
   NOTA: Los banners de novedades mantienen sus colores originales.
   =================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;600;700;800&display=swap');

:root {
  --cream:     #F0F6FA;
  --ink:       #1C2B3A;
  --rust:      #2A9BD6;
  --gold:      #E8A628;
  --sage:      #3AAFA9;
  --warm-gray: #6B8299;
  --border:    #D0DEE8;
  --white:     #FFFFFF;
  --red:       #D63030;
  --orange:    #E8A628;
  --green:     #2ECC71;
}

body {
  font-family: 'Nunito', 'DM Sans', sans-serif;
  background: #EAF2F8;
}

a { color: #2A9BD6; }

/* ADMIN BAR */
.admin-bar { background: #1C2B3A; color: #6B8299; }
.admin-bar a { color: #7EC8E3; }
.admin-bar-sep { color: rgba(255,255,255,.12); }
.local-bar { background: #1C2B3A; }
.local-bar a { color: #7EC8E3; }

/* HEADER */
header { background: #1C2B3A; border-bottom: 3px solid #2A9BD6; }
.logo { color: #E8EEF2; font-family: 'Nunito', sans-serif; font-weight: 800; letter-spacing: -.01em; }
.logo span { color: #E8A628; }
nav a { color: #93B2C8; }
nav a:hover { color: #fff; }
.btn-admin { background: #2A9BD6; }
.btn-admin:hover { background: #1E82B8 !important; }

/* HERO */
.hero { background: linear-gradient(135deg, #1C2B3A 0%, #234E6F 100%); color: #E8EEF2; }
.hero::before { border-color: #2A9BD6; opacity: .15; }
.hero-tag { background: #E8A628; color: #1C2B3A; }
.hero h1 { font-family: 'Nunito', sans-serif; }
.hero h1 em { color: #7EC8E3; font-style: normal; }
.hero p { color: #93B2C8; }
.hero-stats { border-top-color: rgba(255,255,255,.08); }
.stat-num { color: #E8A628; }
.stat-label { color: #6B8299; }
.page-hero { background: linear-gradient(135deg, #1C2B3A, #234E6F); color: #E8EEF2; }
.page-hero h1 { color: #E8EEF2; font-family: 'Nunito', sans-serif; }
.page-title em { color: #7EC8E3; }
.admin-hero { border-bottom: 3px solid #2A9BD6; }

/* FILTROS */
.filters-bar { background: #fff; border-bottom-color: #D0DEE8; }
.filter-label { color: #6B8299; }
.filter-ddl { border-color: #D0DEE8; background: #fff; color: #1C2B3A; }
.search-input { border-color: #D0DEE8; background: #F0F6FA; color: #1C2B3A; }
.search-input:focus { border-color: #2A9BD6; }
.btn-buscar { background: #2A9BD6; }
.btn-buscar:hover { background: #1E82B8; }

/* PROMO CARDS */
.promo-card { background: #fff; border-color: #D0DEE8; border-radius: 14px; }
.promo-card:hover { box-shadow: 0 8px 28px rgba(42,155,214,.12); }
.card-img { background: linear-gradient(135deg, #D6EDF8, #7EC8E3); }
.card-img.gastro  { background: linear-gradient(135deg, #FFF3D6, #E8A628); }
.card-img.moda    { background: linear-gradient(135deg, #D6EDF8, #7EC8E3); }
.card-img.tech    { background: linear-gradient(135deg, #D0E8F5, #5DADE2); }
.card-img.beauty  { background: linear-gradient(135deg, #FCE4EC, #F48FB1); }
.card-img.sport   { background: linear-gradient(135deg, #D5F5E3, #58D68D); }
.card-img.home    { background: linear-gradient(135deg, #DCEDC8, #AED581); }
.card-img.default { background: linear-gradient(135deg, #D6EDF8, #7EC8E3); }
.card-discount-pill { background: #E8A628; color: #1C2B3A; font-weight: 700; }
.card-local-name { color: #2A9BD6; }
.card-footer { border-top-color: #D0DEE8; }
.card-cta { color: #2A9BD6; }

/* FEATURED PROMO */
.featured-promo { background: #1C2B3A; color: #E8EEF2; }
.featured-promo::before { color: #2A9BD6; }
.featured-tag { background: #E8A628; color: #1C2B3A; }
.featured-promo p { color: #93B2C8; }
.featured-local { color: #6B8299; }
.local-dot { background: #2A9BD6; }
.discount-badge { background: #E8A628; color: #1C2B3A; }
.featured-arrow { background: rgba(28,43,58,.75); color: #E8EEF2; border-color: rgba(255,255,255,.12); }
.featured-arrow:hover { background: #2A9BD6; }
.featured-dot.active { background: #2A9BD6; }
.featured-dot:hover { background: #7EC8E3; }
.featured-dot { background: rgba(107,130,153,.35); }

/* LOCALES */
.local-card { background: #fff; border-color: #D0DEE8; border-radius: 14px; }
.local-card:hover { box-shadow: 0 4px 16px rgba(42,155,214,.08); }
.local-rubro { color: #2A9BD6; }
.local-dir, .local-tel { color: #6B8299; }
.local-map-btn { background: #F0F6FA; border-color: #D0DEE8; color: #1C2B3A; }
.local-map-btn:hover { background: #1C2B3A; color: #fff; border-color: #1C2B3A; }
.sidebar-item { background: #fff; border-color: #D0DEE8; }
.sidebar-item:hover, .sidebar-item.active { background: #1C2B3A; color: #fff; border-color: #1C2B3A; }
.sidebar-item.active .sidebar-rubro, .sidebar-item.active .sidebar-dir { color: #93B2C8; }
.sidebar-rubro { color: #2A9BD6; }
.sidebar-dir { color: #6B8299; }
.mapa-container { border-color: #D0DEE8; }

/* FORMULARIOS */
.form-card { background: #fff; border-color: #D0DEE8; border-radius: 14px; }
.form-group label { color: #1C2B3A; }
.form-control { border-color: #D0DEE8; background: #F0F6FA; color: #1C2B3A; border-radius: 8px; }
.form-control:focus { border-color: #2A9BD6; background: #fff; }
.btn-primary { background: #2A9BD6; border-radius: 8px; }
.btn-primary:hover { background: #1E82B8; }
.btn-secondary { background: #fff; border-color: #D0DEE8; color: #1C2B3A; border-radius: 8px; }
.btn-secondary:hover { border-color: #1C2B3A; background: #F0F6FA; }

/* ADMIN GRID */
.admin-gv th { background: #1C2B3A; color: #E8EEF2; }
.admin-gv td { border-bottom-color: #D0DEE8; }
.admin-gv tr:nth-child(even) td { background: #F7FBFD; }
.admin-gv tr:hover td { background: #E8F4FA; }
.gv-btn-edit { color: #2A9BD6; border-color: #2A9BD6; }
.gv-btn-edit:hover { background: #2A9BD6; color: #fff; }
.gv-btn-del:hover { background: #FDEDEE; }

/* LOGIN */
.login-card { background: #fff; border-color: #D0DEE8; }
.login-sub { color: #6B8299; }
.login-hint { color: #6B8299; }

/* SCROLL TO TOP */
.scroll-top-btn { background: #2A9BD6; }
.scroll-top-btn:hover { background: #E8A628; }

/* FOOTER */
footer { background: #1C2B3A; color: #6B8299; }
.footer-logo { color: #E8EEF2; font-family: 'Nunito', sans-serif; font-weight: 800; }
.footer-logo span { color: #E8A628; }
.footer-desc { color: rgba(255,255,255,.45); }
.footer-otros h4 { color: #E8EEF2; }
.footer-otros-list a { color: rgba(255,255,255,.5); }
.footer-otros-list a:hover { color: #E8EEF2; }
.footer-otros-list a i { color: #7EC8E3; }
.footer-bottom { border-top-color: rgba(255,255,255,.06); }
.footer-ayuda h4 { color: #E8EEF2; }
.footer-ayuda h4 i { color: #7EC8E3; }
.footer-ayuda-list li { color: rgba(255,255,255,.5); }
.footer-ayuda-list li i { color: #7EC8E3; }
.footer-ayuda-list a { color: rgba(255,255,255,.5); }
.footer-ayuda-list a:hover { color: #E8EEF2; }
.footer-seguinos h4 { color: #E8EEF2; }
.footer-social-icons a { color: rgba(255,255,255,.5); }
.footer-social-icons a:hover { color: #E8A628; }

/* SCROLLBAR */
.filtro-promos-scroll::-webkit-scrollbar-thumb { background: #2A9BD6; }

/* DETALLE PROMO */
.back-link { color: #2A9BD6; }
.detalle-card { background: #1C2B3A; border-color: rgba(255,255,255,.08); }
.detalle-titulo { color: #E8EEF2; }
.detalle-local-name { color: rgba(255,255,255,.65); }
.detalle-local-dot { background: #2A9BD6; }
.detalle-descripcion { color: rgba(255,255,255,.6); }
.detalle-fechas { background: rgba(255,255,255,.03); border-color: rgba(255,255,255,.06); }
.fecha-label { color: rgba(255,255,255,.4); }
.fecha-value { color: rgba(255,255,255,.85); }
.detalle-discount-pill { background: #E8A628; color: #1C2B3A; }

/* DIAS DISPLAY */
.dia-check { color: #2A9BD6; }

/* AFILIACION BANNER */
.afiliacion-banner { background: linear-gradient(135deg, #1C2B3A, #2A9BD6); }
.afiliacion-banner-glow { background: radial-gradient(circle at 80% 50%, rgba(232,166,40,.2) 0%, transparent 60%); }
.afiliacion-btn-primary { background: #E8A628; color: #1C2B3A; }
.afiliacion-btn-primary:hover { background: #F0B840; }
.afiliacion-btn-secondary { border-color: rgba(255,255,255,.3); color: #fff; }
.afiliacion-btn-secondary:hover { background: rgba(255,255,255,.1); }

/* NOTIFICACIONES */
.notif-bell-btn { color: #93B2C8; }
.notif-bell-btn:hover { color: #2A9BD6; }
.notif-badge { background: #D63030; box-shadow: 0 0 0 2px #F0F6FA; }
.notif-panel { background: #fff; border-color: #D0DEE8; }
.notif-panel-header { background: #F7FBFD; border-bottom-color: #D0DEE8; }
.notif-panel-header span { color: #1C2B3A; }
.notif-mark-all { color: #2A9BD6; }
.notif-no-leida { background: #E8F4FA; }
.notif-no-leida:hover { background: #D6EDF8; }
.notif-item-body strong { color: #1C2B3A; }
.notif-item-text { color: #6B8299; }
.notif-empty i { color: #2ECC71; }
.notif-empty { color: #6B8299; }
.btn-afiliado-logout { color: #6B8299; }
.btn-afiliado-logout:hover { color: #D63030; }

/* CARD (paginas internas) */
.card { background: #fff; border-color: #D0DEE8; }
.btn-outline { border-color: #2A9BD6; color: #2A9BD6; }
.btn-outline:hover { background: #2A9BD6; color: #fff; }
input[type='checkbox'] { accent-color: #2A9BD6; }

/* SUMA LOCAL BANNER */
.suma-local-banner { background: linear-gradient(135deg, #1C2B3A, #2A9BD6); }

/* FORM HINT */
.form-hint { color: #6B8299; }

/* ALERT */
.alert-success { background: #D5F5E3; color: #1C7A3E; border-left: 4px solid #2ECC71; }
.alert-warning { background: #FFF8E1; color: #8B6914; border-left: 4px solid #E8A628; }

/* VALIDITY DOTS */
.validity-dot { background: #2A9BD6; }
.dot-red { background: #D63030; }
.dot-orange { background: #E8A628; }
.dot-green { background: #2ECC71; }

/* SECTION TITLES */
.section-title { font-family: 'Nunito', sans-serif; }
.form-section-title { font-family: 'Nunito', sans-serif; }
.detalle-section-title { color: #2A9BD6; }
