.login-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:40px;width:100%;max-width:420px;box-shadow:0 25px 45px #0000004d}.login-card h2{color:#fff;font-weight:700;margin-bottom:8px}.login-card p{color:#ffffff80;margin-bottom:30px}.form-label{color:#fffc;font-size:14px}.form-control{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;padding:12px 15px}.form-control:focus{background:#ffffff1f;border-color:#4cc9f0;color:#fff;box-shadow:0 0 0 3px #4cc9f026}.form-control::placeholder{color:#ffffff4d}.btn-login{background:linear-gradient(135deg,#4cc9f0,#4361ee);border:none;border-radius:10px;padding:12px;font-weight:600;font-size:16px;color:#fff;width:100%;transition:all .3s ease}.btn-login:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4cc9f066;color:#fff}.register-link{color:#ffffff80;text-align:center;margin-top:20px;font-size:14px}.register-link a{color:#4cc9f0;text-decoration:none;font-weight:600}.alert-error{background:#ff636326;border:1px solid rgba(255,99,99,.3);color:#ff6363;border-radius:10px;padding:10px 15px;font-size:14px;display:none}.brand-icon{font-size:40px;margin-bottom:15px}.register-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:40px;width:100%;max-width:420px;box-shadow:0 25px 45px #0000004d}.register-card h2{color:#fff;font-weight:700;margin-bottom:8px}.register-card p{color:#ffffff80;margin-bottom:30px}.btn-register{background:linear-gradient(135deg,#4cc9f0,#4361ee);border:none;border-radius:10px;padding:12px;font-weight:600;font-size:16px;color:#fff;width:100%;transition:all .3s ease}.btn-register:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4cc9f066;color:#fff}.login-link{color:#ffffff80;text-align:center;margin-top:20px;font-size:14px}.login-link a{color:#4cc9f0;text-decoration:none;font-weight:600}.alert-msg{border-radius:10px;padding:10px 15px;font-size:14px;display:none}.alert-success{background:#4cc99626;border:1px solid rgba(76,201,150,.3);color:#4cc996}.navbar{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);padding:15px 30px}.navbar-brand{color:#4cc9f0!important;font-weight:700;font-size:22px}.nav-link{color:#ffffffb3!important;margin:0 10px;transition:color .3s}.nav-link:hover,.nav-link.active{color:#4cc9f0!important}.btn-logout{background:#ff636326;border:1px solid rgba(255,99,99,.3);color:#ff6363;border-radius:8px;padding:6px 16px;font-size:14px}.btn-logout:hover{background:#ff63634d;color:#ff6363}.main-content{padding:30px}.welcome-text{font-size:24px;font-weight:700;margin-bottom:5px}.welcome-sub{color:#ffffff80;margin-bottom:30px}.stat-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:25px;transition:transform .3s}.stat-card:hover{transform:translateY(-5px)}.stat-icon{font-size:30px;margin-bottom:15px}.stat-label{color:#ffffff80;font-size:14px;margin-bottom:8px}.stat-value{font-size:28px;font-weight:700;color:#fff}.stat-sub{color:#fff6;font-size:12px;margin-top:4px}.budget-alert-banner{border-radius:10px;padding:12px 18px;font-size:14px;margin-bottom:20px}.budget-alert-banner.near{background:#f59e0b26;border:1px solid rgba(245,158,11,.3);color:#f59e0b}.budget-alert-banner.over{background:#ff636326;border:1px solid rgba(255,99,99,.3);color:#ff6363}.stat-card.blue{border-left:4px solid #4cc9f0}.stat-card.green{border-left:4px solid #4cc996}.stat-card.red{border-left:4px solid #ff6363}.stat-card.purple{border-left:4px solid #a855f7}.chart-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:25px;margin-top:30px}.chart-title{font-size:18px;font-weight:600;margin-bottom:20px;color:#ffffffe6}.month-selector{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;padding:6px 12px;font-size:14px}.month-selector option{background:#1a1a2e}.page-title{font-size:24px;font-weight:700;margin-bottom:5px}.page-sub{color:#ffffff80;margin-bottom:30px}.card-dark{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:25px;height:100%}.form-control,.form-select{background:#ffffff14!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:10px;color:#fff!important;padding:10px 15px;width:100%}.form-control:focus,.form-select:focus{background:#ffffff1f!important;border-color:#4cc9f0!important;box-shadow:none!important;color:#fff!important}.form-select option{background:#1a1a2e;color:#fff}.btn-add{background:linear-gradient(135deg,#4cc9f0,#4361ee);border:none;border-radius:10px;padding:10px 25px;color:#fff;font-weight:600;width:100%;cursor:pointer}.btn-add:hover{opacity:.9}.expense-table-wrapper{width:100%;overflow-x:auto}.expense-table{width:100%;border-collapse:separate;border-spacing:0 8px;color:#fff}.expense-table thead th{color:#ffffff80;font-size:13px;font-weight:500;padding:8px 16px;border:none;background:transparent}.expense-table tbody tr{background:#ffffff0d}.expense-table tbody td{padding:14px 16px;border:none;color:#fff;vertical-align:middle}.expense-table tbody tr td:first-child{border-radius:10px 0 0 10px}.expense-table tbody tr td:last-child{border-radius:0 10px 10px 0}.category-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;display:inline-block}.btn-edit{background:#4cc9f026;border:1px solid rgba(76,201,240,.3);color:#4cc9f0;border-radius:6px;padding:4px 12px;font-size:13px;cursor:pointer}.btn-delete{background:#ff636326;border:1px solid rgba(255,99,99,.3);color:#ff6363;border-radius:6px;padding:4px 12px;font-size:13px;cursor:pointer}.filter-bar{display:flex;gap:10px;margin-bottom:20px;align-items:center}.btn-export{background:#4cc99626;border:1px solid rgba(76,201,150,.3);color:#4cc996;border-radius:8px;padding:6px 14px;font-size:14px;text-decoration:none;display:inline-flex;align-items:center;cursor:pointer}.btn-export:hover{background:#4cc9964d;color:#4cc996}.filter-select{background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;padding:6px 12px;font-size:14px}.filter-select option{background:#1a1a2e}.empty-state{text-align:center;padding:40px;color:#ffffff4d}.modal-content{background:#1a1a2e!important;border:1px solid rgba(255,255,255,.1)!important;border-radius:16px!important;color:#fff!important}.modal-header{border-bottom:1px solid rgba(255,255,255,.1)!important}.modal-footer{border-top:1px solid rgba(255,255,255,.1)!important}.btn-close{filter:invert(1)}.section-title{color:#4cc9f0;font-size:16px;font-weight:600}.btn-save{background:linear-gradient(135deg,#4cc9f0,#4361ee);border:none;border-radius:10px;padding:10px 25px;color:#fff;font-weight:600;width:100%;margin-top:10px}.btn-save:hover{opacity:.9;color:#fff}.progress-custom{height:12px;border-radius:10px;background:#ffffff1a;margin-top:20px;overflow:hidden}.progress-bar-custom{height:100%;border-radius:10px;transition:width .5s ease}.progress-label{display:flex;justify-content:space-between;color:#ffffff80;font-size:13px;margin-top:8px}.alert-success-dark{background:#4cc99626;border:1px solid rgba(76,201,150,.3);color:#4cc996;border-radius:10px;padding:10px 15px;font-size:14px;display:none;margin-top:10px}
