:root {
    --pc-primary:   #5B215E;
    --pc-primary-1: #E352EB;
    --pc-primary-2: #A53CAB;
    --pc-primary-3: #68256B;
    --pc-primary-4: #431845;

    --pc-secondary:   #AA146D;
    --pc-secondary-1: #6B0D45;
    --pc-secondary-2: #F71EA0;
    --pc-secondary-3: #B81677;
    --pc-secondary-4: #91115E;
}

/* Hintergrund */
.auth-bg {
    min-height: 100vh;
    background:
        radial-gradient(circle at 0% 0%, rgba(227,82,235,0.23) 0, transparent 40%),
        radial-gradient(circle at 100% 0%, rgba(247,30,160,0.18) 0, transparent 45%),
        linear-gradient(180deg, var(--pc-primary-3) 0%, #100410 100%);
    color: #fff;
}

/* Karten */
.auth-card,
.card.bg-dark {
    background: rgba(10, 3, 11, 0.96) !important;
    border: 1px solid rgba(227,82,235,0.25) !important;
    border-radius: 1.5rem !important;
    backdrop-filter: blur(14px);
}

/* Header */
.auth-header,
.bg-primary {
    background: linear-gradient(135deg, var(--pc-primary), var(--pc-secondary)) !important;
    border-bottom: 1px solid rgba(255,255,255,0.12) !important;
}

/* Buttons */
.btn-pc-primary,
.btn-warning {
    background: linear-gradient(135deg, var(--pc-primary-2), var(--pc-secondary-2)) !important;
    color: #fff !important;
    border: none !important;
    font-weight: 700;
}
.btn-pc-primary:hover,
.btn-warning:hover {
    background: linear-gradient(135deg, var(--pc-secondary-3), var(--pc-primary-1)) !important;
    box-shadow: 0 0 24px rgba(247,30,160,0.75);
}

/* Secondary outline button */
.btn-outline-light {
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,0.45) !important;
    color: #fff !important;
}
.btn-outline-light:hover {
    background: rgba(255,255,255,0.08) !important;
}

/* Input fields */
.card .form-control {
    background-color: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    color: #fff !important;
}
.card .form-control:focus {
    border-color: var(--pc-secondary-2) !important;
    box-shadow: 0 0 0 .2rem rgba(247,30,160,0.3) !important;
}

/* Labels und Texte */
.text-white-50 {
    color: rgba(255,255,255,0.55) !important;
}
.small, small {
    color: rgba(255,255,255,0.65) !important;
}

/* Info Box */
.bg-secondary.bg-opacity-50 {
    background-color: rgba(170,20,109,0.35) !important;
    border: 1px solid rgba(247,30,160,0.35) !important;
}

/* Footer der Karte */
.bg-secondary.bg-opacity-25 {
    background-color: rgba(170,20,109,0.18) !important;
}

/* Icons */
.bi {
    color: var(--pc-secondary-2);
}


:root {
    --pc-primary:   #5B215E;
    --pc-primary-1: #E352EB;
    --pc-primary-2: #A53CAB;
    --pc-primary-3: #68256B;
    --pc-primary-4: #431845;

    --pc-secondary:   #AA146D;
    --pc-secondary-1: #6B0D45;
    --pc-secondary-2: #F71EA0;
    --pc-secondary-3: #B81677;
    --pc-secondary-4: #91115E;
}

/* Footer */
.pc-footer {
    background:
        radial-gradient(circle at 0% 0%, rgba(227,82,235,0.20) 0, transparent 40%),
        radial-gradient(circle at 100% 0%, rgba(247,30,160,0.18) 0, transparent 45%),
        linear-gradient(180deg, var(--pc-primary-3) 0%, #100410 100%);
    border-top: 1px solid rgba(255,255,255,0.12);
    color: rgba(255,255,255,0.75);
}

.pc-footer-text {
    color: rgba(255,255,255,0.75);
    font-size: .8rem;
}

.pc-footer-link {
    color: rgba(255,255,255,0.8) !important;
    background: transparent;
    font-size: .82rem;
}

.pc-footer-link i {
    color: rgba(255,255,255,0.9);
}

.pc-footer-link:hover,
.pc-footer-link:focus {
    color: #ffffff !important;
    background: rgba(170,20,109,0.32);
}

.pc-footer .navbar-toggler-icon {
    filter: invert(1);
}

:root {
    --pc-primary:   #5B215E;
    --pc-primary-1: #E352EB;
    --pc-primary-2: #A53CAB;
    --pc-primary-3: #68256B;
    --pc-primary-4: #431845;

    --pc-secondary:   #AA146D;
    --pc-secondary-1: #6B0D45;
    --pc-secondary-2: #F71EA0;
    --pc-secondary-3: #B81677;
    --pc-secondary-4: #91115E;
}

/* Hintergrund für alle Auth-Seiten (Login, Register, Forgot) */
.auth-bg {
    min-height: 100vh;
    background:
        radial-gradient(circle at 0% 0%, rgba(227,82,235,0.23) 0, transparent 40%),
        radial-gradient(circle at 100% 0%, rgba(247,30,160,0.18) 0, transparent 45%),
        linear-gradient(180deg, var(--pc-primary-3) 0%, #100410 100%);
    color: #fff;
}

/* Navbar oben */
.auth-navbar {
    background: transparent !important;
    border-bottom: none;
    box-shadow: none;
}

.auth-navbar .navbar-brand img {
    max-height: 42px;
    filter: drop-shadow(0 0 10px rgba(0,0,0,0.55));
}

.auth-navbar .nav-link,
.auth-navbar .dropdown-toggle {
    color: rgba(255,255,255,0.82) !important;
    font-size: .85rem;
}

.auth-navbar .nav-link:hover,
.auth-navbar .dropdown-toggle:hover,
.auth-navbar .nav-link:focus {
    color: #ffffff !important;
}

.auth-navbar .navbar-toggler-icon {
    filter: invert(1);
}

/* Karten (Login / Register / Forgot) */
.auth-card,
.card.bg-dark {
    background: rgba(10, 3, 11, 0.96) !important;
    border-radius: 1.5rem !important;
    border: 1px solid rgba(227,82,235,0.25) !important;
    box-shadow: 0 22px 60px rgba(0, 0, 0, 0.9) !important;
    backdrop-filter: blur(14px);
}

/* Headerbereiche der Karten */
.auth-header,
.card .bg-primary {
    background: linear-gradient(135deg, var(--pc-primary), var(--pc-secondary)) !important;
    border-bottom: 1px solid rgba(255,255,255,0.12) !important;
}

/* Buttons */
.btn-pc-primary,
.btn-warning {
    background: linear-gradient(135deg, var(--pc-primary-2), var(--pc-secondary-2)) !important;
    border: none !important;
    color: #fff !important;
    font-weight: 700;
    letter-spacing: .02em;
}

.btn-pc-primary:hover,
.btn-warning:hover {
    background: linear-gradient(135deg, var(--pc-secondary-3), var(--pc-primary-1)) !important;
    box-shadow: 0 0 24px rgba(247,30,160,0.75);
    color: #fff !important;
}

.btn-outline-light {
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,0.45) !important;
    color: #fff !important;
}

.btn-outline-light:hover {
    background: rgba(255,255,255,0.08) !important;
}

/* Formfelder */
.card .form-control,
.card .form-select {
    background-color: rgba(255,255,255,0.03) !important;
    border: 1px solid rgba(255,255,255,0.15) !important;
    color: #fff !important;
}

.card .form-control::placeholder {
    color: rgba(255,255,255,0.35) !important;
}

.card .form-control:focus,
.card .form-select:focus {
    border-color: var(--pc-secondary-2) !important;
    box-shadow: 0 0 0 .2rem rgba(247,30,160,0.3) !important;
    background-color: rgba(255,255,255,0.03) !important;
    color: #fff !important;
}

/* Info-Boxen */
.bg-secondary.bg-opacity-50 {
    background-color: rgba(170,20,109,0.35) !important;
    border: 1px solid rgba(247,30,160,0.35) !important;
}

.bg-secondary.bg-opacity-25 {
    background-color: rgba(170,20,109,0.18) !important;
}

/* Standardtexte */
.text-white-50 {
    color: rgba(255,255,255,0.55) !important;
}

.small, small {
    color: rgba(255,255,255,0.65) !important;
}

/* Footer */
.pc-footer {
    background:
        radial-gradient(circle at 0% 0%, rgba(227,82,235,0.20) 0, transparent 40%),
        radial-gradient(circle at 100% 0%, rgba(247,30,160,0.18) 0, transparent 45%),
        linear-gradient(180deg, var(--pc-primary-3) 0%, #100410 100%);
    border-top: 1px solid rgba(255,255,255,0.12);
    color: rgba(255,255,255,0.75);
}

.pc-footer-text {
    color: rgba(255,255,255,0.75);
    font-size: .8rem;
}

.pc-footer-link {
    color: rgba(255,255,255,0.8) !important;
    background: transparent;
    font-size: .82rem;
}

.pc-footer-link i {
    color: rgba(255,255,255,0.9);
}

.pc-footer-link:hover,
.pc-footer-link:focus {
    color: #ffffff !important;
    background: rgba(170,20,109,0.32);
}

.pc-footer .navbar-toggler-icon {
    filter: invert(1);
}

