:root { --primary-color: #1a73e8; --secondary-color: #f8f9fa; --success-color: #34a853; --border-color: #e9ecef; --text-dark: #343a40; --text-light: #6c757d; } body { font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; color: var(--text-dark); background-color: #f5f7fa; } .header { background: linear-gradient(135deg, #0d47a1, #1976d2); color: white; padding: 2rem 0; border-bottom: 5px solid #0a58ca; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); } .card { border-radius: 10px; box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05); border: none; margin-bottom: 2rem; overflow: hidden; } .card-header { background-color: #f8f9fa; border-bottom: 1px solid var(--border-color); font-weight: 600; padding: 1rem 1.5rem; } .table-responsive { overflow-x: auto; } .table { margin-bottom: 0; border-collapse: separate; border-spacing: 0; width: 100%; } .table th { background-color: #f8f9fa; font-weight: 600; text-transform: uppercase; font-size: 0.85rem; letter-spacing: 0.5px; border-top: 1px solid #dee2e6; border-bottom: 2px solid #dee2e6; padding: 0.75rem 1rem; } .table td, .table th { padding: 0.75rem 1rem; vertical-align: middle; } .table td { border-bottom: 1px solid #dee2e6; } .table tr:last-child td { border-bottom: none; } .table-striped tbody tr:nth-of-type(odd) { background-color: rgba(0, 0, 0, 0.02); } .table tbody tr:hover { background-color: rgba(0, 0, 0, 0.03); } .disclaimer { font-size: 0.85rem; color: var(--text-light); font-style: italic; } .resources-card { background: linear-gradient(to right, #f9e7e8, #f8e8ef); border-radius: 10px; } .calc-btn { background-color: white; color: var(--primary-color); border: 1px solid var(--primary-color); border-radius: 25px; padding: 0.5rem 1.25rem; transition: all 0.3s ease; font-weight: 500; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08); } .calc-btn:hover { background-color: var(--primary-color); color: white; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.12); } .border-bottom-custom { border-bottom: 3px solid var(--primary-color); display: inline-block; padding-bottom: 0.5rem; margin-bottom: 1.5rem; } /* Modern Pill Button Styles */ .btn-result-pill { border-radius: 50px; padding: 8px 16px; font-weight: 500; transition: all 0.3s ease; margin: 3px 0; display: inline-flex; align-items: center; justify-content: center; min-width: 110px; box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08); font-size: 0.875rem; } .btn-cbcs { background-color: #1a73e8; color: white; border: 2px solid #1a73e8; } .btn-cbcs:hover { background-color: #0d47a1; border-color: #0d47a1; color: white; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); } .btn-non-cbcs { background-color: #34a853; color: white; border: 2px solid #34a853; } .btn-non-cbcs:hover { background-color: #2e7d32; border-color: #2e7d32; color: white; transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15); } .btn-result-pill i { margin-right: 6px; } /* How to Check Results Section Styles */ .list-group-item { border-left: none; border-right: none; padding: 1rem 0.5rem; transition: all 0.2s ease; } .list-group-item:hover { background-color: rgba(26, 115, 232, 0.05); } .list-group-item i { color: var(--primary-color); } .list-group-item a { color: var(--primary-color); text-decoration: none; transition: all 0.2s ease; } .list-group-item a:hover { text-decoration: underline; color: #0d47a1; } /* Modern Nomenclature Table Styles */ .nomenclature-card { border: 1px solid rgba(0, 0, 0, 0.08); box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05); } .nomenclature-table { --table-accent-color: rgba(26, 115, 232, 0.03); --table-hover-color: rgba(26, 115, 232, 0.05); border-collapse: separate; border-spacing: 0; } .nomenclature-table thead th { background-color: #f8fafc; color: #4b5563; font-weight: 600; text-transform: uppercase; font-size: 0.75rem; letter-spacing: 0.5px; padding: 1rem 1.25rem; border-bottom: 1px solid #e5e7eb; position: sticky; top: 0; } .nomenclature-table tbody td { padding: 1rem 1.25rem; border-bottom: 1px solid #f3f4f6; vertical-align: middle; transition: all 0.2s ease; } .nomenclature-table tbody tr:last-child td { border-bottom: none; } .nomenclature-table tbody tr:hover td { background-color: var(--table-hover-color); } .grade-badge { display: inline-block; padding: 0.35rem 0.75rem; border-radius: 6px; font-weight: 600; font-size: 0.85rem; background-color: #e6f0fd; color: #1a73e8; min-width: 40px; text-align: center; } .badge-fail { background-color: #fee2e2; color: #dc2626; } .badge-absent { background-color: #fef3c7; color: #d97706; } .badge-withheld { background-color: #ede9fe; color: #7c3aed; } .badge-ineligible { background-color: #e5e7eb; color: #4b5563; } @media (max-width: 768px) { .header h1 { font-size: 1.8rem; } .card-header { padding: 0.75rem 1rem; } .table td, .table th { padding: 0.75rem; font-size: 0.9rem; } .btn-result-pill { min-width: 100px; padding: 6px 12px; font-size: 0.8rem; } .nomenclature-table thead th, .nomenclature-table tbody td { padding: 0.75rem; } .grade-badge { padding: 0.25rem 0.5rem; font-size: 0.8rem; } }