a { color: var(--primary-blue, #1e88e5); transition: color 0.2s ease; } a:hover { color: var(--primary-blue-dark, #1565c0); text-decoration: none; } .bg-success { background-color: #8BC34A!important; } .text-primary { color: var(--primary-blue, #1e88e5)!important; } .text-danger { color: #D40000!important; } a.text-danger:focus, a.text-danger:hover { color: #790000!important; } /* Buttons */ .btn { font-weight: var(--font-weight-medium, 550); font-size: var(--font-size-base, 0.945rem); padding: 12px 24px; border-radius: var(--radius-sm, 4px); transition: all 0.3s ease; } .btn-primary { background: var(--primary-blue, #0078D4); border: none; font-weight: var(--font-weight-semibold, 650); } .btn-primary:hover { background: var(--primary-blue-dark, #005A9E); border: none; transform: translateY(-1px); } .btn-secondary { background-color: var(--color-secondary, #64748B); border: none; font-weight: var(--font-weight-semibold, 650); } .btn-secondary:hover { background-color: var(--color-secondary-dark, #475569); border: none; transform: translateY(-1px); } .btn-light { background-color: var(--bg-light, #f8f9fa); border: 2px solid var(--border-color, #e2e8f0); font-weight: var(--font-weight-medium, 550); } .btn-light:hover { background-color: var(--bg-sidebar, #F1F5F9); border-color: var(--border-light, #cbd5e1); transform: translateY(-1px); } .btn-danger { background: var(--color-danger, #DC2626); border: none; font-weight: var(--font-weight-semibold, 650); } .btn-danger:hover { background: var(--color-danger-dark, #B91C1C); border: none; transform: translateY(-1px); } .btn-success { background: var(--color-success, #16A34A); border: none; font-weight: var(--font-weight-semibold, 650); } .btn-success:hover { background: var(--color-success-dark, #15803D); border: none; transform: translateY(-1px); } .btn-sm { padding: 8px 16px; font-size: var(--font-size-sm, 0.925rem); } .btn-lg { padding: 16px 32px; font-size: var(--font-size-lg, 1.08rem); } .btn-light.focus, .btn-light:focus { box-shadow: none; } .btn.focus, .btn:focus { box-shadow: none; } /* Form */ .form-control { font-size: var(--font-size-base, 0.945rem); font-weight: var(--font-weight-normal, 450); padding: 12px 16px; border: 2px solid var(--border-color, #e2e8f0); border-radius: var(--radius-sm, 4px); transition: all 0.2s ease; } label { font-weight: var(--font-weight-semibold, 650); color: var(--text-primary, #0F172A); margin-bottom: 8px; font-size: var(--font-size-base, 0.945rem); } /* Cards */ .card { border: none; border-radius: var(--radius-md, 8px); } .card:hover { } .card-header { background: transparent; border-bottom: 1px solid var(--border-color, #e2e8f0); font-weight: var(--font-weight-bold, 750); font-size: var(--font-size-lg, 1.08rem); } /* Tables */ .table-striped tbody tr:nth-of-type(odd) { background-color: var(--bg-warm, #faf8f5); } .table-striped tbody tr:hover { background-color: var(--bg-warm-card, #f7f5f2); } .table thead th { font-size: var(--font-size-xs, 0.8rem); text-transform: uppercase!important; font-weight: var(--font-weight-bold, 750); color: var(--text-secondary, #475569); letter-spacing: 0.8px; border-bottom: 2px solid var(--border-color, #e2e8f0); } .table td { font-size: var(--font-size-base, 0.945rem); font-weight: var(--font-weight-normal, 450); vertical-align: middle; } /* Headings */ h1, h2, h3, h4, h5, h6 { color: var(--text-primary, #0F172A); font-weight: var(--font-weight-bold, 750); letter-spacing: -0.02em; } h1 { font-size: var(--font-size-3xl, 2.25rem); } h2 { font-size: var(--font-size-2xl, 1.75rem); } h3 { font-size: var(--font-size-xl, 1.4rem); } h4 { font-size: var(--font-size-lg, 1.08rem); } h5 { font-size: var(--font-size-base, 0.945rem); } h6 { font-size: var(--font-size-sm, 0.925rem); } /* Badge */ .badge { font-size: var(--font-size-xs, 0.8rem); font-weight: var(--font-weight-semibold, 650); padding: 6px 12px; border-radius: var(--radius-sm, 4px); } .badge-primary { background: var(--primary-blue, #0078D4); }