diff --git a/public/settings.css b/public/settings.css index c4011786..bcb2066c 100644 --- a/public/settings.css +++ b/public/settings.css @@ -535,4 +535,153 @@ input:checked + .slider:before { gap: 15px; text-align: center; } -} \ No newline at end of file +} +/* =========================== + Notifications Section Fix +=========================== */ + +.notifications-section { + display: flex; + flex-direction: column; + gap: 2rem; +} + +/* Card / Section Box */ +.form-section { + background: rgba(20, 25, 40, 0.8); + border: 1px solid rgba(100, 255, 218, 0.15); + border-radius: 16px; + padding: 1.8rem; + box-shadow: 0 10px 30px rgba(0,0,0,0.35); +} + +.form-section h3 { + margin-bottom: 1.2rem; + color: #64ffda; + font-size: 1.2rem; + border-bottom: 1px solid rgba(100,255,218,0.2); + padding-bottom: 0.6rem; +} + +/* Toggle Group */ +.toggle-group { + display: flex; + flex-direction: column; + gap: 1rem; +} + +/* Each Toggle Row */ +.toggle-item { + display: flex; + align-items: center; + justify-content: space-between; + background: rgba(30, 35, 55, 0.9); + border: 1px solid rgba(100,255,218,0.1); + border-radius: 12px; + padding: 1rem 1.2rem; + transition: all 0.25s ease; +} + +.toggle-item:hover { + border-color: rgba(100,255,218,0.4); + background: rgba(40, 45, 70, 0.95); + transform: translateY(-2px); +} + +/* Left Text */ +.toggle-info { + display: flex; + flex-direction: column; + gap: 0.3rem; +} + +.toggle-info label { + font-weight: 600; + color: #ffffff; + font-size: 0.95rem; +} + +.toggle-info small { + color: #a0a8c0; + font-size: 0.8rem; +} + +/* =========================== + Toggle Switch Fix +=========================== */ + +.toggle-switch { + position: relative; + display: inline-block; + width: 52px; + height: 28px; + flex-shrink: 0; +} + +.toggle-switch input { + opacity: 0; + width: 0; + height: 0; +} + +/* Slider */ +.toggle-switch .slider { + position: absolute; + cursor: pointer; + inset: 0; + background-color: #2a2f45; + border-radius: 34px; + transition: 0.4s; + box-shadow: inset 0 0 5px rgba(0,0,0,0.4); +} + +/* Slider Knob */ +.toggle-switch .slider::before { + position: absolute; + content: ""; + height: 22px; + width: 22px; + left: 3px; + top: 3px; + background: linear-gradient(135deg, #ccc, #eee); + border-radius: 50%; + transition: 0.4s; + box-shadow: 0 4px 10px rgba(0,0,0,0.4); +} + +/* Checked State */ +.toggle-switch input:checked + .slider { + background: linear-gradient(135deg, #64ffda, #00b4d8); + box-shadow: 0 0 10px rgba(100,255,218,0.6); +} + +.toggle-switch input:checked + .slider::before { + transform: translateX(24px); + background: #ffffff; +} + +/* =========================== + Save Button Fix +=========================== */ + +#notifications-tab .form-actions { + margin-top: 1.5rem; + display: flex; + justify-content: flex-end; +} + +#save-notifications-btn { + padding: 0.7rem 1.4rem; + border-radius: 10px; + font-weight: 600; + background: linear-gradient(135deg, #64ffda, #00b4d8); + border: none; + color: #000; + cursor: pointer; + transition: all 0.25s ease; +} + +#save-notifications-btn:hover { + transform: translateY(-2px); + box-shadow: 0 8px 20px rgba(100,255,218,0.4); +} diff --git a/public/settings.html b/public/settings.html index 38ba7e0d..19324b55 100644 --- a/public/settings.html +++ b/public/settings.html @@ -7,15 +7,97 @@ Settings & Profile - ExpenseFlow +