/* ── Variables de color EDI Ibiza ── */
:root {
    --edi-negro:    #1a1a1a;
    --edi-oscuro:   #2a2a2a;
    --edi-amarillo: #d4c820;
    --edi-verde:    #5db868;
    --edi-turquesa: #2ec4b6;
    --edi-gradiente: linear-gradient(135deg, #d4c820 0%, #5db868 50%, #2ec4b6 100%);
    --edi-gradiente-suave: linear-gradient(135deg, rgba(212,200,32,0.15) 0%, rgba(46,196,182,0.15) 100%);
}

/* ── Base ── */
body {
    background-color: #f5f5f0;
    color: #1a1a1a;
    font-family: 'Segoe UI', system-ui, sans-serif;
}

/* ── Navbar ── */
.navbar-edi {
    background-color: var(--edi-negro);
    border-bottom: 3px solid;
    border-image: var(--edi-gradiente) 1;
    padding: 0.6rem 0;
}

.navbar-edi .navbar-brand img {
    height: 52px;
    width: auto;
}

.navbar-edi .nav-link {
    color: rgba(255,255,255,0.85) !important;
    font-size: 0.9rem;
    letter-spacing: 0.03em;
    transition: color 0.2s;
}

.navbar-edi .nav-link:hover {
    color: var(--edi-amarillo) !important;
}

.btn-edi-outline {
    border: 1px solid var(--edi-amarillo);
    color: var(--edi-amarillo) !important;
    border-radius: 20px;
    padding: 0.3rem 1rem;
    font-size: 0.85rem;
}

.btn-edi-outline:hover {
    background-color: var(--edi-amarillo);
    color: var(--edi-negro) !important;
}

/* ── Hero (página de inicio) ── */
.hero {
    background-image: url('/static/fondo_hero.jpg');
    background-size: cover;
    background-position: center top;
    min-height: 520px;
    display: flex;
    align-items: center;
    position: relative;
}

.hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: rgba(26,26,26,0.55);
}

.hero-content {
    position: relative;
    z-index: 1;
    color: white;
    text-align: center;
    width: 100%;
}

.hero-content h1 {
    font-size: 2.8rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-shadow: 0 2px 12px rgba(0,0,0,0.6);
}

.hero-content p {
    font-size: 1.2rem;
    text-shadow: 0 1px 6px rgba(0,0,0,0.5);
}

/* ── Botones principales ── */
.btn-edi {
    background: var(--edi-gradiente);
    border: none;
    color: var(--edi-negro);
    font-weight: 700;
    border-radius: 25px;
    padding: 0.6rem 1.8rem;
    letter-spacing: 0.03em;
    transition: opacity 0.2s, transform 0.1s;
}

.btn-edi:hover {
    opacity: 0.9;
    transform: translateY(-1px);
    color: var(--edi-negro);
}

.btn-edi-blanco {
    background: white;
    border: 2px solid white;
    color: var(--edi-negro);
    font-weight: 700;
    border-radius: 25px;
    padding: 0.6rem 1.8rem;
}

.btn-edi-blanco:hover {
    background: transparent;
    color: white;
}

/* ── Cards ── */
.card {
    border: none;
    border-radius: 12px;
    box-shadow: 0 2px 16px rgba(0,0,0,0.08);
}

.card-header-edi {
    background: var(--edi-gradiente);
    color: var(--edi-negro);
    font-weight: 700;
    border-radius: 12px 12px 0 0 !important;
    border: none;
}

/* ── Formularios ── */
.form-control:focus, .form-select:focus {
    border-color: var(--edi-turquesa);
    box-shadow: 0 0 0 0.2rem rgba(46,196,182,0.2);
}

/* ── Badges de estado ── */
.badge-activo    { background-color: var(--edi-verde);    color: white; }
.badge-pendiente { background-color: var(--edi-amarillo); color: var(--edi-negro); }
.badge-baja      { background-color: #999; color: white; }
.badge-rechazado { background-color: #e55; color: white; }

/* ── Franja de acento ── */
.franja-gradiente {
    height: 4px;
    background: var(--edi-gradiente);
    border: none;
    opacity: 1;
}

/* ── Footer ── */
footer.edi-footer {
    background-color: var(--edi-negro);
    color: rgba(255,255,255,0.6);
    padding: 1.2rem 0;
    margin-top: 4rem;
    font-size: 0.85rem;
    border-top: 3px solid;
    border-image: var(--edi-gradiente) 1;
}

footer.edi-footer a {
    color: var(--edi-amarillo);
    text-decoration: none;
}
