:root{--gpa-primary:#1e40af;--gpa-secondary:#3b82f6;--gpa-success:#059669;--gpa-warning:#d97706;--gpa-danger:#dc2626;--gpa-gradient:linear-gradient(135deg, #6366f1 0%, #a855f7 100%)}body{background:#f8fafc}.gpa-card{border:none;border-radius:18px;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.summary-card{background:var(--gpa-gradient);color:#fff}.section-title{font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#fff;background:var(--gpa-primary);padding:10px 14px;border-radius:10px;margin-bottom:18px}.course-row{transition:all .2s ease;border-bottom:1px solid #f1f5f9;padding:10px 0}.course-row:hover{background:#f1f5f9}.form-control,.form-select{border-radius:8px;border:1px solid #e2e8f0}.result-big{font-size:4rem;font-weight:900;line-height:1;text-shadow:0 4px 10px rgba(0,0,0,.1)}.btn-add{background:var(--gpa-secondary);color:#fff;font-weight:700;border-radius:10px}.btn-calculate{background:var(--gpa-success);color:#fff;font-weight:700;width:100%;padding:12px;border-radius:10px}.remove-course{color:var(--gpa-danger);cursor:pointer;font-size:1.2rem}.gpa-status{font-size:1rem;font-weight:700;padding:8px 16px;border-radius:50px;display:inline-block;background:rgba(255,255,255,.2)}.scale-table th{background:var(--gpa-primary);color:#fff;font-size:.8rem}.scale-table td{font-size:.85rem}.sticky-summary{position:sticky;top:20px}