:root {
  --navy:#0c2b4a;
  --blue:#145a8d;
  --light:#f3f6f9;
  --border:#d8e0e8;
  --text:#1c2733;
}
* { box-sizing:border-box; }
body { margin:0; font-family:Arial, sans-serif; background:var(--light); color:var(--text); }
header { background:var(--navy); color:white; padding:14px 5%; display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
.brand { font-size:20px; font-weight:800; }
.brand span { font-weight:400; opacity:.8; }
nav a { color:white; text-decoration:none; margin-left:14px; }
main { width:min(1100px, 92%); margin:24px auto 60px; }
h1 { margin-bottom:16px; }
.panel, .login-card { background:white; border:1px solid var(--border); border-radius:14px; padding:20px; box-shadow:0 5px 18px rgba(0,0,0,.04); }
.login-card { max-width:440px; margin:80px auto; }
label { display:block; font-weight:700; margin:14px 0 6px; }
input, select, textarea { width:100%; padding:12px; border:1px solid var(--border); border-radius:9px; font:inherit; }
textarea { resize:vertical; }
button, .button { display:inline-block; border:0; background:var(--blue); color:white; padding:12px 18px; border-radius:9px; text-decoration:none; font-weight:700; cursor:pointer; margin-top:14px; }
.secondary { background:#68798a; }
.flash { padding:12px; border-radius:8px; margin-bottom:14px; background:#e7f4ea; }
.flash.danger { background:#fde9e9; }
.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:20px; }
.stats div { background:white; padding:18px; border-radius:12px; border:1px solid var(--border); }
.stats strong { display:block; font-size:30px; }
.stats span { color:#65717d; }
.job-list { display:grid; gap:12px; }
.job-card { background:white; border:1px solid var(--border); padding:16px; border-radius:12px; text-decoration:none; color:inherit; display:flex; justify-content:space-between; align-items:flex-start; gap:12px; }
.job-card h3 { margin:6px 0; }
.status { padding:6px 10px; border-radius:999px; background:#e8eef4; white-space:nowrap; font-size:13px; }
.status.completed { background:#dff4e4; }
.status.in-progress { background:#fff1cc; }
.status.follow-up-required { background:#fde0e0; }
.two-col { display:grid; grid-template-columns:1fr 1.3fr; gap:20px; }
.two-col-simple { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.customer-row { border-bottom:1px solid var(--border); padding:12px 0; display:grid; gap:3px; }
.detail-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:18px; }
.detail-grid div { display:grid; gap:4px; }
.detail-grid span { color:#4d5b68; }
canvas { width:100%; height:180px; border:2px dashed #a9b5c1; border-radius:10px; background:white; touch-action:none; }
.muted { color:#6a7580; font-size:14px; }
@media (max-width:760px) {
  .stats { grid-template-columns:1fr 1fr; }
  .two-col, .two-col-simple, .detail-grid { grid-template-columns:1fr; }
  header { align-items:flex-start; }
  nav a { margin-left:0; margin-right:12px; }
}

.staff-row { border-bottom:1px solid var(--border); padding:14px 0; display:grid; gap:12px; }
.staff-row > div:first-child { display:grid; gap:3px; }
.staff-actions { display:grid; grid-template-columns:auto 1fr; gap:10px; align-items:end; }
.staff-actions form { display:flex; gap:8px; align-items:end; }
.staff-actions button { margin-top:0; }
@media (max-width:760px) {
  .staff-actions { grid-template-columns:1fr; }
  .staff-actions form { display:grid; }
}

.check-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:8px; margin:8px 0 16px; }
.check-item { display:flex; align-items:center; gap:9px; border:1px solid var(--border); border-radius:9px; padding:10px; margin:0; background:#fff; }
.check-item input { width:auto; margin:0; }
@media (max-width:600px){ .check-grid { grid-template-columns:1fr; } }

.whatsapp { background:#217a48; }
.photo-preview { display:none; width:100%; max-height:240px; object-fit:contain; margin-top:10px; border:1px solid var(--border); border-radius:10px; background:#f8fafc; }
.verify-card { max-width:760px; margin:30px auto; background:white; padding:26px; border:1px solid var(--border); border-radius:16px; box-shadow:0 6px 22px rgba(0,0,0,.06); }
.verify-badge { display:inline-block; background:#dff4e4; color:#176b36; font-weight:800; padding:8px 12px; border-radius:999px; margin-bottom:10px; }
button:disabled { opacity:.6; cursor:not-allowed; }

.email { background:#7b4b8e; }
.inventory-row { border-bottom:1px solid var(--border); padding:14px 0; display:grid; grid-template-columns:1fr 1.4fr; gap:14px; align-items:end; }
.inventory-row > div { display:grid; gap:4px; }
.inventory-row form { display:grid; grid-template-columns:1fr .7fr 1.2fr auto; gap:8px; align-items:end; }
.inventory-row button { margin-top:0; }
.low-stock { background:#fff5f5; padding-left:10px; padding-right:10px; border-radius:8px; }
.low-stock small { color:#a52727; font-weight:700; }
.movement-panel { margin-top:20px; }
.movement-row { display:grid; grid-template-columns:1fr .8fr 1.5fr 1fr; gap:12px; padding:10px 0; border-bottom:1px solid var(--border); }
@media (max-width:760px){
  .inventory-row { grid-template-columns:1fr; }
  .inventory-row form { grid-template-columns:1fr; }
  .movement-row { grid-template-columns:1fr; gap:3px; }
}

.site-footer {
  width:min(1100px, 92%);
  margin:0 auto 24px;
  padding:16px 0;
  color:#66727e;
  font-size:12px;
  text-align:center;
  border-top:1px solid var(--border);
  line-height:1.5;
}
