*{box-sizing:border-box;margin:0;padding:0}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background:#fafafa;color:#212b36}#root{min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font-family:inherit}.dashboard-container{display:flex;min-height:100vh;background:#fafafa}.dashboard-sidebar{width:260px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;transition:width .3s ease;position:fixed;height:100vh;left:0;top:0;z-index:100}.dashboard-sidebar.closed{width:80px}.sidebar-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.sidebar-logo{font-size:20px;font-weight:700;color:#212b36;margin:0;white-space:nowrap}.dashboard-sidebar.closed .sidebar-logo{display:none}.sidebar-toggle{background:none;border:none;cursor:pointer;padding:8px;color:#637381;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.sidebar-toggle:hover{background:#f5f5f5;color:#212b36}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 16px;color:#637381;text-decoration:none;border-radius:8px;transition:all .2s ease;margin-bottom:4px;font-size:14px;font-weight:500}.nav-item:hover{background:#f5f5f5;color:#212b36}.nav-item.active{background:#e0e7ff;color:#6366f1}.dashboard-sidebar.closed .nav-item span{display:none}.dashboard-sidebar.closed .nav-item{justify-content:center;padding:10px}.dashboard-main{flex:1;margin-left:260px;display:flex;flex-direction:column;transition:margin-left .3s ease}.dashboard-sidebar.closed~.dashboard-main{margin-left:80px}.dashboard-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:16px 32px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:10}.header-left{flex:1}.header-title{font-size:24px;font-weight:700;color:#212b36;margin:0}.header-right{display:flex;align-items:center;gap:24px}.header-search{display:flex;align-items:center;gap:12px;background:#f5f5f5;padding:8px 16px;border-radius:8px;color:#637381}.header-search input{border:none;background:none;outline:none;font-size:14px;color:#212b36;width:200px}.header-search input::placeholder{color:#919eab}.header-user{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;border-radius:50%;background:#6366f1;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.user-info{display:flex;flex-direction:column}.user-name{font-size:14px;font-weight:600;color:#212b36;line-height:1.2}.user-email{font-size:12px;color:#637381;line-height:1.2}.logout-btn{background:none;border:none;cursor:pointer;padding:8px;color:#637381;border-radius:6px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.logout-btn:hover{background:#f5f5f5;color:#212b36}.dashboard-content{flex:1;padding:32px;overflow-y:auto}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:32px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;display:flex;align-items:center;gap:16px;transition:all .2s ease}.stat-card:hover{box-shadow:0 4px 12px #00000014}.stat-icon{width:56px;height:56px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-content{flex:1}.stat-label{font-size:14px;color:#637381;margin:0 0 4px;font-weight:500}.stat-value{font-size:24px;font-weight:700;color:#212b36;margin:0 0 4px}.stat-change{font-size:12px;font-weight:600;margin:0}.stat-change.positive{color:#10b981}.stat-change.negative{color:#ef4444}.content-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}.content-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.card-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.card-title{font-size:18px;font-weight:700;color:#212b36;margin:0}.card-action{background:none;border:none;color:#6366f1;font-size:14px;font-weight:600;cursor:pointer;padding:0}.card-action:hover{text-decoration:underline}.card-body{padding:24px}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;align-items:center;gap:12px}.activity-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#6366f1;flex-shrink:0}.activity-content{flex:1}.activity-title{font-size:14px;font-weight:600;color:#212b36;margin:0 0 4px}.activity-time{font-size:12px;color:#637381;margin:0}.quick-actions{display:flex;flex-direction:column;gap:12px}.action-btn{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f5f5f5;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:600;color:#212b36;cursor:pointer;transition:all .2s ease;text-align:left}.action-btn:hover{background:#e5e7eb;border-color:#d1d5db}.mobile-menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:#212b36;margin-right:12px;border-radius:6px;transition:all .2s ease}.mobile-menu-toggle:hover{background:#f5f5f5}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:99}@media(max-width:1024px){.dashboard-sidebar{transform:translate(-100%);transition:transform .3s ease}.dashboard-sidebar.open{transform:translate(0)}.dashboard-sidebar.closed{transform:translate(-100%)}.dashboard-main{margin-left:0}.sidebar-overlay{display:block}.content-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.mobile-menu-toggle{display:flex;align-items:center;justify-content:center}.header-left{display:flex;align-items:center}.header-title{font-size:20px}}@media(max-width:768px){.dashboard-header{padding:12px 16px;flex-wrap:wrap;gap:12px}.header-title{font-size:18px}.header-search{order:3;width:100%}.header-search input{width:100%}.dashboard-content,.dashboard-content-area{padding:16px}.stats-grid{grid-template-columns:1fr}.user-info{display:none}.user-avatar{width:32px;height:32px;font-size:12px}.sidebar-header{padding:16px}.sidebar-logo{font-size:18px}.nav-item{padding:10px 12px;font-size:13px}}@media(max-width:480px){.dashboard-header{padding:10px 12px}.header-title{font-size:16px}.dashboard-content,.dashboard-content-area{padding:12px}.nav-item{padding:8px 12px;font-size:12px}.nav-item svg{width:18px;height:18px}}.login-container{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;position:relative}@media(max-width:768px){.login-container{grid-template-columns:1fr}.login-background{display:none}.login-content{padding:24px 20px}.login-card{max-width:100%}}.login-background{background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;padding:40px;position:relative;overflow:hidden}.login-background:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:pulse 20s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.5}50%{transform:scale(1.1);opacity:.7}}.login-background-gradient{position:relative;z-index:1;text-align:center;color:#fff}.login-content{display:flex;align-items:center;justify-content:center;padding:40px;background:#fafafa}.login-card{width:100%;max-width:400px;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{margin-bottom:40px}.login-title{font-size:24px;font-weight:700;color:#212b36;margin:0 0 8px;letter-spacing:-.02em}.login-subtitle{font-size:14px;color:#637381;margin:0;font-weight:400}.login-form{display:flex;flex-direction:column;gap:24px}.error-message{background:#fff1f2;border:1px solid #fecdd3;color:#be123c;padding:12px 16px;border-radius:8px;font-size:14px;font-weight:500;margin-bottom:24px}.form-label{font-size:14px;font-weight:600;color:#212b36;letter-spacing:0;margin-bottom:8px}.form-input{width:100%;padding:11px 16px;font-size:14px;border:1px solid #dfe4e8;border-radius:8px;background:#fff;color:#212b36;transition:all .2s ease;box-sizing:border-box;font-family:inherit}.form-input:hover{border-color:#919eab}.form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-input.error{border-color:#f04438}.form-input.error:focus{border-color:#f04438;box-shadow:0 0 0 3px #f044381a}.form-input:disabled{background:#f7fafc;cursor:not-allowed;opacity:.6}.form-input::placeholder{color:#a0aec0}.password-input-wrapper{position:relative}.password-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#637381;transition:color .2s ease}.password-toggle:hover{color:#212b36}.password-toggle:focus{outline:none;color:#6366f1}.field-error{font-size:12px;color:#f04438;font-weight:500;margin-top:6px}.form-options{display:flex;justify-content:space-between;align-items:center;font-size:14px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;color:#637381;font-weight:400;font-size:14px}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#6366f1}.forgot-password{color:#6366f1;text-decoration:none;font-weight:600;font-size:14px;transition:color .2s ease}.forgot-password:hover{color:#4f46e5;text-decoration:underline}.login-button{width:100%;padding:12px 24px;font-size:14px;font-weight:600;color:#fff;background:#212b36;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-top:8px;font-family:inherit}.login-button:hover:not(:disabled){background:#161c24}.login-button:active:not(:disabled){background:#0d1219}.login-button:disabled{opacity:.6;cursor:not-allowed;background:#919eab}.button-loading{display:flex;align-items:center;justify-content:center;gap:12px}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.login-footer{margin-top:24px;text-align:center;font-size:14px;color:#637381}.signup-link{color:#6366f1;text-decoration:none;font-weight:600;transition:color .2s ease}.signup-link:hover{color:#4f46e5;text-decoration:underline}@media(max-width:960px){.login-container{grid-template-columns:1fr}.login-background{display:none}.login-content{padding:24px}}.home-page{padding:24px;min-height:100%;display:flex;align-items:center;justify-content:center}.home-content{text-align:center;width:100%;max-width:800px}.welcome-title{font-size:32px;font-weight:700;color:#212b36;margin:0}@media(max-width:768px){.home-page{padding:16px}.welcome-title{font-size:24px}}@media(max-width:480px){.home-page{padding:12px}.welcome-title{font-size:20px}}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.confirm-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.confirm-modal-content{background:#fff;border-radius:12px;width:100%;max-width:400px;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.confirm-modal-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.confirm-modal-header h3{font-size:18px;font-weight:700;color:#212b36;margin:0}.confirm-modal-close{background:none;border:none;font-size:28px;color:#637381;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.confirm-modal-close:hover{background:#f5f5f5;color:#212b36}.confirm-modal-body{padding:24px}.confirm-modal-body p{font-size:14px;color:#637381;margin:0;line-height:1.6}.confirm-modal-actions{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-start;gap:12px}.btn-confirm{padding:10px 20px;background:#ef4444;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-confirm:hover{background:#dc2626}.btn-cancel{padding:10px 20px;background:#fff;color:#212b36;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel:hover{background:#f5f5f5;border-color:#d1d5db}@media(max-width:768px){.confirm-modal-overlay{padding:16px}.confirm-modal-content{max-width:100%}.confirm-modal-header{padding:16px 20px}.confirm-modal-header h3{font-size:16px}.confirm-modal-body{padding:20px}.confirm-modal-body p{font-size:13px}.confirm-modal-actions{padding:12px 20px;flex-direction:column;gap:10px}.btn-confirm,.btn-cancel{width:100%;padding:12px 20px}}@media(max-width:480px){.confirm-modal-overlay{padding:10px}.confirm-modal-content{border-radius:8px}.confirm-modal-header{padding:12px 16px}.confirm-modal-header h3{font-size:15px}.confirm-modal-body{padding:16px}.confirm-modal-body p{font-size:12px}.confirm-modal-actions{padding:10px 16px}}.spending-category-groups{margin-bottom:32px}.groups-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.groups-header h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.btn-add-group{padding:8px 16px;background:#6366f1;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-add-group:hover{background:#4f46e5}.groups-list{display:flex;flex-direction:column;gap:16px}.group-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.group-number{font-size:14px;font-weight:600;color:#212b36}.group-actions{display:flex;gap:8px;align-items:center}.btn-add-to-group{padding:6px 12px;background:#f5f5f5;color:#212b36;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-add-to-group:hover{background:#e5e7eb}.btn-delete-group{padding:6px 12px;background:#fee2e2;color:#ef4444;border:1px solid #fecdd3;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-delete-group:hover{background:#fecaca;border-color:#fca5a5}.group-categories{display:flex;flex-wrap:wrap;gap:8px}.category-tag{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#e0e7ff;color:#6366f1;border-radius:6px;font-size:14px}.btn-remove{background:none;border:none;color:#6366f1;font-size:18px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.btn-remove:hover{background:#6366f11a}.empty-state{padding:32px;text-align:center;color:#637381;font-size:14px}.loading{padding:16px;text-align:center;color:#637381}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:24px;width:90%;max-width:400px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.modal-header h4{font-size:18px;font-weight:600;color:#212b36;margin:0}.modal-header button{background:none;border:none;font-size:24px;color:#637381;cursor:pointer;padding:0;width:24px;height:24px}.category-select{width:100%;padding:10px 12px;border:1px solid #dfe4e8;border-radius:6px;font-size:14px;margin-bottom:16px}.modal-actions{display:flex;justify-content:flex-end;gap:12px}@media(max-width:768px){.groups-header{flex-direction:column;align-items:flex-start;gap:12px}.groups-header h3{font-size:16px}.btn-add-group{width:100%;padding:10px 16px}.group-item{padding:12px}.group-header{flex-direction:column;align-items:flex-start;gap:12px}.group-actions{width:100%;flex-wrap:wrap;gap:8px}.btn-add-to-group,.btn-delete-group{flex:1;min-width:120px;padding:8px 12px}.group-categories{gap:6px}.category-tag{padding:6px 10px;font-size:12px}.modal-content{width:95%;padding:20px;max-width:none}.modal-header h4{font-size:16px}}@media(max-width:480px){.groups-header h3{font-size:14px}.group-item{padding:10px}.category-tag{padding:5px 8px;font-size:11px}.modal-content{padding:16px}.modal-header h4{font-size:14px}.category-select{font-size:13px;padding:8px 10px}}.card-spending-category-brands{margin-top:16px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.brands-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.brands-header h4{font-size:14px;font-weight:600;color:#212b36;margin:0}.btn-add-brand{padding:6px 12px;background:#6366f1;color:#fff;border:1px solid #6366f1;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-add-brand:hover:not(:disabled){background:#4f46e5;border-color:#4f46e5}.empty-state{padding:20px;text-align:center;color:#637381;font-size:13px}.brands-list{display:flex;flex-direction:column;gap:8px}.brand-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.brand-info{display:flex;flex-direction:column;gap:4px;flex:1}.brand-name{font-size:13px;font-weight:500;color:#212b36}.brand-note{font-size:12px;color:#637381}.btn-delete{padding:4px 10px;background:#fee2e2;color:#ef4444;border:1px solid #fecdd3;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.all-categories-brands{margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-toggle-all-brands{padding:8px 16px;background:#f5f5f5;color:#212b36;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%;text-align:left;display:flex;align-items:center;gap:8px}.btn-toggle-all-brands:hover{background:#eee}.other-categories-brands-list{margin-top:16px;display:flex;flex-direction:column;gap:16px}.other-category-brands{padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.other-category-brands h5{font-size:14px;font-weight:600;color:#212b36;margin:0 0 12px}.other-category-brands .brands-list{display:flex;flex-direction:column;gap:8px}.other-category-brands .brand-item.readonly{padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;flex-direction:column;gap:4px}.other-category-brands .brand-item.readonly .brand-name{font-weight:500;color:#637381}.no-brands-text{font-size:13px;color:#9ca3af;margin:0;font-style:italic}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 20px 60px #0000004d}.modal-header{padding:16px 20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.modal-header h4{font-size:16px;font-weight:600;color:#212b36;margin:0}.modal-header button{background:none;border:none;font-size:24px;color:#637381;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal-header button:hover{background:#f5f5f5;color:#212b36}.form-group label{font-size:13px;font-weight:600;color:#212b36}.brand-select,.form-group textarea{padding:8px 10px;border:1px solid #dfe4e8;border-radius:6px;font-size:13px;font-family:inherit;transition:all .2s ease}.brand-select:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.char-count{font-size:11px;color:#9ca3af;text-align:right;margin-top:-4px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid #e5e7eb}.btn-secondary{padding:8px 16px;background:#fff;color:#212b36;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-primary{padding:8px 16px;background:#212b36;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.loading{padding:20px;text-align:center;color:#637381;font-size:13px}@media(max-width:768px){.card-spending-category-brands{padding:12px}.brands-header{flex-direction:column;align-items:flex-start;gap:8px}.btn-add-brand{width:100%}.brand-item{flex-direction:column;align-items:flex-start;gap:8px}.btn-delete{width:100%}.modal-content{max-width:95%}}.card-spending-categories{margin-top:32px}.card-spending-categories h3{font-size:18px;font-weight:600;color:#212b36;margin:0 0 16px}.categories-list{display:flex;flex-direction:column;gap:16px}.category-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.category-header h4{font-size:16px;font-weight:600;color:#212b36;margin:0}.category-header .btn-edit{padding:6px 12px;background:#6366f1;color:#fff;border:1px solid #6366f1;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease}.category-header .btn-edit:hover{background:#4f46e5;border-color:#4f46e5;color:#fff}.category-edit-form{display:flex;flex-direction:column;gap:16px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #dfe4e8;border-radius:6px;font-size:14px;font-family:inherit}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px}.btn-secondary,.btn-primary{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;border:none}.btn-secondary{background:#f5f5f5;color:#212b36}.btn-primary{background:#212b36;color:#fff}.category-view{padding:8px 0}.category-details{display:flex;flex-direction:column;gap:12px}.detail-item{display:flex;gap:12px}.detail-item .label{font-weight:600;color:#637381;min-width:140px}.detail-item .value{color:#212b36}.detail-item.notes{flex-direction:column;padding-top:8px;border-top:1px solid #e5e7eb}.empty-state,.loading{padding:32px;text-align:center;color:#637381;font-size:14px}@media(max-width:768px){.card-spending-categories{margin-top:24px}.card-spending-categories h3{font-size:16px}.category-card{padding:12px}.category-header{flex-direction:column;align-items:flex-start;gap:12px}.category-header h4{font-size:14px}.category-header .btn-edit{width:100%;padding:8px 12px}.form-row{grid-template-columns:1fr;gap:12px}.form-group input,.form-group textarea{padding:8px 10px;font-size:13px}.form-actions{flex-direction:column-reverse;gap:8px}.btn-secondary,.btn-primary{width:100%;padding:10px 16px}.detail-item{flex-direction:column;gap:4px}.detail-item .label{min-width:auto;font-size:12px}.detail-item .value{font-size:14px}}@media(max-width:480px){.card-spending-categories h3{font-size:14px}.category-card{padding:10px}.category-header h4{font-size:13px}.form-group label{font-size:12px}.form-group input,.form-group textarea{font-size:12px;padding:8px}.detail-item .label{font-size:11px}.detail-item .value{font-size:13px}}.cards-page{padding:24px}.cards-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.cards-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.no-cards{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.cards-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.btn-primary:hover{background:#161c24}.cards-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#212b36;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.cards-list{display:flex;flex-direction:column;gap:16px}.card-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.card-item-header{padding:20px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e7eb}.card-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0 0 8px}.card-meta{display:flex;gap:16px;font-size:14px;color:#637381;margin:0}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.active{background:#d1fae5;color:#10b981}.status-badge.inactive{background:#fee2e2;color:#ef4444}.card-actions{display:flex;gap:12px;align-items:center}.btn-toggle,.btn-edit,.btn-expand{padding:8px 16px;border:1px solid #e5e7eb;background:#fff;color:#212b36;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-toggle:hover,.btn-edit:hover{background:#f5f5f5;border-color:#d1d5db;color:#212b36}.btn-edit{background:#6366f1;color:#fff;border-color:#6366f1}.btn-expand{min-width:36px;padding:8px}.card-expanded-content{padding:24px;background:#fafafa}@media(max-width:768px){.cards-page{padding:16px}.cards-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:16px}.cards-header h1{font-size:20px}.cards-filters{padding:16px;gap:12px}.filter-group{min-width:100%;flex:1 1 100%}.card-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.card-info{width:100%}.card-info h3{font-size:16px}.card-meta{flex-direction:column;gap:8px;font-size:12px}.card-actions{width:100%;flex-wrap:wrap;gap:8px}.btn-toggle,.btn-edit,.btn-expand{padding:6px 12px;font-size:12px;flex:1;min-width:80px}.card-expanded-content{padding:16px}}@media(max-width:480px){.cards-page{padding:12px}.cards-header h1{font-size:18px}.cards-filters{padding:12px;gap:10px}.filter-label{font-size:12px}.filter-input,.filter-select{padding:8px 10px;font-size:13px}.card-item-header{padding:12px}.card-info h3{font-size:14px}.card-meta{font-size:11px}.btn-toggle,.btn-edit,.btn-expand{padding:6px 10px;font-size:11px}.card-expanded-content{padding:12px}}.brands-page{padding:24px}.brands-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.brands-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.brands-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.brands-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.brands-loading p{color:#637381;font-size:16px}.brands-list{display:flex;flex-direction:column;gap:16px}.no-brands{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.brand-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.brand-item:hover{box-shadow:0 4px 12px #00000014}.brand-item-header{display:flex;justify-content:space-between;align-items:center;padding:20px;gap:16px}.brand-info{flex:1;display:flex;flex-direction:column;gap:8px}.brand-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.brand-meta{display:flex;gap:16px;align-items:center;font-size:14px;color:#637381;margin:0}.brand-note{font-size:14px;color:#637381;margin:0;padding-top:8px;border-top:1px solid #f5f5f5}.brand-actions{display:flex;gap:8px;align-items:center}@media(max-width:768px){.brands-page{padding:16px}.brands-header{flex-direction:column;align-items:flex-start}.brands-header h1{font-size:20px}.btn-add-new{width:100%}.brands-filters{flex-direction:column;gap:12px;padding:16px}.filter-group{min-width:unset;width:100%}.brand-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.brand-info h3{font-size:16px}.brand-meta{flex-wrap:wrap;gap:8px;font-size:13px}.brand-actions{width:100%;justify-content:stretch;gap:8px}.brand-actions button{flex:1;padding:10px;font-size:13px}}@media(max-width:480px){.brands-page{padding:12px}.brands-header h1{font-size:18px}.brands-filters{padding:12px}.filter-label{font-size:13px}.filter-input,.filter-select{padding:8px 10px;font-size:13px}.brand-item-header{padding:12px}.brand-info h3{font-size:15px}.brand-meta{font-size:12px}.brand-actions button{padding:8px;font-size:12px}}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #dfe4e8;border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s ease}.form-group input.error,.form-group select.error{border-color:#f04438}.form-group input:disabled,.form-group select:disabled{background:#f5f5f5;cursor:not-allowed}@media(max-width:768px){.modal-overlay{padding:10px}.modal-content{max-width:100%;max-height:95vh}.modal-header{padding:16px}.modal-header h2{font-size:18px}.modal-close{width:28px;height:28px;font-size:28px}.modal-form{padding:16px}.form-row{grid-template-columns:1fr;gap:12px}.form-group input,.form-group select,.form-group textarea{padding:10px;font-size:14px}.modal-actions{flex-direction:column-reverse;gap:10px;padding-top:16px;margin-top:16px}.btn-secondary,.btn-primary{width:100%;padding:12px 20px}}@media(max-width:480px){.modal-overlay{padding:0}.modal-content{border-radius:0;max-height:100vh}.modal-header{padding:12px}.modal-header h2{font-size:16px}.modal-form{padding:12px}.form-group label{font-size:13px}.form-group input,.form-group select,.form-group textarea{font-size:13px;padding:8px 10px}}.card-redemption-options-page{padding:24px}.card-redemption-options-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.card-redemption-options-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.card-redemption-options-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.card-redemption-options-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.card-redemption-options-loading p{color:#637381;font-size:16px}.card-redemption-options-list{display:flex;flex-direction:column;gap:16px}.no-card-redemption-options{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.card-redemption-option-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.card-redemption-option-item:hover{box-shadow:0 4px 12px #00000014}.card-redemption-option-item-header{display:flex;justify-content:space-between;align-items:center;padding:20px;gap:16px}.card-redemption-option-info{flex:1;display:flex;flex-direction:column;gap:8px}.card-redemption-option-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.card-redemption-option-meta{display:flex;gap:16px;align-items:center;font-size:14px;color:#637381;margin:0;flex-wrap:wrap}.card-redemption-option-note{font-size:14px;color:#637381;margin:0;padding-top:8px;border-top:1px solid #f5f5f5}.recommended-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;background:#d1fae5;color:#065f46}.card-redemption-option-actions{display:flex;gap:8px;align-items:center}@media(max-width:768px){.card-redemption-options-page{padding:16px}.card-redemption-options-header{flex-direction:column;align-items:flex-start}.card-redemption-options-header h1{font-size:20px}.btn-add-new{width:100%}.card-redemption-options-filters{flex-direction:column;gap:12px;padding:16px}.filter-group{min-width:unset;width:100%}.card-redemption-option-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.card-redemption-option-info h3{font-size:16px}.card-redemption-option-meta{flex-wrap:wrap;gap:8px;font-size:13px}.card-redemption-option-actions{width:100%;justify-content:stretch;gap:8px}.card-redemption-option-actions button{flex:1;padding:10px;font-size:13px}}@media(max-width:480px){.card-redemption-options-page{padding:12px}.card-redemption-options-header h1{font-size:18px}.card-redemption-options-filters{padding:12px}.filter-label{font-size:13px}.filter-input,.filter-select{padding:8px 10px;font-size:13px}.card-redemption-option-item-header{padding:12px}.card-redemption-option-info h3{font-size:15px}.card-redemption-option-meta{font-size:12px}.card-redemption-option-actions button{padding:8px;font-size:12px}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{padding:24px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:#fff;z-index:10}.modal-close{background:none;border:none;font-size:32px;color:#637381;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.modal-close:hover{background:#f5f5f5;color:#212b36}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.form-group label{font-size:14px;font-weight:600;color:#212b36}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #dfe4e8;border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-group input.error,.form-group textarea.error{border-color:#f04438}.error-text{font-size:12px;color:#f04438;margin-top:-4px}.char-count{font-size:12px;color:#9ca3af;text-align:right;margin-top:-4px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-secondary{padding:10px 20px;background:#fff;color:#212b36;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#f5f5f5}.btn-primary{padding:10px 20px;background:#212b36;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover:not(:disabled){background:#161c24}.btn-primary:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.modal-overlay{padding:10px}.modal-content{max-width:100%;max-height:95vh}.modal-header{padding:16px}.modal-header h2{font-size:18px}.modal-close{width:28px;height:28px;font-size:28px}.modal-form{padding:16px}.form-group input,.form-group textarea{padding:10px;font-size:14px}.modal-actions{flex-direction:column-reverse;gap:10px;padding-top:16px;margin-top:16px}.btn-secondary,.btn-primary{width:100%;padding:12px 20px}}@media(max-width:480px){.modal-overlay{padding:0}.modal-content{border-radius:0;max-height:100vh}.modal-header{padding:12px}.modal-header h2{font-size:16px}.modal-form{padding:12px}.form-group label{font-size:13px}.form-group input,.form-group textarea{font-size:13px;padding:8px 10px}}.redemption-options-page{padding:24px}.redemption-options-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.redemption-options-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.redemption-options-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.redemption-options-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.redemption-options-loading p{color:#637381;font-size:16px}.redemption-options-list{display:flex;flex-direction:column;gap:16px}.no-redemption-options{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.redemption-option-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.redemption-option-item:hover{box-shadow:0 4px 12px #00000014}.redemption-option-item-header{display:flex;justify-content:space-between;align-items:center;padding:20px;gap:16px}.redemption-option-info{flex:1;display:flex;flex-direction:column;gap:8px}.redemption-option-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.redemption-option-meta{display:flex;gap:16px;align-items:center;font-size:14px;color:#637381;margin:0}.redemption-option-note{font-size:14px;color:#637381;margin:0;padding-top:8px;border-top:1px solid #f5f5f5}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.redemption-option-actions{display:flex;gap:8px;align-items:center}.btn-toggle{padding:8px 16px;background:#f5f5f5;color:#212b36;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-toggle:hover{background:#e5e7eb}.btn-edit:hover{background:#4f46e5;border-color:#4f46e5;color:#fff}@media(max-width:768px){.redemption-options-page{padding:16px}.redemption-options-header{flex-direction:column;align-items:flex-start}.redemption-options-header h1{font-size:20px}.btn-add-new{width:100%}.redemption-options-filters{flex-direction:column;gap:12px;padding:16px}.filter-group{min-width:unset;width:100%}.redemption-option-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.redemption-option-info h3{font-size:16px}.redemption-option-meta{flex-wrap:wrap;gap:8px;font-size:13px}.redemption-option-actions{width:100%;justify-content:stretch;gap:8px}.redemption-option-actions button{flex:1;padding:10px;font-size:13px}}@media(max-width:480px){.redemption-options-page{padding:12px}.redemption-options-header h1{font-size:18px}.redemption-options-filters{padding:12px}.filter-label{font-size:13px}.filter-input,.filter-select{padding:8px 10px;font-size:13px}.redemption-option-item-header{padding:12px}.redemption-option-info h3{font-size:15px}.redemption-option-meta{font-size:12px}.redemption-option-actions button{padding:8px;font-size:12px}}.benefit-brands{margin-top:20px;padding:15px;background:#f9fafb;border-radius:8px}.benefit-brands .brands-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.benefit-brands .brands-header h4{margin:0;font-size:16px;font-weight:600;color:#1f2937}.btn-add-brand{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-add-brand:hover:not(:disabled){background:#2563eb}.btn-add-brand:disabled{opacity:.5;cursor:not-allowed}.benefit-brands .empty-state{text-align:center;padding:20px;color:#6b7280}.benefit-brands .brands-list{display:flex;flex-direction:column;gap:10px}.benefit-brands .brand-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.benefit-brands .brand-info{display:flex;flex-direction:column;gap:4px}.benefit-brands .brand-name{font-weight:500;color:#1f2937}.benefit-brands .brand-note{font-size:12px;color:#6b7280}.btn-delete{padding:6px 12px;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.btn-delete:hover{background:#dc2626}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e5e7eb}.modal-header h4{margin:0;font-size:18px;font-weight:600}.modal-header button{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280}.modal-header button:hover{color:#1f2937}.modal-body{padding:20px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#374151}.brand-select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.form-group textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical}.char-count{display:block;text-align:right;font-size:12px;color:#6b7280;margin-top:4px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid #e5e7eb}.btn-secondary{padding:10px 20px;background:#f3f4f6;color:#374151;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-primary{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-primary:hover:not(:disabled){background:#2563eb}.welcome-benefits-page{padding:24px}.welcome-benefits-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.welcome-benefits-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.welcome-benefits-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.welcome-benefits-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.welcome-benefits-loading p{color:#637381;font-size:16px}.welcome-benefits-list{display:flex;flex-direction:column;gap:16px}.no-welcome-benefits{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.welcome-benefit-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.welcome-benefit-item:hover{box-shadow:0 4px 12px #00000014}.welcome-benefit-item-header{display:flex;justify-content:space-between;align-items:center;padding:20px;gap:16px}.welcome-benefit-info{flex:1;display:flex;flex-direction:column;gap:8px}.welcome-benefit-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.welcome-benefit-meta{display:flex;gap:16px;align-items:center;font-size:14px;color:#637381;margin:0;flex-wrap:wrap}.welcome-benefit-actions{display:flex;gap:8px;align-items:center}.welcome-benefit-expanded-content{padding:20px;border-top:1px solid #e5e7eb;background:#f9fafb}@media(max-width:768px){.welcome-benefits-page{padding:16px}.welcome-benefits-header{flex-direction:column;align-items:flex-start}.welcome-benefits-header h1{font-size:20px}.btn-add-new{width:100%}.welcome-benefits-filters{flex-direction:column;gap:12px;padding:16px}.filter-group{min-width:unset;width:100%}.welcome-benefit-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.welcome-benefit-actions{width:100%;justify-content:stretch;gap:8px}.welcome-benefit-actions button{flex:1;padding:10px}}.food-dining-benefits-page{padding:24px}.food-dining-benefits-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.food-dining-benefits-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.food-dining-benefits-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.food-dining-benefits-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.food-dining-benefits-loading p{color:#637381;font-size:16px}.food-dining-benefits-list{display:flex;flex-direction:column;gap:16px}.no-food-dining-benefits{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.food-dining-benefit-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.food-dining-benefit-item:hover{box-shadow:0 4px 12px #00000014}.food-dining-benefit-item-header{display:flex;justify-content:space-between;align-items:center;padding:20px;gap:16px}.food-dining-benefit-info{flex:1;display:flex;flex-direction:column;gap:8px}.food-dining-benefit-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.food-dining-benefit-meta{display:flex;gap:16px;align-items:center;font-size:14px;color:#637381;margin:0;flex-wrap:wrap}.food-dining-benefit-actions{display:flex;gap:8px;align-items:center}.food-dining-benefit-expanded-content{padding:20px;border-top:1px solid #e5e7eb;background:#f9fafb}@media(max-width:768px){.food-dining-benefits-page{padding:16px}.food-dining-benefits-header{flex-direction:column;align-items:flex-start}.food-dining-benefits-header h1{font-size:20px}.btn-add-new{width:100%}.food-dining-benefits-filters{flex-direction:column;gap:12px;padding:16px}.filter-group{min-width:unset;width:100%}.food-dining-benefit-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.food-dining-benefit-actions{width:100%;justify-content:stretch;gap:8px}.food-dining-benefit-actions button{flex:1;padding:10px}}.travel-benefits-page{padding:24px}.travel-benefits-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.travel-benefits-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.travel-benefits-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.travel-benefits-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.travel-benefits-loading p{color:#637381;font-size:16px}.travel-benefits-list{display:flex;flex-direction:column;gap:16px}.no-travel-benefits{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.travel-benefit-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.travel-benefit-item:hover{box-shadow:0 4px 12px #00000014}.travel-benefit-item-header{display:flex;justify-content:space-between;align-items:center;padding:20px;gap:16px}.travel-benefit-info{flex:1;display:flex;flex-direction:column;gap:8px}.travel-benefit-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.travel-benefit-meta{display:flex;gap:16px;align-items:center;font-size:14px;color:#637381;margin:0;flex-wrap:wrap}.travel-benefit-actions{display:flex;gap:8px;align-items:center}.travel-benefit-expanded-content{padding:20px;border-top:1px solid #e5e7eb;background:#f9fafb}@media(max-width:768px){.travel-benefits-page{padding:16px}.travel-benefits-header{flex-direction:column;align-items:flex-start}.travel-benefits-header h1{font-size:20px}.btn-add-new{width:100%}.travel-benefits-filters{flex-direction:column;gap:12px;padding:16px}.filter-group{min-width:unset;width:100%}.travel-benefit-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.travel-benefit-actions{width:100%;justify-content:stretch;gap:8px}.travel-benefit-actions button{flex:1;padding:10px}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:20px;font-weight:700;color:#212b36;margin:0}.modal-close{background:none;border:none;font-size:28px;color:#637381;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.modal-close:hover{background:#f3f4f6;color:#212b36}.modal-form{padding:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:600;color:#374151}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#212b36;background:#fff;transition:border-color .2s ease,box-shadow .2s ease;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.form-group input.error,.form-group select.error{border-color:#ef4444}.form-group input:disabled,.form-group select:disabled{background:#f3f4f6;cursor:not-allowed}.error-text{font-size:12px;color:#ef4444;margin-top:4px}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e5e7eb;margin-top:24px}.btn-secondary{padding:10px 20px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#e5e7eb}.btn-primary{padding:10px 20px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover:not(:disabled){background:#4f46e5}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.milestone-section{margin-bottom:24px;padding:16px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.milestone-section h3{font-size:16px;font-weight:600;color:#212b36;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}@media(max-width:768px){.modal-overlay{padding:10px}.modal-content{max-height:95vh}.modal-header{padding:16px}.modal-header h2{font-size:18px}.modal-form{padding:16px}.form-row{grid-template-columns:1fr;gap:12px}.modal-actions{flex-direction:column-reverse;gap:10px}.btn-secondary,.btn-primary{width:100%;padding:12px}}.milestone-benefits-page{padding:24px}.milestone-benefits-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:16px}.btn-add-new{padding:10px 20px;background:#212b36;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-add-new:hover{background:#161c24}.milestone-benefits-header h1{font-size:24px;font-weight:700;color:#212b36;margin:0}.milestone-benefits-filters{display:flex;gap:16px;margin-bottom:24px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:8px;min-width:200px;flex:1}.filter-label{font-size:14px;font-weight:600;color:#212b36}.filter-input,.filter-select{padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;color:#212b36;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.filter-input:focus,.filter-select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.filter-input::placeholder{color:#9ca3af}.milestone-benefits-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 24px}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.milestone-benefits-loading p{color:#637381;font-size:16px}.milestone-benefits-list{display:flex;flex-direction:column;gap:16px}.no-milestone-benefits{padding:60px 24px;text-align:center;color:#637381;font-size:16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.milestone-benefit-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.milestone-benefit-item:hover{box-shadow:0 4px 12px #00000014}.milestone-benefit-item-header{display:flex;justify-content:space-between;align-items:center;padding:20px;gap:16px}.milestone-benefit-info{flex:1;display:flex;flex-direction:column;gap:8px}.milestone-benefit-info h3{font-size:18px;font-weight:600;color:#212b36;margin:0}.milestone-benefit-meta{display:flex;gap:16px;align-items:center;font-size:14px;color:#637381;margin:0;flex-wrap:wrap}.brands-count{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;background:#dbeafe;color:#1e40af}.milestone-benefit-actions{display:flex;gap:8px;align-items:center}.btn-expand{padding:8px 12px;background:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s ease}.btn-expand:hover{background:#e5e7eb}.btn-edit{background:#6366f1;color:#fff;border:1px solid #6366f1;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-edit:hover{background:#4f46e5;border-color:#4f46e5}.btn-delete{padding:8px 16px;background:#fee2e2;color:#ef4444;border:1px solid #fecdd3;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-delete:hover{background:#fecaca;border-color:#fca5a5}.milestone-benefit-expanded-content{padding:20px;border-top:1px solid #e5e7eb;background:#f9fafb}@media(max-width:768px){.milestone-benefits-page{padding:16px}.milestone-benefits-header{flex-direction:column;align-items:flex-start}.milestone-benefits-header h1{font-size:20px}.btn-add-new{width:100%}.milestone-benefits-filters{flex-direction:column;gap:12px;padding:16px}.filter-group{min-width:unset;width:100%}.milestone-benefit-item-header{flex-direction:column;align-items:flex-start;gap:12px;padding:16px}.milestone-benefit-actions{width:100%;justify-content:stretch;gap:8px}.milestone-benefit-actions button{flex:1;padding:10px}}
