html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-select:focus, .form-check-input:focus {
  border-color: #f58220;
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem rgba(245, 130, 32, .35);
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
  background: #f5f4f2;
  color: #242424;
}

.app-navbar { background: linear-gradient(110deg, #111, #282828); border-bottom: 4px solid #f58220; box-shadow: 0 5px 18px rgba(0,0,0,.22); }
.app-navbar .nav-link { color: rgba(255,255,255,.78); }
.app-navbar .nav-link:hover, .app-navbar .nav-link:focus { color: #f58220; }
.brand-mark { display:inline-grid; place-items:center; width:35px; height:35px; margin-right:.45rem; border-radius:8px; background:#f58220; color:#111; font-size:.88rem; }
.app-container { padding-top: 2rem; }
.page-title { color:#171717; font-weight: 750; letter-spacing: -.025em; }
.surface { background:#fff; border:1px solid #e4e1dd; border-radius:14px; box-shadow:0 8px 28px rgba(0,0,0,.07); }
.filter-card, .form-card { padding:1.35rem; }
.table-card { overflow:hidden; }
.table-card .table { margin-bottom:0; }
.table-card thead th { background:#242424; color:#fff; border:0; border-bottom:3px solid #f58220; font-size:.78rem; text-transform:uppercase; letter-spacing:.045em; padding:1rem; }
.table-card tbody td { padding:1rem; vertical-align:middle; border-color:#edf0f5; }
.type-badge { border-radius:999px; padding:.38rem .65rem; font-weight:650; font-size:.78rem; }
.type-1 { background:#ffe3cc; color:#8a3900; }
.type-2 { background:#fff0d9; color:#7a4300; }
.type-3 { background:#e5e5e5; color:#333; }
.delivery-chip { display:inline-flex; align-items:center; gap:.35rem; color:#475569; font-size:.86rem; }
.delivery-chip::before { content:""; width:8px; height:8px; border-radius:50%; background:#f58220; }
.empty-state { padding:4rem 1rem; text-align:center; color:#64748b; }
.summary-card { border-left:4px solid #f58220; }
.form-label { font-weight:600; color:#334155; }
.field-hint { color:#64748b; font-size:.82rem; }
.btn-primary { background:#f58220; border-color:#f58220; color:#111; font-weight:650; }
.btn-primary:hover, .btn-primary:focus { background:#dc6d0e; border-color:#dc6d0e; color:#111; }
.btn-outline-primary { color:#c95d00; border-color:#f58220; }
.btn-outline-primary:hover, .btn-outline-primary:focus { background:#f58220; border-color:#f58220; color:#111; }
.text-primary { color:#d96400 !important; }
.alert-primary { color:#6d3300; background:#fff1e5; border-color:#ffc28f; }
a { color:#c95d00; }
a:hover { color:#974600; }
.footer { background:#171717; color:#bbb !important; border-top:3px solid #f58220 !important; }

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}
