/* /Components/HoneypotField.razor.rz.scp.css */
/* Feld off-screen halten, ohne display:none (das meiden manche Bots).
   Für Menschen und assistive Technik unsichtbar; für Bots aber im DOM auffindbar und befüllbar.
   Klassenname bewusst neutral (kein "honeypot"/"hp"), damit der an den Client ausgelieferte
   Stylesheet-Eintrag den Zweck nicht verrät. */
.website-field[b-cgnevhnd9e] {
    position: absolute;
    left: -9999px;
    top: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}
/* /Components/Weddings/LobbyIntroTicker.razor.rz.scp.css */
/* Ruhiger Zeilen-Ticker des Lobby-Vorspanns (#324). Scoped gehalten, damit der parallel
   arbeitende Gast-Strang (#330/#333) in app.css keine Konflikte bekommt. Die CSS-Variablen
   (--ss-guest-scale, --ss-text*, --ss-border-light) kaskadieren aus dem umgebenden .ss-guest-
   Scope bzw. :root und wirken auch unter dem Scope-Attribut. */

/* Höhe reserviert, damit der Zeilenwechsel die Konto-Karte darunter nicht springen lässt. */
.ss-intro-ticker[b-quy49s5c9z] {
    border-top: 1px solid var(--ss-border-light);
    margin-top: 1rem;
    padding-top: 1rem;
    min-height: calc(4.2rem * var(--ss-guest-scale, 1));
    display: flex;
    align-items: center;
    justify-content: center;
}

.ss-intro-line[b-quy49s5c9z] {
    font-size: calc(1rem * var(--ss-guest-scale, 1));
    line-height: 1.5;
    color: var(--ss-text-secondary);
    text-wrap: balance;
    opacity: 1;
    transition: opacity 500ms ease;
}

.ss-intro-line[data-fading="true"][b-quy49s5c9z] {
    opacity: 0;
}

/* Die Kür ist die persönliche Zeile im Feld der Datenzeilen – eine Spur kräftiger, ohne Kasten. */
.ss-intro-line[data-kind="custom"][b-quy49s5c9z] {
    color: var(--ss-text);
}

/* Reduzierte Höhe, solange der Probetipp (#322) den Platz darüber belegt (E6). */
.ss-intro-ticker[data-compact="true"][b-quy49s5c9z] {
    min-height: calc(2.8rem * var(--ss-guest-scale, 1));
    margin-top: 0.75rem;
    padding-top: 0.75rem;
}

@media (prefers-reduced-motion: reduce) {
    .ss-intro-line[b-quy49s5c9z] {
        transition: none;
    }
}
/* /Layout/Footer.razor.rz.scp.css */
.app-footer[b-1far0gef2u] {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    background-color: var(--ss-footer-bg, #2c3642);
    /* Helle Basisfarbe auf dem festen dunklen Footer – unabhängig vom Abendmodus.
       Ersetzt das frühere text-light, dessen --bs-light-rgb im Abendmodus dunkel wird. */
    color: var(--ss-nav-text, #c8cdd4);
}

.app-footer-nav .nav-link[b-1far0gef2u] {
    color: var(--ss-nav-text, #c8cdd4);
    transition: color 0.15s ease;
    border-radius: var(--ss-radius-sm, 0.45rem);
}

.app-footer-nav .nav-link:hover[b-1far0gef2u],
.app-footer-nav .nav-link:focus[b-1far0gef2u] {
    color: var(--ss-nav-hover, #e8dcc8);
    text-decoration: none;
    background: rgba(255,255,255,0.05);
}
/* /Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-2fakyv9003] {
    min-height: 100vh;
    background: var(--ss-bg, #faf7f2);
    display: flex;
    flex-direction: column;
}

.app-content[b-2fakyv9003] {
    padding-bottom: 1rem;
    flex: 1 0 auto;
}
/* /Layout/NavMenu.razor.rz.scp.css */
.navbar-nav[b-rmwiped11a]  .nav-link.active {
    color: var(--ss-nav-active, #fff);
    font-weight: 600;
    background: rgba(255,255,255,0.08);
    border-radius: var(--ss-radius-sm, 0.45rem);
}

@media (max-width: 991.98px) {
    .navbar-collapse[b-rmwiped11a] {
        padding-top: 0.75rem;
    }
}
/* /Pages/Join/Lobby.razor.rz.scp.css */
/* Tageszeit-Begrüßung des Lobby-Vorspanns (#324, E7). Steht über der Lead-Zeile und ersetzt
   sie nicht. Scoped gehalten, damit der parallel arbeitende Gast-Strang (#330/#333) in app.css
   keine Konflikte bekommt; --ss-guest-scale/--ss-text kaskadieren aus dem .ss-guest-Scope. */
.ss-intro-greet[b-3qvix3ioap] {
    font-size: calc(1.25rem * var(--ss-guest-scale, 1));
    font-weight: 600;
    color: var(--ss-text);
    margin-bottom: 0.15rem;
}
/* /Pages/MyWeddings/Checkout.razor.rz.scp.css */
/* Paketauswahl-Schritt (#445, Epic #450) — token-basiert, Klassen aus dem
   abgenommenen Mockup docs/mockups/paketwahl-checkout-schritt-mockup.html. */

.pkg-card[b-1sdrfh1a07] {
    border: 1px solid var(--ss-border);
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.pkg-card.selected[b-1sdrfh1a07] {
    border: 2px solid var(--ss-accent);
    box-shadow: var(--ss-shadow-md);
}

/* Sichtbarer Fokusring auf der Karte, wenn das echte Radio den Fokus hat (Tastaturbedienung). */
.pkg-card:has(.form-check-input:focus-visible)[b-1sdrfh1a07] {
    box-shadow: var(--ss-focus-ring);
}

.pkg-badge-recommended[b-1sdrfh1a07] {
    background: var(--ss-accent-btn-bg);
    color: var(--ss-accent-btn-text);
}

.pkg-sticky-cta[b-1sdrfh1a07] {
    position: sticky;
    bottom: 0;
    padding: .75rem 12px 1rem;
    background: var(--ss-glass-bg-fallback);
    border-top: 1px solid var(--ss-border-light);
    margin: 0 -12px;
}

@supports (backdrop-filter: blur(1px)) {
    .pkg-sticky-cta[b-1sdrfh1a07] {
        background: var(--ss-glass-bg);
        backdrop-filter: var(--ss-glass-filter-soft);
    }
}

.pkg-compare-table i.fa-check[b-1sdrfh1a07] {
    color: var(--ss-success);
}

.pkg-compare-table i.fa-minus[b-1sdrfh1a07] {
    color: var(--ss-border);
}
