body { background: #f6f8fb; }
.card-stats { border: 0; border-radius: 18px; box-shadow: 0 10px 24px rgba(22, 34, 51, .06); }
.table thead th { white-space: nowrap; }
.badge { font-weight: 600; }
.navbar-brand { letter-spacing: .2px; }
.section-title { font-size: 1.1rem; font-weight: 700; margin-bottom: 1rem; }
.qr-label { width: 320px; min-height: 420px; border: 1px dashed #777; padding: 16px; border-radius: 12px; background: #fff; }
.qr-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 16px; }
.scan-box { max-width: 760px; margin: 0 auto; }
video#cameraPreview { width: 100%; max-height: 360px; background: #111; border-radius: 12px; }
.print-hide { display: inline-block; }
@media print {
  .navbar, .print-hide, .btn, .alert, .no-print { display: none !important; }
  body { background: #fff; }
  .container-fluid { padding: 0; }
}


.loan-history-page .btn { border-radius: 12px; }
.loan-mobile-card .card-body { padding: 1rem; }
.loan-meta-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.loan-meta-grid > div { background: #f8fafc; border-radius: 12px; padding: .75rem; }
.qr-display-card { overflow: hidden; }
.qr-preview-wrap { background: linear-gradient(180deg, #fff 0%, #f8fafc 100%); border: 1px solid rgba(15, 23, 42, .08); border-radius: 24px; padding: 1rem; }
.qr-preview-img { width: 100%; max-width: 300px; border-radius: 18px; }
.loan-item-list .list-group-item { background: transparent; }
@media (max-width: 575.98px) {
  .container-fluid { padding-left: .85rem; padding-right: .85rem; }
  .loan-summary-cards .card-body { padding: .9rem !important; }
  .loan-history-page h3 { font-size: 1.25rem; }
  .loan-history-page .card-stats { border-radius: 16px; }
  .loan-meta-grid { grid-template-columns: 1fr; }
  .qr-display-card .card-body { padding: 1rem !important; }
}
@media print {
  .qr-display-card { box-shadow: none !important; border: 1px solid #ddd; }
  .qr-display-card .card-body { padding: 1.5rem !important; }
}


.navbar-brand {
    min-height: 56px;
}
.navbar-logo-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border-radius: 12px;
    padding: 6px 12px;
    box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .08);
}
.navbar-brand-logo {
    height: 34px;
    width: auto;
    max-width: 170px;
    display: block;
    object-fit: contain;
}
.navbar-brand-text {
    font-weight: 700;
    letter-spacing: .2px;
    text-transform: capitalize;
}
@media (max-width: 767.98px) {
    .navbar-brand {
        min-height: 50px;
    }
    .navbar-logo-wrap {
        padding: 5px 10px;
        border-radius: 10px;
    }
    .navbar-brand-logo {
        height: 28px;
        max-width: 140px;
    }
    .navbar-brand-text {
        display: inline-block;
        font-size: .95rem;
    }
}
