/* Kafi BI shared styles (loaded by base_template.html after Bootstrap). */

/* ---- Card grids: platform landing + every app home (components/app_card.html) ---- */

.kb-card {
    border-color: var(--bs-border-color);
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.kb-card:hover,
.kb-card:focus-visible {
    border-color: var(--bs-success);
    box-shadow: 0 .25rem .75rem rgba(25, 135, 84, .15);
    transform: translateY(-2px);
}

.kb-card:focus-visible {
    outline: 2px solid var(--bs-success);
    outline-offset: 2px;
}

/* Full width on phones; capped beside the heading from md up. */
@media (min-width: 768px) {
    .kb-search {
        max-width: 18rem;
    }
}

.kb-empty {
    border: 1px dashed var(--bs-border-color);
    border-radius: var(--bs-border-radius);
}

@media (prefers-reduced-motion: reduce) {
    .kb-card { transition: none; }
    .kb-card:hover { transform: none; }
}

/* ---- Platform landing page (apps/home_page) ---- */

.landing-hero {
    max-width: 32rem;
    padding: 4rem 1rem 3rem;
}
