.mini-cart-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0006;display:flex;justify-content:flex-end;z-index:999;animation:fadeIn .3s ease}.mini-cart{width:360px;max-width:90%;background:#fff;color:#111;padding:20px;height:100%;overflow-y:auto;box-shadow:-5px 0 20px #0003;border-radius:0 12px 12px 0;display:flex;flex-direction:column}.mini-cart h2{margin:0 0 20px;font-size:22px;border-bottom:1px solid #ccc;padding-bottom:10px}.mini-cart-items{flex:1;overflow-y:auto}.mini-cart-item{display:flex;gap:15px;margin-bottom:15px;background:#f8f8f8;padding:10px;border-radius:8px;align-items:center}.mini-cart-item img{width:60px;height:60px;object-fit:cover;border-radius:6px}.mini-cart-info{flex:1;display:flex;flex-direction:column;gap:5px}.mini-cart-info h4{margin:0;font-size:14px;font-weight:600;color:#111}.mini-cart-info p{margin:0;font-size:13px;color:#111}.mini-qty{display:flex;align-items:center;gap:8px;margin-top:5px}.mini-qty button{background:#333;border:none;color:#fff;padding:3px 8px;border-radius:5px;cursor:pointer;font-weight:700;transition:all .2s}.mini-qty button:hover{background:#555}.mini-qty span{min-width:20px;text-align:center;color:#111;font-weight:600}.remove-btn{background:#ccc;border:none;color:#111;cursor:pointer;font-size:12px;margin-top:5px;padding:4px 8px;border-radius:6px;transition:all .2s}.remove-btn:hover{background:#bbb}.mini-cart-footer{border-top:1px solid #ccc;padding-top:15px;display:flex;flex-direction:column;gap:10px}.mini-cart-footer h3{margin:0;font-size:18px;font-weight:600;color:#111}.mini-cart-footer button{padding:12px;border-radius:8px;font-weight:600;border:none;cursor:pointer;transition:all .3s;background:#333;color:#fff}.mini-cart-footer button:hover{background:#555;transform:translateY(-1px)}.header{display:flex;justify-content:space-between;align-items:center;padding:20px 50px;background-color:#fff;position:sticky;top:0;z-index:1000;box-shadow:0 2px 5px #0000001a}.logo-container{display:flex;align-items:center}.logo-img{height:40px;margin-right:10px}.logo-text{font-size:1.5rem;font-weight:700;color:#000}.logo-link{display:flex;align-items:center;text-decoration:none;color:inherit}.nav-links{display:flex;gap:35px;align-items:center}.nav-links a{text-decoration:none;color:#000;font-weight:600;font-size:1.1rem;transition:color .3s,transform .3s}.nav-links a:hover{color:#b8b8b8;transform:translateY(-2px)}.close-menu{background:none;border:none;position:absolute;top:20px;right:20px;cursor:pointer;color:#000}.cart-menu{display:flex;align-items:center;gap:20px}.cart-icon{position:relative;cursor:pointer;transition:transform .3s,color .3s;color:#000}.cart-icon:hover{color:#b8b8b8;transform:translateY(-2px)}.cart-count{position:absolute;top:-8px;left:12px;background-color:#e60023;color:#fff;font-size:.7rem;font-weight:700;border-radius:50%;padding:1px 4px;min-width:15px;height:15px;display:flex;justify-content:center;align-items:center}@media(max-width:768px){.nav-links{position:fixed;top:0;right:0;height:100vh;width:100%;background-color:#fffffff7;flex-direction:column;justify-content:center;align-items:center;gap:30px;transform:translate(100%);transition:transform .3s ease-in-out;z-index:9999}.nav-links.mobile-open{transform:translate(0)}.nav-links a{font-size:1.5rem}.hamburger{display:block}body.menu-open{overflow:hidden}}.logout-btn{padding:6px 12px;background-color:#e10600;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:700;transition:.2s}.logout-btn:hover{opacity:.8}.hamburger{display:none;cursor:pointer;color:#000}@media(max-width:768px){.nav-links{position:absolute;top:70px;right:0;background-color:#fff;flex-direction:column;width:220px;padding:20px;gap:20px;border-radius:10px;box-shadow:0 5px 15px #0003;transform:translate(100%);transition:transform .3s ease-in-out;z-index:999}.nav-links.mobile-open{transform:translate(0)}.hamburger{display:block;color:#000}}.hero{height:100vh;width:100%;background:url(/assets/Banniere-avhRIfRx.jpeg) center/cover no-repeat;display:flex;justify-content:center;align-items:center;position:relative}.hero:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#00000059;z-index:1}.hero-content{position:relative;z-index:2;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:translateY(-60px)}.hero-content h1{font-size:4rem;font-weight:700;color:#fff;margin-bottom:15px}.hero-content p{font-size:1.4rem;color:#fff;margin-bottom:30px}.hero-content button{padding:14px 34px;font-size:1.1rem;font-weight:600;background-color:#111;color:#fff;border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #00000040}.hero-content button:hover{background-color:#fff;color:#000;transform:translateY(-3px);box-shadow:0 6px 25px #00000059}@media(max-width:768px){.hero-content h1{font-size:2.8rem}.hero-content p{font-size:1.2rem}.hero-content button{padding:12px 28px;font-size:1rem}}.categories{display:flex;justify-content:space-around;padding:80px 50px;background-color:#f9f9f9;gap:30px;flex-wrap:wrap}.category{flex:0 0 28%;height:350px;background-size:cover;background-position:center;border-radius:15px;position:relative;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:transform .3s,box-shadow .3s}.category:hover{transform:translateY(-10px);box-shadow:0 10px 20px #0003}.category:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0000004d;border-radius:15px;z-index:1}.category-text{position:relative;color:#fff;font-size:2rem;font-weight:700;text-align:center;z-index:2}@media(max-width:1024px){.category{flex:0 0 45%;height:300px}}@media(max-width:768px){.categories{flex-direction:column;padding:50px 20px;gap:20px}.category{width:100%;height:250px}.category-text{font-size:1.5rem}}.footer{background:#111;color:#fff;padding:30px 5%;font-family:Arial,sans-serif}.footer a{color:#fff;text-decoration:none;transition:color .3s}.footer a:hover{color:#aaa}.footer-container{display:flex;justify-content:space-between;flex-wrap:wrap}.footer-left,.footer-center,.footer-right{flex:1;min-width:200px;margin-bottom:20px}.footer-left h3,.footer-center h4{margin-bottom:10px}.footer-center ul{list-style:none;padding:0}.footer-center li{margin-bottom:5px}.footer-center{text-align:center;margin-left:-20px}.footer-right{text-align:right}.footer-phone{margin-bottom:10px;font-size:1rem}.socials a{margin-left:10px;font-size:1.5rem;transition:color .3s}.socials a:hover{color:#aaa}.footer-bottom{text-align:center;margin-top:15px;font-size:.9rem;color:#ccc}.footer-desc{line-height:1.5;margin:0}.notfound-page{display:flex;flex-direction:column;justify-content:center;align-items:center;height:80vh;text-align:center;font-family:Segoe UI,sans-serif;color:#111;padding:20px}.notfound-page h1{font-size:6rem;margin:0;color:#e10600}.notfound-page h2{font-size:2rem;margin:10px 0}.notfound-page p{font-size:1.2rem;margin-bottom:20px}.btn-home{padding:10px 20px;background-color:#000;color:#fff;border-radius:8px;text-decoration:none;font-weight:700;transition:background .3s}.btn-home:hover{background-color:#333}.produits-filters{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:30px}.search-input,.filter-select{padding:10px 15px;font-size:1rem;border:1px solid #ccc;border-radius:25px;outline:none;background:#fff;color:#111;transition:all .3s}.search-input:focus,.filter-select:focus{border-color:#888;box-shadow:0 0 5px #00000026}.filter-select{cursor:pointer}.produits-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;justify-items:center}.produit-card{display:flex!important;flex-direction:column!important;width:100%;max-width:250px;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 10px #0000000d;transition:transform .3s,box-shadow .3s;cursor:pointer}.produit-prix{color:#000!important;font-weight:700;font-size:1.1rem;margin:0}.pagination{display:flex;justify-content:center;align-items:center;margin-top:30px;gap:15px}.pagination button{padding:8px 15px;border:1px solid #000;background:#000!important;color:#fff;cursor:pointer;border-radius:6px;font-weight:600;transition:background .3s,color .3s}.pagination button:hover:not(:disabled){background:#333!important}.no-produits{text-align:center;font-size:1.4rem;color:#777;margin-top:80px}@media(max-width:1200px){.produits-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.produits-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.produits-grid{grid-template-columns:1fr}.produits-filters{flex-direction:column;align-items:center}.search-input,.filter-select{width:100%;max-width:300px}}.produit-detail-page{padding:40px 5%;background:#fff;min-height:80vh}.back-btn{padding:10px 20px;background:#000;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;margin-bottom:30px;transition:background .3s}.back-btn:hover{background:#333}.produit-detail-container{display:flex;gap:40px;max-width:1200px;margin:0 auto;flex-wrap:wrap}.img-section{flex:1;min-width:300px;display:flex;flex-direction:column;gap:15px}.main-image-container{width:100%;height:500px;background:#f5f5f5;border-radius:12px;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #00000014}.produit-detail-img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.main-image-container:hover .produit-detail-img{transform:scale(1.05)}.no-image{color:#999;font-size:1.2rem}.thumbnails-container{display:flex;gap:10px;overflow-x:auto;padding:5px 0;scrollbar-width:thin;scrollbar-color:#ccc #f5f5f5}.thumbnails-container::-webkit-scrollbar{height:6px}.thumbnails-container::-webkit-scrollbar-track{background:#f5f5f5;border-radius:3px}.thumbnails-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.thumbnail{position:relative;width:80px;height:80px;flex-shrink:0;border-radius:8px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .3s;background:#f5f5f5}.thumbnail img{width:100%;height:100%;object-fit:cover}.thumbnail:hover{border-color:#666;transform:translateY(-2px)}.thumbnail.active{border-color:#000;box-shadow:0 2px 8px #0003}.badge-principale{position:absolute;top:4px;right:4px;background:gold;color:#000;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;box-shadow:0 2px 4px #0003}.info-section{flex:1;min-width:300px}.info-section h1{font-size:2rem;margin-bottom:20px;color:#000}.info-section p{margin:15px 0;font-size:1.1rem;color:#444}.prix-detail{font-size:1.5rem!important;color:#000!important;font-weight:700}.btn-ajouter-panier{margin-top:30px;padding:15px 30px;background:#000;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;width:100%;max-width:300px;transition:all .3s}.btn-ajouter-panier:hover:not(:disabled){background:#333;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.btn-ajouter-panier:disabled{background:#ccc;cursor:not-allowed;opacity:.6}@media(max-width:768px){.produit-detail-container{flex-direction:column}.main-image-container{height:350px}.info-section h1{font-size:1.5rem}.thumbnail{width:70px;height:70px}}body{background:#fff;margin:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.cart-page{padding:40px;width:100%;max-width:1200px;margin:auto;background:#fff;box-sizing:border-box;min-height:calc(100vh - 120px)}.cart-page h1{margin-bottom:30px;font-size:28px;color:#111}.cart-content{display:flex;gap:30px;flex-wrap:wrap;width:100%}.cart-items{flex:2;min-width:300px}.cart-item{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px;padding:15px;border:1px solid #e0e0e0;border-radius:12px;width:100%;background:#fff;transition:box-shadow .2s}.cart-item:hover{box-shadow:0 4px 12px #00000014}.cart-item img{width:100px;height:100px;object-fit:cover;border-radius:12px}.cart-info{flex:1;display:flex;flex-direction:column;gap:8px}.cart-info h3{margin:0;font-size:18px;color:#111}.qty-price{display:flex;align-items:center;gap:20px}.qty-controls{display:flex;align-items:center;gap:8px}.qty-controls button{padding:4px 12px;background:#f0f0f0;color:#333;border:1px solid #ccc;border-radius:8px;cursor:pointer;transition:all .2s;font-weight:600}.qty-controls button:hover{background:#e0e0e0}.qty-controls span{min-width:28px;text-align:center;font-weight:700;color:#111;font-size:16px}.qty-price p{font-weight:600;color:#111;min-width:70px;text-align:right}.remove-btn{background:transparent;border:1px solid #ccc;color:#666;font-weight:700;cursor:pointer;padding:6px 10px;border-radius:8px;transition:all .2s;align-self:flex-start}.remove-btn:hover{background:#f0f0f0;color:#111}.cart-summary{flex:1;min-width:250px;border:1px solid #e0e0e0;border-radius:12px;padding:25px;height:fit-content;background:#fff;display:flex;flex-direction:column;gap:20px;align-self:flex-start}.cart-summary h2{margin:0;font-size:22px;color:#111}.summary-item{display:flex;justify-content:space-between;font-size:18px;font-weight:600;color:#111}.cart-summary button{padding:12px;background:#333;color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s}.cart-summary button:hover{background:#555}.empty-cart{text-align:center;margin:50px 0}.empty-cart p{font-size:20px;margin-bottom:20px;color:#111}.empty-cart button{padding:12px 20px;background:#333;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:700;transition:all .3s}.empty-cart button:hover{background:#555}@media(max-width:768px){.cart-content{flex-direction:column}.cart-summary{width:100%}}body{background:#f5f5f5}.checkout-form{max-width:600px;margin:60px auto;background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 30px #00000012;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.checkout-form h1{text-align:center;font-size:26px;color:#111;margin-bottom:10px}.checkout-form p.subtitle{text-align:center;font-size:14px;color:#666;margin-bottom:30px}.checkout-form label{font-weight:600;margin-bottom:5px;display:block;color:#333}.checkout-form input,.checkout-form textarea{width:100%;padding:14px 15px;margin-bottom:20px;border-radius:10px;border:1px solid #ccc;font-size:14px;background:#fff;color:#111;transition:all .2s}.checkout-form input:focus,.checkout-form textarea:focus{border-color:#333;box-shadow:0 0 8px #00000014;outline:none}.checkout-form textarea{min-height:100px;resize:vertical}.checkout-form button{width:100%;padding:15px;background:#333;color:#fff;font-size:16px;font-weight:700;border:none;border-radius:10px;cursor:pointer;transition:all .3s}.checkout-form button:hover{background:#555;transform:translateY(-2px)}@media(max-width:768px){.checkout-form{padding:30px 20px;margin:40px 10px}}.checkout-message{padding:12px 15px;margin-bottom:20px;border-radius:6px;font-weight:500;text-align:center;color:#fff;background-color:#28a745;box-shadow:0 4px 10px #0000001a;animation:fadeIn .3s ease}.checkout-message:empty{display:none}.checkout-message.error{background-color:#dc3545}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.contact-page{padding:50px 10%;background:#fff;color:#111;min-height:80vh;font-family:Arial,sans-serif}.contact-page h1{text-align:center;font-size:2.5rem;margin-bottom:40px;color:#111}.contact-info{display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:40px}.info-item{flex:1 1 45%;margin-bottom:20px}.info-item h3{font-size:1.2rem;margin-bottom:8px;color:#111}.info-item a{display:inline-block;color:#111;text-decoration:none;margin-bottom:5px}.social-links a{display:inline-block;margin-right:15px;color:#111;font-size:1.8rem;transition:color .3s}.social-links a:hover{color:#555}.map-container{margin-top:30px;border-radius:10px;overflow:hidden;box-shadow:0 0 15px #0000001a}.dashboard-admin{color:#111;background:#f9f9f9;max-width:1200px;margin:0 auto;padding:40px;min-height:calc(100vh - 120px);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.dashboard-admin h1{font-size:28px;margin-bottom:30px;color:#111;text-align:center}.commandes-table{width:100%;border-collapse:collapse}.commandes-table th,.commandes-table td{padding:12px 15px;border-bottom:1px solid #e0e0e0;font-size:14px;color:#111;vertical-align:middle;text-align:left}.commandes-table th{background:#f0f0f0;font-weight:600}.statut{padding:5px 10px;border-radius:6px;display:inline-block;line-height:1.3;font-weight:600;font-size:13px;text-transform:capitalize;text-align:center}.statut.en_attente{background:#fff3cd;color:#856404}.statut.retour{background:#f8d7da;color:#721c24}.statut.confirmée{background:#d4edda;color:#218838}.statut.livrée{background:#cce5ff;color:#004085}.commandes-table button,.commandes-table select{padding:5px 10px;border-radius:6px;border:1px solid #ccc;background-color:#f5f5f5;color:#333;cursor:pointer;font-size:13px;transition:all .2s}.commandes-table button:hover,.commandes-table select:hover{background-color:#e0e0e0;border-color:#bfbfbf}.detail-btn{background-color:#fff;border:1px solid #0077b6;color:#0077b6}.detail-btn:hover{background-color:#0077b6;color:#fff}.delete-btn{background-color:#f8d7da;border:1px solid #f5c2c7;color:#721c24}.delete-btn:hover{background-color:#f5c2c7;color:#721c24}.notification{background:#333;color:#fff;padding:10px 15px;border-radius:8px;margin-bottom:20px;text-align:center;font-weight:700;animation:fadeInOut 3s forwards}.modal{background:#fff;padding:30px 40px;border-radius:12px;max-width:600px;width:90%;box-shadow:0 5px 20px #0003;max-height:80vh;overflow-y:auto;position:relative}.details-table{width:100%;border-collapse:collapse;margin-top:20px}.details-table th,.details-table td{border:1px solid #ccc;padding:10px;text-align:left}.close-btn{margin-top:20px;padding:10px 15px;background:#111;color:#fff;border:none;border-radius:8px;cursor:pointer}.close-btn:hover{background:#333}@keyframes fadeInOut{0%{opacity:0}10%{opacity:1}90%{opacity:1}to{opacity:0}}@media(max-width:768px){.dashboard-admin{padding:20px}.commandes-table th,.commandes-table td{padding:8px 10px;font-size:12px}}.pagination{display:flex;justify-content:center;align-items:center;gap:35px;margin-top:35px}.pagination button{padding:10px 20px;border-radius:8px;border:1px solid #333;background:#111;color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.pagination button:hover:not(:disabled){background:#333}.pagination button:disabled{background:#ccc;border-color:#ccc;color:#666;cursor:not-allowed}.pagination span{font-weight:700;color:#111;font-size:15px}.overview-dashboard{max-width:1200px;margin:0 auto;padding:40px;min-height:calc(100vh - 120px);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f9f9f9;color:#111}.overview-dashboard h1{text-align:center;margin-bottom:30px;color:#111;font-size:28px}.cards{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.card{flex:1 1 180px;background:#fff;border-radius:12px;padding:20px;text-align:center;box-shadow:0 4px 12px #0000000d}.card h2{font-size:24px;margin-bottom:10px}.card p{font-size:14px;font-weight:600;color:#555}.chart-container{margin-top:40px;background:#fff;padding:20px;border-radius:12px;box-shadow:0 4px 12px #0000000d}.chart-container h2{text-align:center;margin-bottom:20px;color:#111}.card.en_attente{background:#fff3cd;color:#856404}.card.retour{background:#f8d7da;color:#721c24}.card.confirmée{background:#d4edda;color:#218838}.card.livrée{background:#cce5ff;color:#004085}.card.chiffre{background:#e0e0e0;color:#111}body{background:#f2f4f7}.caisse-page{padding:25px;font-family:Segoe UI,sans-serif;color:#111}.caisse-page h1{margin-bottom:15px}.notification{background:#4caf50;color:#fff;padding:10px 15px;border-radius:6px;margin-bottom:15px}.caisse-layout{display:grid;grid-template-columns:1fr 380px;gap:25px;align-items:start}.produits-zone{background:#fff;border-radius:10px;padding:15px;display:flex;flex-direction:column}.filters{display:flex;gap:10px;margin-bottom:15px}.filters input,.filters select{padding:10px;border-radius:6px;border:1px solid #000;background:#f9f9f9;color:#111;font-size:14px}.filters input:focus,.filters select:focus{border-color:#333;outline:none}.produits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px;align-content:start}.produit-card{background:#fff;border:1px solid #ddd;border-radius:10px;padding:10px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:.2s;min-height:220px}.produit-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0000001a}.produit-card.disabled{opacity:.45;pointer-events:none}.produit-card img{width:100%;height:120px;object-fit:cover;border-radius:6px}.no-image{height:120px;background:#e0e0e0;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:2rem}.produit-card h3{font-size:14px;margin:0}.produit-card p{margin:0;font-weight:700;color:#111}.produit-card .stock{font-size:12px;margin-top:auto;padding:4px 6px;border-radius:4px;background:#f1f1f1}.panier-zone{background:#fff;border-radius:10px;padding:15px;border:1px solid #ddd;position:sticky;top:20px}.panier-zone h2{margin-top:0;margin-bottom:10px}.panier-item{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #eee;font-size:14px}.qte{display:flex;align-items:center;gap:5px}.qte button{width:28px;height:28px;border:none;background:#1976d2;color:#fff;border-radius:4px;cursor:pointer}.qte input{width:45px;text-align:center;border:1px solid #ccc;border-radius:4px}.total{margin-top:15px;font-size:16px;font-weight:700;text-align:right}.valider{margin-top:15px;width:100%;padding:12px;background:#4caf50;color:#fff;border:none;border-radius:6px;font-size:15px;cursor:pointer}.valider:hover{background:#43a047}.modal{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-box{background:#fff;padding:25px;width:320px;border-radius:10px;text-align:center}.modal-box button{margin-top:15px;padding:10px;width:100%;border:none;background:#1976d2;color:#fff;border-radius:6px;cursor:pointer}.pagination-caisse{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:15px}.pagination-caisse button{padding:6px 12px;border:1px solid #000;background:#000;color:#fff;cursor:pointer;border-radius:4px;font-weight:600;transition:background .3s}.pagination-caisse button:hover:not(:disabled){background:#333}.pagination-caisse button:disabled{opacity:.5;cursor:not-allowed}.stock-page{max-width:1200px;margin:0 auto;padding:40px;font-family:Segoe UI,sans-serif;background:#f9f9f9;color:#111}.stock-page h1{text-align:center;margin-bottom:20px;color:#111}.add-btn{background:#2c3e50;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:700;transition:all .2s}.add-btn:hover{background:#1a252f}.notification{position:fixed;top:80px;right:20px;background:#218838;color:#fff;padding:10px 20px;border-radius:6px;z-index:1000;box-shadow:0 3px 8px #0003}.search-filter{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap}.filters{display:flex;gap:10px;flex-wrap:wrap}.search-filter input,.search-filter select{padding:8px 12px;border-radius:6px;border:1px solid #ccc;font-size:14px;color:#111;background:#fff}.stock-table{width:100%;border-collapse:collapse;margin-bottom:15px;color:#111;background:#fff}.stock-table th,.stock-table td{padding:12px 10px;border:1px solid #ccc;text-align:center;vertical-align:middle}.stock-table th{background:#e0e0e0;color:#111;font-weight:600}.stock-table td img.produit-img{width:60px!important;height:60px!important;min-width:60px!important;min-height:60px!important;max-width:60px!important;max-height:60px!important;object-fit:cover!important;border-radius:4px!important;display:block!important;margin:0 auto!important;background:#f5f5f5!important;border:1px solid #ddd!important}.stock-table button{padding:6px 12px;margin:0 3px;border:none;border-radius:4px;cursor:pointer;font-size:13px;transition:opacity .2s}.stock-table button:hover{opacity:.85}.stock-table .delete-btn{background:#e10600;color:#fff;font-weight:700;padding:4px 10px}.stock-table tbody tr.out-of-stock{background-color:#fff3cd;opacity:.85}.zero-stock{color:#dc3545;font-weight:700}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#fff;padding:30px;border-radius:12px;width:90%;max-width:500px;color:#111;max-height:85vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal h2{margin-top:0;margin-bottom:20px;color:#2c3e50}.modal-large{max-width:700px!important}.modal-form input,.modal-form select{width:100%;padding:10px 12px;margin-bottom:12px;color:#111;background:#fefefe;border:1px solid #ccc;border-radius:6px;font-size:14px;box-sizing:border-box}.modal-form input:focus,.modal-form select:focus{outline:none;border-color:#2c3e50}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.modal-actions button{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-weight:700;font-size:14px;transition:background .2s}.modal-actions button:first-child{background:#2c3e50;color:#fff}.modal-actions button:first-child:hover{background:#1a252f}.modal-actions button:first-child:disabled{opacity:.6;cursor:not-allowed}.modal-actions button:last-child{background:#6c757d;color:#fff}.modal-actions button:last-child:hover{background:#5a6268}.pagination{text-align:center;margin-top:20px}.pagination button{padding:8px 16px;margin:0 5px;border:none;border-radius:6px;cursor:pointer;background:#2c3e50;color:#fff;font-size:14px;transition:background .2s}.pagination button:hover{background:#1a252f}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{margin:0 10px;font-weight:600;color:#2c3e50}.images-section{margin:20px 0;padding:15px;background:#f8f9fa;border-radius:8px}.images-section>label{display:block;font-weight:700;margin-bottom:15px;color:#2c3e50;font-size:15px}.existing-images{margin-bottom:20px}.existing-images>p{font-weight:600;margin-bottom:10px;color:#495057;font-size:14px}.images-grid{display:flex;flex-wrap:wrap;gap:10px}.image-item{flex:1 1 calc(33.33% - 10px);max-width:calc(33.33% - 10px);position:relative;border:2px solid #dee2e6;border-radius:8px;overflow:hidden;background:#fff}.image-item img{width:100%;height:150px;display:block;object-fit:cover}.image-actions{padding:8px;display:flex;flex-direction:column;gap:5px}.main-badge{background:#ffc107;color:#000;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:700;text-align:center}.image-actions button{padding:6px 10px;border:none;border-radius:4px;cursor:pointer;font-size:11px;background:#2c3e50;color:#fff;transition:background .2s;font-weight:600}.image-actions button:hover{background:#1a252f}.delete-img-btn{background:#dc3545!important}.delete-img-btn:hover{background:#c82333!important}.selected-files{margin-bottom:15px}.selected-files>p{font-weight:600;margin-bottom:10px;color:#495057;font-size:14px}.files-list{display:flex;flex-direction:column;gap:8px;max-height:200px;overflow-y:auto}.file-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#fff;border:1px solid #dee2e6;border-radius:6px}.file-item span{font-size:13px;color:#495057;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;margin-right:10px}.file-item button{background:#dc3545;color:#fff;border:none;padding:4px 10px;border-radius:4px;cursor:pointer;font-weight:700;flex-shrink:0;font-size:14px}.file-item button:hover{background:#c82333}.upload-area{text-align:center;margin-top:15px}.upload-btn{display:inline-block;padding:10px 20px;background:#2c3e50;color:#fff;border-radius:8px;cursor:pointer;font-weight:700;font-size:14px;transition:background .2s}.upload-btn:hover{background:#1a252f}@media(max-width:768px){.stock-page{padding:20px}.images-grid{grid-template-columns:repeat(2,1fr)}.image-item{flex:1 1 calc(50% - 10px);max-width:calc(50% - 10px)}.modal-large{max-width:95%!important;padding:20px}.stock-table{font-size:12px}.stock-table th,.stock-table td{padding:8px 5px}.stock-table td img.produit-img{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;max-width:50px!important;max-height:50px!important}}.ventes-page{padding:20px;max-width:1400px;margin:0 auto}.ventes-page h1{font-size:2rem;color:#333;margin-bottom:30px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;border-radius:12px;padding:25px;display:flex;align-items:center;gap:20px;box-shadow:0 2px 8px #0000001a;transition:transform .3s,box-shadow .3s}.stat-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #00000026}.stat-card.total{border-left:5px solid #4caf50}.stat-card.today{border-left:5px solid #2196f3}.stat-card.month{border-left:5px solid #ff9800}.stat-icon{font-size:3rem;opacity:.9}.stat-info{flex:1}.stat-info h3{margin:0 0 8px;font-size:14px;color:#666;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1.8rem;font-weight:700;color:#333;margin:0}.stat-detail{font-size:13px;color:#999;margin:5px 0 0}.filters{background:#fff;padding:15px;border-radius:8px;margin-bottom:20px;box-shadow:0 2px 4px #0000000d}.filters select{padding:10px 15px;border:2px solid #e0e0e0;border-radius:6px;font-size:14px;cursor:pointer;transition:border-color .3s}.filters select:focus{outline:none;border-color:#2196f3}.ventes-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.ventes-table{width:100%;border-collapse:collapse}.ventes-table thead{background:#f5f5f5}.ventes-table th{padding:15px;text-align:left;font-weight:600;color:#555;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.ventes-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background .3s}.ventes-table tbody tr:hover{background:#f9f9f9}.ventes-table td{padding:15px;color:#333;font-size:14px}.total-cell{font-weight:700;color:#4caf50;font-size:15px}.no-data{text-align:center;padding:40px!important;color:#999;font-style:italic}.details-btn{background:#2196f3;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:13px;transition:background .3s,transform .2s}.details-btn:hover{background:#1976d2;transform:scale(1.05)}.details-btn:active{transform:scale(.98)}.pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:20px;margin-top:20px}.pagination button{padding:10px 20px;background:#2196f3;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:background .3s}.pagination button:hover:not(:disabled){background:#1976d2}.pagination button:disabled{background:#ccc;cursor:not-allowed}.pagination span{font-size:14px;color:#666;font-weight:500}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-overlay{position:fixed;inset:0;width:100%;height:100%;background:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .2s ease-out;overflow-y:auto}.details-modal{position:relative;background:#fff;padding:0;border-radius:16px;max-width:600px;width:100%;box-shadow:0 20px 60px #0000004d;z-index:1001;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out;overflow:hidden}.modal-header{position:sticky;top:0;background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;padding:25px 30px;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;align-items:center;z-index:1;box-shadow:0 2px 10px #0000001a}.modal-header h2{margin:0;font-size:22px;font-weight:600}.close-btn{background:#fff3;border:none;color:#fff;font-size:24px;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;line-height:1;padding:0}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-content{padding:30px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}.modal-content::-webkit-scrollbar{width:8px}.modal-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.modal-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:10px}.modal-content::-webkit-scrollbar-thumb:hover{background:#a1a1a1}.vente-info{background:linear-gradient(135deg,#f5f7fa,#e8ecf1);padding:20px;border-radius:12px;display:grid;grid-template-columns:auto 1fr;gap:12px;border-left:4px solid #2196f3;box-shadow:0 2px 8px #0000000d}.vente-info p{margin:0;color:#333;font-size:15px;display:contents}.vente-info strong{color:#555;font-weight:600;grid-column:1}.vente-info span{grid-column:2;color:#333}.details-items h3{margin:0 0 15px;font-size:17px;color:#333;font-weight:600;display:flex;align-items:center;gap:8px}.details-items h3:before{content:"🛍️";font-size:20px}.detail-item{background:#f9fafb;border-radius:10px;padding:16px;display:flex;justify-content:space-between;align-items:center;gap:15px;border:1px solid #e5e7eb;transition:all .3s}.detail-item:hover{background:#f3f4f6;border-color:#d1d5db;transform:translate(5px);box-shadow:0 2px 8px #00000014}.detail-name{flex:1;display:flex;flex-direction:column;gap:4px}.detail-name strong{color:#1f2937;font-size:16px;font-weight:600}.detail-name span{color:#6b7280;font-size:14px}.detail-prix{font-weight:700;color:#2196f3;font-size:17px;white-space:nowrap}.details-total{display:flex;justify-content:space-between;align-items:center;padding:20px;margin-top:10px;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:12px;border:2px solid #4caf50;font-size:19px;color:#2e7d32;font-weight:700;box-shadow:0 4px 12px #4caf5033}.details-total strong:first-child{font-size:17px;color:#1b5e20}.details-total strong:last-child{font-size:22px;color:#2e7d32}.modal-actions{position:sticky;bottom:0;background:#fff;padding:20px 30px;border-top:1px solid #e5e7eb;margin:0 -30px -30px;border-radius:0 0 16px 16px;box-shadow:0 -2px 10px #0000000d}.modal-actions button{width:100%;padding:14px;border:none;border-radius:10px;cursor:pointer;font-size:16px;font-weight:600;transition:all .3s;background:linear-gradient(135deg,#2196f3,#1976d2);color:#fff;box-shadow:0 4px 12px #2196f34d}.modal-actions button:hover{background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 6px 16px #2196f366;transform:translateY(-2px)}.modal-actions button:active{transform:translateY(0)}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}.ventes-table-container{overflow-x:auto}.ventes-table{min-width:600px}.details-modal{max-width:95%;max-height:95vh}.modal-header{padding:20px}.modal-header h2{font-size:18px}.modal-content{padding:20px}.vente-info{grid-template-columns:1fr;gap:8px}.vente-info strong,.vente-info span{grid-column:1}.detail-item{flex-direction:column;align-items:flex-start;gap:10px}.details-total{flex-direction:column;gap:8px;text-align:center}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(30px);opacity:0}}.modal-overlay.closing{animation:fadeOut .2s ease-out forwards}.details-modal.closing{animation:slideDown .2s ease-out forwards}.promotions-page{padding:20px;min-height:calc(100vh - 100px);display:flex;align-items:center;justify-content:center}.construction-container{max-width:800px;width:100%;text-align:center;background:#fff;border-radius:24px;padding:60px 40px;box-shadow:0 10px 40px #0000001a}.construction-icon{font-size:120px;margin-bottom:30px;animation:bounce 2s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.construction-container h1{font-size:2.5rem;color:#333;margin:0 0 15px;font-weight:700}.construction-subtitle{font-size:1.2rem;color:#666;margin-bottom:50px}.construction-details{display:flex;flex-direction:column;gap:25px;margin-bottom:50px}.feature-item{display:flex;align-items:flex-start;gap:20px;padding:25px;background:linear-gradient(135deg,#f5f7fa,#e8ecf1);border-radius:16px;text-align:left;transition:all .3s;border:2px solid transparent}.feature-item:hover{transform:translate(10px);border-color:#ff6b6b;box-shadow:0 5px 15px #ff6b6b33}.feature-icon{font-size:40px;min-width:50px}.feature-item h3{margin:0 0 8px;color:#333;font-size:1.2rem;font-weight:600}.feature-item p{margin:0;color:#666;font-size:.95rem;line-height:1.5}.coming-soon{padding:25px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;box-shadow:0 8px 20px #667eea4d}.coming-soon p{margin:0;color:#fff;font-size:1.3rem;font-weight:700;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media(max-width:768px){.construction-container{padding:40px 20px}.construction-icon{font-size:80px}.construction-container h1{font-size:1.8rem}.construction-subtitle{font-size:1rem}.feature-item{flex-direction:column;text-align:center;padding:20px}.feature-item:hover{transform:translateY(-5px)}.feature-icon{font-size:35px}.feature-item h3,.coming-soon p{font-size:1.1rem}}.produits-page{padding:40px 5%;background:#fff;min-height:80vh}.produits-title{text-align:center;font-size:2rem;margin-bottom:30px;color:#000}.produits-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}.produit-card{display:flex!important;flex-direction:column!important;width:220px!important;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 10px #0000000d;transition:transform .3s,box-shadow .3s;cursor:pointer;position:relative}.produit-card:hover{transform:translateY(-5px);box-shadow:0 6px 15px #00000026}.new-badge-top{position:absolute;top:10px;right:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 12px;border-radius:20px;font-weight:700;font-size:11px;z-index:10;box-shadow:0 2px 8px #667eea66;animation:shimmer 2s infinite}@keyframes shimmer{0%,to{opacity:1}50%{opacity:.85}}.img-container{width:100%!important;height:220px!important;overflow:hidden!important;flex-shrink:0!important;background:#f5f5f5;position:relative}.produit-img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover!important;display:block!important;position:absolute!important;top:0!important;left:0!important;margin:0!important;padding:0!important}.produit-info{display:flex;flex-direction:column;padding:15px;flex-grow:1;gap:8px}.produit-nom{font-size:1.1rem;color:#000;margin:0;line-height:1.3}.produit-prix{color:#444;font-weight:700;font-size:1.1rem;margin:0}.btn-panier{margin-top:auto;width:100%;padding:10px 15px;background:#000;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:background .3s;font-size:.95rem}.btn-panier:hover{background:#333}.loading{text-align:center;font-size:1.2rem;margin-top:50px}@media(max-width:480px){.produits-grid{flex-direction:column;align-items:center}}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f0f2f5;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.login-container{background:#fff;padding:40px 50px;border-radius:12px;box-shadow:0 6px 25px #00000026;width:100%;max-width:400px;text-align:center}.login-container h1{margin-bottom:25px;color:#111;font-size:26px}.login-container form{display:flex;flex-direction:column;gap:15px}.login-container input{padding:12px 15px;border:1px solid #ccc;border-radius:8px;font-size:16px;outline:none;transition:border .2s}.login-container input:focus{border-color:#0077b6}.login-container button{padding:12px 15px;border:none;border-radius:8px;background:#0077b6;color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:background .2s}.login-container button:hover{background:#005f87}.login-container .error{color:#e10600;font-size:14px;margin-top:-10px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;min-height:100vh;background-color:#f5f5f5;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.cart-page{padding:40px;max-width:1200px;width:100%;margin:0 auto;background:#fff;box-sizing:border-box;min-height:calc(100vh - 120px)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
