body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;line-height:1.5;margin:0;padding:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-container{display:flex;flex-direction:column;min-height:100vh}.app-header{align-items:center;background-color:#fff;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:center;min-height:270px;padding:1rem;position:-webkit-sticky;position:sticky;position:relative;top:0;z-index:1000}.app-logo{height:250px;object-fit:contain;transition:height .3s ease;width:auto}.header-controls{align-items:center;display:flex;gap:1rem;position:absolute;right:1.5rem;top:1rem}.language-selector{align-items:center;display:flex;gap:.5rem}.language-selector select{border:1px solid #ccc;border-radius:4px;font-size:1rem;padding:.5rem}.container{flex:1 1;margin:0 auto;max-width:1200px;padding:1.5rem;width:100%}h1{font-size:2.5rem;margin-bottom:1.5rem}h2{font-size:2rem;margin-bottom:1.25rem}h3{font-size:1.75rem}h3,p{margin-bottom:1rem}@media (max-width:768px){.app-header{justify-content:space-between;min-height:120px;padding:.75rem}.app-logo{height:100px}.header-controls{position:static}.container{padding:1rem}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}.logout-button button{font-size:.85rem;padding:.4rem .8rem}}@media (max-width:480px){.app-header{padding:.5rem}.container{padding:.75rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}.home-screen-container{align-items:center;display:flex;flex-direction:column;justify-content:flex-start;min-height:calc(100vh - 270px);padding:40px 20px;text-align:center}.home-screen-title{font-size:2em;margin-bottom:20px}.home-screen-buttons{justify-content:center;max-width:300px;width:100%}.home-screen-buttons,.profile-screen-container{align-items:center;display:flex;flex-direction:column}.profile-screen-container{justify-content:flex-start;min-height:calc(100vh - 270px);padding:10px 20px}@media (max-width:600px){.home-screen-container,.profile-screen-container{min-height:calc(100vh - 120px);padding:20px}.home-screen-title{font-size:2rem}}.text-link{background:none;border:none;color:#007bff;cursor:pointer;font-size:.9rem;margin:0;padding:0;text-decoration:underline}.text-link:hover{color:#0056b3;text-decoration:none}button{align-items:center;background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin:.5rem 0;max-width:300px;padding:.75rem 1.5rem;transition:all .2s ease;width:100%}button:hover{background-color:#0056b3;transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled{background-color:#ccc;cursor:not-allowed;transform:none}@media (max-width:768px){button{font-size:1.1rem;padding:1rem 1.5rem}}@media (max-width:480px){button{font-size:1.2rem;padding:1.25rem 1.5rem}}.input-text-container{display:flex;flex-direction:column;margin-bottom:1rem;max-width:300px;width:100%}.input-text-container label{color:#333;font-size:1rem;font-weight:500;margin-bottom:.5rem}.input-text-container input{border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:.75rem;transition:all .2s ease;width:100%}.input-text-container input:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.input-text-container input::placeholder{color:#999}@media (max-width:768px){.input-text-container{max-width:100%}.input-text-container label{font-size:1.1rem}.input-text-container input{font-size:1.1rem;padding:1rem}}@media (max-width:480px){.input-text-container label{font-size:1.2rem}.input-text-container input{font-size:1.2rem;padding:1.25rem}}.referer-login-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 60px);padding:20px;width:100%}.referer-login-container h2{margin-bottom:20px}.referer-login-container input,.referer-login-container label{box-sizing:border-box;margin-bottom:10px;max-width:300px;width:100%}.referer-login-container input{border:1px solid #ccc;border-radius:4px;padding:8px}@media (max-width:600px){.referer-login-container{min-height:calc(100vh - 50px);padding:20px}.referer-login-container h2{font-size:2rem}.referer-login-container input,.referer-login-container label{font-size:1.1rem;max-width:100%}}.new-referer-container{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 60px);padding:20px;width:100%}.new-referer-container h2{margin-bottom:20px}.new-referer-container input,.new-referer-container label{box-sizing:border-box;margin-bottom:10px;max-width:300px;width:100%}.new-referer-container input{border:1px solid #ccc;border-radius:4px;padding:8px}@media (max-width:600px){.new-referer-container{min-height:calc(100vh - 50px);padding:20px}.new-referer-container h2{font-size:2rem}.new-referer-container input,.new-referer-container label{font-size:1.1rem;max-width:100%}}.account-balance-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;margin-bottom:24px;padding:20px}.account-balance-card h3{color:#333;font-size:1.2rem;margin-bottom:20px;margin-top:0}.balance-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.balance-item{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;flex-direction:column;padding:16px}.balance-item.available{background:#e3f2fd;border-color:#bbdefb}.balance-label{color:#666;font-size:.9rem;margin-bottom:8px}.balance-value{color:#333;font-size:1.5rem;font-weight:700}.balance-value.highlight{color:#1976d2}.balance-subtext{color:#888;font-size:.8rem;margin-top:4px}.payout-btn{background:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;margin-top:12px;padding:8px 16px;transition:background .2s}.payout-btn:hover:not(:disabled){background:#1565c0}.payout-btn:disabled{background:#ccc;cursor:not-allowed}.page-container{margin:0 auto;max-width:800px;padding:20px}.page-header{align-items:flex-start;display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.page-header h2{color:#333;font-size:2rem;font-weight:700;margin:0}.back-btn{background:none;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:1rem;padding:8px 12px;transition:background .2s}.back-btn:hover{background:#f0f0f0;color:#333}.loading-spinner{color:#666;padding:40px;text-align:center}.referral-history-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;padding:20px}.referral-history-card.empty{color:#666;padding:40px 20px;text-align:center}.referral-history-card h3{color:#333;font-size:1.2rem;margin-bottom:20px;margin-top:0}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:12px}.history-item:last-child{border-bottom:none}.history-details{display:flex;flex-direction:column}.restaurant-name{color:#333;font-weight:500}.referral-date{color:#888;font-size:.8rem;margin-top:4px}.history-status{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.status-badge{border-radius:12px;font-size:.75rem;font-weight:600;padding:4px 8px;text-transform:uppercase}.status-badge.pending{background:#fff3cd;color:#856404}.status-badge.redeemed{background:#d4edda;color:#155724}.status-badge.expired{background:#f8d7da;color:#721c24}.reward-amount{color:#28a745;font-size:.9rem;font-weight:700}.status-badge{cursor:help;position:relative}.status-badge[data-tooltip]:before{background-color:#333;border-radius:6px;bottom:125%;box-shadow:0 4px 6px #0003;color:#fff;content:attr(data-tooltip);font-size:.75rem;font-weight:400;padding:8px 12px;right:0;text-transform:none;white-space:normal;width:200px}.status-badge[data-tooltip]:after,.status-badge[data-tooltip]:before{opacity:0;position:absolute;transition:opacity .2s,visibility .2s;visibility:hidden;z-index:1000}.status-badge[data-tooltip]:after{border:6px solid #0000;border-top-color:#333;bottom:110%;content:"";right:15px}.status-badge[data-tooltip]:hover:after,.status-badge[data-tooltip]:hover:before{opacity:1;visibility:visible}@media (max-width:768px){.status-badge[data-tooltip]:before{right:-10px;width:160px}.status-badge[data-tooltip]:after{right:10px}}.account-management-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin:0 auto;max-width:500px;padding:2rem}.account-management-card h3{color:#333;font-size:1.25rem;margin:0 0 1.5rem;text-align:center}.profile-form{display:flex;flex-direction:column;gap:1.25rem}.profile-form .form-group{display:flex;flex-direction:column;gap:.5rem}.profile-form label{color:#374151;font-size:.9rem;font-weight:600}.form-input{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.readonly-info{background:#f9fafb;border-radius:8px;margin-top:.5rem;padding:1rem}.info-item{align-items:center;display:flex;justify-content:space-between}.info-label{color:#6b7280;font-size:.9rem}.info-value{background:#e5e7eb;border-radius:4px;color:#1f2937;font-family:monospace;font-weight:600;padding:.25rem .5rem}.save-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.875rem 1.5rem;transition:all .2s}.save-btn:hover:not(:disabled){box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.save-btn:disabled{cursor:not-allowed;opacity:.7}.message{border-radius:8px;font-weight:500;margin-bottom:1rem;padding:.75rem 1rem;text-align:center}.message.success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.message.error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.pos-integration-card{background:#fff;border:1px solid #eee;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-top:24px;padding:24px}.pos-integration-card h3{color:#333;font-size:1.25rem;margin:0 0 12px}.pos-description{color:#666;font-size:.9rem;line-height:1.5;margin-bottom:20px}.pos-loading{color:#999;font-style:italic}.pos-provider-row{margin-bottom:16px}.pos-status-container{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;margin-bottom:12px;padding:12px}.status-indicator{border-radius:50%;flex-shrink:0;height:10px;margin-right:12px;width:10px}.status-indicator.connected{background-color:#28a745;box-shadow:0 0 8px #28a74566}.status-indicator.disconnected{background-color:#dc3545}.status-text{color:#444;font-size:.95rem;font-weight:500}.popup-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.popup-content{animation:scaleIn .3s ease-out forwards;background:#fffffff2;border-radius:20px;box-shadow:0 15px 35px #0003;max-width:400px;padding:30px;text-align:center;transform:scale(.9);width:90%}.popup-icon{font-size:48px;margin-bottom:20px}.popup-message{color:#333;font-size:18px;font-weight:500;margin-bottom:25px}.popup-button{background:linear-gradient(135deg,#6e8efb,#a777e3);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 30px;transition:transform .2s,box-shadow .2s}.popup-button:hover{box-shadow:0 5px 15px #6e8efb66;transform:translateY(-2px)}.popup-success{border-top:5px solid #4caf50}.popup-error{border-top:5px solid #f44336}.popup-confirm{border-top:5px solid #ff9800}.popup-buttons-container{display:flex;gap:15px;justify-content:center}.popup-button-cancel{background:#f1f3f5;color:#495057}.popup-button-cancel:hover{background:#e9ecef;box-shadow:0 5px 15px #0000001a}.popup-button-confirm{background:linear-gradient(135deg,#ff9a44,#fc6076)}.popup-button-confirm:hover{box-shadow:0 5px 15px #fc607666}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.profile-container{flex-direction:column;margin:0 auto;max-width:600px;padding:1rem 2rem}.profile-container,.profile-header{align-items:center;display:flex;width:100%}.profile-header{gap:1rem;margin-bottom:1rem}.profile-picture{border-radius:50%;height:80px;object-fit:cover;width:80px}.profile-info{flex:1 1}.profile-info h2{color:#333;font-size:1.5rem;margin:0}.profile-info p{color:#666;margin:.5rem 0 0}.qr-section{margin:1rem 0;text-align:center}.qr-code{border-radius:8px;box-shadow:0 2px 8px #0000001a;height:200px;margin-bottom:1rem;width:200px}.referral-code-display{background-color:#f8f9fa;border:1px dashed #007bff;border-radius:8px;color:#007bff;display:inline-block;font-size:1.5rem;font-weight:700;letter-spacing:1px;margin:.5rem 0 1.5rem;padding:.5rem 1rem}.download-btn{background-color:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.75rem 1.5rem;transition:background-color .2s}.download-btn:hover{background-color:#218838}.wallet-buttons{display:flex;flex-direction:row;gap:.75rem;justify-content:center;margin:1.5rem auto 0;max-width:400px;width:100%}.wallet-button{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:.85rem;gap:.4rem;padding:.6rem 1rem;transition:all .2s ease}.apple-wallet{color:#fff}.google-wallet{background-color:#4285f4;color:#fff}.wallet-icon{font-size:1rem}.loading{align-items:center;color:#666;display:flex;font-size:1.2rem;justify-content:center;min-height:200px}@media (max-width:768px){.profile-container{padding:1.5rem}.profile-picture{height:70px;width:70px}.profile-info h2{font-size:1.3rem}}@media (max-width:480px){.profile-container{padding:1rem}.profile-picture{height:60px;width:60px}.profile-info h2{font-size:1.2rem}.wallet-buttons{flex-direction:column;max-width:300px}.wallet-button{font-size:.9rem;padding:.8rem}}.create-profile-section{align-items:center;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;display:flex;flex-direction:column;margin:2rem auto;max-width:400px;padding:2rem;width:100%}.create-profile-section h3{color:#333;margin-bottom:.5rem;margin-top:0}.create-profile-section p{color:#666;margin-bottom:1.5rem;text-align:center}.create-profile-section form{width:100%}.form-group{margin-bottom:1rem;width:100%}.profile-input{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:.875rem;transition:border-color .2s;width:100%}.profile-input:focus{border-color:#007bff;outline:none}.create-btn{background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:1rem;transition:background-color .2s;width:100%}.create-btn:hover{background-color:#0056b3}.cross-role-section{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;margin-top:30px;padding:24px 20px;text-align:center}.cross-role-section h4{color:#1e293b;font-size:16px;font-weight:600;margin:0 0 8px}.cross-role-section p{color:#64748b;font-size:14px;margin:0 0 16px;max-width:280px}.cross-role-button{background-color:initial;border:2px solid #059669;border-radius:8px;color:#059669;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s ease}.cross-role-button:hover{background-color:#059669;color:#fff}.profile-actions{display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-bottom:24px}.action-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;max-width:250px;padding:12px 24px;text-align:center;transition:transform .2s,box-shadow .2s}.action-btn:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.balance-btn{background-color:#e3f2fd;border:1px solid #bbdefb;color:#1565c0}.history-btn{background-color:#f3e5f5;border:1px solid #e1bee7;color:#7b1fa2}.hamburger-menu-container{display:inline-block;margin-left:auto;position:relative}.hamburger-icon{align-items:center;background:none;border:none;color:#333;cursor:pointer;display:flex;font-size:1.5rem;justify-content:center;padding:.5rem}.hamburger-icon:hover{color:#007bff}.dropdown-menu{background-color:#fff;border-radius:4px;box-shadow:0 2px 5px #0003;display:flex;flex-direction:column;min-width:200px;padding:.25rem 0;position:absolute;right:0;top:100%;z-index:1001}.dropdown-item{background:none;border:none;box-sizing:border-box;color:#333;cursor:pointer;font-size:.95rem;padding:.5rem 1rem;text-align:left;white-space:nowrap;width:100%}.dropdown-item:hover{background-color:#f8f9fa}.dropdown-separator{background-color:#e0e0e0;height:1px;margin:.25rem 0}@media (max-width:768px){.hamburger-icon{font-size:1.6rem;padding:.6rem}.dropdown-menu{min-width:180px}.dropdown-item{font-size:1rem;padding:.6rem 1rem}.dropdown-separator{margin:.3rem 0}}@media (max-width:480px){.hamburger-icon{font-size:1.8rem;padding:.75rem}.dropdown-menu{min-width:160px}.dropdown-item{font-size:1.1rem;padding:.75rem 1rem}.dropdown-separator{margin:.4rem 0}}.language-selector-container{position:relative}.language-selector-button{align-items:center;background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:20px;cursor:pointer;display:flex;gap:6px;padding:8px 12px;transition:all .2s ease}.language-selector-button:hover{background-color:#ebebeb;border-color:#d0d0d0}.language-flag{font-size:16px}.language-label{color:#333;font-size:14px;font-weight:600}.language-chevron{color:#666;font-size:10px;transition:transform .2s ease}.language-chevron.open{transform:rotate(180deg)}.language-dropdown{animation:dropdownFadeIn .2s ease;background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;left:0;min-width:200px;padding:12px;position:absolute;top:calc(100% + 8px);z-index:1001}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.language-dropdown-title{border-bottom:1px solid #f0f0f0;color:#333;font-size:14px;font-weight:600;margin-bottom:8px;padding-bottom:8px;text-align:center}.language-option{align-items:center;background:#0000;border:none;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:10px 12px;transition:background-color .15s ease;width:100%}.language-option:hover{background-color:#f5f5f5}.language-option.selected{background-color:#f0f7ff}.language-option-content{align-items:center;display:flex;gap:12px}.language-option-flag{font-size:20px}.language-option-label{color:#333;font-size:15px}.language-option.selected .language-option-label{color:#007bff;font-weight:600}.language-checkmark{color:#007bff;font-size:16px;font-weight:700}.public-referral-container{align-items:center;display:flex;flex-direction:column;min-height:100vh;padding:20px}.public-header{align-items:flex-start;box-sizing:border-box;display:flex;justify-content:space-between;margin-bottom:20px;max-width:400px;padding:0 40px;width:100%}.public-logo-small{height:150px;object-fit:contain;width:auto}.referral-card{background:#fff;border-radius:20px;box-shadow:0 10px 25px #0000001a;box-sizing:border-box;max-width:400px;padding:40px;text-align:center;width:100%}.referral-card h1{color:#333;font-size:24px;margin-bottom:15px}.instruction-text{color:#666;line-height:1.5;margin-bottom:30px}.qr-display{align-items:center;display:flex;justify-content:center;margin:30px 0;min-height:200px}.public-qr-code,.qr-placeholder{border-radius:10px;height:200px;width:200px}.qr-placeholder{align-items:center;background-color:#f0f0f0;color:#999;display:flex;justify-content:center}.referral-code-text{background-color:#f8f9fa;border-radius:8px;display:inline-block;font-size:18px;margin-bottom:30px;padding:10px}.wallet-buttons-container{display:flex;flex-direction:column;gap:15px}.wallet-button{align-items:center;border-radius:10px;color:#fff;display:flex;font-weight:600;justify-content:center;padding:12px 20px;text-decoration:none;transition:transform .2s,box-shadow .2s}.wallet-button:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-2px)}.apple-wallet{background-color:#000}.google-wallet{background-color:#3c4043}.wallet-icon{font-size:20px;margin-right:10px}.public-page-error,.public-page-loading{align-items:center;color:#666;display:flex;font-size:18px;justify-content:center;min-height:100vh}.public-page-error{color:#dc3545}@media (max-width:480px){.public-header{padding:0 20px}.referral-card{padding:20px}.public-logo-small{height:100px}}.claim-form{gap:20px;margin:20px 0;text-align:left}.claim-form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{color:#555;font-size:14px;font-weight:600}.form-group input{border:1px solid #ddd;border-radius:10px;font-size:16px;padding:12px;transition:border-color .2s}.form-group input:focus{border-color:#007bff;outline:none}.claim-button{background-color:#007bff;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:background-color .2s,transform .2s}.claim-button:hover{background-color:#0056b3}.claim-button:active{transform:scale(.98)}.claim-button:disabled{background-color:#ccc;cursor:not-allowed}.not-found-container{align-items:center;display:flex;justify-content:center;min-height:80vh;padding:2rem}.not-found-content{max-width:500px;text-align:center}.not-found-title{color:#007bff;color:var(--primary-color,#007bff);font-size:8rem;font-weight:700;line-height:1;margin:0}.not-found-subtitle{color:#333;color:var(--text-color,#333);font-size:2rem;margin:1rem 0}.not-found-message{color:#666;color:var(--text-secondary,#666);font-size:1.1rem;line-height:1.6;margin:1.5rem 0}.not-found-button{background-color:#007bff;background-color:var(--primary-color,#007bff);border-radius:.5rem;color:#fff;display:inline-block;font-size:1rem;font-weight:500;margin-top:1rem;padding:.75rem 2rem;text-decoration:none;transition:background-color .2s ease}.not-found-button:hover{background-color:#0056b3;background-color:var(--primary-hover,#0056b3)}@media (max-width:768px){.not-found-title{font-size:5rem}.not-found-subtitle{font-size:1.5rem}.not-found-message{font-size:1rem}}
/*# sourceMappingURL=main.dc2f0ad1.css.map*/