a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}body{background:linear-gradient(135deg,#1f294e,#0f1423);background-attachment:fixed;color:#333;font-family:Montserrat,sans-serif;min-height:100vh;margin:0}.register-page{display:flex;justify-content:center;align-items:center;min-height:100vh;width:100%}.register-container{width:min(90%,480px);margin:4vh auto;padding:clamp(20px,5vw,40px);background:#fff;box-shadow:0 10px 40px #00000014;border-radius:16px;border:1px solid #e0e0e0;position:relative;animation:fadeIn .6s ease-out}.logo-container{text-align:center;background:#1f294e;margin:-40px -40px 30px;padding:30px 20px;border-radius:15px 15px 0 0;display:flex;justify-content:center;align-items:center}.app-logo{max-width:180px;height:auto}.register-title{text-align:center;margin-bottom:30px;color:#1f294e;font-family:Cinzel,serif;font-size:clamp(1.5rem,5vw,2rem);font-weight:700;letter-spacing:1px;padding-bottom:10px;border-bottom:2px solid #1f294e}.register-form{display:flex;flex-direction:column}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-family:Playfair Display,serif;color:#1f294e;font-size:.95em;font-weight:600}.form-input{width:100%;padding:12px 15px;background:#f8f9fa;border:1px solid #ddd;border-radius:8px;color:#333;font-size:1em;font-family:Montserrat,sans-serif;transition:all .2s ease;box-sizing:border-box}.form-input:focus{background:#fff;border-color:#1f294e;outline:none;box-shadow:0 0 0 3px #1f294e1a}.phone-input-container{display:flex;gap:10px}.country-code-select{width:120px;flex-shrink:0;padding-right:5px;padding-left:10px}.submit-btn{background:#1f294e;color:#fff;border:1px solid #1f294e;padding:14px;border-radius:8px;font-size:1em;font-family:Montserrat,sans-serif;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:15px;text-transform:uppercase;letter-spacing:1px}.submit-btn:hover{background:#fff;color:#1f294e;border-color:#1f294e}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.message{padding:12px;border-radius:6px;margin-bottom:20px;text-align:center;font-size:.9em}.message.success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.message.error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.admin-toggle{text-align:center;margin-top:20px}.admin-btn{color:#777;text-decoration:none;font-size:.85em;transition:color .2s}.admin-btn:hover{color:#1f294e;text-decoration:underline}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){body{background:linear-gradient(135deg,#1f294e,#0f1423);align-items:flex-start}.register-container{margin:0;width:100%;max-width:100%;min-height:100vh;border-radius:0;box-shadow:none;border:none;padding:20px;display:flex;flex-direction:column;justify-content:center}.register-title{font-size:1.8rem;margin-bottom:25px}.logo-container{margin:-20px -20px 25px;border-radius:0}}.dashboard-container{padding:30px;max-width:1200px;margin:0 auto;font-family:Montserrat,sans-serif;color:#333;min-height:100vh}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;border-bottom:2px solid #f0f0f0;padding-bottom:20px}.dashboard-title{font-family:Cinzel,serif;color:#1f294e;font-size:1.8em;margin:0;font-weight:700}.logout-btn{background:#fff;border:1px solid #ddd;color:#666;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:.9em;transition:all .2s;display:flex;align-items:center;gap:6px}.logout-btn:hover{border-color:#1f294e;color:#1f294e}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;border:1px solid #eee;border-radius:12px;padding:24px;text-align:center;box-shadow:0 4px 12px #0000000d;transition:transform .2s}.stat-card:hover{transform:translateY(-2px);border-color:#1f294e}.stat-value{font-size:clamp(2rem,4vw,3rem);font-weight:700;color:#1f294e;margin-bottom:5px;font-family:Playfair Display,serif}.stat-label{color:#888;font-size:.9em;text-transform:uppercase;letter-spacing:1px;font-weight:500}.controls-bar{display:flex;gap:15px;margin-bottom:25px;flex-wrap:wrap;background:#fff;padding:20px;border-radius:12px;border:1px solid #eee;box-shadow:0 2px 10px #00000008}.search-input,.status-filter{padding:12px 16px;background:#f8f9fa;border:1px solid #ddd;border-radius:8px;color:#333;font-size:1em;height:52px;box-sizing:border-box}.search-input{flex:1;min-width:250px}.search-input:focus,.status-filter:focus{outline:none;border-color:#1f294e;background:#fff}.status-filter{cursor:pointer;min-width:160px}.status-filter option{background:#fff;color:#333}.scan-btn{background:#1f294e;color:#fff;border:none;padding:0 28px;height:52px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background .2s}.scan-btn:hover{background:#0f1527}.users-table-container{background:#fff;border-radius:12px;border:1px solid #eee;overflow:hidden;box-shadow:0 4px 15px #0000000d}.users-table{width:100%;border-collapse:collapse}.users-table th{background:#f8f9fa;color:#555;font-weight:600;padding:15px 20px;text-align:left;font-size:.85em;text-transform:uppercase;border-bottom:2px solid #eee}.users-table td{padding:15px 20px;border-bottom:1px solid #f0f0f0;color:#333;font-size:.95em}.users-table tr:hover{background:#fafafa}.status-badge{padding:4px 10px;border-radius:20px;font-size:.75em;font-weight:600;text-transform:uppercase}.status-badge.registered{background:#e3f2fd;color:#1976d2}.status-badge.arrived{background:#e8f5e9;color:#2e7d32}.action-btn{background:transparent;border:1px solid #ddd;color:#666;padding:6px;border-radius:6px;cursor:pointer;transition:all .2s;margin-right:5px}.action-btn:hover{background:#1f294e;color:#fff;border-color:#1f294e}.qr-scanner-overlay{position:fixed;inset:0;background:#fffffff2;z-index:1000;display:flex;flex-direction:column;justify-content:center;align-items:center}.scanner-box{width:90%;max-width:400px;background:#fff;padding:20px;border-radius:16px;box-shadow:0 20px 50px #0000001a;border:1px solid #eee}.close-scanner{margin-top:20px;background:#f44336;border:none;color:#fff;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:600;width:100%}.pagination{display:flex;justify-content:center;gap:15px;padding:25px 0}.page-btn{background:#fff;border:1px solid #ddd;color:#333;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.page-btn:hover:not(:disabled){border-color:#1f294e;background:#1f294e;color:#fff}.page-btn:disabled{opacity:.4;cursor:not-allowed;background:#f9f9f9}@media(max-width:768px){.dashboard-container{padding:15px}.dashboard-header{flex-direction:column;text-align:center;gap:15px;align-items:flex-start}.dashboard-title{font-size:1.4em}.dashboard-header>div{width:100%;display:flex;flex-direction:column}.logout-btn{justify-content:center}.controls-bar{flex-direction:column;padding:15px;background:transparent;border:none;box-shadow:none}.search-input,.status-filter,.scan-btn{width:100%;min-width:0}.users-table-container{border:none;box-shadow:none;background:transparent;overflow:visible}.users-table thead{display:none}.users-table,.users-table tbody,.users-table tr,.users-table td{display:block;width:100%}.users-table tr{background:#fff;border:1px solid #eee;border-radius:12px;margin-bottom:15px;padding:15px;box-shadow:0 2px 8px #0000000d}.users-table td{display:flex;justify-content:space-between;align-items:center;text-align:right;padding:10px 0;border-bottom:1px solid #f5f5f5}.users-table td:last-child{border-bottom:none;justify-content:flex-end;padding-top:15px}.users-table td:before{content:attr(data-label);font-weight:600;color:#999;font-size:.8em;text-transform:uppercase;margin-right:15px}}.payment-dashboard{padding:30px;background:#fdfdfd;min-height:100vh;font-family:Montserrat,sans-serif;color:#1f294e}.pay-dash-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.header-left{display:flex;align-items:center;gap:20px}.back-btn{background:#fff;border:1px solid #ddd;color:#1f294e;padding:8px;border-radius:50%;cursor:pointer;transition:all .2s}.back-btn:hover{background:#1f294e;color:#fff;border-color:#1f294e}.pay-dash-title{font-family:Cinzel,serif;font-size:2em;font-weight:700;margin:0}.export-btn{background:#1f294e;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:10px;transition:background .2s}.export-btn:hover{background:#0f1527}.pay-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:40px}.pay-stat-card{background:#fff;padding:25px;border-radius:16px;border:1px solid #eee;box-shadow:0 4px 20px #0000000d;display:flex;align-items:center;gap:20px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.pay-stat-card:hover{transform:scale(1.02)}.stat-icon-wrapper{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}.revenue .stat-icon-wrapper{background:linear-gradient(135deg,#1f294e,#3a4b8f)}.success .stat-icon-wrapper{background:linear-gradient(135deg,#2e7d32,#4caf50)}.pending .stat-icon-wrapper{background:linear-gradient(135deg,#f9a825,#fbc02d)}.failed .stat-icon-wrapper{background:linear-gradient(135deg,#c62828,#ef5350)}.stat-info .stat-label{display:block;font-size:.8em;color:#888;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.stat-info .stat-value{font-size:1.5em;font-weight:700;display:block;font-family:Playfair Display,serif}.pay-table-section{background:#fff;border-radius:16px;border:1px solid #eee;box-shadow:0 4px 30px #0000000a;overflow:hidden}.table-controls-complex{padding:25px;border-bottom:1px solid #f0f0f0;display:flex;flex-direction:column;gap:20px}.controls-row{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-end}.main-controls{justify-content:space-between}.type-filters{padding-top:15px;border-top:1px dashed #eee}.date-filters,.amount-filters{display:flex;gap:15px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:.75em;font-weight:600;color:#888;text-transform:uppercase}.filter-group input{padding:10px 15px;border-radius:8px;border:1px solid #eee;background:#f8f9fa;font-size:.9em;font-family:inherit;color:#1f294e;min-width:140px}.search-box,.filter-box{display:flex;align-items:center;gap:12px;background:#f8f9fa;padding:12px 15px;border-radius:10px;border:1px solid #eee;flex:1;min-width:250px}.search-box input,.filter-box select{background:transparent;border:none;outline:none;width:100%;font-family:inherit;color:#1f294e;font-size:.95em}.filter-box{flex:0 1 200px;min-width:150px}.clear-filters-btn{background:#fff;border:1px solid #ffcdd2;color:#c62828;padding:10px 20px;border-radius:8px;font-size:.85em;font-weight:600;cursor:pointer;transition:all .2s;height:42px;margin-left:auto}.clear-filters-btn:hover{background:#c62828;color:#fff;border-color:#c62828}.pay-table-wrapper{overflow-x:auto}.pay-table{width:100%;border-collapse:collapse}.pay-table th{background:#fafafa;padding:18px 25px;text-align:left;font-size:.8em;text-transform:uppercase;color:#999;letter-spacing:1px;font-weight:600}.pay-table td{padding:18px 25px;border-bottom:1px solid #f8f9fa;font-size:.95em}.pay-table tr:hover{background:#fcfcfc}.order-id{font-family:monospace;font-weight:600;color:#1f294e;opacity:.8}.amount{font-weight:700;color:#1f294e}.pay-id{font-size:.85em;opacity:.6}.pay-status{padding:4px 12px;border-radius:20px;font-size:.75em;font-weight:700;text-transform:uppercase}.pay-status.completed{background:#e8f5e9;color:#2e7d32}.pay-status.pending{background:#fff3e0;color:#ef6c00}.pay-status.failed{background:#ffebee;color:#c62828}.table-loader,.table-empty{text-align:center;padding:60px!important;opacity:.5;font-style:italic}.pay-pagination{padding:25px;display:flex;justify-content:center;align-items:center;gap:20px}.pay-pagination button{background:#fff;border:1px solid #ddd;padding:8px 18px;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.pay-pagination button:hover:not(:disabled){border-color:#1f294e;background:#1f294e;color:#fff}.pay-pagination button:disabled{opacity:.3;pointer-events:none}@media(max-width:480px){.payment-dashboard{padding:15px}.pay-dash-header{flex-direction:column;gap:20px;align-items:flex-start}.pay-stats-grid{grid-template-columns:1fr}.table-controls{flex-direction:column}.search-box,.filter-box{min-width:0}}.status-container{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(135deg,#1f294e,#0f1423);padding:20px;font-family:Montserrat,sans-serif}.status-card{background:#fff;padding:60px 40px;border-radius:24px;max-width:500px;width:100%;text-align:center;box-shadow:0 10px 40px #0003;animation:slideUp .6s cubic-bezier(.175,.885,.32,1.275)}.status-icon-wrapper{margin-bottom:30px}.success .status-icon-wrapper{color:#2e7d32}.failed .status-icon-wrapper{color:#c62828}.status-title{font-family:Cinzel,serif;font-size:2.2em;margin-bottom:20px;color:#1f294e}.status-message{color:#666;line-height:1.6;margin-bottom:40px}.status-details{background:#f8f9fa;padding:20px;border-radius:12px;margin-bottom:40px}.detail-item{display:flex;justify-content:space-between;align-items:center}.detail-item span{font-size:.9em;font-weight:600}.badge{padding:4px 12px;border-radius:20px;font-size:.8em;font-weight:700;text-transform:uppercase}.badge.success{background:#e8f5e9;color:#2e7d32}.badge.failed{background:#ffebee;color:#c62828}.status-actions{display:flex;justify-content:center}.status-btn{padding:14px 40px;border-radius:10px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.status-btn.primary{background:#1f294e;color:#fff;border:none}.status-btn.primary:hover{background:#0f1527;transform:translateY(-2px);box-shadow:0 5px 15px #1f294e4d}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.receipt-box{background:#f8f9fa;border-radius:12px;padding:25px;margin-bottom:30px;text-align:left;border:2px dashed #ddd}.receipt-header{font-size:1.2em;font-weight:700;color:#1f294e;text-align:center;margin-bottom:20px;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid #eaeaea;padding-bottom:15px}.receipt-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.receipt-row:last-child{border-bottom:none;padding-bottom:0}.receipt-label{color:#666;font-size:.9em;font-weight:500}.receipt-val{font-weight:700;color:#1f294e;font-size:.95em}.receipt-val.amount{font-size:1.1em;color:#2e7d32}.status-btn.secondary{background:#fff;color:#1f294e;border:2px solid #1f294e;margin-right:15px}.status-btn.secondary:hover{background:#1f294e;color:#fff;transform:translateY(-2px);box-shadow:0 5px 15px #1f294e26}@media(max-width:480px){.status-card{padding:40px 25px}.status-title{font-size:1.8em}.status-actions{flex-direction:column;gap:15px}.status-btn.secondary{margin-right:0}}@media print{body,html{margin:0;padding:0;background:#fff!important;height:100%}.status-container{background:none!important;padding:0;min-height:auto}.status-card{box-shadow:none;padding:20px;margin:0 auto;border-radius:0;width:100%;max-width:800px}.no-print{display:none!important}.receipt-box{border:2px solid #ccc;background:transparent;padding:40px}.status-title{color:#000;text-align:center;display:block}}
