/* Global theme for all pages except the PDV Professional (scoped to body.app) */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

body.app {
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
  background-color: #f5f7fb;
  color: #1f2937;
}

/* Navbar */
body.app .navbar.bg-dark {
  background: linear-gradient(90deg, #0d1117 0%, #111827 100%) !important;
  box-shadow: 0 10px 30px -10px rgba(2, 6, 23, 0.5);
}
body.app .navbar .navbar-brand {
  font-weight: 700;
  letter-spacing: .2px;
}
body.app .navbar .nav-link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
}
body.app .dropdown-menu {
  border-radius: .75rem;
  border: 1px solid rgba(0,0,0,.05);
  box-shadow: 0 24px 48px rgba(2, 6, 23, 0.1);
}

/* Main spacing */
body.app main.container-fluid {
  max-width: 1400px;
  padding: 2rem 1.5rem;
}

/* Headings */
body.app h1, body.app .h1,
body.app h2, body.app .h2,
body.app h3, body.app .h3 {
  color: #0f172a;
  letter-spacing: 0.2px;
}

/* Cards */
body.app .card {
  border: 0;
  border-radius: 1rem;
  box-shadow: 0 8px 24px rgba(2, 6, 23, 0.06);
}
body.app .card > .card-header {
  background: #ffffff;
  border-bottom: 1px solid #eef2f7;
  padding: 1rem 1.25rem;
}
body.app .card > .card-body {
  padding: 1.25rem 1.25rem;
}

/* Tables */
body.app .table {
  border-collapse: separate;
  border-spacing: 0;
}
body.app .table thead th {
  background: #0ea5e9;
  color: #ffffff;
  border: 0 !important;
  vertical-align: middle;
}
body.app .table tbody tr {
  --row-bg: #ffffff;
  background: var(--row-bg);
}
body.app .table tbody tr:nth-child(even) {
  --row-bg: #f9fbfd;
}
body.app .table-hover tbody tr:hover {
  --row-bg: #eff6ff;
}
body.app .table td, body.app .table th {
  padding: .9rem .9rem;
  vertical-align: middle;
}
body.app .table .badge {
  font-weight: 600;
  padding: .5rem .6rem;
  border-radius: .5rem;
}

/* Forms */
body.app .form-label { font-weight: 600; color: #334155; }
body.app .form-control, body.app .form-select {
  border-radius: .6rem;
  border-color: #e5e7eb;
}
body.app .form-control:focus, body.app .form-select:focus {
  border-color: #38bdf8;
  box-shadow: 0 0 0 .25rem rgba(56, 189, 248, .25);
}

/* Buttons */
body.app .btn-primary {
  background: linear-gradient(180deg, #0ea5e9 0%, #0284c7 100%);
  border: 0;
}
body.app .btn-primary:hover { filter: brightness(0.95); }
body.app .btn-outline-danger { border-width: 2px; }

/* Pagination */
body.app .pagination .page-link {
  border: 0;
  color: #0f172a;
}
body.app .pagination .page-item.active .page-link {
  background: #0ea5e9;
  color: #fff;
  box-shadow: 0 8px 24px rgba(14,165,233,.35);
}

/* Modals */
body.app .modal-content {
  border: 0;
  border-radius: 1rem;
  box-shadow: 0 24px 64px rgba(2, 6, 23, 0.18);
}
body.app .modal-header { border-bottom: 1px solid #eef2f7; }
body.app .modal-footer { border-top: 1px solid #eef2f7; }

/* Utilities */
body.app .page-title {
  display: flex;
  align-items: center;
  gap: .75rem;
}
body.app .page-title .icon {
  display: inline-grid;
  place-items: center;
  width: 36px; height: 36px;
  border-radius: .75rem;
  background: #e0f2fe;
  color: #0369a1;
}

/* Tables within cards: rounded corners */
body.app .card .table-responsive {
  border-radius: .75rem;
  overflow: hidden;
}

/* Alerts */
body.app .alert {
  border: 0;
  border-radius: .8rem;
}

/* Make dropdowns nicer */
body.app .dropdown-item {
  padding: .6rem 1rem;
  border-radius: .5rem;
}
body.app .dropdown-item:hover {
  background: #eff6ff;
}
