*{box-sizing:border-box;margin:0;padding:0}body{background:#0d0d0d;color:#e4e6eb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;padding-bottom:0}a{color:inherit;text-decoration:none;transition:all .3s ease}.section-title,h1,h2,h3,h4,h5,h6{font-weight:600}.section-title{align-items:center;color:#fff;display:flex;font-size:16px;gap:10px;margin-bottom:15px;padding-left:5px}.section-title i{color:#667eea;font-size:18px}.page-title{font-size:18px;font-weight:600}.header{background:#1a1a1a;border-bottom:1px solid hsla(0,0%,100%,.05);padding:15px 20px;position:sticky;top:0;z-index:1000}.header-top{align-items:center;display:flex;justify-content:space-between}.header-actions{display:flex;gap:10px}.content{max-width:1200px}.content,.form-container{margin:0 auto;padding:20px}.form-container{max-width:800px}.form-header{background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:16px;margin-bottom:20px;padding:20px}.form-header h1{color:#fff;font-size:24px;font-weight:600;margin-bottom:8px}.form-header p{color:#9ca3af;font-size:14px}.form-section,.panel{background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:16px;margin-bottom:20px;padding:20px}.form-section-title{align-items:center;color:#fff;display:flex;font-size:16px;font-weight:600;gap:10px;margin-bottom:15px}.form-section-title i{color:#667eea}.btn,.btn-login,.filter-btn,button,input[type=button],input[type=submit]{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-login:active,.btn:active,.filter-btn:active,button:active,input[type=button]:active,input[type=submit]:active{transform:scale(.98)}.btn-login,.btn-primary,.filter-btn,button[type=submit]{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px rgba(102,126,234,.3);color:#fff}.btn-login:hover,.btn-primary:hover,.filter-btn:hover,button[type=submit]:hover{box-shadow:0 6px 20px rgba(102,126,234,.4);color:#fff;transform:translateY(-2px)}.btn-secondary{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);color:#e4e6eb}.btn-secondary:hover{background:hsla(0,0%,100%,.1);color:#fff}.btn-danger{background:rgba(244,63,94,.15);border:1px solid rgba(244,63,94,.3);color:#f43f5e}.btn-danger:hover{background:rgba(244,63,94,.25);color:#f43f5e}.icon-btn{align-items:center;background:hsla(0,0%,100%,.05);border:none;border-radius:12px;color:#e4e6eb;display:flex;height:40px;justify-content:center;transition:all .3s ease;width:40px}.icon-btn:active{background:hsla(0,0%,100%,.1);transform:scale(.95)}.action-btn{align-items:center;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:10px;color:#e4e6eb;cursor:pointer;display:flex;flex:1;font-size:13px;gap:6px;justify-content:center;padding:10px;transition:all .3s ease}.action-btn:active{background:hsla(0,0%,100%,.1);transform:scale(.95)}.action-btn.edit{color:#667eea}.action-btn.detail{color:#ea7e66}.action-btn.features{color:#409646}.action-btn.add{color:#028900}.action-btn.delete{color:#f43f5e}.fab{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;bottom:90px;box-shadow:0 8px 25px rgba(102,126,234,.5);color:#fff;cursor:pointer;display:flex;font-size:24px;height:60px;justify-content:center;position:fixed;right:20px;transition:all .3s ease;width:60px;z-index:900}.fab:active{transform:scale(.9)}.btn-login.loading,button.loading{color:transparent!important;position:relative}.btn-login.loading:after,button.loading:after{animation:spinner .6s linear infinite;border:2px solid #fff;border-radius:50%;border-top-color:transparent;content:"";height:16px;left:50%;margin-left:-8px;margin-top:-8px;position:absolute;top:50%;width:16px}@keyframes spinner{to{transform:rotate(1turn)}}.form-group,.form-row{margin-bottom:20px}.form-label,label{color:#9ca3af;display:block;font-size:13px;font-weight:500;margin-bottom:8px}.form-label .required,.form-label.required:after,label .required,label.required:after{color:#f43f5e;content:" *"}.filter-input,.form-control,.form-input,input[type=date],input[type=datetime-local],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],input[type=week],select,textarea{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);border-radius:12px;color:#e4e6eb;font-family:inherit;font-size:15px;padding:12px 15px;transition:all .3s ease;width:100%}.filter-input::-moz-placeholder,.form-control::-moz-placeholder,.form-input::-moz-placeholder,input[type=date]::-moz-placeholder,input[type=datetime-local]::-moz-placeholder,input[type=email]::-moz-placeholder,input[type=month]::-moz-placeholder,input[type=number]::-moz-placeholder,input[type=password]::-moz-placeholder,input[type=search]::-moz-placeholder,input[type=tel]::-moz-placeholder,input[type=text]::-moz-placeholder,input[type=time]::-moz-placeholder,input[type=url]::-moz-placeholder,input[type=week]::-moz-placeholder,select::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280}.filter-input::placeholder,.form-control::placeholder,.form-input::placeholder,input[type=date]::placeholder,input[type=datetime-local]::placeholder,input[type=email]::placeholder,input[type=month]::placeholder,input[type=number]::placeholder,input[type=password]::placeholder,input[type=search]::placeholder,input[type=tel]::placeholder,input[type=text]::placeholder,input[type=time]::placeholder,input[type=url]::placeholder,input[type=week]::placeholder,select::placeholder,textarea::placeholder{color:#6b7280}.filter-input:focus,.form-control:focus,.form-input:focus,input[type=date]:focus,input[type=datetime-local]:focus,input[type=email]:focus,input[type=month]:focus,input[type=number]:focus,input[type=password]:focus,input[type=search]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,input[type=url]:focus,input[type=week]:focus,select:focus,textarea:focus{background:rgba(102,126,234,.05);border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1);outline:none}.filter-input.is-invalid,.form-control.is-invalid,.form-input.is-invalid,input[type=date].is-invalid,input[type=datetime-local].is-invalid,input[type=email].is-invalid,input[type=month].is-invalid,input[type=number].is-invalid,input[type=password].is-invalid,input[type=search].is-invalid,input[type=tel].is-invalid,input[type=text].is-invalid,input[type=time].is-invalid,input[type=url].is-invalid,input[type=week].is-invalid,select.is-invalid,textarea.is-invalid{background:rgba(244,63,94,.05);border-color:#f43f5e}.filter-input.is-invalid:focus,.form-control.is-invalid:focus,.form-input.is-invalid:focus,input[type=date].is-invalid:focus,input[type=datetime-local].is-invalid:focus,input[type=email].is-invalid:focus,input[type=month].is-invalid:focus,input[type=number].is-invalid:focus,input[type=password].is-invalid:focus,input[type=search].is-invalid:focus,input[type=tel].is-invalid:focus,input[type=text].is-invalid:focus,input[type=time].is-invalid:focus,input[type=url].is-invalid:focus,input[type=week].is-invalid:focus,select.is-invalid:focus,textarea.is-invalid:focus{box-shadow:0 0 0 3px rgba(244,63,94,.1)}textarea{min-height:100px;resize:vertical}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%23e4e6eb' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;cursor:pointer;padding-right:40px}select option{background:#1a1a1a;color:#e4e6eb;padding:10px}select option:checked,select option:hover{background:#667eea;color:#fff}.form-check{align-items:center;display:flex;margin-bottom:10px}.form-check label{cursor:pointer;margin-bottom:0}.form-check input[type=checkbox],.form-check input[type=radio]{accent-color:#667eea;cursor:pointer;height:18px;margin-right:10px;width:18px}.input-wrapper{position:relative}.input-wrapper .input-icon{color:#6b7280;font-size:16px;left:15px;position:absolute;top:50%;transform:translateY(-50%)}.input-wrapper input.form-input{padding-left:45px}.password-toggle{background:none;border:none;color:#6b7280;cursor:pointer;padding:5px;position:absolute;right:15px;top:50%;transform:translateY(-50%);transition:all .3s ease}.password-toggle:hover{color:#667eea}.form-help,.form-text,small{color:#6b7280;display:block;font-size:12px;margin-top:6px}.error,.form-error-message,.invalid-feedback{animation:slideDown .3s ease;color:#f43f5e;display:block;font-size:12px;margin-top:6px}.collection-widget{margin-bottom:20px}.collection-item{background:hsla(0,0%,100%,.03);border:1px solid hsla(0,0%,100%,.05);border-radius:12px;margin-bottom:10px;padding:15px}.collection-item .btn-remove{background:rgba(244,63,94,.15);color:#f43f5e;font-size:13px;margin-top:10px;padding:8px 12px}.btn-add-collection{background:rgba(102,126,234,.15);border:1px solid rgba(102,126,234,.3);color:#667eea;font-size:14px;padding:10px 15px}.choice-widget{display:flex;flex-direction:column;gap:10px}.choice-widget label{align-items:center;background:hsla(0,0%,100%,.03);border-radius:10px;cursor:pointer;display:flex;margin-bottom:0;padding:12px;transition:all .3s ease}.choice-widget label:hover{background:hsla(0,0%,100%,.05)}.choice-widget label input{margin-right:10px}.alert{align-items:center;border-radius:12px;display:flex;font-size:13px;gap:12px;margin-bottom:20px;padding:12px 15px}.alert i{font-size:18px}.alert-success{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.3);color:#0da573}.alert-danger,.alert-error{background:rgba(244,63,94,.1);border:1px solid rgba(244,63,94,.3);color:#f43f5e}.alert-warning{background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.3);color:#f59e0b}.alert-info{background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.3);color:#93c5fd}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.purchases-list{display:flex;flex-direction:column;gap:15px}.card{background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:16px;padding:16px;transition:all .3s ease}.card .card-header{align-items:flex-start;border-bottom:1px solid hsla(0,0%,100%,.05);display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:12px}.card .card-header .card-header-title-block{flex:1}.card .card-header .card-header-title{align-items:center;color:#fff;display:flex;font-size:16px;font-weight:600;gap:8px;margin-bottom:4px}.card .card-header .card-header-title i{color:#667eea;font-size:14px}.card .card-header .card-header-subtitle{color:#9ca3af;font-size:12px}.card .card-items{margin-bottom:12px}.card .card-items .card-items-title{color:#e4e6eb;font-size:15px;font-weight:500;margin-bottom:8px}.card .card-items .card-items-details{display:grid;gap:10px;grid-template-columns:repeat(3,1fr)}.card .card-items .card-items-details.repeat1{grid-template-columns:repeat(1,1fr)}.card .card-items .card-items-details.repeat2{grid-template-columns:repeat(2,1fr)}.card .card-items .card-items-details .detail-item{background:hsla(0,0%,100%,.03);border-radius:8px;padding:8px;text-align:center}.card .card-items .card-items-details .detail-item .detail-label{color:#9ca3af;font-size:10px;margin-bottom:4px;text-transform:uppercase}.card .card-items .card-items-details .detail-item .detail-value{color:#e4e6eb;font-size:14px;font-weight:600}.card .card-items .card-items-details .detail-item .detail-value .extra{color:#b7b7b7;font-size:11px}.card-actions{display:flex;gap:8px;margin-top:12px}.stats-summary{display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.stat-mini{background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:12px;padding:15px}.stat-mini h4{color:#9ca3af;font-size:12px;margin-bottom:5px}.stat-mini .value{color:#fff;font-size:20px;font-weight:700}.filter-section{background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:16px;margin-bottom:20px;padding:15px}.filter-row{display:flex;gap:10px;margin-bottom:10px}.filter-row:last-child{margin-bottom:0}.total-amount{text-align:right}.amount-label{color:#9ca3af;font-size:11px;margin-bottom:2px}.amount-value{color:#10b981;font-size:20px;font-weight:700}.amount-value.amount-value--small{font-size:16px}.comment-section{border-top:1px solid hsla(0,0%,100%,.05);margin-top:12px;padding-top:12px}.comment-label{align-items:center;color:#9ca3af;display:flex;font-size:11px;gap:6px;margin-bottom:6px}.comment-text{color:#e4e6eb;font-size:13px;font-style:italic;line-height:1.5}.menu-grid{display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:30px}.menu-card{align-items:center;background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:16px;color:inherit;display:flex;flex-direction:column;gap:12px;overflow:hidden;padding:20px;position:relative;text-align:center;text-decoration:none;transition:all .3s ease}.menu-card:before{background:linear-gradient(90deg,transparent,#667eea,transparent);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.menu-card:hover:before{opacity:1}.menu-card:active{transform:scale(.97)}.menu-card .menu-icon{align-items:center;border-radius:16px;display:flex;font-size:28px;height:60px;justify-content:center;transition:all .3s ease;width:60px}.menu-card:hover .menu-icon{transform:scale(1.1)}.menu-card:first-child .menu-icon{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.menu-card:nth-child(2) .menu-icon{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.menu-card:nth-child(3) .menu-icon{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.menu-card:nth-child(4) .menu-icon{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.menu-card:nth-child(5) .menu-icon{background:linear-gradient(135deg,#fa709a,#fee140);color:#fff}.menu-card:nth-child(6) .menu-icon{background:linear-gradient(135deg,#30cfd0,#330867);color:#fff}.menu-card:nth-child(7) .menu-icon{background:linear-gradient(135deg,#a8edea,#fed6e3);color:#1a1a1a}.menu-card:nth-child(8) .menu-icon{background:linear-gradient(135deg,#ff9a9e,#fecfef);color:#1a1a1a}.menu-card:nth-child(9) .menu-icon{background:linear-gradient(135deg,#ffecd2,#fcb69f);color:#1a1a1a}.menu-card:nth-child(10) .menu-icon{background:linear-gradient(135deg,#ff6e7f,#bfe9ff);color:#fff}.menu-card:nth-child(11) .menu-icon{background:linear-gradient(135deg,#e0c3fc,#8ec5fc);color:#1a1a1a}.menu-card .menu-title{color:#fff;font-size:15px;font-weight:600}.menu-card .menu-description{color:#9ca3af;font-size:12px;line-height:1.4}.menu-list{display:flex;flex-direction:column;gap:12px}.menu-item{align-items:center;background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:12px;color:inherit;display:flex;gap:15px;padding:16px 20px;text-decoration:none;transition:all .3s ease}.menu-item:active{transform:scale(.98)}.menu-item .menu-item-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:20px;height:45px;justify-content:center;width:45px}.menu-item .menu-item-content{flex:1}.menu-item .menu-item-title{color:#fff;font-size:15px;font-weight:600;margin-bottom:2px}.menu-item .menu-item-subtitle{color:#9ca3af;font-size:12px}.menu-item .menu-item-arrow{color:#6b7280;font-size:18px}.menu-item.logout-item .menu-item-icon{background:rgba(244,63,94,.15);color:#f43f5e}.menu-item.logout-item:hover{background:rgba(244,63,94,.05);border-color:rgba(244,63,94,.2)}.bottom-nav{background:#1a1a1a;border-top:1px solid hsla(0,0%,100%,.05);bottom:0;box-shadow:0 -5px 20px rgba(0,0,0,.3);justify-content:space-around;left:0;padding:12px 20px 20px;position:fixed;right:0;z-index:100}.bottom-nav,.nav-item{align-items:center;display:flex}.nav-item{border-radius:12px;color:#6b7280;flex-direction:column;font-size:11px;gap:6px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.nav-item i{font-size:22px}.nav-item.active{background:rgba(102,126,234,.1);color:#667eea}.nav-item:active{transform:scale(.9)}.login-page-container{align-items:center;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.login-page-container:after,.login-page-container:before{animation:pulse 8s ease-in-out infinite;content:"";position:absolute}.login-page-container:before{background:radial-gradient(circle,rgba(102,126,234,.15) 0,transparent 70%);height:500px;right:-250px;top:-250px;width:500px}.login-page-container:after{animation-duration:6s;background:radial-gradient(circle,rgba(118,75,162,.15) 0,transparent 70%);bottom:-200px;height:400px;left:-200px;width:400px}@keyframes pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.login-container{max-width:420px;position:relative;width:100%;z-index:1}.login-header{margin-bottom:40px;text-align:center}.login-header .logo-icon{align-items:center;animation:fadeInDown .6s ease;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 30px rgba(102,126,234,.3);color:#fff;display:flex;font-size:40px;height:80px;justify-content:center;margin:0 auto 20px;width:80px}.login-header .login-title{color:#fff;font-size:28px;font-weight:700;margin-bottom:8px}.login-header .login-subtitle{color:#9ca3af;font-size:14px}.login-card{animation:fadeInUp .6s ease;background:#1a1a1a;border:1px solid hsla(0,0%,100%,.05);border-radius:20px;box-shadow:0 20px 60px rgba(0,0,0,.5);padding:35px}.form-grid{display:grid;gap:15px;grid-template-columns:1fr}.form-grid-2{grid-template-columns:repeat(2,1fr)}@media (min-width:768px){body{padding-bottom:0}.content,.form-container{padding:30px}.stats-summary{grid-template-columns:repeat(4,1fr)}.purchases-list{display:grid;gap:15px;grid-template-columns:repeat(2,1fr)}.menu-grid{gap:20px;grid-template-columns:repeat(3,1fr)}.menu-card{padding:25px}.bottom-nav{display:none}.fab{bottom:30px}.form-grid{gap:15px}.form-grid,.form-grid-2{grid-template-columns:repeat(2,1fr)}.button-group button,.form-actions button{flex:0 1 auto;min-width:150px}}@media (min-width:1024px){.purchases-list{grid-template-columns:repeat(3,1fr)}.menu-grid{grid-template-columns:repeat(4,1fr)}.form-grid-2{grid-template-columns:repeat(3,1fr)}}@media (max-width:480px){.login-card{padding:25px 20px}.login-title{font-size:24px}.login-header .logo-icon{font-size:35px;height:70px;width:70px}}