.admin-main{
  max-width:1000px;
  margin:0 auto;
  padding:50px 32px 90px;
}
.admin-main .section-head{text-align:left;margin-bottom:24px;}

.admin-user{font-size:.8rem;color:var(--text-dim);margin-right:6px;}

.admin-msg{
  min-height:1.2em;
  font-size:.85rem;
  color:var(--gold);
  margin:0 0 18px;
}
.admin-msg.is-error{color:#d9694f;}

.admin-form{
  display:grid;
  grid-template-columns:2fr 1.2fr 1fr .7fr 1.4fr auto;
  gap:10px;
  margin-bottom:32px;
  align-items:end;
}
.admin-file-field{
  display:flex;
  flex-direction:column;
  gap:4px;
  font-size:.72rem;
  color:var(--text-dim);
}
.admin-file-field input{
  border:1px solid var(--border);
  background:var(--surface);
  color:var(--text);
  border-radius:10px;
  padding:8px 10px;
  font-size:.78rem;
  font-family:var(--font-body);
}
.admin-thumb{
  width:44px;height:44px;
  border-radius:8px;
  object-fit:cover;
  background:var(--bg-soft);
  display:block;
}
.admin-thumb-placeholder{
  width:44px;height:44px;
  border-radius:8px;
  background:var(--bg-soft);
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;
}
.admin-form input,
.admin-form select{
  border:1px solid var(--border);
  background:var(--surface);
  color:var(--text);
  border-radius:10px;
  padding:10px 12px;
  font-size:.88rem;
  font-family:var(--font-body);
  outline:none;
}
.admin-form input:focus,
.admin-form select:focus{border-color:var(--gold-dim);box-shadow:0 0 0 3px var(--gold-dim);}
.admin-form button{
  border:none;
  background:var(--gold);
  color:#1b1a16;
  font-weight:700;
  border-radius:10px;
  padding:0 18px;
  transition:background .2s ease;
}
.admin-form button:hover{background:var(--gold-soft);}

.admin-table{
  width:100%;
  border-collapse:collapse;
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:14px;
  overflow:hidden;
}
.admin-table th, .admin-table td{
  text-align:left;
  padding:12px 14px;
  border-bottom:1px solid var(--border);
  font-size:.86rem;
}
.admin-table th{
  font-family:var(--font-mono);
  font-size:.68rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--text-dim);
}
.admin-table tr:last-child td{border-bottom:none;}
.admin-table input, .admin-table select{
  width:100%;
  border:1px solid transparent;
  background:transparent;
  color:var(--text);
  font-size:.85rem;
  font-family:var(--font-body);
  border-radius:6px;
  padding:5px 6px;
}
.admin-table input:focus, .admin-table select:focus{
  border-color:var(--gold-dim);
  background:var(--bg-soft);
  outline:none;
}
.row-actions{display:flex;gap:6px;white-space:nowrap;}
.row-actions button{
  border:1px solid var(--border);
  background:transparent;
  color:var(--text-dim);
  font-size:.76rem;
  padding:5px 10px;
  border-radius:7px;
  transition:all .2s ease;
}
.row-actions button:hover{border-color:var(--gold-dim);color:var(--text);}
.row-actions button.danger:hover{border-color:#d9694f;color:#d9694f;}

@media (max-width:720px){
  .admin-form{grid-template-columns:1fr 1fr;}
  .admin-form button, .admin-file-field{grid-column:1 / -1;}
  .admin-table{display:block;overflow-x:auto;}
}
/* =========================================================
   FORMULAIRE PRODUIT (ajout + édition) — nouvelle version détaillée
========================================================= */
.product-form{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:16px;
  padding:24px;
  margin-bottom:24px;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.pf-row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;}
.pf-field{display:flex;flex-direction:column;gap:6px;font-size:.76rem;color:var(--text-dim);}
.pf-field input,
.pf-field select,
.pf-field textarea{
  border:1px solid var(--border);
  background:var(--bg-soft);
  color:var(--text);
  border-radius:10px;
  padding:10px 12px;
  font-size:.88rem;
  font-family:var(--font-body);
  outline:none;
  resize:vertical;
}
.pf-field input:focus,
.pf-field select:focus,
.pf-field textarea:focus{border-color:var(--gold-dim);box-shadow:0 0 0 3px var(--gold-dim);}

.pf-group-label{font-size:.76rem;color:var(--text-dim);font-weight:600;margin-bottom:2px;}
.pf-hint{font-size:.7rem;color:var(--text-dim);opacity:.8;}

/* checkboxes de tags (catégories + statuts) */
.tag-check-group{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.tag-check-group:first-of-type{margin-top:10px;}
.tag-check{
  display:inline-flex;align-items:center;gap:6px;
  border:1px solid var(--border);
  background:var(--bg-soft);
  border-radius:999px;
  padding:6px 12px 6px 10px;
  font-size:.78rem;
  cursor:pointer;
  transition:border-color .2s ease, background .2s ease;
}
.tag-check input{accent-color:var(--gold);cursor:pointer;}
.tag-check:has(input:checked){border-color:var(--gold-dim);background:var(--gold-dim);}
.tag-check.tag-check--status:has(input:checked){border-color:var(--gold);}

/* éditeur de couleurs */
.chip-input-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.chip-input-row input[type="text"]{
  border:1px solid var(--border);background:var(--bg-soft);color:var(--text);
  border-radius:8px;padding:7px 10px;font-size:.82rem;flex:1;min-width:120px;
}
.chip-input-row input[type="color"]{
  width:36px;height:32px;border:1px solid var(--border);border-radius:8px;
  background:transparent;padding:2px;cursor:pointer;
}
.chip-input-row button{
  border:1px solid var(--gold-dim);background:transparent;color:var(--gold);
  padding:7px 14px;border-radius:8px;font-size:.8rem;font-weight:600;
}
.chip-input-row button:hover{background:var(--gold);color:#1b1a16;}

.chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;min-height:1px;}
.chip{
  display:flex;align-items:center;gap:6px;
  border:1px solid var(--border);
  background:var(--bg-soft);
  border-radius:999px;
  padding:5px 6px 5px 10px;
  font-size:.78rem;
}
.chip-swatch{width:14px;height:14px;border-radius:50%;flex-shrink:0;border:1px solid var(--border);}
.chip button{
  border:none;background:transparent;color:var(--text-dim);
  width:18px;height:18px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;font-size:.7rem;
}
.chip button:hover{background:var(--surface);color:#d9694f;}

/* éditeur d'images multiples */
.image-upload-field{display:flex;flex-direction:column;gap:10px;}
.image-thumb-grid{display:flex;flex-wrap:wrap;gap:10px;}
.image-thumb{
  position:relative;
  width:74px;height:74px;
  border-radius:10px;
  overflow:hidden;
  background:var(--bg-soft);
  border:1px solid var(--border);
}
.image-thumb img{width:100%;height:100%;object-fit:cover;}
.image-thumb .thumb-remove{
  position:absolute;top:3px;right:3px;
  width:20px;height:20px;border-radius:50%;
  background:rgba(0,0,0,.6);color:#fff;border:none;
  font-size:.7rem;display:flex;align-items:center;justify-content:center;
}
.image-thumb .thumb-remove:hover{background:#d9694f;}
.image-upload-field input[type="file"]{
  border:1px dashed var(--border);
  background:var(--bg-soft);
  color:var(--text-dim);
  border-radius:10px;
  padding:10px 12px;
  font-size:.78rem;
}

.pf-submit-row{display:flex;justify-content:flex-end;gap:10px;}
.pf-submit-row button{
  border:none;background:var(--gold);color:#1b1a16;font-weight:700;
  border-radius:10px;padding:11px 22px;font-size:.86rem;
  transition:background .2s ease;
}
.pf-submit-row button:hover{background:var(--gold-soft);}
.pf-submit-row button.pf-cancel{
  background:transparent;border:1px solid var(--border);color:var(--text-dim);font-weight:600;
}
.pf-submit-row button.pf-cancel:hover{border-color:var(--gold-dim);color:var(--text);}

/* =========================================================
   LISTE PRODUITS ADMIN — cartes détaillées
========================================================= */
.admin-grid{display:flex;flex-direction:column;gap:14px;}
.admin-card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:14px;
  padding:16px 18px;
}
.admin-card-row{display:flex;gap:16px;align-items:flex-start;}
.admin-card-media{
  flex-shrink:0;
  width:76px;height:76px;
  border-radius:10px;
  overflow:hidden;
  background:var(--bg-soft);
  display:flex;align-items:center;justify-content:center;
  font-size:1.8rem;
}
.admin-card-media img{width:100%;height:100%;object-fit:cover;}
.admin-card-body{flex:1;min-width:0;}
.admin-card-top{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap;}
.admin-card-name{font-size:1rem;font-weight:600;margin:0;}
.admin-card-price{font-family:var(--font-mono);color:var(--gold);font-size:.9rem;}
.admin-card-cat{font-family:var(--font-mono);font-size:.68rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;margin:3px 0 6px;}
.admin-card-desc{font-size:.8rem;color:var(--text-dim);margin:0 0 8px;line-height:1.5;}
.admin-card-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:.76rem;color:var(--text-dim);}
.admin-card-meta .mini-swatches{display:flex;gap:4px;}
.admin-card-meta .mini-swatch{width:14px;height:14px;border-radius:50%;border:1px solid var(--border);}
.admin-card-meta .meta-danger{color:#d9694f;font-weight:600;}
.admin-card-oldprice{color:var(--text-dim);text-decoration:line-through;font-weight:400;opacity:.75;}
.chip--spec{border-radius:8px;padding:5px 8px;}
.chip--spec strong{font-weight:600;color:var(--text);}
.admin-card-actions{display:flex;gap:8px;flex-shrink:0;}
.admin-card-actions button{
  border:1px solid var(--border);background:transparent;color:var(--text-dim);
  font-size:.76rem;padding:7px 12px;border-radius:8px;transition:all .2s ease;
}
.admin-card-actions button:hover{border-color:var(--gold-dim);color:var(--text);}
.admin-card-actions button.danger:hover{border-color:#d9694f;color:#d9694f;}
.admin-card-edit{margin-top:16px;padding-top:16px;border-top:1px solid var(--border);}

@media (max-width:640px){
  .pf-row{grid-template-columns:1fr;}
  .admin-card-row{flex-wrap:wrap;}
  .admin-card-actions{width:100%;}
}
/* =========================================================
   COMMANDES ADMIN
========================================================= */
.orders-section{margin-top:48px;padding-top:32px;border-top:1px solid var(--border);}
.orders-filter{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 20px;}
.orders-list{display:flex;flex-direction:column;gap:14px;}

.order-card{
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:14px;
  padding:16px 18px;
}
.order-card-head{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  flex-wrap:wrap;
  padding-bottom:12px;margin-bottom:12px;
  border-bottom:1px solid var(--border);
}
.order-id{font-size:.9rem;font-weight:600;color:var(--text);}
.order-date{font-size:.74rem;color:var(--text-dim);margin-left:10px;}
.order-status{
  font-size:.72rem;font-weight:600;
  padding:4px 10px;border-radius:999px;
  border:1px solid var(--border);white-space:nowrap;
}
.order-status.st-wait{color:#c9902b;border-color:rgba(201,144,43,.5);background:rgba(201,144,43,.08);}
.order-status.st-paid{color:#5ca86a;border-color:rgba(92,168,106,.5);background:rgba(92,168,106,.08);}
.order-status.st-prep{color:#c9a24b;border-color:rgba(201,162,75,.5);background:rgba(201,162,75,.08);}
.order-status.st-ship{color:#3b82c4;border-color:rgba(59,130,196,.5);background:rgba(59,130,196,.08);}
.order-status.st-done{color:#4fae7a;border-color:rgba(79,174,122,.6);background:rgba(79,174,122,.12);}
.order-status.st-cancel{color:#d9694f;border-color:rgba(217,105,79,.5);background:rgba(217,105,79,.08);}

/* Zone suivi colis (admin) */
.order-tracking{
  margin-top:14px;padding-top:14px;
  border-top:1px dashed var(--border);
}
.order-tracking-label{font-size:.76rem;color:var(--text-dim);font-weight:600;margin:0 0 8px;}
.order-tracking-row{display:flex;gap:8px;flex-wrap:wrap;}
.order-tracking-row input{
  flex:1;min-width:150px;
  border:1px solid var(--border);background:var(--bg-soft);color:var(--text);
  border-radius:8px;padding:8px 10px;font-size:.82rem;font-family:var(--font-body);outline:none;
}
.order-tracking-row input:focus{border-color:var(--gold-dim);box-shadow:0 0 0 3px var(--gold-dim);}

.order-card-body{display:flex;flex-direction:column;gap:7px;}
.order-line{display:flex;gap:14px;font-size:.82rem;color:var(--text);}
.order-line > span:first-child{
  flex-shrink:0;width:88px;color:var(--text-dim);font-size:.76rem;
  text-transform:uppercase;letter-spacing:.04em;padding-top:1px;
}
.order-total{color:var(--gold);font-family:var(--font-mono);}

.order-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}
.order-btn{
  border:1px solid var(--border);background:transparent;color:var(--text-dim);
  font-size:.78rem;font-weight:600;padding:8px 14px;border-radius:9px;
  cursor:pointer;transition:all .2s ease;
}
.order-btn--primary{border-color:var(--gold-dim);color:var(--gold);}
.order-btn--primary:hover{background:var(--gold);border-color:var(--gold);color:#1b1a16;}
.order-btn--cancel:hover{border-color:#d9694f;color:#d9694f;}

@media (max-width:640px){
  .order-line{flex-direction:column;gap:2px;}
  .order-line > span:first-child{width:auto;}
}

/* Recherche produits + référence */
.admin-search-row{display:flex;align-items:center;gap:14px;margin-bottom:16px;}
.admin-search-row input[type="search"]{
  flex:1;
  border:1px solid var(--border);
  background:var(--bg-soft);
  color:var(--text);
  border-radius:10px;
  padding:11px 14px;
  font-size:.88rem;
  font-family:var(--font-body);
  outline:none;
}
.admin-search-row input[type="search"]:focus{border-color:var(--gold-dim);box-shadow:0 0 0 3px var(--gold-dim);}
.admin-search-count{font-size:.78rem;color:var(--text-dim);white-space:nowrap;}
.admin-card-ref{font-family:var(--font-mono);color:var(--gold);}
