.login-bg {
    min-height: 100vh;
    background: linear-gradient(135deg, #1a1a1a, #3a3a3a);
}

code {
    font-size: 0.85rem;
    color: inherit;
}

body {
    background-color: #f4f6f9;
}

.navbar {
    padding-top: .8rem;
    padding-bottom: .8rem;
}

.card {
    border: none;
    border-radius: .6rem;
}

.card-header {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #eef0f2;
}

.card-footer {
    padding: .65rem 1.25rem;
}

.stat-card .card-body {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.1rem 1.25rem;
}

.stat-icon {
    width: 46px;
    height: 46px;
    min-width: 46px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
}

.stat-icon.bg-soft-success  { background: #e6f6ec; color: #198754; }
.stat-icon.bg-soft-secondary{ background: #eceef0; color: #6c757d; }
.stat-icon.bg-soft-info     { background: #e7f1fb; color: #0d6efd; }
.stat-icon.bg-soft-dark     { background: #ececec; color: #212529; }

.stat-label {
    font-size: .78rem;
    color: #6c757d;
    margin-bottom: .15rem;
}

.stat-value {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
}

.table thead th {
    font-size: .72rem;
    text-transform: uppercase;
    letter-spacing: .03em;
    color: #6c757d;
    font-weight: 600;
    border-bottom: 1px solid #e9ecef;
    padding: .75rem .9rem;
    white-space: nowrap;
}

.table td {
    vertical-align: middle;
    padding: .65rem .9rem;
    white-space: nowrap;
}

.table td.text-truncate {
    max-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.table-fixed {
    table-layout: fixed;
}

.table-responsive::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

.table-responsive::-webkit-scrollbar-thumb {
    background: #d7dbe0;
    border-radius: 4px;
}

#historial .list-group-item {
    padding: .9rem 1.25rem;
}

#historial .list-group-item + .list-group-item {
    border-top: 1px solid #f0f1f3;
}

.search-form .form-control {
    border-right: none;
}

.search-form .input-group-text {
    background: #fff;
    border-left: none;
    color: #adb5bd;
}
