body {
  background: #f5f7fb;
  font-family: Arial, sans-serif;
}

.app-header {
  background: linear-gradient(135deg, #003c8f, #e4005a);
  color: white;
  padding: 24px;
  margin-bottom: 24px;
  border-radius: 0 0 24px 24px;
  box-shadow: 0 8px 22px rgba(0,0,0,0.15);
}

.app-header h3 {
  margin: 0;
  font-weight: 700;
}

.app-header p {
  margin: 4px 0 0;
  opacity: 0.9;
}

.card {
  border: none !important;
  border-radius: 18px !important;
  box-shadow: 0 8px 22px rgba(0,0,0,0.08);
}

.section-title {
  color: white;
  padding: 10px 14px;
  font-weight: 700;
  border-radius: 12px;
  margin-bottom: 14px;
}

.bg-main {
  background: #1155cc;
}

.bg-agent {
  background: #e4005a;
}

.bg-submission {
  background: #3c84e6;
}

.bg-case {
  background: #7e6bb8;
}

.bg-issued {
  background: #d9706b;
}

.bg-pending {
  background: #f39c12;
}

label {
  font-size: 13px;
  font-weight: 600;
}

.form-control,
.form-select {
  border-radius: 10px !important;
  font-size: 14px !important;
}

.btn {
  border-radius: 10px !important;
  font-weight: 600 !important;
}

.search-box {
  max-width: 320px;
}

.table-responsive {
  max-height: 520px;
  overflow: auto;
}

table {
  font-size: 13px;
  white-space: nowrap;
}

thead th {
  position: sticky;
  top: 0;
  z-index: 3;
  background: #1f2937 !important;
  color: white !important;
  text-align: center;
  vertical-align: middle;
}

td {
  vertical-align: middle;
}