/* =========================================================
   Back-office Sucré Salé 92
   ========================================================= */
.admin-body{background:var(--bg);min-height:100vh}

/* ---------- Connexion ---------- */
.login{min-height:100vh;display:grid;place-items:center;padding:2rem 1.2rem;position:relative;overflow:hidden}
.login-box{
  position:relative;z-index:2;width:min(400px,100%);padding:2.4rem 2rem;text-align:center;
  border:1px solid var(--line);border-radius:var(--radius);
  background:linear-gradient(165deg,rgba(255,255,255,.08),rgba(255,255,255,.02));
  backdrop-filter:blur(18px);box-shadow:var(--shadow);
}
.login-box h1{font-size:1.6rem;margin:1rem 0 .4rem}
.login-box p{color:var(--muted);font-size:.92rem;margin-bottom:1.6rem}
.login-box .field{text-align:left}
.login-back{display:inline-block;margin-top:1.2rem;color:var(--muted);font-size:.85rem}
.login-back:hover{color:var(--pink-2)}

/* ---------- En-tête ---------- */
.dash{padding:1.4rem clamp(1rem,3.5vw,2.4rem) 4rem;max-width:1500px;margin-inline:auto}
.dash-head{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  padding-bottom:1.2rem;border-bottom:1px solid var(--line);margin-bottom:1.6rem;
}
.dash-brand{display:flex;align-items:baseline;gap:.4rem;font-size:1.35rem}
.dash-brand em{
  font-style:normal;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);
  border:1px solid var(--line);padding:.2rem .6rem;border-radius:999px;margin-left:.5rem;
}
.dash-tools{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}
.sound-toggle{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--muted);cursor:pointer}
.live{font-size:.78rem;color:#63e6a0;letter-spacing:.05em}
.live.pulse{animation:blink 1s ease}
@keyframes blink{50%{opacity:.25}}

/* ---------- Statistiques ---------- */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.6rem}
.stat{
  padding:1.2rem 1.3rem;border-radius:var(--radius-sm);border:1px solid var(--line);
  background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));
}
.stat b{display:block;font-size:2rem;font-weight:900;line-height:1.1}
.stat span{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.stat.hot{border-color:rgba(245,121,155,.5);background:linear-gradient(160deg,rgba(245,121,155,.18),rgba(245,121,155,.04))}
.stat.hot b{color:var(--pink-2)}

/* ---------- Filtres ---------- */
.filters{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.4rem}
.chips-filter{display:flex;gap:.5rem;flex-wrap:wrap}
.fchip{
  border:1px solid var(--line);background:var(--card);color:var(--muted);border-radius:999px;
  padding:.5rem 1rem;font-size:.87rem;cursor:pointer;transition:all .25s var(--ease);
}
.fchip b{margin-left:.4rem;font-size:.78rem;opacity:.8}
.fchip:hover{color:#fff;border-color:rgba(245,121,155,.5)}
.fchip.on{background:var(--pink);border-color:transparent;color:#fff;font-weight:700}
.filters-right{display:flex;gap:.6rem;flex-wrap:wrap}
.mini-select,.mini-search{
  padding:.55rem .9rem;border-radius:999px;border:1px solid var(--line);
  background:rgba(0,0,0,.35);font-size:.88rem;min-width:170px;
}
.mini-select:focus,.mini-search:focus{outline:none;border-color:var(--pink)}
.mini-select option{background:#12080c}

/* ---------- Liste des commandes ---------- */
.orders{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1rem}
.order{
  position:relative;padding:1.2rem 1.3rem;border-radius:var(--radius-sm);cursor:pointer;
  border:1px solid var(--line);background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(255,255,255,.015));
  transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;
  animation:cardIn .45s var(--ease) both;
}
@keyframes cardIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.order:hover{transform:translateY(-4px);border-color:rgba(245,121,155,.5);box-shadow:0 22px 50px -26px rgba(245,121,155,.8)}
.order.neuve{border-color:rgba(245,121,155,.65)}
.order.neuve::before{
  content:'';position:absolute;top:.9rem;right:.9rem;width:9px;height:9px;border-radius:50%;
  background:var(--pink);box-shadow:0 0 0 0 rgba(245,121,155,.7);animation:ping 1.8s infinite;
}
@keyframes ping{70%{box-shadow:0 0 0 12px rgba(245,121,155,0)}100%{box-shadow:0 0 0 0 rgba(245,121,155,0)}}
.order-top{display:flex;align-items:center;gap:.6rem;margin-bottom:.7rem;flex-wrap:wrap}
.ref{font-family:ui-monospace,Menlo,monospace;font-size:.78rem;color:var(--muted);letter-spacing:.04em}
.badge{
  font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;
  padding:.22rem .65rem;border-radius:999px;border:1px solid transparent;white-space:nowrap;
}
.badge.nouvelle{background:rgba(245,121,155,.2);color:#f9a8bf;border-color:rgba(245,121,155,.45)}
.badge.en_preparation{background:rgba(255,177,66,.18);color:#ffc46b;border-color:rgba(255,177,66,.4)}
.badge.en_livraison{background:rgba(96,150,255,.18);color:#8fb4ff;border-color:rgba(96,150,255,.4)}
.badge.terminee{background:rgba(60,220,150,.16);color:#63e6a0;border-color:rgba(60,220,150,.38)}
.badge.annulee{background:rgba(255,255,255,.07);color:#9a8a90;border-color:var(--line)}
.badge.type{background:rgba(142,47,74,.18);color:#f2b7c7;border-color:rgba(142,47,74,.4)}
.order h3{font-size:1.12rem;margin-bottom:.25rem}
.order .meta{font-size:.85rem;color:var(--muted);display:flex;flex-direction:column;gap:.18rem;margin-bottom:.9rem}
.order .meta b{color:#e8dade;font-weight:600}
.order-foot{display:flex;align-items:center;justify-content:space-between;padding-top:.8rem;border-top:1px dashed var(--line)}
.order-foot .montant{font-size:1.45rem;font-weight:900}
.order-foot .quand{font-size:.76rem;color:var(--muted)}
.empty-state{text-align:center;color:var(--muted);padding:4rem 1rem;font-style:italic}

/* ---------- Fiche détaillée ---------- */
.drawer{
  position:fixed;inset:0;z-index:130;background:rgba(0,0,0,.7);backdrop-filter:blur(6px);
  opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s;
}
.drawer.open{opacity:1;visibility:visible}
.drawer-panel{
  position:absolute;top:0;right:0;bottom:0;width:min(480px,100%);overflow:auto;
  background:#0f070a;border-left:1px solid var(--line);padding:2rem 1.7rem 3rem;
  transform:translateX(100%);transition:transform .45s var(--ease);
}
.drawer.open .drawer-panel{transform:none}
.drawer-close{position:absolute;top:.8rem;right:1.1rem;background:none;border:0;font-size:2rem;color:var(--muted);cursor:pointer;line-height:1}
.drawer-close:hover{color:var(--pink)}
.dr-ref{font-family:ui-monospace,Menlo,monospace;font-size:.8rem;color:var(--muted)}
.drawer h2{font-size:1.7rem;margin:.3rem 0 1rem}
.dr-block{border:1px solid var(--line);border-radius:var(--radius-sm);padding:1.1rem;margin-bottom:1rem;background:rgba(0,0,0,.25)}
.dr-block h4{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pink-2);margin-bottom:.8rem}
.dr-row{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;padding:.3rem 0}
.dr-row span:first-child{color:var(--muted)}
.dr-row span:last-child{text-align:right;font-weight:500}
.dr-row a{color:var(--pink-2);text-decoration:underline}
.dr-lignes{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.45rem}
.dr-lignes li{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem}
.dr-lignes small{display:block;color:var(--muted);font-size:.76rem}
.dr-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:.9rem;padding-top:.9rem;border-top:1px dashed var(--line)}
.dr-total strong{font-size:1.8rem;font-weight:900}
.dr-note{background:rgba(255,177,66,.1);border-color:rgba(255,177,66,.35)}
.dr-note p{margin:0;font-size:.92rem;color:#ffd9a0}
.statut-row{display:flex;gap:.45rem;flex-wrap:wrap;margin-bottom:1rem}
.statut-row button{
  flex:1 1 auto;padding:.6rem .8rem;border-radius:var(--radius-sm);border:1px solid var(--line);
  background:var(--card);font-size:.85rem;cursor:pointer;transition:all .25s;
}
.statut-row button:hover{border-color:var(--pink);background:var(--pink-soft)}
.statut-row button.on{background:var(--pink);border-color:transparent;color:#fff;font-weight:700}
.dr-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.2rem}
.dr-actions .btn{flex:1}
.btn-danger{background:rgba(255,77,109,.14);border:1px solid rgba(255,77,109,.45);color:#ff8098}
.btn-danger:hover{background:rgba(255,77,109,.26)}
@media (max-width:620px){
  .dash-tools{width:100%;justify-content:space-between}
  .orders{grid-template-columns:1fr}
}

/* Logo dans l'en-tête du back-office */
.logo-ok .dash-brand .brand-logo{width:36px;height:36px}
