body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.bell-button,.notification-center{position:relative}.bell-button{align-items:center;background:none;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;font-size:24px;height:48px;justify-content:center;padding:8px;transition:transform .2s ease;width:48px}.bell-button:hover{background-color:#f0f0f0;transform:scale(1.1)}.bell-icon{animation:subtle-bounce 2s infinite;display:block}@keyframes subtle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.badge{align-items:center;background:#e74c3c;border-radius:50%;box-shadow:0 2px 4px #0003;color:#fff;font-size:12px;font-weight:700;height:24px;justify-content:center;top:0;width:24px}.badge,.notification-dropdown{display:flex;position:absolute;right:0}.notification-dropdown{animation:slideDown .2s ease;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;flex-direction:column;margin-top:8px;max-height:500px;overflow:hidden;top:100%;width:360px;z-index:1000}.notification-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px}.notification-header h3{color:#333;font-size:18px;font-weight:600;margin:0}.unread-indicator{background:#e74c3c;border-radius:12px;color:#fff;font-size:12px;font-weight:600;padding:4px 8px}.notification-list{flex:1 1;max-height:360px;overflow-y:auto}.notification-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;gap:12px;padding:12px 16px;position:relative;transition:background-color .2s ease}.notification-item:hover{background-color:#f8f8f8}.notification-item.unread{background-color:#f0f7ff}.notification-content{flex:1 1;min-width:0}.notification-title{color:#333;font-size:14px;font-weight:600;margin-bottom:4px}.notification-body{color:#666;font-size:13px;line-height:1.4;margin-bottom:6px;white-space:normal;word-break:break-word}.notification-time{color:#999;font-size:12px}.delete-button{background:none;border:none;color:#999;cursor:pointer;flex-shrink:0;font-size:16px;padding:0;transition:color .2s ease}.delete-button:hover{color:#e74c3c}.unread-indicator-dot{background:#e74c3c;border-radius:50%;flex-shrink:0;height:8px;margin-left:4px;width:8px}.empty-state{padding:32px 16px}.notification-footer{border-top:1px solid #e0e0e0;padding:12px 16px;text-align:center}.view-all-link{color:#667eea;font-size:14px;font-weight:500;text-decoration:none;transition:color .2s ease}.view-all-link:hover{color:#5568d3}.overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}@media (max-width:480px){.notification-dropdown{border-radius:16px 16px 0 0;bottom:0;left:0;margin-top:0;max-height:80vh;position:fixed;right:0;top:auto;width:100%}.notification-list{max-height:calc(80vh - 100px)}}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-track{background:#0000}.notification-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.notification-list::-webkit-scrollbar-thumb:hover{background:#999}.navbar{background:linear-gradient(135deg,#2c3e50,#34495e);box-shadow:0 2px 8px #00000026;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.navbar-container{align-items:center;display:flex;height:70px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.navbar-brand{font-size:24px;font-weight:700;margin:0}.navbar-brand a{align-items:center;color:#fff;display:flex;gap:10px;text-decoration:none;transition:color .3s ease}.navbar-brand a:hover{color:#3498db}.navbar-notifications{align-items:center;display:flex;margin:0 20px}.navbar-toggle{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:6px;padding:0}.hamburger{background-color:#fff;border-radius:2px;height:3px;transition:all .3s ease;width:25px}.navbar-toggle.active .hamburger:first-child{transform:rotate(45deg) translate(8px,8px)}.navbar-toggle.active .hamburger:nth-child(2){opacity:0}.navbar-toggle.active .hamburger:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}.navbar-menu{flex:1 1;gap:30px;justify-content:flex-start;margin-left:40px}.navbar-menu,.navbar-nav{align-items:center;display:flex}.navbar-nav{gap:0;list-style:none;margin:0;padding:0}.nav-item{position:relative}.nav-link{border-radius:4px;color:#ecf0f1;display:block;font-size:14px;font-weight:500;padding:8px 16px;text-decoration:none;transition:all .3s ease}.nav-link:hover{background-color:#3498db33;color:#3498db}.dropdown{position:relative}.dropdown-toggle{align-items:center;cursor:pointer;display:flex;gap:4px}.dropdown-toggle:after{content:"▼";font-size:10px;transition:transform .3s ease}.dropdown:hover .dropdown-toggle:after{transform:rotate(-180deg)}.dropdown-menu{background:#2c3e50;border:1px solid #34495e;border-radius:4px;box-shadow:0 4px 12px #0000004d;left:0;list-style:none;margin:8px 0 0;min-width:180px;opacity:0;padding:8px 0;position:absolute;top:100%;transform:translateY(-10px);transition:all .3s ease;visibility:hidden}.dropdown:hover .dropdown-menu{opacity:1;transform:translateY(0);visibility:visible}.dropdown-menu li{margin:0;padding:0}.dropdown-menu a{color:#ecf0f1;display:block;font-size:13px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.dropdown-menu a:hover{background-color:#3498db;color:#fff}.navbar-user{align-items:center;border-left:1px solid #fff3;display:flex;gap:20px;margin-left:auto;padding-left:20px}.user-info{text-align:right}.user-name{color:#ecf0f1;font-size:14px;margin-bottom:2px}.user-role{color:#3498db;font-size:12px;font-weight:500}.logout-btn{background-color:#e74c3c;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease}.logout-btn:hover{background-color:#c0392b;box-shadow:0 4px 8px #e74c3c4d;transform:translateY(-2px)}@media (max-width:768px){.navbar-container{flex-wrap:wrap;height:auto;padding:15px 20px}.navbar-brand a{font-size:20px}.navbar-toggle{display:flex}.navbar-menu{background:#2c3e50;border-bottom:1px solid #34495e;flex-direction:column;gap:0;left:0;margin-left:0;max-height:0;overflow:hidden;position:absolute;right:0;top:70px;transition:max-height .3s ease}.navbar-menu.active{max-height:500px;overflow-y:auto}.navbar-nav{flex-direction:column;gap:0;width:100%}.nav-item{border-bottom:1px solid #34495e;width:100%}.nav-link{border-radius:0;box-sizing:border-box;padding:12px 20px}.dropdown,.nav-link{width:100%}.dropdown-toggle{border-radius:0;justify-content:space-between;padding:12px 20px;width:100%}.dropdown-menu{background:#1a252f;border:none;border-radius:0;box-shadow:none;margin:0;max-height:0;min-width:auto;opacity:0;overflow:hidden;padding:0;position:static;transform:none;transition:all .3s ease;visibility:hidden}.dropdown:hover .dropdown-menu{max-height:500px;opacity:1;visibility:visible}.dropdown-menu a{font-size:13px;padding:10px 40px}.navbar-user{border-left:none;border-top:1px solid #34495e;flex-direction:column;gap:10px;margin-left:0;padding:15px 20px;width:100%}.user-info{text-align:left;width:100%}.logout-btn{width:100%}}@media (max-width:480px){.navbar-container{padding:12px 15px}.navbar-brand a{font-size:18px;gap:5px}.navbar-menu.active{max-height:600px}.dropdown-menu a{padding:8px 40px}.user-name{font-size:13px}.user-role{font-size:11px}.logout-btn{font-size:12px;padding:6px 12px}}.mobile-container{background-color:#f5f5f5;display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100%}.mobile-top-bar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #0000001a;color:#fff;display:flex;font-size:.9rem;justify-content:space-between;padding:15px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.mobile-user-info{align-items:center;display:flex;gap:10px}.mobile-user-info .user-name{font-size:1rem;font-weight:600}.mobile-content{-webkit-overflow-scrolling:touch;flex:1 1;overflow-x:hidden;overflow-y:auto;padding-bottom:70px;scroll-behavior:smooth}.mobile-content::-webkit-scrollbar{width:6px}.mobile-content::-webkit-scrollbar-track{background:#0000}.mobile-content::-webkit-scrollbar-thumb{background:#bdc3c7;border-radius:3px}.mobile-content::-webkit-scrollbar-thumb:hover{background:#95a5a6}.mobile-nav{align-items:stretch;background:#fff;border-top:1px solid #ecf0f1;bottom:0;box-shadow:0 -2px 8px #00000014;display:flex;height:65px;justify-content:space-around;left:0;position:fixed;right:0;z-index:101}.mobile-nav-item{align-items:center;background:none;border:none;color:#7f8c8d;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:inherit;gap:4px;justify-content:center;padding:8px 0;text-decoration:none;transition:all .3s ease}.mobile-nav-item:active{background-color:#3498db0d}.mobile-nav-item.active{color:#3498db}.mobile-nav-item.active .nav-icon{transform:scale(1.2)}.nav-icon{display:block;font-size:1.5rem;transition:transform .3s ease}.nav-label{font-size:.65rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.mobile-nav-item.logout-item{color:#e74c3c}.mobile-nav-item.logout-item:active{background-color:#e74c3c0d}.mobile-card{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000001a;margin:12px;padding:16px;transition:box-shadow .3s ease,transform .2s ease}.mobile-card:active{box-shadow:0 2px 8px #00000026;transform:scale(.98)}.mobile-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.mobile-card-title{color:#2c3e50;font-size:1.1rem;font-weight:700}.mobile-card-subtitle{color:#7f8c8d;font-size:.85rem;margin-top:4px}.mobile-card-content{color:#34495e;font-size:1rem;line-height:1.6}.mobile-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin:8px 12px;padding:12px 16px;touch-action:manipulation;transition:opacity .3s ease,transform .2s ease;-webkit-user-select:none;user-select:none;width:100%}.mobile-btn:active{opacity:.8;transform:scale(.95)}.mobile-btn:disabled{cursor:not-allowed;opacity:.6}.mobile-btn.secondary{background:#ecf0f1;border:2px solid #bdc3c7;color:#2c3e50}.mobile-btn.danger{background:linear-gradient(135deg,#e74c3c,#c0392b)}.mobile-input{-webkit-appearance:none;appearance:none;border:1px solid #ecf0f1;border-radius:8px;font-family:inherit;font-size:1rem;margin:8px 12px;padding:12px 16px;width:100%}.mobile-input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.mobile-qr-container{padding:20px 12px;text-align:center}.mobile-qr-code{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;height:auto;margin:20px auto;max-width:300px;padding:15px;width:100%}.mobile-list{list-style:none;margin:0;padding:0}.mobile-list-item{align-items:center;border-bottom:1px solid #ecf0f1;display:flex;justify-content:space-between;padding:16px 12px;transition:background-color .2s ease}.mobile-list-item:active{background-color:#f8f9fa}.mobile-list-item:last-child{border-bottom:none}.mobile-list-amount{font-family:Courier New,monospace;font-size:1.1rem;font-weight:700}.mobile-list-amount.positive{color:#27ae60}.mobile-list-amount.negative{color:#e74c3c}.mobile-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.mobile-badge.success{background-color:#d5f4e6;color:#27ae60}.mobile-badge.warning{background-color:#ffeaa7;color:#f39c12}.mobile-badge.danger{background-color:#fadbd8;color:#e74c3c}.mobile-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);padding:12px}.mobile-grid-item{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000001a;padding:16px;text-align:center}.mobile-grid-item-label{color:#7f8c8d;font-size:.85rem;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.mobile-grid-item-value{color:#2c3e50;font-family:Courier New,monospace;font-size:1.5rem;font-weight:700}.mobile-empty{color:#95a5a6;padding:40px 20px;text-align:center}.mobile-empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.mobile-empty-text{font-size:1rem;line-height:1.6}.mobile-spinner{align-items:center;display:flex;justify-content:center;padding:40px 20px}.mobile-spinner-ring{animation:mobile-spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;display:inline-block;height:40px;width:40px}@keyframes mobile-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.mobile-header{background:#fff;border-bottom:1px solid #ecf0f1;margin-bottom:16px;padding:20px 16px}.mobile-header h1{color:#2c3e50;font-size:1.5rem;margin:0}.mobile-header p{color:#7f8c8d;font-size:.9rem;margin:8px 0 0}.mobile-section{margin-bottom:20px;padding:0 12px}.mobile-section-title{color:#7f8c8d;font-size:.9rem;font-weight:700;letter-spacing:.5px;margin:16px 0 8px;padding:0 4px;text-transform:uppercase}@supports (padding:max(0px)){.mobile-nav{padding-bottom:max(0px,env(safe-area-inset-bottom))}.mobile-content{padding-bottom:calc(70px + max(0px, env(safe-area-inset-bottom)))}.mobile-top-bar{padding-top:max(15px,calc(15px + env(safe-area-inset-top)))}}@media (min-width:768px){.mobile-container{border-left:1px solid #ecf0f1;border-right:1px solid #ecf0f1;margin:0 auto;max-width:480px}.mobile-grid{grid-template-columns:repeat(3,1fr)}}@media print{.mobile-nav,.mobile-top-bar{display:none}.mobile-content{padding-bottom:0}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;justify-content:center;min-height:100vh}.auth-card{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:48px;width:100%}.auth-card h1{color:#333;font-size:32px;font-weight:700;margin:0 0 8px}.auth-card .subtitle{color:#999;font-size:14px;margin:0 0 32px}.oauth-providers-section{margin-bottom:24px}.oauth-label{color:#666;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.oauth-buttons-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr 1fr;margin-bottom:16px}.oauth-button{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:8px;color:#333;cursor:pointer;display:flex;flex-direction:column;font-size:12px;font-weight:600;gap:6px;justify-content:center;padding:12px 8px;transition:all .2s ease}.oauth-button:hover:not(:disabled){box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.oauth-button:disabled{cursor:not-allowed;opacity:.6}.oauth-google{border-color:#4285f4;color:#4285f4}.oauth-google:hover:not(:disabled){background-color:#f0f7ff;border-color:#2d63c9}.oauth-github{border-color:#333;color:#333}.oauth-github:hover:not(:disabled){background-color:#f0f0f0;border-color:#000}.oauth-apple{border-color:#000;color:#000}.oauth-apple:hover:not(:disabled){background-color:#f5f5f5;border-color:#333}.oauth-icon{height:20px;width:20px}.google-signin-button{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;margin-bottom:8px;padding:12px 16px;transition:all .2s;width:100%}.google-signin-button:hover:not(:disabled){background-color:#f8f8f8;border-color:#ccc;box-shadow:0 2px 8px #0000001a}.google-signin-button:disabled{cursor:not-allowed;opacity:.6}.google-icon{height:20px;width:20px}.divider{align-items:center;color:#ccc;display:flex;font-size:14px;gap:16px;margin:24px 0}.divider:after,.divider:before{background-color:#ddd;content:"";flex:1 1;height:1px}.auth-form{display:flex;flex-direction:column;gap:16px}.form-group input{transition:border-color .2s}.password-input-wrapper{align-items:center;display:flex;gap:8px}.password-input-wrapper input{flex:1 1}.show-password-btn{background-color:#f0f0f0;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:12px;font-weight:600;padding:8px 12px;transition:all .2s;white-space:nowrap}.show-password-btn:hover{background-color:#667eea;border-color:#667eea;color:#fff}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;padding:12px;text-align:center}.submit-button{background-color:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 16px;transition:background-color .2s}.submit-button:hover:not(:disabled){background-color:#5568d3}.submit-button:disabled{cursor:not-allowed;opacity:.6}.auth-toggle{color:#666;font-size:14px;margin-top:24px;text-align:center}.auth-toggle p{margin:0}.toggle-button{background:none;border:none;color:#667eea;cursor:pointer;font-weight:600;padding:0 4px;text-decoration:underline}.toggle-button:hover{color:#5568d3}.help-links{border-top:1px solid #eee;margin-top:32px;padding-top:24px}.help-label{color:#999;font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.help-links-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr 1fr}.help-link{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:6px;color:#667eea;display:block;font-size:13px;font-weight:500;padding:8px 12px;text-align:center;text-decoration:none;transition:all .2s}.help-link:hover{background:#f0f4ff;border-color:#667eea;box-shadow:0 2px 8px #667eea1a;color:#5568d3;transform:translateY(-1px)}.help-link:active{transform:translateY(0)}@media (max-width:480px){.auth-card{padding:24px}.auth-card h1{font-size:24px}}.mobile-wallet{display:flex;flex-direction:column;padding:0}.wallet-balance-card{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 12px #00000026;color:#fff;padding:30px 20px;text-align:center}.balance-label{font-size:.9rem;font-weight:500;letter-spacing:.5px;margin-bottom:10px;opacity:.9;text-transform:uppercase}.balance-amount{font-family:Courier New,monospace;font-size:2.5rem;font-weight:700;margin-bottom:8px;word-break:break-all}.balance-items{font-size:.85rem;opacity:.8}.wallet-refresh-btn{background-color:#3498db;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;margin:16px 16px 12px;padding:10px 16px;transition:all .3s ease}.wallet-refresh-btn:active:not(:disabled){opacity:.8;transform:scale(.95)}.wallet-refresh-btn:disabled{cursor:not-allowed;opacity:.6}.wallet-error{background-color:#ffe6e6;border-left:4px solid #c0392b;border-radius:8px;color:#c0392b;font-size:.9rem;margin:16px;padding:12px}.wallet-loading{align-items:center;display:flex;justify-content:center;padding:60px 20px}.wallet-empty{color:#95a5a6;padding:60px 20px;text-align:center}.empty-icon{font-size:3rem;opacity:.5}.empty-text{color:#7f8c8d;font-size:1.1rem;font-weight:600;margin-bottom:8px}.wallet-empty p{color:#bdc3c7;font-size:.9rem;margin:0}.wallet-items{display:flex;flex:1 1;flex-direction:column;gap:12px;padding:0 12px 16px}.wallet-item{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 1px 4px #0000001a;cursor:pointer;padding:16px;transition:all .3s ease}.wallet-item:active{box-shadow:0 2px 8px #00000026;transform:scale(.98)}.wallet-item.expired{background-color:#f8f9fa;opacity:.6}.wallet-item.redeemed{background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.item-header{align-items:center;display:flex;gap:12px;min-width:0}.item-icon{flex-shrink:0;font-size:1.8rem}.item-info{flex:1 1;min-width:0}.item-type{color:#7f8c8d;font-size:.85rem;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.item-code{color:#2c3e50;font-size:.9rem;font-weight:600;word-break:break-all}.item-balance,.item-code{font-family:Courier New,monospace}.item-balance{color:#27ae60;flex-shrink:0;font-size:1.2rem;font-weight:700;white-space:nowrap}.wallet-item.expired .item-balance{color:#e74c3c}.item-details{animation:slideDown .3s ease;border-top:1px solid #ecf0f1;margin-top:16px;padding-top:16px}.detail-row{align-items:center;display:flex;font-size:.9rem;justify-content:space-between;padding:8px 0}.detail-label{color:#7f8c8d;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-value{color:#2c3e50;font-weight:500;text-align:right;word-break:break-all}.detail-value.status-active{color:#27ae60;font-weight:600}.detail-value.status-redeemed{color:#f39c12;font-weight:600}.detail-value.status-expired{color:#e74c3c;font-weight:600}.detail-value.expired{color:#e74c3c}.code-value{font-family:Courier New,monospace;font-size:.85rem;-webkit-user-select:all;user-select:all}.wallet-actions{display:flex;flex-wrap:wrap;gap:12px;padding:20px 12px}.action-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;min-width:140px;padding:12px 16px;transition:all .3s ease}.action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-btn.primary:active{opacity:.8;transform:scale(.95)}.action-btn.secondary{background-color:#ecf0f1;border:2px solid #bdc3c7;color:#2c3e50}.action-btn.secondary:active{opacity:.8;transform:scale(.95)}@media (max-width:480px){.balance-amount{font-size:2rem}.item-code{font-size:.8rem}.action-btn{font-size:.9rem;min-width:120px;padding:10px 12px}}.qr-code-container{background:#fff;border-left:4px solid #3498db;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:30px 0;padding:30px}.qr-header{margin-bottom:30px}.qr-header h3{color:#2c3e50;font-size:20px;margin:0 0 10px}.qr-subtitle{color:#7f8c8d;font-size:14px;margin:0}.qr-content{gap:30px}.qr-content,.qr-image-container{align-items:center;display:flex;flex-direction:column}.qr-image-container{background:#f8f9fa;border:2px dashed #bdc3c7;border-radius:8px;gap:15px;padding:20px;position:relative}.qr-image{background:#fff;border:1px solid #ecf0f1;border-radius:4px;height:auto;max-width:280px;padding:10px;width:100%}.qr-scan-hint{color:#7f8c8d;font-size:13px;font-weight:500;gap:8px}.qr-loading,.qr-scan-hint{align-items:center;display:flex}.qr-loading{flex-direction:column;gap:20px;padding:40px 20px}.qr-loading p{color:#7f8c8d;font-size:14px;margin:0}.qr-actions{flex-wrap:wrap;gap:10px;width:100%}.btn,.qr-actions{display:flex;justify-content:center}.btn{font-size:14px;min-width:120px}.btn:active{transform:translateY(0)}.qr-details{background:#f8f9fa;border-left:4px solid #f39c12;border-radius:4px;margin-top:20px;padding:15px;width:100%}.qr-details h4{color:#2c3e50;font-size:14px;font-weight:600;margin:0 0 15px}.detail-item{margin-bottom:12px}.detail-item label{color:#34495e;margin-bottom:5px}.monospace{background:#fff;border:1px solid #ecf0f1;border-radius:3px;color:#2c3e50;display:block;font-family:Courier New,monospace;font-size:11px;padding:8px 10px;word-break:break-all}.detail-note{background:#fff3cd;border-left:3px solid #f39c12;border-radius:3px;color:#856404;font-size:12px;margin:10px 0 0;padding:10px 12px}@media (max-width:640px){.qr-code-container{margin:20px 0;padding:20px}.qr-header h3{font-size:18px}.qr-image{max-width:240px}.qr-actions{flex-direction:column}.btn{width:100%}}.profile-header-card{align-items:flex-start;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;display:flex;gap:30px;margin-bottom:30px;padding:40px}.profile-avatar{align-items:center;background:#fff3;border:3px solid #fff6;display:flex;flex-shrink:0;font-size:32px;font-weight:700;height:80px;justify-content:center;width:80px}.profile-info h2{color:#fff;font-size:28px;margin:0 0 5px}.profile-info>div{align-items:center;display:flex;gap:15px;margin-bottom:15px}.role-badge{background:#ffffff4d;margin:0;padding:4px 12px}.email-text{color:#ffffffe6;font-size:14px;margin:0}.section{background:#f8f9fa;border-left:4px solid #3498db;border-radius:8px;margin-bottom:40px;padding:30px}.section h3{color:#2c3e50;font-size:18px;font-weight:600;margin:0 0 20px}.details-grid{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.detail-item{background:#fff;border:1px solid #ecf0f1;border-radius:4px;padding:15px}.detail-item label{color:#7f8c8d;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.detail-item span{color:#2c3e50;display:block;font-size:14px;font-weight:500;word-break:break-word}.form-section{background:#fff;border-radius:4px;margin-bottom:20px;padding:20px}.form-group label{color:#2c3e50}.form-group input{border:1px solid #bdc3c7;border-radius:4px;box-sizing:border-box;transition:all .3s ease;width:100%}.form-group input:focus{border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-actions{gap:10px;margin-top:20px}.btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:10px 16px;transition:all .3s ease}.btn-primary{background-color:#3498db}.btn-primary:hover{background-color:#2980b9;box-shadow:0 4px 8px #3498db4d;transform:translateY(-2px)}.btn-primary:disabled{background-color:#bdc3c7;transform:none}.btn-secondary{background-color:#ecf0f1;color:#2c3e50}.btn-secondary:hover{background-color:#bdc3c7;transform:translateY(-2px)}.btn-save{background-color:#27ae60}.btn-save:hover{background-color:#229954}.btn-cancel{background-color:#e74c3c;color:#fff}.btn-cancel:hover{background-color:#c0392b}.qr-placeholder{background:#fff;border:2px dashed #bdc3c7;border-radius:4px;padding:40px;text-align:center}.qr-placeholder p{color:#2c3e50;font-size:14px;margin:10px 0}.qr-placeholder .subtitle{color:#7f8c8d;font-size:13px;margin-bottom:20px}.activity-log{background:#fff;border-radius:4px;overflow:hidden}.activity-item{grid-gap:20px;align-items:center;border-bottom:1px solid #ecf0f1;display:grid;gap:20px;grid-template-columns:120px 1fr 80px;padding:15px 20px;transition:all .3s ease}.activity-item:hover{background-color:#f8f9fa}.activity-type{color:#3498db;font-size:13px;font-weight:600;white-space:nowrap}.activity-details{display:flex;flex-direction:column;gap:4px}.activity-reason{color:#2c3e50;font-size:14px;font-weight:500}.activity-date{color:#7f8c8d;font-size:12px}.activity-amount{color:#27ae60;font-size:14px;font-weight:600;text-align:right}.actions-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.empty-state{color:#7f8c8d;font-size:14px;padding:20px}.note-text{background:#f39c121a;border-left:3px solid #f39c12;border-radius:3px;color:#7f8c8d;font-size:12px;margin-top:15px;padding:10px}.error-message{font-size:14px}.spinner{margin:0 auto}@media (max-width:768px){.profile-header-card{align-items:center;flex-direction:column;gap:20px;padding:30px 20px;text-align:center}.profile-info>div{justify-content:center}.activity-item,.details-grid{grid-template-columns:1fr}.activity-item{gap:10px}.activity-amount{text-align:left}.actions-grid{grid-template-columns:1fr}.section{padding:20px}}.activity-feed{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;padding:0}.activity-feed-header{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-bottom:1px solid #e0e0e0;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.activity-feed-header h3{font-size:18px;font-weight:600;letter-spacing:.3px;margin:0}.activity-controls{align-items:center;display:flex;gap:16px}.auto-refresh-toggle{align-items:center;cursor:pointer;display:flex;font-size:14px;gap:8px;-webkit-user-select:none;user-select:none}.auto-refresh-toggle input[type=checkbox]{accent-color:#fff;cursor:pointer;height:18px;width:18px}.auto-refresh-toggle span{opacity:.95}.activity-feed-empty{color:#999;padding:48px 24px;text-align:center}.activity-feed-empty p{font-size:16px;font-weight:500;margin:0 0 12px}.activity-feed-empty .empty-icon{display:block;font-size:48px;margin-bottom:16px}.activity-feed-loading{align-items:center;display:flex;justify-content:center;min-height:300px;padding:48px 24px}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:16px}.loading-spinner p{color:#666;font-size:14px;margin:0}.spinner{border:3px solid #f3f3f3;border-top-color:#667eea}.activity-feed-error{align-items:center;background-color:#fff3cd;border-bottom:1px solid #ffeaa7;color:#856404;display:flex;gap:12px;justify-content:space-between;padding:12px 24px}.activity-feed-error span{flex:1 1;font-size:14px}.activity-feed-error .btn-close{align-items:center;background:none;border:none;color:#856404;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;padding:0;transition:opacity .2s ease;width:24px}.activity-feed-error .btn-close:hover{opacity:.7}.activity-feed-list{max-height:600px;overflow-y:auto;scrollbar-color:#ccc #f5f5f5;scrollbar-width:thin}.activity-feed-list::-webkit-scrollbar{width:6px}.activity-feed-list::-webkit-scrollbar-track{background:#f5f5f5}.activity-feed-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.activity-feed-list::-webkit-scrollbar-thumb:hover{background:#aaa}.activity-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;gap:16px;padding:16px 24px;transition:background-color .2s ease}.activity-item:last-child{border-bottom:none}.activity-item:hover{background-color:#f9f9f9}.activity-item.activity-issue{border-left:3px solid #4caf50}.activity-item.activity-claim{border-left:3px solid #2196f3}.activity-item.activity-redeem{border-left:3px solid #ff9800}.activity-item.activity-refund{border-left:3px solid #9c27b0}.activity-item.activity-block,.activity-item.activity-reverse{border-left:3px solid #f44336}.activity-item.activity-unblock{border-left:3px solid #4caf50}.activity-item.activity-expire{border-left:3px solid #ff9800}.activity-icon{font-size:24px;margin-top:2px;min-width:32px;text-align:center}.activity-content{flex:1 1;min-width:0}.activity-description{color:#333;font-size:15px;font-weight:500;margin:0;word-break:break-word}.activity-detail{align-items:center;color:#666;display:flex;flex-wrap:wrap;font-size:13px;gap:8px;margin-top:6px}.activity-detail .label{color:#999;font-weight:500}.activity-detail .value{background-color:#f5f5f5;border-radius:3px;color:#333;font-family:Courier New,monospace;padding:2px 6px;word-break:break-all}.activity-detail .quantity,.activity-time{color:#999;font-size:12px}.activity-time{margin-left:auto;margin-top:2px;padding-left:12px;white-space:nowrap}.activity-feed-footer{background-color:#fafafa;border-top:1px solid #f0f0f0;color:#999;padding:12px 24px;text-align:right}.activity-feed-footer small{font-size:12px}@media (max-width:768px){.activity-feed-header{align-items:flex-start;flex-direction:column;gap:12px}.activity-controls{width:100%}.activity-item{gap:12px;padding:12px 16px}.activity-icon{font-size:20px;min-width:28px}.activity-description{font-size:14px}.activity-detail{font-size:12px}.activity-time{display:block;margin-left:0;margin-top:6px;padding-left:0;width:100%}}@media (max-width:640px){.activity-feed{border-radius:4px}.activity-feed-header h3{font-size:16px}.activity-item{gap:8px;padding:12px}.activity-icon{font-size:18px;min-width:24px}.activity-description{font-size:13px}.activity-detail{font-size:11px}.activity-feed-list{max-height:400px}}.analytics-dashboard{padding:24px}.analytics-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:16px}.analytics-header h1{color:#333;font-size:28px;font-weight:700;margin:0}.export-analytics-btn{align-items:center;background-color:#2196f3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.export-analytics-btn:hover{background-color:#1976d2;transform:translateY(-2px)}.export-analytics-btn:active{transform:translateY(0)}.analytics-tabs{border-bottom:2px solid #f0f0f0;display:flex;gap:12px;margin-bottom:24px}.tab-button{background:none;border:none;border-bottom:3px solid #0000;color:#999;cursor:pointer;font-size:14px;font-weight:600;padding:12px 16px;transition:all .2s}.tab-button.active{border-bottom-color:#667eea;color:#667eea}.tab-button:hover:not(.active){color:#666}.analytics-overview{animation:fadeIn .3s ease-in}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.stat-card{border-left:5px solid #667eea;box-shadow:0 2px 8px #00000014}.stat-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.stat-card.income{border-left-color:#4caf50}.stat-card.spent{border-left-color:#764ba2}.stat-card.expired{border-left-color:#ff6b6b}.stat-card.balance{border-left-color:#2196f3}.stat-icon{align-items:center;background:#f5f5f5;border-radius:8px;display:flex;height:60px;justify-content:center;width:60px}.stat-content{flex:1 1}.chart-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;padding:24px}.chart-container h2{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.chart-container.half{flex:1 1}.charts-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:24px}.no-data{color:#999;font-size:14px}.analytics-details{animation:fadeIn .3s ease-in}.details-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.details-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:24px}.details-section.full{grid-column:1/-1}.details-section h2{color:#333;font-size:18px;font-weight:600;margin:0 0 20px}.detail-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:12px 0}.detail-item.total{border:none;border-top:2px solid #f0f0f0;font-weight:600;margin-top:8px;padding-top:12px}.detail-label{color:#666;font-size:14px;font-weight:500}.detail-value{color:#333;font-size:16px;font-weight:600}.detail-value.active{color:#4caf50}.detail-value.redeemed{color:#764ba2}.detail-value.expired{color:#ff6b6b}.breakdown-list{display:flex;flex-direction:column;gap:12px}.breakdown-item{align-items:center;background:#f9f9f9;border-left:4px solid #667eea;border-radius:8px;display:flex;justify-content:space-between;padding:12px}.category-name{color:#333;font-weight:500}.category-value{color:#667eea;font-size:16px;font-weight:600}.analytics-empty,.analytics-loading{color:#999;font-size:16px;padding:60px 20px;text-align:center}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.charts-row,.details-grid{grid-template-columns:1fr}}@media (max-width:640px){.analytics-dashboard{padding:16px}.analytics-header{align-items:flex-start;flex-direction:column;gap:16px}.analytics-header h1{font-size:24px}.export-analytics-btn{justify-content:center;width:100%}.stats-grid{grid-template-columns:1fr}.stat-card{flex-direction:column;text-align:center}.stat-icon{font-size:28px;height:50px;width:50px}.chart-container{padding:16px}.chart-container h2{font-size:16px}.details-section{padding:16px}.detail-item{align-items:flex-start;flex-direction:column;gap:8px}}.activity-feed-section{margin-top:32px}@media (max-width:768px){.activity-feed-section{margin-top:24px}}@media (max-width:640px){.activity-feed-section{margin-top:20px}}.account-settings-container{background:#f9f9f9;margin:0 auto;max-width:900px;min-height:100vh;padding:20px}.settings-header{margin-bottom:40px;padding:20px 0;text-align:center}.settings-header h1{color:#333;font-size:32px;font-weight:700;margin:0 0 8px}.settings-header .subtitle{color:#666;font-size:14px;margin:0}.alert{align-items:center;animation:slideDown .3s ease;border-radius:8px;display:flex;font-size:14px;font-weight:500;gap:10px;margin-bottom:20px;padding:12px 16px}.alert-success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.settings-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.settings-section h2{align-items:center;color:#333;display:flex;font-size:20px;font-weight:600;gap:8px;margin:0 0 16px}.section-header{margin-bottom:20px}.profile-display{display:flex;gap:20px}.profile-avatar{border:3px solid #667eea;border-radius:50%;height:120px;object-fit:cover;width:120px}.profile-info{display:flex;flex:1 1;flex-direction:column;gap:12px}.info-row{align-items:baseline;display:flex;gap:16px}.info-row label{color:#666;font-size:14px;font-weight:600;min-width:140px}.info-row span{color:#333;font-size:14px}.email-form,.profile-edit-form{display:flex;flex-direction:column;gap:16px}.form-group{gap:6px}.form-group label{font-size:14px}.form-group input{background:#fafafa;border:1px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease}.form-group input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.photo-preview{background:#f0f0f0;border-radius:6px;margin-top:12px;padding:12px}.form-actions{display:flex;gap:12px;margin-top:12px}.email-info{background:#f5f5f5;border-radius:6px;margin-bottom:16px;padding:12px}.email-info p{color:#333;font-size:14px;margin:8px 0}.text-muted{color:#999;font-size:13px}.stats-grid{grid-gap:16px;gap:16px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-value{font-size:32px;margin-bottom:8px}.stat-label{font-size:13px;font-weight:500;opacity:.9}.providers-list{display:flex;flex-direction:column;gap:12px}.provider-item{align-items:center;background:#f5f5f5;border:1px solid #ddd;border-radius:6px;display:flex;gap:12px;padding:12px}.provider-icon{font-size:20px;text-align:center;width:30px}.provider-name{color:#333;flex:1 1;font-size:14px;font-weight:500}.btn-unlink{background:#ff7043;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:all .2s ease}.btn-unlink:hover{background:#e64a19;transform:translateY(-1px)}.btn-unlink:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-cancel,.btn-danger,.btn-edit,.btn-primary,.btn-save,.btn-secondary{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:10px 16px;transition:all .2s ease}.btn-edit{background:#2196f3;color:#fff}.btn-edit:hover{background:#1976d2;transform:translateY(-1px)}.btn-save{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-save:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-save:disabled{cursor:not-allowed;opacity:.6}.btn-cancel:hover:not(:disabled){background:#d0d0d0}.btn-cancel:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{background:#f0f0f0;border:1px solid #ddd;color:#333}.btn-secondary:hover:not(:disabled){background:#e8e8e8}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.btn-danger{background:#f44336;color:#fff;width:100%}.btn-danger:hover{background:#d32f2f;transform:translateY(-2px)}.danger-zone{background:#fff5f5;border:2px solid #f44336}.danger-zone h2{color:#f44336}.loading{color:#666;padding:40px}@media (max-width:768px){.account-settings-container{padding:16px}.settings-header h1{font-size:24px}.settings-section{padding:16px}.section-header{align-items:flex-start;flex-direction:column;gap:12px}.profile-display{align-items:center;flex-direction:column}.profile-avatar{height:100px;width:100px}.profile-info{width:100%}.info-row{flex-direction:column;gap:4px}.info-row label{min-width:auto}.form-actions{flex-direction:column}.stats-grid{grid-template-columns:1fr}.provider-item{flex-wrap:wrap}.provider-name{flex-basis:100%;order:2}}@media (max-width:640px){.settings-header h1{font-size:22px}.settings-section{margin-bottom:16px;padding:14px}.settings-section h2{font-size:18px}.btn-cancel,.btn-danger,.btn-edit,.btn-primary,.btn-save,.btn-secondary{justify-content:center;width:100%}.form-group input{font-size:13px;padding:8px 10px}}.admin-page{margin:0 auto;max-width:1200px;padding:20px}.admin-page h1{color:#2c3e50;font-size:32px;margin-bottom:30px}.admin-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:25px}.admin-section h2{border-bottom:2px solid #3498db;color:#2c3e50;font-size:20px;margin-bottom:20px;padding-bottom:10px}.error-message{background-color:#fadbd8;border-left:4px solid #e74c3c;border-radius:4px;color:#c0392b;margin-bottom:20px;padding:15px}.users-table-container{margin-bottom:20px;overflow-x:auto}.users-table{font-size:14px}.users-table thead{background-color:#34495e;color:#fff}.users-table th{border-bottom:2px solid #2c3e50;padding:15px}.users-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background-color .3s ease}.users-table tbody tr:hover{background-color:#f8f9fa}.users-table td{padding:12px 15px}.user-row.role-end_user{border-left:3px solid #3498db}.user-row.role-admin{border-left:3px solid #e74c3c}.user-row.role-club{border-left:3px solid #27ae60}.users-table .name{color:#2c3e50;font-weight:500}.users-table .email{color:#7f8c8d;font-family:monospace;font-size:13px}.users-table .role{text-align:center}.role-badge{font-size:12px;letter-spacing:.5px;padding:5px 10px;text-transform:uppercase}.role-badge.end_user{background-color:#d6eaf8;color:#2c5aa0}.role-badge.admin{background-color:#fadbd8;color:#a93226}.role-badge.club,.role-badge.staff{background-color:#d5f4e6;color:#186a3b}.users-table .created{color:#7f8c8d;font-size:13px}.users-table .actions{text-align:center}.btn-promote{background-color:#f39c12;border-radius:4px;font-size:12px;padding:6px 12px;transition:all .3s ease}.btn-promote:hover{background-color:#e67e22;box-shadow:0 2px 6px #f39c124d;transform:translateY(-2px)}.btn-promote:disabled{background-color:#bdc3c7;transform:none}.btn-refresh{border-radius:4px;font-size:13px;padding:10px 16px;transition:all .3s ease}.btn-refresh:hover{background-color:#2980b9;box-shadow:0 2px 6px #3498db4d;transform:translateY(-2px)}.btn-refresh:disabled{background-color:#bdc3c7;transform:none}.spinner{border:4px solid #ecf0f1;margin:20px auto}@media (max-width:768px){.admin-page{padding:10px}.admin-page h1{font-size:24px;margin-bottom:20px}.admin-section{padding:15px}.users-table{font-size:12px}.users-table td,.users-table th{padding:8px 10px}.btn-promote{font-size:11px;padding:4px 8px}.users-table-container{margin-bottom:15px}}.club-accounting{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0 auto;max-width:1400px;padding:20px}.club-accounting h1{color:#2c3e50;font-size:2rem;margin-bottom:30px;text-align:center}.club-accounting h2{border-bottom:2px solid #3498db;color:#34495e;font-size:1.4rem;margin:20px 0 15px;padding-bottom:10px}.club-accounting h3{color:#34495e;font-size:1.1rem;margin:10px 0 15px}.club-accounting .error-message{background-color:#ffe6e6;border-left:4px solid #c0392b;border-radius:8px;color:#c0392b;margin-bottom:20px;padding:15px}.filters-section{grid-gap:15px;align-items:end;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px;padding:20px}.filter-group{display:flex;flex-direction:column}.filter-group label{align-items:center;color:#2c3e50;display:flex;font-size:.9rem;font-weight:600;gap:8px;margin-bottom:8px}.filter-group input[type=date],.filter-group input[type=text],.filter-group select{background-color:#fff;border:1px solid #bdc3c7;border-radius:6px;color:#2c3e50;font-size:.95rem;padding:10px;transition:border-color .3s ease,box-shadow .3s ease}.filter-group input[type=date]:focus,.filter-group input[type=text]:focus,.filter-group select:focus{border-color:#3498db;box-shadow:0 0 5px #3498db4d;outline:none}.filter-group input[type=checkbox]{cursor:pointer;height:18px;margin:0 5px;width:18px}.btn-reset-filters{align-self:flex-end;background-color:#95a5a6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;height:-webkit-fit-content;height:fit-content;padding:10px 15px;transition:background-color .3s ease}.btn-reset-filters:hover{background-color:#7f8c8d}.filter-badge{background-color:#3498db;border-radius:4px;color:#fff;font-size:.8rem;font-weight:400;margin-left:10px;padding:4px 8px}.no-data{color:#95a5a6;font-size:1.1rem;padding:40px 20px;text-align:center}.live-indicator{align-items:center;background-color:#d5f4e6;border:2px solid #27ae60;border-radius:6px;color:#27ae60;display:flex;font-weight:600;gap:10px;justify-content:center;margin-top:20px;padding:10px 20px}.live-indicator .pulse{animation:pulse-animation 1.5s ease-in-out infinite;background-color:#27ae60;border-radius:50%;display:inline-block;height:10px;width:10px}@keyframes pulse-animation{0%{box-shadow:0 0 0 0 #27ae60b3}70%{box-shadow:0 0 0 10px #27ae6000}to{box-shadow:0 0 0 0 #27ae6000}}@media (max-width:768px){.filters-section{gap:12px;grid-template-columns:1fr}.btn-reset-filters{align-self:auto}.filter-group{width:100%}}.overview-cards{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#fff;padding:20px;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.card:hover{box-shadow:0 8px 12px #00000026;transform:translateY(-5px)}.card-label{font-size:.9rem;font-weight:500;letter-spacing:.5px;margin-bottom:10px;opacity:.9;text-transform:uppercase}.card-value{font-family:Courier New,monospace;font-size:2rem;font-weight:700}.tabs{border-bottom:2px solid #ecf0f1;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#7f8c8d;cursor:pointer;font-size:1rem;font-weight:500;margin-bottom:-2px;padding:12px 20px;transition:all .3s ease}.tab:hover{background-color:#f8f9fa;color:#3498db}.tab.active{border-bottom-color:#3498db;color:#3498db}.accounting-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;min-height:300px;padding:20px}.section{margin-bottom:20px}.table-container{border:1px solid #ecf0f1;border-radius:8px;overflow-x:auto}.data-table{border-collapse:collapse;font-size:.95rem;width:100%}.data-table thead{background-color:#f8f9fa;border-bottom:2px solid #ecf0f1}.data-table th{color:#2c3e50;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:12px;text-align:left;text-transform:uppercase}.data-table tbody tr{border-bottom:1px solid #ecf0f1;transition:background-color .2s ease}.data-table tbody tr:hover{background-color:#f8f9fa}.data-table tbody tr:last-child{border-bottom:none}.data-table td{color:#2c3e50;padding:12px}.data-table .date{color:#7f8c8d;font-family:Courier New,monospace;font-size:.9rem}.data-table .user{color:#95a5a6;font-family:Courier New,monospace;font-size:.85rem}.data-table .amount{font-family:Courier New,monospace;font-weight:600;text-align:right}.data-table .amount.positive{color:#27ae60}.data-table .amount.negative{color:#e74c3c}.data-table .count{font-weight:500;text-align:center}.data-table .status{border-radius:4px;font-size:.85rem;font-weight:600;padding:4px 8px;text-align:center;text-transform:uppercase}.data-table .status.completed{background-color:#d5f4e6;color:#27ae60}.data-table .status.pending{background-color:#ffeaa7;color:#f39c12}.data-table .status.failed{background-color:#fadbd8;color:#e74c3c}.data-table .category{color:#3498db;font-weight:500}.data-table .name{color:#2c3e50;font-weight:500}.data-table .email{color:#7f8c8d;font-size:.9rem}.data-table .percentage{color:#8e44ad;font-weight:600;text-align:right}.overview-section{padding:20px 0}.overview-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.overview-box{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.overview-box h3{border-bottom:2px solid #3498db;color:#2c3e50;margin-top:0;padding-bottom:10px}.top-list{list-style:none;margin:0;padding:0}.top-list li{align-items:center;border-bottom:1px solid #0000001a;display:flex;gap:10px;padding:12px 0}.top-list li:last-child{border-bottom:none}.top-list .rank{align-items:center;background-color:#3498db;border-radius:50%;color:#fff;display:inline-flex;flex-shrink:0;font-size:.9rem;font-weight:700;height:28px;justify-content:center;width:28px}.top-list .name{color:#2c3e50;flex:1 1;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.top-list .amount{color:#27ae60;font-family:Courier New,monospace;font-weight:700;white-space:nowrap}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#3498db;height:40px;margin:40px auto;width:40px}.btn-refresh{background-color:#3498db;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:1rem;font-weight:600;margin:20px auto 0;padding:10px 20px;transition:background-color .3s ease,transform .2s ease}.btn-refresh:hover:not(:disabled){background-color:#2980b9;transform:translateY(-2px)}.btn-refresh:disabled{background-color:#95a5a6;cursor:not-allowed;opacity:.7}@media (max-width:768px){.club-accounting{padding:15px}.club-accounting h1{font-size:1.5rem;margin-bottom:20px}.overview-cards{gap:10px;grid-template-columns:1fr 1fr}.card-value{font-size:1.5rem}.tabs{gap:5px}.tab{padding:10px 12px}.data-table,.tab{font-size:.85rem}.data-table td,.data-table th{padding:8px}.overview-grid{grid-template-columns:1fr}}@media (max-width:480px){.overview-cards{grid-template-columns:1fr}.tabs{flex-direction:column}.tab{border-left:3px solid #0000;padding:10px 15px}.tab,.tab.active{border-bottom:none}.tab.active{border-left-color:#3498db}.data-table{font-size:.8rem}.data-table td,.data-table th{padding:6px}.top-list .name{font-size:.9rem}}.push-settings-page{background:linear-gradient(135deg,#f5f7fa,#c3cfe2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:24px}.settings-container{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012,0 1px 3px #0000000f;margin:0 auto;max-width:700px;padding:32px}.settings-container>h1{align-items:center;color:#1a202c;display:flex;font-size:32px;font-weight:700;gap:12px;margin:0 0 32px}.message{align-items:center;animation:slideIn .3s ease-out;border-radius:8px;display:flex;font-weight:500;gap:8px;margin-bottom:24px;padding:12px 16px}.message-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.message-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.settings-section{border-bottom:1px solid #e2e8f0;margin-bottom:32px;padding-bottom:32px}.settings-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-header h2{color:#2d3748;font-size:20px;font-weight:600;margin:0}.section-description{color:#718096;font-size:14px;margin:0 0 16px}.status-badge{font-size:12px;letter-spacing:.5px}.status-enabled{background-color:#f0f8f4;color:#22863a}.status-disabled{background-color:#f6f8fa;color:#586069}.setting-item{align-items:flex-start;background:#f8f9fa;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:12px;padding:16px;transition:background-color .2s ease}.setting-item:hover{background-color:#eef2f5}.setting-info{flex:1 1;margin-right:16px}.setting-info label{color:#2d3748;display:block;font-weight:600;margin:0 0 4px}.setting-description{color:#718096;font-size:13px;line-height:1.4;margin:0}.toggle-switch{align-items:center;cursor:pointer;display:inline-flex;flex-shrink:0;margin-top:4px;position:relative;-webkit-user-select:none;user-select:none}.toggle-switch input{height:0;opacity:0;position:absolute;width:0}.toggle-slider{background-color:#cbd5e0;border-radius:12px;display:inline-block;height:24px;position:relative;transition:background-color .3s ease;width:44px}.toggle-slider:before{background-color:#fff;border-radius:50%;box-shadow:0 1px 3px #0000001f;content:"";height:20px;left:2px;position:absolute;top:2px;transition:transform .3s ease;width:20px}.toggle-switch input:checked+.toggle-slider{background-color:#48bb78}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch input:disabled+.toggle-slider{cursor:not-allowed;opacity:.5}.test-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 4px #667eea4d;color:#fff;cursor:pointer;display:inline-block;font-size:15px;font-weight:600;padding:12px 24px;transition:all .3s ease;width:100%}.test-button:hover:not(:disabled){box-shadow:0 4px 8px #667eea66;transform:translateY(-2px)}.test-button:active:not(:disabled){transform:translateY(0)}.test-button:disabled{cursor:not-allowed;opacity:.6}.devices-list{display:flex;flex-direction:column;gap:12px}.device-item{align-items:flex-start;background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;display:flex;padding:16px;transition:background-color .2s ease}.device-item:hover{background-color:#eef2f5}.device-icon{font-size:28px;margin-right:16px;min-width:32px;text-align:center}.device-info{flex:1 1}.device-name{color:#2d3748;font-weight:600;margin-bottom:4px}.device-meta{color:#718096;font-size:13px}.info-box{background:#edf2f7;border-left:4px solid #4299e1;border-radius:8px;margin-top:32px;padding:16px}.info-box h3{color:#2c5282;font-size:15px;font-weight:600;margin:0 0 12px}.info-box ul{color:#2d3748;font-size:13px;line-height:1.6;margin:0;padding-left:20px}.info-box li{margin-bottom:8px}.info-box li:last-child{margin-bottom:0}@media (max-width:600px){.push-settings-page{padding:16px}.settings-container{padding:24px}.settings-container>h1{font-size:24px}.section-header{align-items:flex-start;gap:12px}.section-header,.setting-item{flex-direction:column}.setting-info{margin-bottom:12px;margin-right:0}.toggle-switch{align-self:flex-end;margin-top:0}.settings-section{margin-bottom:24px;padding-bottom:24px}}.loading{color:#718096;font-size:16px;padding:40px 20px;text-align:center}@media (prefers-color-scheme:dark){.push-settings-page{background:linear-gradient(135deg,#2d3748,#1a202c)}.settings-container{background:#2d3748;color:#e2e8f0}.settings-container>h1{color:#f7fafc}.section-header h2{color:#e2e8f0}.section-description{color:#a0aec0}.setting-item{background:#1a202c}.setting-item:hover{background-color:#2d3748}.setting-info label{color:#e2e8f0}.setting-description{color:#a0aec0}.device-item{background:#1a202c}.device-item:hover{background-color:#2d3748}.device-name{color:#e2e8f0}.info-box{background:#1a202c;border-left-color:#4299e1}.info-box h3{color:#63b3ed}.info-box ul{color:#e2e8f0}}.user-management-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}.user-management-page .page-header{animation:slideDown .6s ease-out;color:#fff;margin-bottom:40px;text-align:center}.user-management-page .page-header h1{font-size:2.5rem;font-weight:700;margin:0;text-shadow:0 2px 4px #0003}.user-management-container{margin:0 auto;max-width:1200px}.stats-grid{grid-gap:20px;animation:fadeIn .4s ease-out;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{border-radius:12px;box-shadow:0 5px 20px #0000001a;padding:25px;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.stat-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;margin-bottom:8px}.stat-label{color:#666;font-size:.95rem}.search-filter-section{animation:fadeIn .5s ease-out;background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;margin-bottom:30px;padding:25px}.search-filter-group{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 200px}.form-group{display:flex;flex-direction:column}.form-input,.form-select{border-radius:8px;font-size:1rem;padding:12px 15px}.users-table-section{animation:fadeIn .6s ease-out;background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;overflow:hidden;padding:0}.table-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:25px}.table-header h3{font-size:1.3rem;margin:0}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f8f9fa;border-bottom:2px solid #e0e0e0}.users-table th{color:#333;font-size:.95rem;font-weight:600;letter-spacing:.5px;padding:15px 20px;text-align:left;text-transform:uppercase}.users-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background .2s ease}.users-table tbody tr:hover{background:#f8f9fa}.users-table td{color:#555;padding:15px 20px}.user-name{color:#333;font-weight:600}.user-email{color:#888;font-size:.9rem}.user-id{background:#f0f0f0;border-radius:4px;color:#999;font-family:Courier New,monospace;font-size:.85rem;padding:2px 6px}.role-badge{border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;padding:6px 12px}.role-club{background:#e74c3c}.role-admin{background:#3498db}.role-staff{background:#f39c12}.role-user{background:#95a5a6}.created-date{color:#888;font-size:.9rem}.action-buttons{display:flex;gap:8px}.btn-promote{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.btn-promote:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-promote:disabled{cursor:not-allowed;opacity:.6}.empty-state{color:#999;padding:60px 20px;text-align:center}.empty-state p{font-size:1.1rem;margin:0}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-dialog{animation:modalSlideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:400px;padding:30px}.modal-dialog h3{color:#333;font-size:1.3rem;margin-top:0}.modal-dialog p{color:#666;margin-bottom:25px}.modal-actions{display:flex;gap:10px}.btn-cancel,.btn-confirm{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-weight:600;padding:12px;transition:all .2s ease}.btn-cancel{background:#e0e0e0;color:#333}.btn-cancel:hover{background:#d0d0d0}.btn-confirm{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-confirm:hover{box-shadow:0 5px 20px #667eea66;transform:translateY(-2px)}.loading-spinner{border:3px solid #667eea4d;height:20px;width:20px}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.user-management-page .page-header h1{font-size:2rem}.stats-grid{grid-template-columns:1fr 1fr}.search-filter-group{grid-template-columns:1fr}.users-table{font-size:.9rem}.users-table td,.users-table th{padding:12px 10px}.modal-dialog{margin:0 20px}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}.btn-promote{width:100%}}.issue-giftcards-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}.issue-giftcards-page .page-header{animation:slideDown .6s ease-out;color:#fff;margin-bottom:40px;text-align:center}.issue-giftcards-page .page-header h1{font-size:2.5rem;font-weight:700;margin:0;text-shadow:0 2px 4px #0003}.page-subtitle{color:#ffffffe6;font-size:1.1rem;margin:10px 0 0}.issue-container{margin:0 auto;max-width:900px}.mode-selector{display:flex;gap:10px;justify-content:center;margin-bottom:30px}.mode-btn{background:#0000;border:2px solid #fff;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.mode-btn:hover{background:#ffffff1a;transform:translateY(-2px)}.mode-btn.active{background:#fff;color:#667eea}.bulk-issue-section,.issue-form-section{animation:fadeIn .4s ease-out}.form-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;margin-bottom:30px;padding:30px}.form-card h2{color:#333;font-size:1.5rem;margin-bottom:25px;margin-top:0}.form-input{border:2px solid #e0e0e0;border-radius:8px;font-family:inherit;font-size:1rem;padding:12px 15px;transition:all .3s ease;width:100%}.form-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group.checkbox label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:10px;margin-bottom:0}.form-group.checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-group small{color:#888;display:block;font-size:.85rem;margin-top:6px}.btn-submit{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:10px;padding:14px;transition:all .3s ease;width:100%}.btn-submit:hover:not(:disabled){box-shadow:0 5px 20px #667eea66;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.6}.product-info{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;margin-top:20px;padding:15px}.product-info h3{color:#333;font-size:.95rem;margin-top:0}.product-info p{color:#666;font-size:.9rem;margin:8px 0}.results-section{background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;padding:30px}.results-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.results-header h3{color:#333;margin:0}.results-count{background:#667eea;border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:6px 12px}.results-list{max-height:500px;overflow-y:auto}.result-item{align-items:flex-start;border-bottom:1px solid #e0e0e0;display:flex;gap:15px;padding:15px;transition:background .2s ease}.result-item:hover{background:#f8f9fa}.result-icon{font-size:1.5rem;min-width:30px}.result-content{flex:1 1}.result-target{color:#333;font-weight:600;margin-bottom:4px}.result-message{color:#666;font-size:.9rem;margin-bottom:6px}.result-code{align-items:center;background:#f0f0f0;border-radius:6px;display:flex;font-size:.85rem;gap:10px;margin-top:6px;padding:8px 12px}.result-code .label{color:#888;font-weight:600}.result-code code{color:#333;flex:1 1;font-family:Courier New,monospace;word-break:break-all}.btn-copy{background:#667eea;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:4px 8px;transition:all .2s ease}.btn-copy:hover{background:#764ba2}.result-time{font-size:.85rem;white-space:nowrap}.result-success{border-left:4px solid #2ecc71}.result-pending{border-left:4px solid #f39c12;opacity:.7}.result-failed{background:#e74c3c0d;border-left:4px solid #e74c3c}@media (max-width:640px){.issue-giftcards-page .page-header h1{font-size:2rem}.form-card{padding:20px}.mode-selector{flex-direction:column}.mode-btn{width:100%}}.qr-scanner-container{background:#000;border-radius:12px;box-shadow:0 4px 16px #0000004d;margin:0 auto;max-width:600px;overflow:hidden;position:relative;width:100%}.camera-permission-section{align-items:center;aspect-ratio:1/1;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);display:flex;justify-content:center;min-height:400px;width:100%}.permission-denied,.permission-pending{color:#fff;padding:32px;text-align:center}.permission-pending{align-items:center;display:flex;flex-direction:column;gap:16px}.permission-pending .spinner{animation:spin 1s linear infinite;border:4px solid #667eea33;border-radius:50%;border-top-color:#667eea;height:48px;width:48px}.permission-pending p{font-size:16px;margin:0;opacity:.8}.permission-denied .icon{font-size:64px;margin-bottom:16px}.permission-denied h3{font-size:20px;font-weight:600;margin:0 0 12px}.permission-denied p{font-size:14px;line-height:1.5;margin:0 0 20px;opacity:.8}.permission-denied .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.permission-denied .btn-primary:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.scanner-wrapper{aspect-ratio:1/1;background:#000;overflow:hidden;position:relative;width:100%}.scanner-video{display:block;height:100%;object-fit:cover;width:100%}.scan-frame{background:radial-gradient(circle at center,#667eea0d 0,#0000 100%);border:2px solid #667eea80;border-radius:12px;box-shadow:inset 0 0 40px #667eea1a;height:280px;left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:280px}.scan-corner{border:3px solid #667eea;height:20px;position:absolute;width:20px}.scan-corner-top-left{border-bottom:none;border-radius:12px 0 0 0;border-right:none;left:-2px;top:-2px}.scan-corner-top-right{border-bottom:none;border-left:none;border-radius:0 12px 0 0;right:-2px;top:-2px}.scan-corner-bottom-left{border-radius:0 0 0 12px;border-right:none;border-top:none;bottom:-2px;left:-2px}.scan-corner-bottom-right{border-left:none;border-radius:0 0 12px 0;border-top:none;bottom:-2px;right:-2px}.scan-line{animation:scanLine 2s ease-in-out infinite;background:linear-gradient(90deg,#0000,#667eea,#0000);height:2px;left:0;position:absolute;top:0;width:100%}@keyframes scanLine{0%{transform:translateY(0)}50%{transform:translateY(140px)}to{transform:translateY(280px)}}.scanner-controls{bottom:20px;display:flex;gap:12px;left:50%;position:absolute;transform:translateX(-50%);z-index:10}.btn-control{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#667eeae6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 16px;transition:all .3s ease}.btn-control:hover{background:#667eea;transform:scale(1.05)}.btn-control:active{transform:scale(.98)}.btn-control.btn-stop{background:#f44336e6}.btn-control.btn-stop:hover{background:#f44336}.btn-control.torch-on{background:#ff9800e6!important}.btn-control.torch-on:hover{background:#ff9800!important}.scanner-info{color:#fff;font-size:14px;left:50%;opacity:.9;pointer-events:none;position:absolute;text-align:center;top:20px;transform:translateX(-50%)}.scanner-info p{margin:0;text-shadow:0 2px 4px #00000080}.scanner-error{align-items:center;background-color:#fff3cd;border-top:1px solid #ffeaa7;color:#856404;display:flex;gap:12px;justify-content:space-between;padding:12px 16px}.scanner-error span{flex:1 1;font-size:14px}.scanner-error .btn-close{align-items:center;background:none;border:none;color:#856404;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;padding:0;transition:opacity .2s ease;width:24px}.scanner-error .btn-close:hover{opacity:.7}.scanner-result{animation:slideUp .3s ease;background:#fff;border-radius:8px;bottom:80px;box-shadow:0 4px 12px #0000004d;left:12px;padding:12px;position:absolute;right:12px;z-index:20}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.result-content{align-items:flex-start;display:flex;gap:12px}.result-icon{color:#4caf50;flex-shrink:0;font-size:24px;margin-top:2px}.result-details{flex:1 1;min-width:0}.result-label{color:#999;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.result-type{background:#f5f5f5;border-radius:4px;color:#333;display:inline-block;font-size:14px;font-weight:600;margin-bottom:6px;padding:4px 8px}.result-data{background:#f9f9f9;border-radius:4px;color:#666;font-family:Courier New,monospace;font-size:12px;margin-bottom:4px;max-height:60px;overflow-y:auto;padding:6px 8px;word-break:break-all}.result-time{color:#999;font-size:11px;margin-top:4px}.scanner-result .btn-close{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:24px;justify-content:center;padding:0;transition:color .2s ease;width:24px}.scanner-result .btn-close:hover{color:#333}.scanner-status{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#00000080;border-radius:20px;color:#fff;display:flex;font-size:12px;gap:6px;padding:6px 12px;position:absolute;right:12px;top:12px;z-index:15}.status-dot{border-radius:50%;height:8px;transition:all .3s ease;width:8px}.status-dot.active{background:#4caf50;box-shadow:0 0 8px #4caf50cc}.status-dot.inactive{background:#999}.scanner-canvas-hidden{display:none}@media (max-width:768px){.qr-scanner-container{border-radius:0;max-width:100%}.scan-frame{height:240px;width:240px}.scanner-controls{bottom:16px}.scanner-info{font-size:12px}.scanner-result{bottom:70px;left:8px;right:8px}}@media (max-width:640px){.scan-frame{height:200px;width:200px}.scan-corner{border-width:2px;height:16px;width:16px}.scanner-controls{gap:8px}.btn-control{font-size:12px;padding:10px 14px}.scanner-result{bottom:65px;padding:10px}.result-icon{font-size:20px}.result-label{font-size:11px}.result-type{font-size:13px}.result-data{font-size:11px}.scanner-status{font-size:11px;padding:4px 10px}.status-dot{height:6px;width:6px}}.qr-scanner-page{background:linear-gradient(135deg,#f5f5f5,#f9f9f9);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0 auto;max-width:1400px;min-height:100vh;padding:24px}.page-header{margin-bottom:32px;text-align:center}.page-header h1{color:#333;font-size:32px;font-weight:700;margin:0 0 8px}.page-subtitle{color:#666;font-size:16px;font-weight:400;margin:0}.scanner-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:32px}.scanner-section{display:flex;flex-direction:column;gap:20px}.scanner-wrapper-box{aspect-ratio:1/1;border-radius:12px;overflow:hidden}.scanner-hints,.scanner-wrapper-box{background:#fff;box-shadow:0 2px 8px #0000001a}.scanner-hints{border-radius:8px;padding:20px}.scanner-hints h3{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.scanner-hints ul{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.scanner-hints li{color:#666;font-size:14px;line-height:1.5;padding-left:24px;position:relative}.scanner-hints li:before{color:#4caf50;content:"✓";font-weight:700;left:0;position:absolute}.history-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column}.history-header{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:20px 24px}.history-header h3{color:#333;font-size:18px;font-weight:600;margin:0}.transaction-count{background:#f5f5f5;border-radius:20px;color:#999;font-size:12px;font-weight:500;padding:4px 12px}.history-empty{color:#999;padding:60px 24px;text-align:center}.empty-icon{display:block;font-size:48px;margin-bottom:16px}.history-empty p{color:#333;font-size:16px;font-weight:500;margin:0 0 8px}.empty-hint{color:#999;display:block;font-size:14px}.transaction-list{display:flex;flex-direction:column;max-height:600px;overflow-y:auto;scrollbar-color:#ccc #f5f5f5;scrollbar-width:thin}.transaction-list::-webkit-scrollbar{width:6px}.transaction-list::-webkit-scrollbar-track{background:#f5f5f5}.transaction-list::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.transaction-list::-webkit-scrollbar-thumb:hover{background:#aaa}.transaction-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;gap:16px;padding:16px 24px;transition:background-color .2s ease}.transaction-item:last-child{border-bottom:none}.transaction-item:hover{background-color:#f9f9f9}.transaction-item.transaction-success{background-color:#4caf5005;border-left:3px solid #4caf50;padding-left:21px}.transaction-item.transaction-error{background-color:#f4433605;border-left:3px solid #f44336;padding-left:21px}.transaction-item.transaction-processing{background-color:#2196f305;border-left:3px solid #2196f3;padding-left:21px}.transaction-status{min-width:32px;text-align:center}.status-icon{font-size:20px;font-weight:600}.status-icon.status-pending{color:#ff9800}.status-icon.status-processing{color:#2196f3}.status-icon.status-success{color:#4caf50}.status-icon.status-error{color:#f44336}.transaction-content{flex:1 1;min-width:0}.transaction-header-row{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:6px}.transaction-type{background:#f5f5f5;font-size:14px;padding:2px 8px}.transaction-time{color:#999;font-size:12px;white-space:nowrap}.transaction-id{align-items:center;display:flex;font-size:12px;gap:6px;margin-bottom:4px}.transaction-id .label{color:#999;font-weight:500}.transaction-id .id-text{background:#f9f9f9;border-radius:3px;color:#333;flex:1 1;font-family:Courier New,monospace;padding:2px 6px;word-break:break-all}.transaction-amount{margin-top:6px}.amount-value{background:#667eea1a;border-radius:4px;color:#667eea;display:inline-block;font-size:14px;font-weight:600;padding:4px 8px}.transaction-message{background:#f9f9f9;border-radius:4px;color:#666;font-size:12px;margin-top:6px;padding:4px 8px}.transaction-item.transaction-error .transaction-message{background:#f443360d;color:#f44336}.transaction-item.transaction-success .transaction-message{background:#4caf500d;color:#4caf50}.transaction-actions{display:flex;flex-shrink:0;gap:6px}.btn-action{background:none;border:1px solid #ddd;border-radius:4px;font-size:14px;opacity:.6;padding:6px 8px;transition:all .2s ease}.btn-action:hover{background:#f9f9f9;border-color:#999;opacity:1}.btn-action.btn-view{color:#2196f3}.btn-action.btn-share{color:#667eea}.btn-action.btn-retry{color:#ff9800}.summary-stats{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:32px}.stat-card{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;gap:16px;padding:20px}.stat-icon{font-size:32px;min-width:48px;text-align:center}.stat-info{flex:1 1}.stat-label{color:#999;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.stat-value{color:#333;font-size:24px;font-weight:700}@media (max-width:1024px){.scanner-layout{grid-template-columns:1fr}.scanner-wrapper-box{aspect-ratio:16/9}.qr-scanner-page{padding:16px}.page-header h1{font-size:28px}}@media (max-width:768px){.scanner-layout{gap:16px}.history-section{max-height:400px}.transaction-list{max-height:350px}.transaction-item{gap:12px;padding:12px 16px}.page-header{margin-bottom:24px}.page-header h1{font-size:24px}.page-subtitle{font-size:14px}.history-header{padding:16px}.summary-stats{grid-template-columns:repeat(2,1fr)}.transaction-header-row{align-items:flex-start;flex-direction:column}.transaction-time{width:100%}}@media (max-width:640px){.qr-scanner-page{padding:12px}.scanner-layout{gap:12px;grid-template-columns:1fr}.scanner-wrapper-box{aspect-ratio:1/1;margin-bottom:12px}.page-header h1{font-size:20px}.page-subtitle{font-size:12px}.scanner-hints{padding:16px}.scanner-hints h3{font-size:14px;margin-bottom:8px}.scanner-hints li{font-size:12px;padding-left:20px}.history-header{padding:12px 16px}.history-header h3{font-size:16px}.history-empty{padding:40px 16px}.empty-icon{font-size:40px;margin-bottom:12px}.transaction-item{gap:10px;padding:12px}.transaction-item.transaction-error,.transaction-item.transaction-processing,.transaction-item.transaction-success{padding-left:15px}.transaction-type{font-size:12px}.transaction-id,.transaction-time{font-size:11px}.summary-stats{gap:12px;grid-template-columns:1fr}.stat-card{gap:12px;padding:16px}.stat-icon{font-size:24px;min-width:40px}.stat-value{font-size:20px}}.club-analytics-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}.club-analytics-page .page-header{animation:slideDown .6s ease-out;color:#fff;margin-bottom:40px;text-align:center}.club-analytics-page .page-header h1{font-size:2.5rem;font-weight:700;margin:0;text-shadow:0 2px 4px #0003}.analytics-container{margin:0 auto;max-width:1400px}.time-range-selector{animation:fadeIn .4s ease-out;background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;display:flex;gap:10px;justify-content:center;margin-bottom:30px;padding:20px}.metrics-grid{grid-gap:20px;animation:fadeIn .5s ease-out;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:30px}.metric-card{background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;padding:25px;transition:all .3s ease}.metric-card:hover{box-shadow:0 10px 30px #00000026;transform:translateY(-5px)}.metric-label{color:#888;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.metric-value{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700}.metric-subtext{color:#999;font-size:.9rem;margin-top:8px}.redemption-chart{flex-direction:column;min-height:250px}.chart-circle,.redemption-chart{align-items:center;display:flex;justify-content:center}.chart-circle{background:conic-gradient(#2ecc71 0,#e0e0e0 0);background:conic-gradient(#2ecc71 var(--percentage,0),#e0e0e0 var(--percentage,0));border-radius:50%;box-shadow:0 4px 15px #0000001a;height:200px;position:relative;width:200px}.chart-circle:before{background:#fff;border-radius:50%;content:"";height:160px;position:absolute;width:160px}.chart-value{color:#667eea;font-size:2.5rem;font-weight:700;position:relative;text-align:center;z-index:1}.chart-unit{color:#888;font-size:1rem}.bar-chart{width:100%}.product-item{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;gap:15px;margin-bottom:15px;padding-bottom:15px}.product-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.product-rank{color:#667eea;font-size:1.5rem;font-weight:700;min-width:30px}.product-bar{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;flex:1 1;height:30px;overflow:hidden;position:relative}.product-bar-fill{animation:fillBar .6s ease-out;background:inherit;height:100%}.product-count{color:#333;font-weight:600;min-width:50px;text-align:right}.product-name{color:#fff;font-size:.9rem;font-weight:600;left:10px;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.transactions-section{animation:fadeIn .7s ease-out;padding:25px}.transactions-header{align-items:center;display:flex;justify-content:space-between}.transactions-header h3{color:#333;font-size:1.3rem;margin:0}.transactions-count{background:#667eea;border-radius:20px;color:#fff;font-size:.9rem;font-weight:600;padding:6px 12px}.transactions-table{max-height:500px;overflow-y:auto}.transactions-table thead{background:#f8f9fa;border-bottom:2px solid #e0e0e0}.transactions-table th{color:#333;font-size:.95rem}.transactions-table td{padding:15px}.transaction-type{color:#333;font-size:.9rem}.transaction-user{color:#333;font-size:.95rem}.status-completed{background:#2ecc71}.status-pending{background:#f39c12}.status-failed{background:#e74c3c}.loading-container{align-items:center;display:flex;justify-content:center;min-height:300px}.loading-spinner{animation:spin .8s linear infinite;border:4px solid #667eea4d;border-radius:50%;border-top-color:#667eea;display:inline-block;height:40px;width:40px}.error-container{background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;padding:40px;text-align:center}.error-container h3{color:#e74c3c;font-size:1.3rem}.error-container p{color:#666;margin-bottom:20px}.btn-retry{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-retry:hover{box-shadow:0 5px 20px #667eea66;transform:translateY(-2px)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fillBar{0%{width:0}to{width:100%}}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){.club-analytics-page .page-header h1{font-size:2rem}.metrics-grid{grid-template-columns:1fr 1fr}.charts-section{grid-template-columns:1fr}.transactions-table{font-size:.9rem}.transactions-table td,.transactions-table th{padding:10px}}@media (max-width:480px){.metrics-grid{grid-template-columns:1fr}.time-range-selector{flex-wrap:wrap}.time-btn{font-size:.9rem;padding:8px 16px}.chart-circle{height:150px;width:150px}.chart-circle:before{height:120px;width:120px}.chart-value{font-size:2rem}}.date-range-section{animation:fadeIn .4s ease-out;background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;margin-bottom:30px;padding:20px}.preset-buttons{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:15px}.time-btn{background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 24px;transition:all .3s ease}.time-btn:hover{background:#667eea1a}.time-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.custom-range-inputs{align-items:center;border-top:2px solid #e0e0e0;display:flex;gap:15px;justify-content:center;padding-top:15px}.date-separator{color:#667eea;font-weight:600}.form-input,.form-select{border:2px solid #e0e0e0;border-radius:6px;font-family:inherit;font-size:.95rem;padding:10px 15px;transition:all .3s ease}.form-input:focus,.form-select:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.actions-bar{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:30px}.btn-action{background:#fff;border:2px solid #667eea;border-radius:8px;color:#667eea;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-action:hover:not(:disabled){background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:0 5px 20px #667eea66;color:#fff;transform:translateY(-2px)}.btn-action:disabled{cursor:not-allowed;opacity:.6}.performance-section{background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;margin-bottom:30px;padding:30px}.performance-section h3{color:#333;font-size:1.3rem;margin-bottom:20px;margin-top:0}.performance-table-wrapper{border:1px solid #e0e0e0;border-radius:8px;overflow-x:auto}.performance-table{border-collapse:collapse;width:100%}.performance-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.performance-table th{font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.performance-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background .2s ease}.performance-table tbody tr:hover{background:#f8f9fa}.performance-table td{color:#555;padding:15px}.product-name-cell{color:#333;font-weight:600}.rate-badge{background:#e8f0ff;border-radius:6px;color:#667eea;display:inline-block;font-size:.9rem;font-weight:600;padding:6px 12px}.value-cell{color:#2ecc71;font-weight:600}.behavior-section{background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;margin-bottom:30px;padding:30px}.behavior-section h3{color:#333;font-size:1.3rem;margin-bottom:20px;margin-top:0}.behavior-table-wrapper{border:1px solid #e0e0e0;border-radius:8px;overflow-x:auto}.behavior-table{border-collapse:collapse;width:100%}.behavior-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.behavior-table th{font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.behavior-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background .2s ease}.behavior-table tbody tr:hover{background:#f8f9fa}.behavior-table td{color:#555;padding:15px}.user-name-cell{color:#333;font-weight:600}.user-email-cell{color:#888;font-size:.95rem}.transaction-cell{color:#667eea;font-weight:600}.amount-cell{color:#2ecc71;font-weight:600}.avg-cell{color:#f39c12;font-weight:600}.date-cell{color:#999;font-size:.9rem}.transactions-section{background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;padding:30px}.transactions-header{color:#333;font-size:1.3rem;margin-bottom:20px;margin-top:0}.transactions-table-wrapper{border:1px solid #e0e0e0;border-radius:8px;max-height:600px;overflow-x:auto;overflow-y:auto}.transactions-table{border-collapse:collapse;width:100%}.transactions-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;position:-webkit-sticky;position:sticky;top:0}.transactions-table th{font-size:.9rem;font-weight:600;letter-spacing:.5px;padding:15px;text-align:left;text-transform:uppercase}.transactions-table tbody tr{border-bottom:1px solid #e0e0e0;transition:background .2s ease}.transactions-table tbody tr:hover{background:#f8f9fa}.transactions-table td{color:#555;padding:12px 15px}.transaction-type{background:#e8f0ff;border-radius:4px;color:#667eea;display:inline-block;font-size:.85rem;font-weight:600;padding:4px 8px}.transaction-user{font-weight:500}.transaction-amount{color:#667eea;font-weight:600}.transaction-timestamp{color:#999;font-size:.9rem}.status-badge{border-radius:20px;color:#fff;display:inline-block;font-size:.85rem;font-weight:600;padding:6px 12px}.charts-section{grid-gap:20px;animation:fadeIn .6s ease-out;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.chart-card{background:#fff;border-radius:12px;box-shadow:0 5px 20px #0000001a;padding:25px}.chart-title{color:#333;font-size:1.2rem;font-weight:600;margin-top:0}.chart-title,.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}@media (max-width:768px){.custom-range-inputs{flex-direction:column}.form-input{width:100%}.actions-bar{flex-direction:column}.btn-action{width:100%}.behavior-table,.performance-table,.transactions-table{font-size:.9rem}.behavior-table td,.behavior-table th,.performance-table td,.performance-table th,.transactions-table td,.transactions-table th{padding:10px}.charts-section{grid-template-columns:1fr}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.page-container{margin:0 auto;max-width:1200px;min-height:calc(100vh - 70px);padding:40px 20px;width:100%}.content{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.content h1{align-items:center;color:#2c3e50;display:flex;font-size:32px;gap:10px;margin:0 0 20px}.content h2{color:#34495e;font-size:24px;margin:30px 0 15px}.content h3{color:#34495e;font-size:18px;margin:20px 0 10px}.content p{color:#555;line-height:1.6;margin:15px 0}.section-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:30px 0}.section-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;cursor:pointer;padding:20px;text-align:left;transition:all .3s ease}.section-card:hover{box-shadow:0 8px 16px #667eea66;transform:translateY(-5px)}.section-card h3{color:#fff;margin:0 0 10px}.section-card p{color:#ffffffe6;font-size:14px;margin:0}.profile-card{background:#f8f9fa;border-left:4px solid #3498db;border-radius:4px;margin:20px 0;padding:20px}.profile-card p{margin:10px 0;text-align:left}.profile-card strong{color:#2c3e50}@media (max-width:768px){.page-container{padding:20px 15px}.content{padding:20px}.content h1{font-size:24px}.section-cards{grid-template-columns:1fr}}
/*# sourceMappingURL=main.a4a8b3d8.css.map*/