
*, *::before, *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Remove focus outline from non-interactive elements */
div:focus,
section:focus,
article:focus,
aside:focus,
main:focus,
p:focus,
h1:focus,
h2:focus,
h3:focus,
h4:focus,
h5:focus,
h6:focus,
span:focus,
img:focus {
    outline: none !important;
}

:root {
    /* ── RifandoHogares palette ── */
    --navy-dark:    #060a14;
    --navy:         #0a0e1a;
    --navy-mid:     #0f1627;
    --navy-light:   #141c33;
    --gold:         #f5c518;
    --gold-dark:    #c9980a;
    --purple:       #5c2d91;
    --purple-light: #7b3fc4;
    --white:        #ffffff;
    --gray-light:   #cbd5e1;
    --gray-mid:     #a0aec0;

    --color-primary:       #2EADD4;
    --color-primary-dark:  #1A8FBB;
    --color-secondary:     #4A5568;
    --color-accent:        #1E3A5F;
    --color-gold:          #C9A22A;
    --color-gold-light:    #F0C040;
    --color-purple:        #6B21A8;
    --color-purple-mid:    #9333EA;
    --color-purple-light:  #C084FC;
    --color-background:    #FFFFFF;
    --color-surface:       #F7F8FA;
    --color-text:          #2D3748;
    --color-text-light:    #718096;
    --color-success:       #38A169;
    --color-warning:       #D69E2E;
    --color-danger:        #E53E3E;

    /* Compat aliases */
    --negro: #0A1628;
    --negro2: #0E2040;
    --blanco: #ffffff;
    --gris: rgba(255,255,255,0.5);
    --bebas: 'Bebas Neue', sans-serif;
    --inter: 'Inter', sans-serif;
}

html, body {
    background: var(--navy-dark);
    color: var(--white);
    font-family: 'Inter', sans-serif;
    overflow-x: hidden;
    scroll-behavior: smooth;
}

a { text-decoration: none; color: inherit; }

::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--negro2); }
::-webkit-scrollbar-thumb { background: var(--color-primary); border-radius: 3px; }

.mud-typography { color: inherit !important; }

.mud-button-root { font-family: 'Montserrat', sans-serif !important; }

img, video, iframe { max-width: 100%; height: auto; }

* { min-width: 0; }

@media (max-width: 900px) {
    button, a, [role="button"] { min-height: 44px; }
    body { font-size: 15px; }
}

@media (max-width: 480px) {
    .mud-table-cell { padding: 8px !important; font-size: 12px !important; }
    .mud-dialog { margin: 8px !important; max-width: calc(100vw - 16px) !important; }
    .mud-dialog-content { padding: 16px !important; }
}

@media (max-width: 767px) {
    .hero-ticket {
        margin-left: 0 !important;
        margin-right: 0 !important;
        align-self: stretch !important;
    }
    .hero-ticket img {
        width: 100% !important;
        max-height: none !important;
        height: auto !important;
    }
}

/* ── MudDatePicker popup — fondo sólido sobre el navy oscuro ── */
.mud-picker-content,
.mud-picker-calendar-header,
.mud-picker-calendar-content,
.mud-picker-calendar,
.mud-popover-paper {
    background-color: #1a2340 !important;
    color: #fff !important;
}

/* Días del mes */
.mud-day {
    color: rgba(255,255,255,0.85) !important;
}
.mud-day:hover {
    background: rgba(245,184,0,0.15) !important;
}
.mud-day.mud-selected,
.mud-day.mud-current.mud-selected {
    background-color: #F5B800 !important;
    color: #060a14 !important;
}
.mud-day.mud-current {
    border-color: #F5B800 !important;
    color: #F5B800 !important;
}
.mud-day:disabled,
.mud-day.mud-disabled {
    color: rgba(255,255,255,0.2) !important;
}

/* Nombre del mes / año y flechas de navegación */
.mud-picker-calendar-header-switch button,
.mud-picker-nav-button,
.mud-picker-year-grid button {
    color: rgba(255,255,255,0.85) !important;
}
.mud-picker-year-grid button:hover,
.mud-picker-year-grid button.mud-selected {
    background: rgba(245,184,0,0.2) !important;
    color: #F5B800 !important;
}
.mud-picker-year-grid button.mud-selected {
    background-color: #F5B800 !important;
    color: #060a14 !important;
}

/* Cabecera días de la semana */
.mud-picker-calendar-week .mud-day-of-week {
    color: rgba(255,255,255,0.35) !important;
}

/* Panel izquierdo con la fecha seleccionada */
.mud-picker-datepicker-toolbar,
.mud-toolbar.mud-toolbar-landscape {
    background: linear-gradient(135deg, #0D1B4B, #5c2d91) !important;
}

/* Botones OK / Cancel */
.mud-picker-actions button {
    color: #F5B800 !important;
}
