/* Admin panel — reuses tokens/buttons/forms from styles.css, adds admin-only layout */

.admin-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--paper);}
.admin-topbar{
  height:64px;display:flex;align-items:center;justify-content:space-between;
  padding:0 5%;background:var(--ink);color:var(--white);flex-shrink:0;
}
.admin-topbar .brand svg{height:32px;}
.admin-topbar-right{display:flex;align-items:center;gap:16px;}
.admin-topbar-right span{font-size:13px;color:rgba(255,255,255,.6);}
.admin-main{flex:1;padding:40px 5% 80px;max-width:1100px;margin:0 auto;width:100%;}

.admin-login-wrap{
  min-height:100vh;display:flex;align-items:center;justify-content:center;
  background:var(--ink);padding:20px;
}
.admin-login-card{
  background:var(--white);border-radius:var(--radius-lg);padding:38px 34px;
  width:100%;max-width:380px;border-top:3px solid var(--amber);box-shadow:var(--shadow-lg);
}
.admin-login-card .brand{justify-content:center;margin-bottom:24px;}
.admin-login-card h1{font-size:19px;font-weight:700;margin-bottom:6px;text-align:center;}
.admin-login-card > p{font-size:13px;color:var(--text-muted);text-align:center;margin-bottom:26px;}
.admin-error{
  display:none;background:#FCE8E4;color:#B0301A;border-radius:var(--radius);
  padding:11px 14px;font-size:13px;margin-bottom:16px;
}

.admin-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:30px;flex-wrap:wrap;}
.admin-head h1{font-size:26px;font-weight:700;}
.admin-head p{font-size:13.5px;color:var(--text-muted);margin-top:4px;}

.admin-layout{display:grid;grid-template-columns:1.1fr 1.4fr;gap:28px;align-items:start;}
@media (max-width:900px){.admin-layout{grid-template-columns:1fr;}}

.admin-panel{background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius-lg);padding:26px;}
.admin-panel h2{font-size:16px;font-weight:700;margin-bottom:18px;}

.admin-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.admin-image-preview{
  width:100%;height:150px;border-radius:var(--radius);border:1.5px dashed var(--line);
  background:var(--paper);display:flex;align-items:center;justify-content:center;
  overflow:hidden;margin-bottom:14px;color:var(--text-muted);font-size:12.5px;text-align:center;
}
.admin-image-preview img{width:100%;height:100%;object-fit:cover;}
.admin-form-actions{display:flex;gap:10px;margin-top:6px;}
.admin-form-actions .btn{flex:1;justify-content:center;}

.admin-table-wrap{overflow-x:auto;}
table.admin-table{width:100%;border-collapse:collapse;font-size:13.5px;}
table.admin-table th{
  text-align:left;font-family:var(--font-mono);font-size:10.5px;font-weight:700;
  color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;
  padding:0 10px 10px;border-bottom:1.5px solid var(--line);white-space:nowrap;
}
table.admin-table td{padding:12px 10px;border-bottom:1px solid var(--line-soft);vertical-align:middle;}
table.admin-table tr:last-child td{border-bottom:none;}
.admin-thumb{width:44px;height:44px;border-radius:var(--radius);object-fit:cover;background:var(--paper-2);flex-shrink:0;}
.admin-row-actions{display:flex;gap:8px;}
.admin-row-actions button{
  font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.5px;
  background:none;border:1.5px solid var(--line);border-radius:var(--radius);
  padding:6px 10px;cursor:pointer;color:var(--ink);
}
.admin-row-actions button:hover{border-color:var(--ink);}
.admin-row-actions button.danger{color:#B0301A;border-color:#F0CFC7;}
.admin-row-actions button.danger:hover{border-color:#B0301A;}
.admin-status-pill{
  display:inline-block;font-family:var(--font-mono);font-size:10.5px;font-weight:700;
  padding:3px 9px;border-radius:12px;
}
.admin-status-pill.on{background:var(--amber-light);color:var(--amber-dark);}
.admin-status-pill.off{background:var(--line-soft);color:var(--text-muted);}
.admin-empty{padding:30px 0;text-align:center;color:var(--text-muted);font-size:13.5px;}

.admin-orders-table td.total{font-weight:700;color:var(--ink);}
.order-status{font-family:var(--font-mono);font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:12px;}
.order-status.pending{background:var(--line-soft);color:var(--text-muted);}
.order-status.paid{background:var(--amber-light);color:var(--amber-dark);}
.order-status.in_progress{background:var(--blue-light);color:var(--blue-dark);}
.order-status.dispatched{background:#EDE4FB;color:#6B3FA0;}
.order-status.fulfilled{background:#DFF3E3;color:#1E7A3C;}
.order-status.failed,.order-status.cancelled{background:#FCE8E4;color:#B0301A;}

.order-action-select{
  font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.3px;
  background:var(--white);border:1.5px solid var(--line);border-radius:var(--radius);
  padding:6px 8px;cursor:pointer;color:var(--ink);
}
.order-action-select:hover{border-color:var(--ink);}
.order-action-select:disabled{opacity:.6;cursor:default;}
