/* /Components/Popup.razor.rz.scp.css */
.popup[b-icu6e6ammz] {
    
    position: fixed;
    inset: 0; /* top:0; right:0; bottom:0; left:0 */
    background: rgba(0,0,0,0.45);
    backdrop-filter: blur(6px); /* rozmycie tła */
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2147483647;
}

    .popup .box[b-icu6e6ammz] {
        display: grid;
        grid-template-rows: auto 1fr auto;
    }

        .popup .box span[b-icu6e6ammz] {
            grid-row: 2;
            display: block; /* żeby mógł zajmować pełną szerokość kontenera */
            white-space: pre-line; /* pozwala na normalne łamanie wierszy */
            word-wrap: break-word; /* łamie zbyt długie słowa */
            overflow-wrap: break-word; /* nowszy odpowiednik */
            max-width: 30vw;
        }

        .buttons-group[b-icu6e6ammz] {
            grid-row: 3;
            display: flex;
            justify-content: end;
            gap: 15px;
            margin-block: 10px;
        }
/* /Components/RegistrationForm.razor.rz.scp.css */
.registration-form[b-pwefw2lg60] {
    grid-column: span 2;
}

.custom-input[b-pwefw2lg60] {
    background-color: transparent;
    color: #7f7fff;
    width: 330px;
    padding: 10px;
    font-size: 16px;
    border: 2px solid #5757C9;
    border-radius: 10px;
    
}
    .custom-input:hover[b-pwefw2lg60] {
        border-color: #4949b8;
        box-shadow: 0 0 0 3px rgba(87,87,201,.2);
    }
    .custom-input:focus[b-pwefw2lg60] {
        outline: #4949b8;
        box-shadow: 0 0 5px rgba(87, 87, 201, 0.4);
    }

.custom-select[b-pwefw2lg60] {
    background-color: transparent;
    color: #7f7fff;
    width: 330px;
    padding: 10px 36px 10px 12px;
    font-size: 16px;
    border: 2px solid #5757C9;
    border-radius: 10px;
    cursor: pointer;
}

    .custom-select:hover[b-pwefw2lg60] {
        border-color: #4949b8;
        box-shadow: 0 0 0 3px rgba(87,87,201,.2);
    }

    .custom-select:focus[b-pwefw2lg60] {
        outline: #4949b8;
        box-shadow: 0 0 0 3px rgba(87,87,201,.2);
    }

option[b-pwefw2lg60] {
    background-color: #12193a;
    color: #7f7fff;
}

.buttons-group[b-pwefw2lg60]{
    display:flex;
    gap:15px;
    margin-block:10px;
}

.desc[b-pwefw2lg60] {
    display: block;
    width: 100%;
    height: 25vh;
    padding: 10px;
    font-size: 16px;
    border: 2px solid #5757C9;
    background-color: transparent;
    color: #7f7fff;
    border-radius: 10px;
    resize: none;
    box-sizing: border-box;
}
    .desc:focus[b-pwefw2lg60] {
        outline: #4949b8;
        box-shadow: 0 0 5px rgba(87, 87, 201, 0.4);
    }
    .desc:hover[b-pwefw2lg60] {
        border-color: #4949b8;
        box-shadow: 0 0 5px rgba(87, 87, 201, 0.4);
    }

    .desc:invalid:focus[b-pwefw2lg60]{
        border-color:red;
    }

    .desc:valid[b-pwefw2lg60]{
        border-color:green;
    }

    .desc[b-pwefw2lg60]::-webkit-scrollbar{
        width:8px;
    }
    .desc[b-pwefw2lg60]::-webkit-scrollbar-track {
        background-color: transparent; /* tło toru */
        border-radius: 12px;
    }

    .desc[b-pwefw2lg60]::-webkit-scrollbar-thumb {
        background: #5757C9; /* „klocek” */
        border-radius: 12px;
        border: 2px solid #313175; /* delikatna obwódka separująca */
    }

    .desc[b-pwefw2lg60]::-webkit-scrollbar-thumb:hover {
        background: #4949b8; /* ciemniejszy przy hoverze */
    }
    .desc[b-pwefw2lg60]::-webkit-scrollbar-button {
        display:none;
    }

.field[b-pwefw2lg60] {
    position: relative;
    display:flex;
    align-items:center;
}


.field .custom-input:valid[b-pwefw2lg60],
.field .custom-select:valid[b-pwefw2lg60]{
    border-color: green;
}

.field .custom-input:invalid:focus[b-pwefw2lg60],
.field .custom-select:invalid:focus[b-pwefw2lg60] {
    border-color: red;
}

.status-icon[b-pwefw2lg60]{
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    margin-left:10px;
    background-size: contain;
    background-repeat:no-repeat;
}

.custom-input:valid + .status-icon[b-pwefw2lg60],
.custom-select:valid + .status-icon[b-pwefw2lg60]{
    background-image: url("/img/checked_green.png");
}

.custom-input:invalid:focus + .status-icon[b-pwefw2lg60],
.custom-select:invalid:focus + .status-icon[b-pwefw2lg60] {
    background-image: url("/img/cross_red.png");
}
     
/* /Components/ReviewsCarousel.razor.rz.scp.css */


/* Kontener */
.reviews-carousel[b-0dim5dj0ll] {
    position: relative;
    max-width: 1100px;
    margin: 2rem auto;
}

/* Viewport – ukrywa overflow, zostawia „peek” boków */
.viewport[b-0dim5dj0ll] {
    overflow: hidden;
    padding-inline: max(var(--peek), calc((100% - var(--card-w))/2));
    padding-block: 1rem;
    outline: none;
}

/* Pasek z kartami – przesuwany przez translateX sterowany zmienną --offset */
.track[b-0dim5dj0ll] {
    display: flex;
    align-items: stretch;
    gap: var(--gap);
    transform: translateX(calc(var(--offset) * (var(--card-w) + var(--gap)) * -1));
    transition: transform .35s ease;
}

/* Karta */
.card-rate[b-0dim5dj0ll] {
    flex: 0 0 var(--card-w);
    background: #fff;
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 1.25rem 1.25rem 1rem;
    transform: scale(.92);
    opacity: .65;
    transition: transform .35s ease, opacity .35s ease, box-shadow .35s ease;
    will-change: transform;
}

    .card-rate.is-active[b-0dim5dj0ll] {
        transform: scale(1);
        opacity: 1;
        box-shadow: 0 14px 36px rgba(0,0,0,.22);
        background: linear-gradient(135deg,var(--brand),var(--brand2))
    }

.card-rate-empty[b-0dim5dj0ll] {
    display: block;
    border-radius: var(--radius);
    padding: 1.25rem 0;
    transform: scale(.92);
    opacity: .85;
}

    .card-rate-empty p[b-0dim5dj0ll] {
        display: grid;
        justify-content: center;
    }

.rating[b-0dim5dj0ll] {
    color: var(--brand);
    letter-spacing: .15rem;
    font-size: 1.1rem;
    margin-bottom: .5rem;
}

.card-rate.is-active .rating[b-0dim5dj0ll] {
    color: var(--star-active);
}

.quote[b-0dim5dj0ll] {
    font-size: 1.05rem;
    line-height: 1.5;
    margin: .25rem 0 .5rem;
}

.author[b-0dim5dj0ll] {
    opacity: .85;
    font-weight: 600;
}

.meta[b-0dim5dj0ll] {
    opacity: .7;
    font-size: .9rem;
}

/* Strzałki */
.reviews-carousel .nav-carousel[b-0dim5dj0ll] {
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    border: none;
    background: #fff;
    cursor: pointer;
    display: grid;
    place-items: center;
    font-size: 20px;
    box-shadow: 0 6px 20px rgba(0,0,0,.2);
    transition: transform .2s ease;
}

    .reviews-carousel .nav-carousel:hover[b-0dim5dj0ll] {
        background: linear-gradient(var(--brand),var(--brand3))
    }



.reviews-carousel .prev[b-0dim5dj0ll] {
    left: clamp(.5rem, 2vw, 1rem);
}

.reviews-carousel .next[b-0dim5dj0ll] {
    right: clamp(.5rem, 2vw, 1rem);
}

/* (opcjonalnie) Podgląd przesuwania podczas drag:
   Możesz powiązać dynamiczne przesunięcie z C# jako inline style na .track
   (np. dodać style="--drag:@_deltaXpx" i użyć translateX(calc(...) + var(--drag))) */

/* Dark mode */
@media (prefers-color-scheme: dark) {
    .card-rate[b-0dim5dj0ll] {
        background: #141414;
        color: #eee;
    }

    .reviews-carousel .nav-carousel[b-0dim5dj0ll] {
        background: #1c1c1c;
        color: #eee;
    }

    .author[b-0dim5dj0ll] {
        color: #cfcfe6;
    }
}
