/* Ideal Grid — IdealPC Sàrl */

.ideal-overlay { padding: 24px; }
.ideal-overlay-content { max-width: 100%; }
.ideal-overlay-content > :last-child { margin-bottom: 0; }

.ideal-overlay--gradient {
    background: linear-gradient(to top, rgba(10, 14, 23, .88) 0%, rgba(10, 14, 23, .45) 45%, rgba(10, 14, 23, 0) 100%);
}

.ideal-overlay--blur {
    background: rgba(10, 14, 23, .35);
    -webkit-backdrop-filter: blur(6px) saturate(1.2);
    backdrop-filter: blur(6px) saturate(1.2);
}

/* Écrans tactiles : pas de survol, on affiche le texte en permanence (option). */
@media (hover: none) {
    .ideal-overlay--touch { opacity: 1 !important; transform: none !important; }
}

/* Badges */
.ideal-badge {
    position: absolute;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    padding: .3em .8em;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    line-height: 1.4;
    color: #fff;
    background: #1e87f0;
    box-shadow: 0 6px 18px -8px rgba(0, 0, 0, .55);
    pointer-events: none;
}

.ideal-badge--top-left { top: 14px; left: 14px; }
.ideal-badge--top-right { top: 14px; right: 14px; }
.ideal-badge--bottom-left { bottom: 14px; left: 14px; }
.ideal-badge--bottom-right { bottom: 14px; right: 14px; }

.ideal-badge--pill { border-radius: 999px; }
.ideal-badge--rounded { border-radius: 6px; }

.ideal-badge--ribbon { border-radius: 0; padding: .45em 1.1em; }
.ideal-badge--ribbon.ideal-badge--top-left,
.ideal-badge--ribbon.ideal-badge--bottom-left { left: 0; border-radius: 0 6px 6px 0; }
.ideal-badge--ribbon.ideal-badge--top-right,
.ideal-badge--ribbon.ideal-badge--bottom-right { right: 0; border-radius: 6px 0 0 6px; }

/* Couleurs : la couleur primaire reprend le bouton primaire du thème si possible. */
.ideal-badge--primary { background: var(--ideal-badge-primary, #1e87f0); }
.ideal-badge--dark { background: #111827; }
.ideal-badge--light { background: #fff; color: #111827; }
.ideal-badge--success { background: #16a34a; }
.ideal-badge--warning { background: #f59e0b; color: #1f1300; }
.ideal-badge--danger { background: #dc2626; }

/* Le texte de survol reste lisible même si le thème force la couleur des titres. */
.ideal-overlay:not(.uk-background-muted) .uk-light,
.ideal-overlay:not(.uk-background-muted) .uk-light * { color: #fff !important; }
.ideal-overlay h3 { margin-top: 0; }
