body { font-family: system-ui, Arial, sans-serif; margin:0; background:#f6f7fb; color:#222; }
.topbar { display:flex; justify-content:space-between; align-items:center; padding:12px 16px; background:#0b4f6c; color:#fff; }
.topbar a { color:#fff; margin-right:12px; text-decoration:none; }
.container { max-width:980px; margin:24px auto; background:#fff; padding:20px; border-radius:12px; box-shadow:0 6px 20px rgba(0,0,0,.08); }
.grid { display:grid; grid-template-columns: repeat(auto-fit,minmax(260px,1fr)); gap:16px; }
.table { width:100%; border-collapse:collapse; }
.table th, .table td { border-bottom:1px solid #eee; padding:8px; text-align:left; }
.btn { display:inline-block; padding:8px 12px; border-radius:8px; background:#0b4f6c; color:#fff; text-decoration:none; }
.btn.secondary { background:#555; }
.btn.danger { background:#b00020; }
.form-row { margin-bottom:12px; }
label { display:block; margin-bottom:6px; font-weight:600; }
input[type=text], input[type=number], select, textarea { width:100%; padding:10px; border:1px solid #ddd; border-radius:8px; }
.receipt { border:1px solid #abb; padding:16px; border-radius:12px; }
.footer { text-align:center; padding:20px; color:#777; }
@media print {
  nav.topbar, .footer, .noprint { display:none !important; }
  body { background:#fff; }
  .container { box-shadow:none; margin:0; padding:0; }
}
