/* ClinicLite - Custom Styles */
/* Palette: white, blue, light grey */

:root {
    --clinic-blue: #1e5aa2;
    --clinic-blue-dark: #154578;
    --clinic-blue-light: #e8f0fb;
    --clinic-grey: #f4f6f8;
    --clinic-border: #d7dee8;
}

body {
    background: var(--clinic-grey);
    color: #212529;
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
}

.bg-clinic-blue {
    background-color: var(--clinic-blue) !important;
}

.text-clinic-blue {
    color: var(--clinic-blue) !important;
}

.btn-clinic-blue {
    background-color: var(--clinic-blue);
    border-color: var(--clinic-blue);
    color: #fff;
}
.btn-clinic-blue:hover {
    background-color: var(--clinic-blue-dark);
    border-color: var(--clinic-blue-dark);
    color: #fff;
}

.navbar-brand span.fw-bold {
    font-size: 1.15rem;
    letter-spacing: 0.3px;
}

.card {
    border: 1px solid var(--clinic-border);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 1px 3px rgba(30,90,162,0.06);
}

.card-header {
    background: #fff;
    border-bottom: 1px solid var(--clinic-border);
    font-weight: 600;
    color: var(--clinic-blue);
}

.table thead th {
    background: var(--clinic-blue-light);
    color: var(--clinic-blue-dark);
    border-bottom: 2px solid var(--clinic-blue);
    font-weight: 600;
    font-size: 0.9rem;
}

.table td, .table th {
    vertical-align: middle;
    padding: 0.75rem;
}

.badge-status {
    font-weight: 600;
    padding: 0.5em 0.8em;
    border-radius: 6px;
}

.form-control, .form-select {
    border: 1px solid var(--clinic-border);
    border-radius: 8px;
}
.form-control:focus, .form-select:focus {
    border-color: var(--clinic-blue);
    box-shadow: 0 0 0 0.2rem rgba(30,90,162,0.15);
}

.btn {
    border-radius: 8px;
    font-weight: 500;
}

.print-only {
    display: none;
}
@media print {
    .no-print { display: none !important; }
    .print-only { display: block !important; }
    body { background: #fff; }
    .card { box-shadow: none; border: none; }
}

/* Status pill colors */
.status-waiting { background: #fff3cd; color: #7a5c00; }
.status-in_consultation { background: #cfe2ff; color: #084298; }
.status-completed { background: #d1e7dd; color: #0f5132; }
.status-discharged { background: #cff4fc; color: #055160; }
.status-cancelled { background: #f8d7da; color: #842029; }

/* Dashboard cards */
.stat-card .icon { font-size: 1.75rem; opacity: 0.85; }
.stat-card .value { font-size: 1.75rem; font-weight: 700; color: var(--clinic-blue-dark); }
.stat-card .label { font-size: 0.85rem; color: #6c757d; text-transform: uppercase; letter-spacing: 0.5px; }

/* Queue cards */
.queue-card { border-left: 4px solid var(--clinic-blue); }
.queue-card.in_consultation { border-left-color: #0d6efd; }
.queue-card.completed { border-left-color: #198754; opacity: 0.85; }
.queue-card.discharged { border-left-color: #0dcaf0; opacity: 0.75; }
.queue-card.cancelled { border-left-color: #dc3545; opacity: 0.65; }

.sidebar-badge { position: absolute; top: 6px; right: 6px; font-size: 0.7rem; }
