/* style.css */

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
}

.navbar-brand {
    font-size: 2rem;
    color: black;
}

.navbar-brand:hover { /* Correzione: da .navbar-brand.hover a .navbar-brand:hover */
    color: black;
}

.nav-link {
    margin-right: 10px;
    margin-left: 10px;
    color: black;
    font-family: "Delius", cursive;
    font-weight: 800;
    font-size: 42px;
    font-style: italic;
    text-transform: uppercase;
}

.nav-link:hover {
    color: black;
    transform: scale(1.1); /* Leggero ingrandimento */
    box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    -webkit-box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    transition: 0.5s;
}

.search { /* Stili per la barra di ricerca nella navbar */
    height: 40px;
    width: 80%;
    border-radius: 60px;
    outline: none;
    margin-right: -45px;
    border: 2px solid rgb(248, 26, 92);
}

.btn0 { /* Stili per il bottone di ricerca nella navbar */
    height: 40px;
    width: 40%;
    outline: none;
    border: none;
    background: rgb(248, 26, 92);
    color: white;
    border-radius: 45%;
    font-weight: 700;
}

.add-to-cart-button {
    background-color: #350de8;
    color: white;
    padding: 10px 20px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 20px;
}

.add-to-cart-button:hover {
    background-color: #0ec1ee;
}

.cart-button1 {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
}

.cart-button1 img {
    width: 100px;
    height: 100px;
    transition: transform 0.2s;
}

.cart-button1:hover img {
    transform: scale(1.2);
}

.prezzo_shop {
    font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
    font-size: 24px;
    color: green;
    word-spacing: inherit;
}

.cart-button2 img {
    width: 70px;
    height: 70px;
    transition: transform 0.2s;
}

.cart-button2:hover img {
    transform: scale(1.2);
}

.cart-button2 {
    background-color: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
}

.card:hover {
    box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    -webkit-box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    transition: 0.5s;
}

/* Stile per la navbar fissa */
.navbar-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Aggiungi un padding al corpo della pagina per evitare che il contenuto sia coperto dalla navbar */
body {
    padding-top: 180px; /* Valore default per desktop */
}

.navbar-bianca {
    background-color: white !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.prd-badge2 {
    position: absolute;
    left: 10px;
    top: 10px;
    background-color: rgb(4, 78, 46);
    color: white;
    padding: 3px;
    border-radius: 5px;
}

.Img_crt:hover {
    transform: scale(1.5);
    box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    -webkit-box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    -moz-box-shadow: -2px -1px 25px -4px rgba(0, 0, 0, 0.75);
    transition: 0.5s;
}

/* Icona utente nella navbar */
.navbar .dropdown-toggle img {
    border: 2px solid #ddd;
    transition: all 0.3s;
}

.navbar .dropdown-toggle:hover img {
    border-color: #0d6efd;
}

/* Fix per allineamento dropdown */
.dropdown-menu-end {
    right: 0;
    left: auto;
}

/* Mostra il sottomenu al passaggio del mouse sul parent item */
/* Queste regole potrebbero essere in conflitto con il JS per il sottomenu a click/hover misto.
   Se il JS gestisce tutto, queste potrebbero non essere necessarie. */
/*
.dropdown-item.dropdown-toggle:focus + .dropdown-submenu,
.dropdown-item.dropdown-toggle:hover + .dropdown-submenu {
    display: block;
    visibility: visible;
    opacity: 1;
}
*/

/* Regola la posizione per menu a destra */
.dropdown-menu.dropdown-menu-end .dropdown-submenu {
    left: auto;
    right: 100%;
}

/* Assicurati che il sottomenu si apra anche quando si clicca sul toggle */
/*
.dropdown-menu .dropdown-toggle[aria-expanded="true"] + .dropdown-submenu {
    display: block;
    visibility: visible;
    opacity: 1;
}
*/

/* --- Nuovi Stili per `admin_products.html` e Responsività --- */

/* Stili specifici per la barra di ricerca nella pagina admin_products */
#searchInput {
    height: 40px;
    border-radius: 60px;
    outline: none;
    border: 2px solid rgb(248, 26, 92);
    padding-left: 15px;
    flex-grow: 1; /* Permette all'input di espandersi nel flex container */
    max-width: 300px; /* Limita la larghezza massima su schermi grandi */
}

/* Rendi il contenitore flexbox nella card-header più robusto */
.card-header.d-flex {
    flex-wrap: wrap; /* Permette agli elementi di andare a capo su schermi piccoli */
    gap: 15px; /* Spazio tra gli elementi */
    align-items: center; /* Allinea verticalmente gli elementi */
}

/* --- Media Queries per la Responsività Generale --- */

/* Extra Small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
    .navbar-brand {
        font-size: 1.5rem; /* Riduci la dimensione del logo */
    }
    .nav-link {
        font-size: 1.2rem; /* Riduci la dimensione del font per i link della navbar */
        margin-right: 5px;
        margin-left: 5px;
        word-break: break-word; /* Permette al testo di andare a capo se troppo lungo */
    }
    .navbar-nav.m-auto {
        align-items: center; /* Centra gli elementi del menu */
    }
    .navbar .d-flex { /* Per la form di ricerca nella navbar */
        flex-direction: column; /* Impila la barra di ricerca e il bottone */
        width: 100%; /* Occupano tutta la larghezza disponibile */
        margin-top: 10px; /* Spazio dai link di navigazione */
    }
    .search {
        width: 90% !important; /* Aumenta la larghezza per il campo di ricerca */
        margin-right: 0; /* Rimuovi il margine negativo */
        margin-bottom: 10px; /* Spazio tra input e bottone */
    }
    .btn0 {
        width: 90% !important; /* Aumenta la larghezza per il bottone */
    }
    .navbar-nav.ms-auto {
        width: 100%;
        justify-content: center;
        margin-top: 10px;
    }
    .cart-button1 {
        margin: 10px auto !important;
        width: auto;
    }
    .cart-button1 img {
        width: 70px;
        height: 70px;
    }
    .cart-button2 img {
        width: 50px;
        height: 50px;
    }
    .position-absolute.top-60.start-70 { /* Regola la posizione del badge carrello */
        position: static !important;
        transform: none !important;
        display: block;
        text-align: center;
        margin-top: 5px;
        font-size: 0.8rem; /* Riduci la dimensione del testo del badge */
    }
    body {
        padding-top: 100px; /* Meno padding su mobile, da regolare in base all'altezza della navbar compressa */
    }

    /* Regola la tabella admin per schermi molto piccoli */
    #productsTable {
        font-size: 0.8rem; /* Riduci la dimensione del font nella tabella */
    }
    #productsTable th, #productsTable td {
        padding: 0.5rem; /* Riduci il padding delle celle */
    }
    .table-responsive {
        overflow-x: auto; /* Forza lo scroll orizzontale se la tabella è troppo larga */
    }
    .card-header.d-flex {
        flex-direction: column; /* Impila titolo e barra di ricerca */
        align-items: flex-start; /* Allinea a sinistra */
    }
    .card-header.d-flex #searchInput {
        width: 100% !important;
        margin-top: 10px;
    }
    .low-stock {
    opacity: 0.7;
    background-color: #f8f9fa;
    }

    .availability-text {
        display: inline-block;
        margin-left: 10px;
        font-size: 0.9em;
    }

    .text-success {
        color: #28a745;
    }

    .text-muted {
        color: #6c757d;
        font-style: italic;
    }
    .low-stock {
    opacity: 0.7;
    background-color: #f8f9fa;
    }

    .low-stock .product-info {
        color: #6c757d;
    }

    .availability-text {
        font-style: italic;
        display: inline-block;
        padding: 6px 12px;
    }

    .text-muted {
        color: #6c757d !important;
    }
}

/* Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) and (max-width: 767.98px) {
    .nav-link {
        font-size: 1.5rem;
    }
    body {
        padding-top: 120px; /* Leggermente più padding per schermi più grandi */
    }
    .card-header.d-flex #searchInput {
        width: 70% !important; /* Larghezza più contenuta */
    }
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991.98px) {
    .nav-link {
        font-size: 1.8rem;
    }
    .search {
        width: 60%;
    }
    .btn0 {
        width: 30%;
    }
    body {
        padding-top: 140px; /* Regola il padding per tablet */
    }
}

/* Large devices (desktops, 992px and up) */
@media (min-width: 992px) {
    /* Gli stili di base si applicano per default */
}

