/* Tableau de bord — compléments à style.css */
.admin-nav .nav-titre { font-size: 10px; padding: 14px 20px 4px; color: #64748b; letter-spacing: 2px; }
.admin-nav .nav-btn { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 20px; background: none; border: none;
    border-left: 3px solid transparent; color: #f87171; font-size: 13.5px; text-align: left; cursor: pointer; }
.admin-nav .nav-btn i { font-size: 15px; width: 18px; text-align: center; }
.admin-nav .nav-btn:hover { background: rgba(255,255,255,.04); }

.kpi { background: #fff; border: 1px solid var(--border); border-radius: 14px; padding: 18px; height: 100%; }
.kpi .valeur { font-size: 1.7rem; font-weight: 800; line-height: 1.1; }
.kpi .libelle { font-size: 12px; color: #64748b; }

.etape { display: flex; align-items: center; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--border); font-size: 14px; }
.etape:last-child { border-bottom: none; }
.etape .bi-check-circle-fill { color: #16a34a; }
.etape .bi-circle { color: #cbd5e1; }

.vignette { width: 52px; height: 52px; object-fit: cover; border-radius: 8px; background: #f1f5f9; }
.photo-produit { position: relative; width: 110px; }
.photo-produit img { width: 110px; height: 110px; object-fit: cover; border-radius: 10px; border: 2px solid var(--border); }
.photo-produit.principale img { border-color: var(--gold); }
.photo-produit .actions { display: flex; gap: 4px; margin-top: 6px; }
.photo-produit .actions form { flex: 1; }
.photo-produit .actions button { width: 100%; padding: 3px 0; font-size: 12px; }

.choix-icone { display: flex; flex-wrap: wrap; gap: 6px; }
.choix-icone input { display: none; }
.choix-icone label { width: 38px; height: 38px; border: 1.5px solid var(--border); border-radius: 8px; display: flex; align-items: center;
    justify-content: center; cursor: pointer; font-size: 1.1rem; }
.choix-icone input:checked + label { border-color: var(--dark); background: var(--dark); color: #fff; }

.commande-ciblee { animation: cible 2.5s ease 2; }
@keyframes cible { 50% { background: #fde68a; } }

.page-auth { min-height: 100vh; display: flex; align-items: center; background: #f5f5f3; padding: 24px 0; }
.adresse-boutique { display: flex; align-items: stretch; }
.adresse-boutique input { border-top-right-radius: 0; border-bottom-right-radius: 0; text-align: right; }
.adresse-boutique .suffixe { display: flex; align-items: center; padding: 0 10px; background: #f1f5f9; border: 1px solid #dee2e6;
    border-left: none; border-radius: 0 6px 6px 0; font-size: 13px; color: #475569; white-space: nowrap; }
@media (max-width: 480px) { .adresse-boutique .suffixe { font-size: 11px; padding: 0 6px; } }
