/* Layout publik (guest): topbar, hero, footer - dipakai lintas halaman publik */

/*
 * Sticky footer: body dibikin flex column setinggi minimal viewport, konten
 * (<main>) ambil sisa ruang (flex: 1) - biar halaman pendek kayak Login
 * footer-nya tetap nempel di bawah viewport, bukan ngambang persis di bawah
 * kartu login.
 */
.body-guest {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.guest-main {
    flex: 1 0 auto;
}

.footer-guest {
    flex-shrink: 0;
}

/*
 * `.navbar` bawaan NobleUI didesain untuk layout ADMIN (posisinya fixed,
 * digeser `left: 240px` biar gak ketiban sidebar - lihat
 * public/assets/css/demo1/style.css). Halaman publik/guest gak punya
 * sidebar, jadi properti itu WAJIB direset di sini supaya navbar-nya full
 * width dari kiri, bukan cuma di area setelah 240px.
 */
.navbar-guest {
    position: sticky;
    top: 0;
    left: 0;
    right: auto;
    width: 100%;
    height: auto;
    z-index: 1030;
    background-color: #fff;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
    border-bottom: none;
    padding-top: 0.85rem;
    padding-bottom: 0.85rem;
}

.navbar-guest .nav-link {
    font-weight: 500;
    color: #4b5468;
}

.navbar-guest .nav-link.active {
    color: var(--bs-primary);
}

.footer-guest {
    background-color: #fff;
}

.hero-guest {
    background: linear-gradient(135deg, rgba(101, 113, 255, 0.08), rgba(101, 113, 255, 0.02));
    border-radius: 1.25rem;
    padding: 3rem 2rem;
}

.hero-guest h1 {
    font-weight: 700;
}

.guest-content-card {
    height: 100%;
    transition: transform 0.2s ease;
}

.guest-content-card:hover {
    transform: translateY(-3px);
}

.auth-card {
    max-width: 420px;
    margin: 4rem auto;
}
