*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a0e0a;background-image:radial-gradient(circle at 20% 50%,#00ff641a 0,#0000 50%),radial-gradient(circle at 80% 80%,#00ff9614 0,#0000 50%),radial-gradient(circle at 40% 20%,#32ff640d 0,#0000 50%);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh;position:relative}body:before{background:repeating-linear-gradient(0deg,#00ff6408,#0000 1px,#0000 2px,#00ff6408 3px);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:1}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{min-height:100vh;position:relative;z-index:2}.loading{align-items:center;color:#0f6;display:flex;font-size:1.5rem;height:100vh;justify-content:center;text-shadow:0 0 20px #00ff64cc}.container{margin:0 auto;max-width:1200px;padding:2rem}.card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a140ff2;border:2px solid #00ff644d;border-radius:12px;box-shadow:0 0 30px #00ff6433,inset 0 0 20px #00ff640d;margin-bottom:2rem;padding:2rem}.btn{font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#0f6,#0c8);border:2px solid #00ff6480;box-shadow:0 0 20px #00ff644d;color:#0a0e0a;text-shadow:0 0 5px #00ff6480}.btn-primary:hover{background:linear-gradient(135deg,#0f8,#0fa);box-shadow:0 0 30px #00ff6499;transform:translateY(-2px)}.btn-secondary{background:#141e19cc;border:2px solid #00ff644d;color:#0f6}.btn-secondary:hover{background:#1e2823e6;border-color:#00ff6480;box-shadow:0 0 15px #00ff6433}.btn-success{background:#0f6;border:2px solid #0c5;box-shadow:0 0 20px #00ff6466;color:#0a0e0a}.btn-success:hover{background:#0f8;box-shadow:0 0 30px #00ff6499}.btn-danger{background:#f06;border:2px solid #c05;box-shadow:0 0 20px #ff006466;color:#fff}.btn-danger:hover{background:#f08;box-shadow:0 0 30px #ff006499}.grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.text-center{text-align:center}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}h1{color:#0f6;font-size:2.5rem;font-weight:700;text-shadow:0 0 20px #00ff6499}h1,h2{margin-bottom:1rem}h2{color:#0f8;font-size:2rem;text-shadow:0 0 15px #00ff6480}h3{color:#0fa;font-size:1.5rem;margin-bottom:.75rem;text-shadow:0 0 10px #00ff6466}p{color:#8fa;line-height:1.6}.auth-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-card{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#050f0af2;border:2px solid #00ff644d;border-radius:16px;box-shadow:0 0 50px #00ff644d,inset 0 0 30px #00ff640d;max-width:450px;padding:3rem;width:100%}.auth-header{margin-bottom:2rem;text-align:center}.auth-header h1{font-size:4rem;margin-bottom:.5rem}.auth-header h2{color:#0f6;margin-bottom:.5rem;text-shadow:0 0 20px #00ff64cc}.auth-header p{color:#8fa}.auth-form,.form-group{margin-bottom:1.5rem}.form-group label{color:#0f8;display:block;font-weight:600;margin-bottom:.5rem;text-shadow:0 0 10px #00ff6466}.form-group input{background:#0a140fcc;border:2px solid #00ff644d;border-radius:8px;color:#0f6;font-size:1rem;padding:.75rem;transition:all .3s ease;width:100%}.form-group input:focus{background:#0a140ff2;border-color:#0f6;box-shadow:0 0 20px #00ff644d;outline:none}.btn-block{margin-top:1rem;width:100%}.error-message{background:#ff006433;border:2px solid #ff006466;border-radius:8px;box-shadow:0 0 20px #ff006433;color:#f06;font-weight:500;margin-bottom:1.5rem;padding:1rem;text-align:center}.auth-footer{color:#8fa;text-align:center}.auth-footer a{color:#0f6;font-weight:600;text-decoration:none;text-shadow:0 0 10px #00ff6480}.auth-footer a:hover{text-decoration:underline}.dashboard{padding-top:2rem}.dashboard-header{margin-bottom:3rem;text-align:center}.dashboard-header h1{color:#0f6;font-size:2.5rem;margin-bottom:.5rem;text-shadow:0 0 30px #00ff64cc}.dashboard-header p{color:#8fa;font-size:1.1rem;text-shadow:0 0 10px #00ff644d}.stat-card{align-items:center;background:#0a140fe6;border:2px solid #00ff644d;box-shadow:0 0 20px #00ff6433;display:flex;gap:1rem;transition:transform .3s ease,box-shadow .3s ease}.stat-card:hover{border-color:#00ff6499;box-shadow:0 0 30px #00ff6466;transform:translateY(-5px)}.stat-icon{font-size:3rem;line-height:1}.stat-content h3{color:#6b7280;font-size:.9rem;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.stat-value{color:#1f2937;font-size:2.5rem;font-weight:700;margin-bottom:.25rem}.stat-content p{color:#9ca3af;font-size:.85rem}.tier-progress-card{background:#fff}.tier-progress-card h3{margin-bottom:1rem}.progress-bar{background:#e5e7eb;border-radius:15px;height:30px;margin-bottom:.75rem;overflow:hidden}.progress-fill{align-items:center;background:linear-gradient(90deg,#667eea,#764ba2);color:#fff;display:flex;font-weight:600;height:100%;justify-content:flex-end;padding-right:1rem;transition:width .5s ease}.progress-text{color:#4b5563;font-weight:500;text-align:center}.promotions-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #fbbf24}.promotions-list{display:flex;flex-direction:column;gap:1rem}.promotion-item{align-items:center;background:#fff;border-radius:8px;display:flex;gap:1rem;padding:1rem}.promotion-badge{background:#ef4444;border-radius:12px;color:#fff;font-size:.75rem;font-weight:700;padding:.25rem .75rem}.promotion-item h4{color:#1f2937;margin:0 0 .25rem}.promotion-item p{font-size:.9rem;margin:0}.purchase-card{background:#fff}.purchase-form{display:flex;gap:1rem;margin:1.5rem 0}.input-group{flex:1 1;position:relative}.input-prefix{color:#6b7280;font-size:1.1rem;font-weight:600;left:1rem;position:absolute;top:50%;transform:translateY(-50%)}.input-group input{border:2px solid #e5e7eb;padding:.75rem 1rem .75rem 2.5rem;transition:border-color .3s ease}.purchase-info{background:#f3f4f6;border-radius:8px;margin-top:1rem;padding:1rem}.purchase-info p{color:#4b5563;margin:0}.message{border-radius:8px;margin-bottom:1rem;padding:1rem;text-align:center}.message.success{background:#d1fae5;color:#065f46}.message.error{background:#fee2e2;color:#dc2626}.action-card{background:#fff;text-align:center}.action-card h3{margin-bottom:.5rem}.action-card p{margin-bottom:1.5rem}.action-card .btn{display:inline-block;text-decoration:none}.loading-spinner{color:#fff;font-size:1.5rem;padding:4rem;text-align:center}.wallet-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.wallet-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:100%}.close-btn{align-items:center;background:#f3f4f6;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .3s ease;width:40px;z-index:10}.close-btn:hover{background:#e5e7eb;transform:rotate(90deg)}.wallet-header{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px 16px 0 0;color:#fff;padding:2rem;text-align:center}.wallet-header h2{color:#fff;font-size:1.75rem;margin:0 0 .5rem}.wallet-header p{color:#ffffffe6;font-size:1.1rem;margin:0}.wallet-loading{color:#6b7280;padding:3rem;text-align:center}.qr-code-container{background:#f9fafb;padding:2rem;text-align:center}.qr-code{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;height:auto;max-width:300px;padding:1rem;width:100%}.redemption-code{border-bottom:2px solid #f3f4f6;padding:1.5rem 2rem;text-align:center}.code-label{color:#6b7280;font-size:.875rem;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.code-value{color:#667eea;font-family:Courier New,monospace;font-size:2rem;font-weight:700;letter-spacing:2px;margin-bottom:1rem}.btn-copy{background:#f3f4f6;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;font-weight:600;padding:.5rem 1.5rem;transition:all .3s ease}.btn-copy:hover{background:#e5e7eb;border-color:#667eea;color:#667eea}.redemption-info{border-bottom:2px solid #f3f4f6;padding:1.5rem 2rem}.info-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.info-row:last-child{margin-bottom:0}.info-label{color:#6b7280;font-weight:500}.info-value{color:#1f2937;font-weight:600}.wallet-actions{display:flex;flex-direction:column;gap:.75rem;padding:1.5rem 2rem}.wallet-actions .btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-weight:600;gap:.5rem;justify-content:center;padding:.875rem 1.5rem;transition:all .3s ease;width:100%}.btn-download{background:linear-gradient(135deg,#667eea,#764ba2)}.btn-download:hover{box-shadow:0 5px 15px #667eea66;transform:translateY(-2px)}.btn-apple-wallet{background:#000;color:#fff}.btn-apple-wallet:hover{background:#1f2937}.btn-google-wallet{background:#4285f4;color:#fff}.btn-google-wallet:hover{background:#357ae8}.wallet-instructions{background:#f9fafb;border-radius:0 0 16px 16px;padding:1.5rem 2rem 2rem}.wallet-instructions h4{color:#1f2937;font-size:1rem;margin:0 0 1rem}.wallet-instructions ol{color:#4b5563;line-height:1.8;margin:0;padding-left:1.5rem}.wallet-instructions li{margin-bottom:.5rem}@media (max-width:600px){.wallet-modal{border-radius:16px 16px 0 0;margin:0;max-width:100%}.qr-code{max-width:250px}.code-value{font-size:1.5rem}}.rewards-page{padding-top:2rem}.page-header{color:#fff;margin-bottom:2rem}.page-header h1{color:#fff;margin-bottom:.5rem}.page-header p{color:#ffffffe6;font-size:1.1rem}.user-points-display{align-items:center;background:#fff;border-radius:25px;box-shadow:0 4px 15px #0000001a;display:inline-flex;gap:.5rem;margin-top:1rem;padding:.75rem 1.5rem}.points-label{color:#6b7280;font-weight:500}.points-value{color:#667eea;font-size:1.5rem;font-weight:700}.tabs{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:flex;gap:1rem;margin-bottom:2rem;padding:.5rem}.tab{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;flex:1 1;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.rewards-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.reward-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:2rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.reward-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.reward-card.disabled{opacity:.6}.reward-icon{font-size:4rem;margin-bottom:1rem}.reward-card h3{color:#1f2937;margin-bottom:.5rem}.reward-description{color:#6b7280;margin-bottom:1.5rem;min-height:3rem}.reward-cost{align-items:baseline;display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.cost-value{color:#667eea;font-size:2rem;font-weight:700}.cost-label{color:#9ca3af;font-size:.9rem}.reward-card .btn{width:100%}.redemptions-list{display:flex;flex-direction:column;gap:1rem}.redemption-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:1.5rem}.redemption-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:1rem}.redemption-header h3{color:#1f2937;margin:0}.status-badge{border-radius:12px;font-size:.85rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.used{background:#e5e7eb;color:#6b7280}.redemption-details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{color:#9ca3af;font-size:.85rem;font-weight:500}.detail-value{color:#1f2937;font-weight:600}.detail-value.code{background:#f3f4f6;border-radius:6px;color:#667eea;font-family:Courier New,monospace;font-size:1.1rem;padding:.5rem}.empty-state{background:#fff;border-radius:12px;padding:4rem 2rem;text-align:center}.empty-state p{color:#6b7280;font-size:1.1rem;margin-bottom:1.5rem}.redemption-actions{border-top:2px solid #f3f4f6;margin-top:1rem;padding-top:1rem}.redemption-actions .btn{width:100%}.tiers-page{padding-top:2rem}.current-tier-card{background:#fff;margin-bottom:2rem}.current-tier-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.tier-badge{border-radius:25px;color:#fff;font-size:1.2rem;font-weight:700;letter-spacing:1px;padding:.75rem 1.5rem;text-transform:uppercase}.tier-stats{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.tier-stat{background:#f9fafb;border-radius:12px;padding:1.5rem;text-align:center}.stat-label{color:#6b7280;display:block;font-size:.9rem;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.stat-number{color:#1f2937;display:block;font-size:2.5rem;font-weight:700}.next-tier-progress{border-top:2px solid #f3f4f6;padding-top:2rem}.next-tier-progress h3{color:#374151;margin-bottom:1rem}.progress-percentage{color:#fff;font-weight:600;padding-right:1rem}.progress-info{color:#6b7280;font-weight:500;margin-top:.75rem;text-align:center}.tiers-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.tier-card{background:#fff;border:3px solid #0000;border-radius:12px;box-shadow:0 4px 15px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.tier-card:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-5px)}.tier-card.current{border-width:4px;box-shadow:0 8px 30px #667eea4d}.tier-card.locked{opacity:.7}.tier-card-header{align-items:center;color:#fff;display:flex;justify-content:space-between;padding:1.5rem}.tier-card-header h3{color:#fff;font-size:1.5rem;letter-spacing:1px;margin:0;text-transform:uppercase}.current-badge,.unlocked-badge{background:#ffffff4d;border-radius:12px;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.tier-card-body{padding:1.5rem}.tier-requirement{align-items:center;background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:1rem;padding:1rem}.requirement-label{color:#6b7280;font-weight:500}.requirement-value{color:#1f2937;font-size:1.2rem;font-weight:700}.tier-multiplier{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:8px;display:flex;gap:.5rem;margin-bottom:1.5rem;padding:1rem}.multiplier-icon{font-size:1.5rem}.multiplier-text{color:#92400e;font-weight:600}.tier-benefits h4{color:#374151;font-size:.9rem;letter-spacing:.5px;margin-bottom:.75rem;text-transform:uppercase}.tier-benefits ul{list-style:none;margin:0;padding:0}.tier-benefits li{align-items:center;color:#4b5563;display:flex;gap:.5rem;padding:.5rem 0}.benefit-icon{color:#10b981;font-weight:700}.how-it-works{background:#fff}.how-it-works h2{margin-bottom:2rem;text-align:center}.info-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item{text-align:center}.info-icon{font-size:3rem;margin-bottom:1rem}.info-item h3{color:#1f2937;margin-bottom:.5rem}.info-item p{color:#6b7280}.history-page{padding-top:2rem}.history-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.filter-btn{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.filter-btn:hover{border-color:#667eea;color:#667eea}.filter-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.transactions-list{display:flex;flex-direction:column;gap:1rem}.transaction-item{align-items:center;background:#f9fafb;border-radius:12px;display:flex;gap:1rem;padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease}.transaction-item:hover{box-shadow:0 4px 12px #0000000d;transform:translateX(5px)}.transaction-icon{flex-shrink:0;font-size:2.5rem}.transaction-details{flex:1 1}.transaction-details h4{color:#1f2937;font-size:1.1rem;margin:0 0 .25rem}.transaction-date{color:#9ca3af;font-size:.85rem;margin:0}.multiplier-badge{background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:12px;color:#92400e;display:inline-block;font-size:.75rem;font-weight:600;margin-top:.5rem;padding:.25rem .75rem}.transaction-points{flex-shrink:0;font-size:1.5rem;font-weight:700}.transaction-points.positive{color:#10b981}.transaction-points.negative{color:#ef4444}.transaction-points.neutral{color:#6b7280}.stat-card{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;padding:1.5rem;text-align:center}.stat-card h3{color:#6b7280;font-size:.9rem;letter-spacing:.5px;margin-bottom:.75rem;text-transform:uppercase}.stat-card .stat-value{font-size:2rem;font-weight:700}.stat-card .stat-value.positive{color:#10b981}.stat-card .stat-value.negative{color:#ef4444}.stat-card .stat-value.neutral{color:#667eea}.admin-dashboard{padding-top:2rem}.admin-tabs{background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:flex;gap:1rem;margin-bottom:2rem;padding:.5rem}.admin-tab{background:#0000;border:none;border-radius:8px;color:#6b7280;cursor:pointer;flex:1 1;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.admin-tab:hover{background:#f3f4f6}.admin-tab.active{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.admin-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 15px #0000001a;display:flex;gap:1rem;padding:1.5rem}.admin-stat-icon{font-size:3rem;line-height:1}.admin-stat-content h3{color:#6b7280;font-size:.85rem;letter-spacing:.5px;margin-bottom:.5rem;text-transform:uppercase}.admin-stat-value{color:#1f2937;font-size:2.5rem;font-weight:700;margin-bottom:.25rem}.stat-subtext{color:#9ca3af;font-size:.85rem;margin:0}.tier-distribution{display:flex;flex-direction:column;gap:1.5rem}.tier-bar-container{display:flex;flex-direction:column;gap:.5rem}.tier-bar-label{align-items:center;display:flex;justify-content:space-between}.tier-name{color:#1f2937;font-weight:600;text-transform:capitalize}.tier-count{color:#6b7280;font-size:.9rem}.tier-bar{background:#e5e7eb;border-radius:15px;height:30px;overflow:hidden}.tier-bar-fill{align-items:center;color:#fff;display:flex;font-weight:600;height:100%;padding-left:1rem;transition:width .5s ease}.top-redeemers-list{display:flex;flex-direction:column;gap:1rem}.redeemer-item{background:#f9fafb;border-radius:8px;gap:1rem;padding:1rem}.redeemer-item,.redeemer-rank{align-items:center;display:flex}.redeemer-rank{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;font-size:1.1rem;font-weight:700;height:40px;justify-content:center;width:40px}.redeemer-info h4{color:#1f2937;margin:0 0 .25rem}.redeemer-info p{color:#6b7280;font-size:.9rem;margin:0}.transactions-table-container,.users-table-container{overflow-x:auto}.transactions-table,.users-table{border-collapse:collapse;width:100%}.transactions-table th,.users-table th{background:#f9fafb;border-bottom:2px solid #e5e7eb;color:#6b7280;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.transactions-table td,.users-table td{border-bottom:1px solid #f3f4f6;color:#4b5563;padding:1rem}.transactions-table tbody tr:hover,.users-table tbody tr:hover{background:#f9fafb}.points-cell{color:#667eea;font-weight:600}.points-cell.positive{color:#10b981}.points-cell.negative{color:#ef4444}.tier-badge-small{color:#fff}.tier-badge-small,.type-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .75rem;text-transform:uppercase}.type-badge.earned{background:#d1fae5;color:#065f46}.type-badge.redeemed{background:#fee2e2;color:#991b1b}.type-badge.admin_added{background:#fef3c7;color:#92400e}.empty-message{color:#9ca3af;font-style:italic;padding:2rem;text-align:center}.admin-purchase-page{margin:0 auto;max-width:900px;padding:20px}.card{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:25px;padding:25px}.card h3{color:#333;font-size:1.3rem;margin-bottom:20px}.member-id-input{border:3px solid #667eea;border-radius:10px;font-family:monospace;font-size:1.5rem;letter-spacing:4px;max-width:300px;padding:15px;text-align:center;text-transform:uppercase;width:100%}.amount-input{border:2px solid #ddd;border-radius:8px;font-size:1.3rem;padding:12px 15px;width:200px}.member-details-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.member-details-card h3{color:#fff}.member-details-card .info-row{border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:12px 0}.member-details-card .label{opacity:.9}.member-details-card .value{font-weight:700}.member-details-card .code{background:#fff3;border-radius:5px;font-family:monospace;padding:4px 12px}.tier-badge{border-radius:15px;font-size:.8rem;padding:4px 12px}.tier-badge.bronze{background:#cd7f32}.tier-badge.silver{background:silver;color:#333}.tier-badge.gold{background:gold;color:#333}.tier-badge.platinum{background:#e5e4e2;color:#333}.points{color:gold;font-size:1.2rem}.points-preview{background:#ffffff26;border-radius:10px;margin:20px 0;padding:20px}.points-preview p{font-size:1.1rem;margin-bottom:8px}.points-earned{color:gold;font-size:1.5rem;font-weight:700}.btn{padding:12px 25px}.btn-success{background:#48bb78;color:#fff}.btn-success:hover{background:#38a169}.btn-large{font-size:1.2rem;padding:15px 30px;width:100%}.audit-trail-card{overflow-x:auto}.audit-table{border-collapse:collapse;width:100%}.audit-table td,.audit-table th{border-bottom:1px solid #eee;padding:12px;text-align:left}.audit-table th{color:#4a5568;font-weight:600}.audit-table th,.audit-table tr:hover{background:#f7fafc}.note{background:#fff;border-left:4px solid #48bb78;border-radius:8px;margin-top:20px;padding:15px}.message{font-weight:500}.admin-setup-page{margin:0 auto;max-width:600px;padding:20px}.setup-card{background:#fff;border-radius:15px;box-shadow:0 4px 15px #0000001a;margin-bottom:25px;padding:30px}.setup-card h3{color:#333;margin-bottom:15px}.setup-note{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:20px;padding:15px}.setup-note code{background:#333;border-radius:4px;color:#fff;font-size:1.1rem;padding:4px 8px}.input-group{margin-bottom:20px}.input-group label{color:#555;display:block;font-weight:600;margin-bottom:8px}.input-group input{border:2px solid #ddd;border-radius:8px;font-size:1rem;padding:12px;width:100%}.input-group input:focus{border-color:#667eea;outline:none}.btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;padding:12px 30px;transition:all .3s;width:100%}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5a67d8}.btn:disabled{cursor:not-allowed;opacity:.5}.message{border-radius:10px;margin-bottom:20px;padding:15px 20px}.message.success{background:#c6f6d5;border:1px solid #9ae6b4;color:#22543d}.message.error{background:#fed7d7;border:1px solid #fc8181;color:#742a2a}.instructions-card{background:#f0fff4;border:2px solid #9ae6b4;border-radius:15px;padding:25px}.instructions-card h3{color:#2f855a;margin-bottom:15px}.instructions-card ol{padding-left:25px}.instructions-card li{line-height:1.6;margin-bottom:12px}.instructions-card ul{margin-left:20px;margin-top:10px}.instructions-card ul li{margin-bottom:5px}.instructions-card a{color:#667eea;text-decoration:none}.instructions-card a:hover{text-decoration:underline}.membership-page{margin:0 auto;max-width:800px;padding:20px}.page-header{margin-bottom:30px;text-align:center}.page-header h1{font-size:2rem;margin-bottom:10px}.page-header p{color:#666}.digital-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;box-shadow:0 10px 40px #667eea4d;color:#fff;margin-bottom:30px;padding:30px}.card-header{align-items:center;border-bottom:1px solid #ffffff4d;display:flex;gap:10px;margin-bottom:20px;padding-bottom:15px}.card-logo{font-size:2rem}.card-title{font-size:1.5rem;font-weight:700}.card-body{align-items:center;display:flex;justify-content:space-between}.member-info h2{font-size:1.8rem;margin-bottom:10px}.member-id{font-family:monospace;font-size:1.1rem;margin-bottom:5px;opacity:.9}.member-tier{font-size:.9rem;letter-spacing:2px;margin-bottom:10px;opacity:.8}.member-points{font-size:1.3rem;font-weight:700}.qr-section{background:#fff;border-radius:15px;padding:20px;text-align:center}.qr-preview{cursor:pointer;padding:10px}.qr-placeholder{align-items:center;background:#f0f0f0;border-radius:10px;display:flex;height:120px;justify-content:center;margin-bottom:10px;width:120px}.qr-placeholder span{font-size:3rem}.qr-preview p{color:#667eea;font-size:.9rem}.qr-code-large{height:150px;width:150px}.qr-code-large img{height:100%;width:100%}.qr-code-large p{color:#333;font-size:.8rem;margin-top:5px}.card-actions{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.card-actions .btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;font-size:1rem;gap:8px;justify-content:center;padding:15px 20px;transition:transform .2s}.card-actions .btn:hover{transform:translateY(-2px)}.btn-apple{background:#000;color:#fff}.btn-google{background:#4285f4;color:#fff}.btn-download{background:#667eea;color:#fff}.card-instructions{background:#f8f9fa;border-radius:15px;margin-bottom:30px;padding:25px}.card-instructions h3{color:#333;margin-bottom:15px}.card-instructions ol{padding-left:20px}.card-instructions li{line-height:1.6;margin-bottom:10px}.pos-section{background:#e8f5e9;border:2px dashed #4caf50;border-radius:15px;padding:25px}.pos-section h3{color:#2e7d32;margin-bottom:10px}.pos-section p{color:#666;margin-bottom:15px}.member-code{background:#fff;border:2px solid #4caf50;border-radius:10px;display:inline-block;font-family:monospace;font-size:1.5rem;font-weight:700;letter-spacing:3px;padding:15px 30px}.error,.loading{font-size:1.2rem;padding:50px;text-align:center}.error{color:#e74c3c}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#050a08f2;border-bottom:2px solid #00ff644d;box-shadow:0 0 30px #00ff6433;position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1400px;padding:1rem 2rem}.navbar-logo{color:#0f6;font-size:1.5rem;font-weight:700;text-decoration:none;text-shadow:0 0 20px #00ff64cc;transition:transform .3s ease}.navbar-logo:hover{transform:scale(1.05)}.navbar-menu{align-items:center;display:flex;gap:2rem}.navbar-link{color:#8fa;font-weight:500;position:relative;text-decoration:none;transition:color .3s ease}.navbar-link:hover{color:#0f6;text-shadow:0 0 10px #00ff6499}.navbar-link:after{background:#0f6;bottom:-5px;box-shadow:0 0 10px #00ff64cc;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.navbar-link:hover:after{width:100%}.admin-link{color:#ef4444}.admin-link:hover{color:#dc2626}.navbar-user{align-items:center;display:flex;gap:1rem}.user-name{color:#0f8;font-weight:600;text-shadow:0 0 10px #00ff6466}.user-points{background:linear-gradient(135deg,#0f6,#0c8);border:2px solid #00ff6480;border-radius:20px;box-shadow:0 0 20px #00ff6466;color:#0a0e0a;font-size:.9rem;font-weight:600;padding:.5rem 1rem;text-shadow:0 0 5px #00ff6480}.btn-logout{background:#141e19cc;border:2px solid #00ff644d;border-radius:6px;color:#0f6;cursor:pointer;font-weight:500;padding:.5rem 1rem;transition:all .3s ease}.btn-logout:hover{background:#1e2823e6;border-color:#00ff6499;box-shadow:0 0 15px #00ff644d;color:#0f8}@media (max-width:768px){.navbar-container{flex-direction:column;gap:1rem}.navbar-menu{gap:1rem}}
/*# sourceMappingURL=main.bcfed0aa.css.map*/