*{box-sizing:border-box;margin:0;padding:0}body{background:#f5f5f5;color:#191919;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}#__nuxt{min-height:100vh}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slide-up .6s ease-out}.app-layout{display:flex;flex-direction:column;min-height:100vh}.page-wrapper{display:flex;flex:1;flex-direction:column;position:relative}.bg-gradient{background:linear-gradient(to right bottom,rgba(var(--theme-color-rgb),.05),#fff,rgba(var(--theme-color-rgb),.03));inset:0;position:fixed;z-index:-10}.main-content{box-sizing:border-box;flex:1;margin:0 auto;max-width:100%;padding:1rem;position:relative;width:100%}.animate-slide-up{margin:0 auto;max-width:500px}.content-container{display:flex;flex-direction:column;min-height:calc(100vh - 200px);padding:1.5rem 0}.card{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a;margin-bottom:1.5rem;width:100%}.card-content{padding:1.5rem}.page-title{color:#191919;font-size:1.25rem;font-weight:700;margin-bottom:.5rem;text-align:center}.page-subtitle{color:#4b5563;font-size:.875rem;line-height:1.5;margin-bottom:1.5rem;text-align:center}.submit-button{background:var(--theme-color);border:none;border-radius:1rem;box-shadow:0 10px 15px -3px #0000001a;color:#fff;cursor:pointer;font-size:1.125rem;font-weight:700;overflow:hidden;padding:1rem 2rem;position:relative;transform:scale(1);transition:.3s;width:100%}.submit-button:not(.disabled):hover{transform:scale(1.02)}.app-header{background-color:var(--theme-color,#ff8a66);border-bottom:1px solid rgba(0,0,0,.05);box-shadow:0 1px 3px #0000000d;position:sticky;top:0;z-index:100}.header-container{margin:0 auto;max-width:1200px;padding:1rem 1.5rem}.header-content{justify-content:center}.header-brand,.header-content{align-items:center;display:flex}.header-brand{gap:.75rem}.header-logo{height:3.75rem;width:auto}.text-wrapper{display:flex;flex-direction:column;transform:translateY(-4px)}.subtitle{font-size:.75rem;font-weight:700}.subtitle,.title{color:#fff;line-height:1;margin:0}.title{font-size:1.5rem;font-weight:900;letter-spacing:-.025em}.header-skeleton{align-items:center;display:flex;gap:.75rem}.skeleton-logo{animation:header-skeleton-pulse 1.4s ease-in-out infinite;background:#ffffff59;border-radius:8px;height:3.75rem;width:3.75rem}.skeleton-text{display:flex;flex-direction:column;gap:.5rem}.skeleton-line{animation:header-skeleton-pulse 1.4s ease-in-out infinite;background:#ffffff59;border-radius:4px}.skeleton-subtitle{height:.75rem;width:8rem}.skeleton-title{height:1.5rem;width:5rem}@keyframes header-skeleton-pulse{0%,to{opacity:.4}50%{opacity:.85}}.app-footer{background:#fff;border-top:1px solid rgba(0,0,0,.05);margin-top:auto}.footer-container{margin:0 auto;max-width:1200px;padding:1.5rem;text-align:center}.footer-copyright{color:#6b7280;font-size:.75rem;line-height:1.5;margin:0}.footer-powered-by{color:#9ca3af;font-size:.75rem;line-height:1.5;margin:.25rem 0 0}.step-progress{justify-content:space-between;margin-bottom:1rem;overflow:hidden;padding:1rem 0;width:100%}.step,.step-progress{align-items:center;display:flex}.step{flex:1;flex-direction:column}.step .step-circle{align-items:center;background:#e0e0e0;border-radius:50%;color:#e0e0e0;display:flex;font-size:.75rem;font-weight:700;height:28px;justify-content:center;margin-bottom:.25rem;width:28px}.step .step-label{color:#e0e0e0;font-size:.875rem;font-weight:400;text-align:center;white-space:nowrap}.step.active .step-circle,.step.completed .step-circle{background:var(--theme-color,#ff8a66);color:#fff}.step.active .step-label,.step.completed .step-label{color:#191919}.step.active .step-label{font-weight:600}.step-line{background:#e0e0e0;flex:1;height:2px;margin:0 .5rem 1rem}.step-line.completed{background:var(--theme-color,#ff8a66)}.loading-overlay{align-items:center;background-color:#fffffff2;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.loading-content{align-items:center;display:flex;flex-direction:column;gap:24px}.loading-logo{height:auto;width:120px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top:4px solid var(--theme-color,#ff8a66);height:48px;width:48px}.loading-message{color:#191919;font-size:16px;margin:0;text-align:center}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.qr-scanner-modal-overlay{align-items:center;background:#000000b3;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.qr-scanner-modal{background:#fff;border-radius:1rem;display:flex;flex-direction:column;max-height:90vh;max-width:400px;overflow:hidden;width:100%}.qr-scanner-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:1rem 1.25rem}.qr-scanner-title{color:#191919;font-size:1.125rem;font-weight:700;margin:0}.qr-scanner-close{align-items:center;background:transparent;border:none;border-radius:.5rem;color:#6b7280;cursor:pointer;display:flex;height:2rem;justify-content:center;transition:background .2s;width:2rem}.qr-scanner-close:hover{background:#f5f5f5}.qr-scanner-close svg{height:1.5rem;width:1.5rem}.qr-scanner-body{align-items:center;display:flex;flex-direction:column;padding:1.25rem}.qr-scanner-container{aspect-ratio:1;border-radius:.5rem;max-width:300px;overflow:hidden;width:100%}.qr-scanner-container video{height:100%!important;-o-object-fit:cover;object-fit:cover;width:100%!important}.qr-scanner-hint{color:#6b7280;font-size:.875rem;margin:1rem 0 0;text-align:center}.qr-scanner-error{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:2rem 1rem;text-align:center}.qr-scanner-error .error-icon{color:#f44336;height:3rem;width:3rem}.qr-scanner-error p{color:#191919;font-size:.875rem;line-height:1.5;margin:0}.qr-scanner-error .retry-button{background:var(--theme-color,#ff8a66);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;margin-top:.5rem;padding:.5rem 1.5rem;transition:opacity .2s}.qr-scanner-error .retry-button:hover{opacity:.9}.receipt-capture{background:#fff;left:-9999px;padding:2rem;position:absolute;top:0;width:400px}.receipt-content{text-align:center}.receipt-logo{display:block;height:auto;margin:0 auto 1rem;width:120px}.receipt-title{border-bottom:2px solid var(--theme-color-verification,#ffae00);color:#191919;font-size:1.25rem;font-weight:700;margin:0 0 1.5rem;padding-bottom:1rem}.receipt-list{margin:0 0 1.5rem;text-align:left}.receipt-item{border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:.75rem 0}.receipt-item dt{color:#6b7280;font-size:.875rem}.receipt-item dd{color:#191919;font-size:.875rem;font-weight:600;text-align:right;word-break:break-all}.receipt-note{color:#6b7280;font-size:.75rem;line-height:1.6;margin:0}.download-button{align-items:center;animation:download-button-pulse 2s ease-out infinite;background:#fff;border:2px solid var(--theme-color,#ff8a66);border-radius:1rem;color:var(--theme-color,#ff8a66);cursor:pointer;display:flex;font-size:1rem;font-weight:700;gap:.5rem;justify-content:center;margin-top:1rem;padding:.875rem 1.5rem;transition:all .3s ease;width:100%}.download-button:hover{background:rgba(var(--theme-color-rgb,255,138,102),.05)}.download-button svg{height:1.25rem;width:1.25rem}@keyframes download-button-pulse{0%{box-shadow:0 0 rgba(var(--theme-color-rgb,255,138,102),.4)}70%{box-shadow:0 0 0 .75rem rgba(var(--theme-color-rgb,255,138,102),0)}to{box-shadow:0 0 rgba(var(--theme-color-rgb,255,138,102),0)}}@media(prefers-reduced-motion:reduce){.download-button{animation:none}}.receipt-save-hint{color:#191919;font-size:.75rem;margin-top:.5rem;opacity:.7;text-align:center}.content-container{align-items:center;display:flex;flex-direction:column;min-height:calc(100vh - 200px);padding:20px 0}.store-info{margin-bottom:24px;max-width:500px;width:100%}.store-badge{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(var(--theme-color-rgb),.08);border:1px solid rgba(var(--theme-color-rgb),.2);border-radius:9999px;display:flex;flex-direction:column;gap:4px;padding:10px 20px}.store-city-name{color:#191919;font-size:.875rem;line-height:1}.store-name{align-items:center;color:#191919;display:flex;font-size:1.125rem;font-weight:600;gap:6px;line-height:1;transition:font-size .2s ease}.store-name--sm{font-size:.9375rem}.store-name--xs{font-size:.8125rem}.store-icon{height:27px;transform:translateY(1px);width:27px}.qr-code-info-row,.store-meta{align-items:center;display:flex;gap:8px;margin-top:6px}.qr-code-name{color:#191919;font-size:.75rem;line-height:1;opacity:.7}.card-title{align-items:center;color:#191919;display:flex;font-size:20px;font-weight:700;gap:8px;margin-bottom:0}.title-accent{background:var(--theme-color);border-radius:9999px;height:24px;width:6px}.info-sections{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.warning-box{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:0 12px 12px 0;padding:16px}.warning-title{align-items:center;color:#191919;display:flex;font-weight:700;gap:8px;margin:0 0 8px;white-space:nowrap}.warning-icon{height:20px;width:20px}.warning-list{color:#191919;font-size:12px;list-style:none;margin:0;padding:0}.warning-list li{align-items:flex-start;display:flex;gap:8px;margin-bottom:6px}.warning-list li:last-child{margin-bottom:0}.bullet{color:#f59e0b;margin-top:2px}.terms-box{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:20px}.terms-title{align-items:center;color:#191919;display:flex;font-weight:700;gap:8px;justify-content:flex-start;margin:0 0 12px}.terms-icon{color:#191919;height:20px;width:20px}.terms-content{background:#f9fafb;border-radius:8px;color:#191919;font-size:13px;line-height:1.6;max-height:200px;overflow-y:auto;padding:12px}.terms-content p{margin:0 0 12px}.terms-content .terms-heading{font-weight:600;margin:16px 0 8px}.terms-content .terms-subheading{font-weight:600;margin:12px 0 4px}.terms-content .terms-bullets,.terms-content .terms-list{margin:0 0 12px;padding-left:1.5em}.terms-content .terms-list{list-style-type:decimal}.terms-content .terms-bullets{list-style-type:disc}.terms-content .terms-sublist{list-style-type:decimal;margin:8px 0 0;padding-left:1.5em}.terms-content li{margin:0 0 4px}.terms-content>:last-child{margin-bottom:0}.agree-label{background:linear-gradient(to right,rgba(var(--theme-color-rgb),.05),rgba(var(--theme-color-rgb),.03));border:1px solid rgba(var(--theme-color-rgb),.2);border-radius:12px;cursor:pointer;display:block;margin-bottom:24px;padding:16px}.agree-content{align-items:center;display:flex;gap:12px}.agree-checkbox{accent-color:var(--theme-color);cursor:pointer;flex-shrink:0;height:20px;width:20px}.agree-text{color:#191919;font-size:14px;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none}.amount-input-section{width:100%}.amount-input-card,.amount-input-skeleton{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;margin-bottom:24px;max-width:500px;padding:24px;width:100%}.amount-input-skeleton{display:flex;flex-direction:column;gap:16px}.amount-skeleton-line{animation:amount-skeleton-pulse 1.4s ease-in-out infinite;background:#00000014;border-radius:8px}.amount-skeleton-label{height:24px;width:60%}.amount-skeleton-input{height:68px}@keyframes amount-skeleton-pulse{0%,to{opacity:.5}50%{opacity:1}}.amount-form{display:flex;flex-direction:column;gap:16px}.amount-label{align-items:center;color:#191919;display:flex;font-size:16px;font-weight:600;gap:8px}.label-icon{color:var(--theme-color);height:20px;width:20px}.item-name-display{align-items:center;background:rgba(var(--theme-color-rgb),.1);border-radius:8px;color:#191919;display:flex;font-size:15px;font-weight:600;gap:8px;padding:12px 16px}.item-icon{color:var(--theme-color);height:20px;width:20px}.input-wrapper{align-items:center;display:flex;position:relative}.currency-symbol{color:#6b7280;font-size:28px;font-weight:700;left:16px;pointer-events:none;position:absolute}.amount-input{background:#fff;border:2px solid #e0e0e0;border-radius:12px;color:#191919;font-size:28px;font-weight:700;padding:16px 16px 16px 40px;transition:all .2s ease;width:100%}.amount-input::-webkit-inner-spin-button,.amount-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.amount-input[type=number]{-moz-appearance:textfield}.amount-input:focus{border-color:var(--theme-color);box-shadow:0 0 0 3px rgba(var(--theme-color-rgb),.1);outline:none}.amount-input::-moz-placeholder{color:#9ca3af;font-weight:400}.amount-input::placeholder{color:#9ca3af;font-weight:400}.calculated-amount{align-items:center;background:rgba(var(--theme-color-rgb),.05);border-left:3px solid var(--theme-color);border-radius:0 8px 8px 0;color:#191919;display:flex;font-size:15px;gap:8px;padding:12px 16px}.calculated-amount strong{color:var(--theme-color);font-size:18px}.arrow-icon{color:var(--theme-color);height:18px;width:18px}.select-wrapper{position:relative}.amount-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#fff;border:2px solid #e0e0e0;border-radius:12px;color:#191919;cursor:pointer;font-size:28px;font-weight:700;padding:16px 40px 16px 16px;transition:all .2s ease;width:100%}.amount-select:focus{border-color:var(--theme-color);box-shadow:0 0 0 3px rgba(var(--theme-color-rgb),.1);outline:none}.amount-select option{padding:12px}.select-icon{color:var(--theme-color);height:28px;pointer-events:none;position:absolute;right:16px;top:50%;transform:translateY(-50%);width:28px;z-index:1}.input-error{border-color:#f44336!important}.input-error:focus{box-shadow:0 0 0 3px #f443361a!important}.error-text{color:#f44336;font-size:13px;gap:4px;margin-top:8px}.error-text,.modal-overlay{align-items:center;display:flex}.modal-overlay{background:#00000080;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:100}.page-description{font-size:.875rem}.contact-type-section,.page-description{margin-bottom:1.5rem}.section-label{color:#191919;display:block;font-size:.875rem;font-weight:600;margin-bottom:1.25rem}.contact-type-buttons{display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.contact-type-button-wrapper{position:relative}.contact-type-button{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:.5rem;color:#191919;cursor:pointer;display:flex;font-weight:600;gap:.25rem;justify-content:center;padding:.75rem 1rem;transition:.2s;width:100%}.contact-type-button .button-icon{height:1.25rem;width:1.25rem}.contact-type-button.selected{background:rgba(var(--theme-color-rgb),.1);border-color:var(--theme-color);color:var(--theme-color)}.recommend-badge{align-items:center;background:#ff9800;border-radius:9999px;box-shadow:0 2px 8px #0003;color:#fff;display:flex;font-size:.75rem;font-weight:700;gap:.25rem;left:-8px;padding:.25rem .5rem;position:absolute;top:-13px;z-index:10}.recommend-badge .badge-icon{height:.75rem;width:.75rem}.input-section{display:flex;flex-direction:column;gap:.5rem}.contact-input{border:2px solid #e0e0e0;border-radius:.5rem;font-size:1.25rem;outline:none;padding:.75rem 1rem;transition:border-color .2s;width:100%}.contact-input:focus{border-color:var(--theme-color)}.contact-input::-moz-placeholder{color:#e0e0e0}.contact-input::placeholder{color:#e0e0e0}.contact-input.error{border-color:#f44336}.contact-error-message{align-items:center;color:#f44336;display:flex;font-size:.75rem;gap:.25rem;margin-top:.25rem}.contact-error-message .error-icon{flex-shrink:0;height:1rem;width:1rem}.optin-label{align-items:flex-start;cursor:pointer;display:flex;gap:.75rem;margin-top:1.5rem}.optin-checkbox{accent-color:var(--theme-color);cursor:pointer;flex-shrink:0;height:1.25rem;margin-top:.125rem;width:1.25rem}.optin-text{color:#191919;font-size:.875rem;line-height:1.5}.confirmation-box{background:#f5f5f5;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}.confirmation-title{color:#191919;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.confirmation-list{display:flex;flex-direction:column;font-size:.875rem;gap:.5rem}.confirmation-item{display:flex;justify-content:space-between}.confirmation-item dt{color:#191919}.confirmation-item dd{color:#191919;font-weight:600}.button-area{display:flex;flex-direction:column;gap:.75rem}.submit-button{background:var(--theme-color);border:none;border-radius:1rem;box-shadow:0 10px 15px -3px #0000001a;color:#fff;cursor:pointer;font-size:1.125rem;font-weight:700;padding:1rem 2rem;transition:.3s;width:100%}.submit-button.disabled{cursor:not-allowed;opacity:.5}.back-button{background:#fff;border:2px solid var(--theme-color);border-radius:1rem;color:var(--theme-color);cursor:pointer;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:.3s;width:100%}.back-button:disabled{cursor:not-allowed;opacity:.5}.submit-error-message{align-items:center;background:#f443361a;border-radius:.5rem;color:#f44336;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.submit-error-message .error-icon{flex-shrink:0;height:1.25rem;width:1.25rem}.modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:100}.modal-content{background:#fff;border-radius:1rem;box-shadow:0 20px 40px #0003;max-width:400px;padding:1.5rem;width:100%}.modal-title{color:#191919;font-size:1.25rem;font-weight:700;margin:0 0 .75rem;text-align:center}.modal-description{color:#191919;font-size:.875rem;line-height:1.6;margin:0 0 1.5rem;text-align:center}.modal-buttons{display:flex;flex-direction:column;gap:.75rem}.modal-button{border-radius:.75rem;cursor:pointer;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:.2s;width:100%}.modal-button.primary{background:var(--theme-color);border:none;color:#fff}.modal-button.secondary{background:#fff;border:2px solid #e0e0e0;color:#191919}.page-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.page-description,.page-title{color:#191919;text-align:center}.page-description{font-size:.875rem;margin-bottom:1.5rem}.loading-container{align-items:center;color:#191919;display:flex;justify-content:center;min-height:200px}.steps-container{display:flex;flex-direction:column;gap:1.5rem}.step-item{align-items:flex-start;display:flex;gap:.75rem}.step-number-badge{align-items:center;background:linear-gradient(135deg,rgba(var(--theme-color-rgb),.2),rgba(var(--theme-color-rgb),.1));border-radius:50%;display:flex;flex-shrink:0;height:2rem;justify-content:center;margin-top:12px;width:2rem}.step-number-badge span{color:var(--theme-color);font-size:.875rem;font-weight:700}.step-content{flex:1}.step-title{color:#191919;font-weight:600;line-height:1.5;margin-bottom:.25rem}.step-description{color:#191919;font-size:.875rem;line-height:1.6}.contact-highlight{color:var(--theme-color);font-weight:600}.warning-box{background:#fffbeb;border:1px solid #fcd34d;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}.warning-title{align-items:center;color:#78350f;display:flex;font-weight:600;gap:.5rem;margin:0 0 .5rem}.warning-icon{height:1.25rem;width:1.25rem}.warning-list{color:#92400e;display:flex;flex-direction:column;font-size:.875rem;gap:.5rem;list-style:none;margin-left:1.75rem;padding:0}.warning-list li{align-items:flex-start;display:flex;gap:.5rem}.bullet{color:#f59e0b}.resend-button-wrapper{margin-top:1rem}.resend-button{background:#fff;border:2px solid var(--theme-color);border-radius:1rem;color:var(--theme-color);cursor:pointer;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:.2s;width:100%}.card-content{display:flex;flex-direction:column;gap:1rem}.input-label{color:#374151;display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.verify-input{border:2px solid #e5e7eb;border-radius:12px;font-family:monospace;font-size:1.5rem;letter-spacing:.2em;padding:.75rem 1rem;text-align:center;transition:border-color .2s;width:100%}.verify-input:focus{border-color:var(--theme-color);outline:none}.input-hint{color:#6b7280;font-size:.75rem;margin-top:.5rem;text-align:center}.payment-page{display:flex;flex-direction:column;min-height:calc(100vh - 200px);padding:2rem 0}.payment-container{margin:0 auto;max-width:600px;padding:0 1rem;width:100%}.payment-content{display:flex;flex-direction:column}.staff-display-card{background:var(--theme-color);border-radius:.5rem;margin-bottom:1.5rem;padding:1.5rem}.staff-display-content{text-align:center;transform:rotate(180deg)}.staff-time{color:#fff;font-family:monospace;font-size:.875rem;margin-bottom:.5rem;opacity:.8}.staff-discount{color:#fff;font-size:1rem;margin-bottom:.25rem;opacity:.9}.staff-amount{color:#fff;font-size:3rem;font-weight:700;line-height:1.2}.staff-store-name{color:#fff;font-size:1.125rem;font-weight:700;margin-top:.5rem;transition:font-size .2s ease}.staff-store-name--sm{font-size:.9375rem}.staff-store-name--xs{font-size:.8125rem}.staff-label{color:#fff;font-size:.875rem;margin-top:.5rem;opacity:.9}.thank-you-card{background:#fff;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-bottom:1.5rem;padding:1.5rem;text-align:center}.thank-you-main{color:#191919;font-size:1.125rem;font-weight:700;line-height:1.6;margin:0 0 1rem;text-align:center}.thank-you-notice{color:#6b7280;font-size:.875rem;line-height:1.6;margin:0;text-align:center}.success-title{color:#191919;font-size:1.5rem;font-weight:700;margin-bottom:.5rem;text-align:center}.success-subtitle{color:#6b7280;font-size:.875rem;margin-bottom:2rem;text-align:center}.payment-info-card{background:#fff;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-bottom:1.5rem;padding:1.5rem}.payment-info-title{color:#191919;font-weight:700;margin:0 0 1rem}.payment-info-list{display:flex;flex-direction:column;font-size:.875rem;gap:.5rem;margin-bottom:1.5rem}.payment-info-item{display:flex;justify-content:space-between}.payment-info-item dt{color:#6b7280}.payment-info-item dd{color:#191919;font-weight:600}.verification-code-text{align-items:center;color:var(--theme-color);display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;letter-spacing:.05em}.copy-button{align-items:center;background:transparent;border:none;color:#6b7280;cursor:pointer;display:inline-flex;justify-content:center;padding:.25rem;transition:color .2s ease}.copy-button:hover{color:var(--theme-color)}.copy-success-icon{color:#4caf50}.verification-code-item dd{align-items:flex-end;display:flex;flex-direction:column}.verification-code-hint{color:#6b7280;font-size:.75rem;margin:.25rem 0 0}.registration-card{background:#fff;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-bottom:1.5rem;padding:1.5rem}.registration-divider{background:#e0e0e0;height:1px;margin:1.5rem 0}.registration-title{color:#191919;font-weight:700;margin:0 0 1rem}.registration-description{color:#6b7280;font-size:.875rem;line-height:1.6;margin-bottom:.5rem}.external-link-container{margin-bottom:1rem;text-align:left}.external-link{align-items:center;color:var(--theme-color);display:inline-flex;font-size:.75rem;gap:.25rem;text-decoration:underline}.external-link .external-icon{height:.875rem;width:.875rem}.warning-notice{background:#fef3c7;border:1px solid #fcd34d;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.warning-text{align-items:flex-start;color:#92400e;display:flex;font-size:.75rem;gap:.5rem;margin:0}.warning-text .warning-icon{flex-shrink:0;height:1.25rem;width:1.25rem}.payment-page{box-sizing:border-box;flex:1;margin:0 auto;max-width:100%;padding:1rem;position:relative;width:100%}.payment-page .payment-container{margin:0 auto;max-width:500px}.payment-page .payment-content{display:flex;flex-direction:column;min-height:calc(100vh - 200px);padding:1.5rem 0}.payment-page .page-title{color:#191919;font-size:1.25rem;font-weight:700;margin-bottom:.5rem;text-align:center}.payment-page .donation-amount-display{color:#4b5563;font-size:.875rem;margin-bottom:1.5rem;text-align:center}.payment-page .donation-amount-display .amount-highlight{color:var(--theme-color);font-weight:700}.payment-page .dev-mode-banner{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:.5rem;color:#92400e;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;margin-bottom:1rem;padding:.75rem 1rem}.payment-page .dev-mode-banner .dev-icon{color:#d97706;height:1.25rem;width:1.25rem}.payment-page .payment-methods{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.payment-page .spacer{flex:1;min-height:2rem}.payment-page .security-notice{background:#eff6ff;border:1px solid #bfdbfe;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}.payment-page .security-notice .notice-content{align-items:flex-start;display:flex;gap:.75rem}.payment-page .security-notice .lock-icon{color:#2563eb;flex-shrink:0;height:1.25rem;margin-top:.125rem;width:1.25rem}.payment-page .security-notice .notice-title{color:#1e3a8a;font-size:.875rem;font-weight:600;margin:0 0 .25rem}.payment-page .security-notice .notice-description{color:#1e40af;font-size:.75rem;line-height:1.5}.payment-page .payment-method-card{background:#fff;border:2px solid #d1d5db;border-radius:.75rem;cursor:pointer;position:relative;text-align:left;transition:all .2s;width:100%}.payment-page .payment-method-card:hover{background:#f9fafb;border-color:#9ca3af}.payment-page .payment-method-card:active{transform:scale(.98)}.payment-page .recommended-badge{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:.25rem;box-shadow:0 2px 8px #0003;color:#fff;display:flex;font-size:.75rem;font-weight:700;gap:.25rem;padding:.25rem .5rem;position:absolute;right:12px;top:-10px;white-space:nowrap}.payment-page .recommended-badge .badge-icon{height:.75rem;width:.75rem}.payment-page .payment-method-card .card-content{align-items:center;display:flex;flex-direction:row;justify-content:space-between;padding:1rem}.payment-page .method-info{align-items:center;display:flex;flex:1;gap:1rem}.payment-page .apple-pay-card{padding:1rem}.payment-page .apple-pay-card .card-content{padding:0}.payment-page .apple-pay-card .apple-pay-mark{flex-shrink:0;height:48px;-o-object-fit:contain;object-fit:contain;pointer-events:none}.payment-page .apple-pay-card .method-details .method-description{margin-top:0}.payment-page .method-icon{align-items:center;border-radius:.5rem;display:flex;flex-shrink:0;height:3rem;justify-content:center;width:3rem}.payment-page .method-icon .icon{height:1.75rem;width:1.75rem}.payment-page .method-icon.apple-icon{background:#000;border-radius:.5rem}.payment-page .method-icon.apple-icon .icon{color:#fff}.payment-page .method-icon.google-icon{background:#fff;border:2px solid #e5e7eb;border-radius:.5rem}.payment-page .method-icon.card-icon{background:linear-gradient(to right bottom,#3b82f6,#9333ea);border-radius:.5rem}.payment-page .method-icon.card-icon .icon{color:#fff}.payment-page .method-details{flex:1}.payment-page .method-details .method-name{color:#1f2937;font-size:1.125rem;font-weight:700;line-height:1.3;margin-bottom:.125rem}.payment-page .method-details .method-description{color:#6b7280;font-size:.875rem;line-height:1.4;margin-top:-3px}.payment-page .chevron-icon,.payment-page .unavailable-icon{color:#9ca3af;flex-shrink:0;height:1.5rem;width:1.5rem}.payment-page .payment-method-card.disabled{background:#f3f4f6;border-color:#e5e7eb;cursor:not-allowed;opacity:.6}.payment-page .payment-method-card.disabled:hover{background:#f3f4f6;border-color:#e5e7eb}.payment-page .payment-method-card.disabled:active{transform:none}.payment-page .payment-method-card.disabled .method-icon.apple-icon{background:#6b7280}.payment-page .payment-method-card.disabled .method-icon.google-icon{background:#f3f4f6;border-color:#d1d5db}.payment-page .payment-method-card.disabled .method-icon.card-icon{background:linear-gradient(to right bottom,#9ca3af,#6b7280)}.payment-page .payment-method-card.disabled .method-details .method-name{color:#6b7280}.payment-page .payment-method-card.disabled .method-details .method-description{color:#9ca3af;font-size:.8rem}.payment-page .animate-slide-up{animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.payment-page .payment-confirmation{background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;margin-bottom:1.5rem;padding:2rem 1.5rem;text-align:center}.payment-page .apple-pay-confirmation-mark{display:block;height:auto;margin:0 auto 1.5rem;-o-object-fit:contain;object-fit:contain;width:6rem}.payment-page .confirmation-icon{align-items:center;border-radius:1rem;display:flex;height:5rem;justify-content:center;margin:0 auto 1.5rem;width:5rem}.payment-page .confirmation-icon .icon{height:3rem;width:3rem}.payment-page .confirmation-icon.google-icon{background:#fff;border:3px solid #e5e7eb}.payment-page .confirmation-message{color:#191919;font-size:1.125rem;font-weight:700;line-height:1.5;margin-bottom:.75rem}.payment-page .confirmation-description{color:#6b7280;font-size:.875rem;line-height:1.6}.payment-page .apple-pay-button{align-items:center;background:#000;border:none;border-radius:.75rem;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:500;gap:.25rem;height:56px;justify-content:center;margin-bottom:1rem;transition:all .2s;width:100%}.payment-page .apple-pay-button .apple-pay-icon{height:1.5rem;width:auto}.payment-page .apple-pay-button:hover{background:#1a1a1a}.payment-page .apple-pay-button:active{transform:scale(.98)}.payment-page .apple-pay-button:disabled{cursor:not-allowed;opacity:.6}.payment-page .payment-button{align-items:center;border:none;border-radius:.75rem;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:700;gap:.75rem;justify-content:center;margin-bottom:1rem;padding:1rem 1.5rem;transition:all .2s;width:100%}.payment-page .payment-button .button-icon{height:1.5rem;width:1.5rem}.payment-page .payment-button.google-button{background:linear-gradient(90deg,#4285f4,#34a853)}.payment-page .payment-button.google-button:hover{background:linear-gradient(90deg,#3367d6,#2d8e47)}.payment-page .payment-button.google-button:active{transform:scale(.98)}.payment-page .retry-button{background:var(--theme-color,#ff8a66);border:none;border-radius:.75rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:1.5rem;padding:.875rem 1.5rem;transition:all .2s;width:100%}.payment-page .retry-button:disabled{cursor:not-allowed;opacity:.5}.payment-page .back-button{background:#fff;border:2px solid #d1d5db;border-radius:.75rem;color:#6b7280;cursor:pointer;font-size:1rem;font-weight:600;margin-bottom:1.5rem;padding:.875rem 1.5rem;transition:all .2s;width:100%}.payment-page .back-button:hover{background:#f9fafb;border-color:#9ca3af;color:#191919}.payment-page .back-button:active{transform:scale(.98)}.credit-card-page .card-form-shell.is-hidden{height:0;overflow:hidden}.credit-card-page .card-form{display:flex;flex-direction:column;gap:1.25rem}.credit-card-page .form-group{display:flex;flex-direction:column;gap:.5rem}.credit-card-page .form-label{align-items:baseline;color:#191919;display:flex;font-size:.875rem;font-weight:600;gap:.25rem;white-space:nowrap}.credit-card-page .form-label-required{color:#f44336;flex-shrink:0}.credit-card-page .card-element-container{background:#fff;border:2px solid #e0e0e0;border-radius:.5rem;min-height:44px;padding:.75rem 1rem;transition:border-color .2s}.credit-card-page .card-element-container:focus-within{border-color:var(--theme-color,#ff8a66)}.credit-card-page .card-element-container.has-error{border-color:#f44336}.credit-card-page .card-element-container.is-complete{border-color:#4caf50}.credit-card-page .card-row{display:grid;gap:.75rem;grid-template-columns:1fr 1fr}.credit-card-page .cardholder-input{background:#fff;border:2px solid #e0e0e0;border-radius:.5rem;font-size:1rem;outline:none;padding:.75rem 1rem;transition:border-color .2s;width:100%}.credit-card-page .cardholder-input:focus{border-color:var(--theme-color,#ff8a66)}.credit-card-page .cardholder-input::-moz-placeholder{color:#9ca3af}.credit-card-page .cardholder-input::placeholder{color:#9ca3af}.credit-card-page .field-error{align-items:center;color:#f44336;display:flex;font-size:.75rem;gap:.25rem}.credit-card-page .field-error .error-icon{flex-shrink:0;height:1rem;width:1rem}.credit-card-page .card-brands{display:flex;gap:.5rem;margin-top:.5rem}.credit-card-page .card-brand-icon{height:24px;-o-object-fit:contain;object-fit:contain;opacity:.6;width:40px}.credit-card-page .secure-notice{background:#f0fdf4;border:1px solid #86efac;border-radius:.5rem;margin-top:.5rem;padding:1rem}.credit-card-page .secure-notice .notice-content{align-items:flex-start;display:flex;gap:.75rem}.credit-card-page .secure-notice .shield-icon{color:#16a34a;flex-shrink:0;height:1.25rem;margin-top:.125rem;width:1.25rem}.credit-card-page .secure-notice .notice-title{color:#14532d;font-size:.875rem;font-weight:600;margin:0 0 .25rem}.credit-card-page .secure-notice .notice-description{color:#166534;font-size:.75rem;line-height:1.5}.credit-card-page .amount-confirmation{background:#f5f5f5;border-radius:.5rem;padding:1rem}.credit-card-page .amount-row{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0}.credit-card-page .amount-row:not(:last-child){border-bottom:1px solid #e0e0e0}.credit-card-page .amount-row .amount-label{color:#191919;font-size:.875rem}.credit-card-page .amount-row .amount-value{color:#191919;font-size:1rem;font-weight:600}.credit-card-page .amount-row .amount-value.total{color:var(--theme-color,#ff8a66);font-size:1.25rem}.credit-card-page .submit-button{align-items:center;background:var(--theme-color,#ff8a66);border:none;border-radius:1rem;box-shadow:0 10px 15px -3px #0000001a;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:700;gap:.5rem;justify-content:center;padding:1rem 2rem;transition:.3s;width:100%}.credit-card-page .submit-button:not(:disabled):hover{transform:scale(1.02)}.credit-card-page .submit-button:disabled{cursor:not-allowed;opacity:.5}.credit-card-page .submit-button .button-icon{height:1.25rem;width:1.25rem}.credit-card-page .back-button{background:#fff;border:2px solid var(--theme-color,#ff8a66);border-radius:1rem;color:var(--theme-color,#ff8a66);cursor:pointer;font-size:1rem;font-weight:700;padding:.875rem 1.5rem;transition:.3s;width:100%}.credit-card-page .back-button:disabled{cursor:not-allowed;opacity:.5}.credit-card-page .retry-button{background:var(--theme-color,#ff8a66);border:none;border-radius:1rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-bottom:1rem;padding:.875rem 1.5rem;transition:.3s;width:100%}.credit-card-page .retry-button:disabled{cursor:not-allowed;opacity:.5}.credit-card-page .button-area{display:flex;flex-direction:column;gap:.75rem;margin-top:1.5rem}.credit-card-page .initializing-message{align-items:center;color:#191919;display:flex;flex-direction:column;justify-content:center;padding:3rem}.credit-card-page .initializing-message .spinner{animation:spin 1s linear infinite;border:3px solid #e0e0e0;border-radius:50%;border-top:3px solid var(--theme-color,#ff8a66);height:2rem;margin-bottom:1rem;width:2rem}.content-container.callback-page{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center}.content-container.callback-page .processing-container{align-items:center;display:flex;flex-direction:column;gap:1rem}.content-container.callback-page .spinner{animation:spin 1s linear infinite;border:4px solid rgba(var(--theme-color-rgb),.2);border-radius:50%;border-top-color:var(--theme-color);height:48px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.content-container.callback-page .processing-title{color:#191919;font-size:1.5rem;font-weight:600;margin:0}.content-container.callback-page .processing-description{color:#6b7280;line-height:1.6}.content-container.callback-page .retry-button{background-color:var(--theme-color);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;margin-top:1rem;padding:.75rem 1.5rem;transition:opacity .2s}.content-container.callback-page .retry-button:hover{opacity:.9}.payment-page .success-title{color:#191919;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;text-align:center}.payment-page .verification-code-card{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;margin-bottom:1.5rem;overflow:hidden}.payment-page .verification-code-content{align-items:center;background:linear-gradient(135deg,rgba(var(--theme-color-rgb),.05),rgba(var(--theme-color-rgb),.1));display:flex;flex-direction:column;padding:1.5rem;text-align:center}.payment-page .verification-label{color:#6b7280;font-size:.875rem;margin:0 0 .5rem}.payment-page .verification-code-button{background:transparent;border:none;border-radius:.5rem;cursor:pointer;display:block;margin:0 auto .5rem;max-width:100%;padding:.25rem;transition:background-color .2s;width:-moz-fit-content;width:fit-content}.payment-page .verification-code-button:hover{background:rgba(var(--theme-color-rgb),.1)}.payment-page .verification-code-button:active{transform:scale(.98)}.payment-page .verification-code-wrapper{align-items:center;display:inline-flex;gap:.5rem;line-height:1}.payment-page .verification-code{color:var(--theme-color);font-size:2.5rem;font-weight:700;letter-spacing:.1em;white-space:nowrap}.payment-page .copy-icon,.payment-page .copy-icon-spacer{flex-shrink:0;width:1.5rem}.payment-page .copy-icon{color:var(--theme-color);height:1.5rem}.payment-page .verification-note{color:#6b7280;font-size:.75rem;margin:0;transition:color .2s}.payment-page .info-notice{background:#eff6ff;border-top:1px solid #bfdbfe;padding:1rem 1.5rem}.payment-page .info-text{align-items:flex-start;color:#1e40af;display:flex;font-size:.75rem;gap:.5rem;line-height:1.5;margin:0}.payment-page .info-icon{color:#2563eb;flex-shrink:0;height:1rem;margin-top:.125rem;width:1rem}.payment-page .action-guide-card{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;margin-bottom:1.5rem;padding:1.25rem}.payment-page .action-guide-content{align-items:flex-start;display:flex;gap:1rem}.payment-page .action-guide-icon{color:var(--theme-color);flex-shrink:0;height:2.5rem;width:2.5rem}.payment-page .action-guide-text{flex:1}.payment-page .action-guide-title{color:#191919;font-size:.95rem;font-weight:700;margin:0 0 .5rem}.payment-page .action-guide-description{color:#6b7280;font-size:.875rem;line-height:1.6;margin:0}.payment-page .action-buttons{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.payment-page .camera-button{background:var(--theme-color);border:none;border-radius:.75rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem;transition:opacity .2s;width:100%}.payment-page .camera-button:hover{opacity:.9}.payment-page .camera-button:active{transform:scale(.98)}.payment-page .camera-permission-note{color:#6b7280;font-size:.75rem;margin:0;text-align:center}.payment-page .later-section{text-align:center}.payment-page .later-label{color:#6b7280;font-size:.75rem;margin:0 0 .5rem}.payment-page .registration-button{background:var(--theme-color);border:none;border-radius:1rem;box-shadow:0 10px 15px -3px #0000001a;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;margin-bottom:1.5rem;padding:.875rem 1.5rem;transition:all .3s ease;width:100%}.payment-page .registration-button:hover{opacity:.9}.payment-page .registration-card{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.payment-page .registration-title{color:#191919;font-size:1rem;font-weight:700;margin:0 0 .75rem}.payment-page .registration-description{color:#6b7280;font-size:.875rem;line-height:1.6;margin:0 0 1rem}.payment-page .external-link-container{margin-bottom:1rem}.payment-page .external-link{align-items:center;color:#2563eb;display:inline-flex;font-size:.875rem;gap:.25rem;text-decoration:none}.payment-page .external-link:hover{text-decoration:underline}.payment-page .external-icon{height:1rem;width:1rem}.payment-page .warning-notice{background:#fef3c7;border:1px solid #fcd34d;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.payment-page .warning-text{align-items:flex-start;color:#92400e;display:flex;font-size:.75rem;gap:.5rem;line-height:1.5;margin:0}.payment-page .warning-icon{color:#d97706;flex-shrink:0;height:1rem;margin-top:.125rem;width:1rem}.payment-page .verification-code-info{margin-top:.75rem}.payment-page .completion-message-card{background:linear-gradient(135deg,#4caf501a,#4caf500d);border:1px solid rgba(76,175,80,.3);border-radius:1rem;margin-bottom:1.5rem;padding:1.5rem}.payment-page .completion-message{align-items:center;color:#191919;display:flex;font-size:1rem;font-weight:600;gap:.75rem;line-height:1.5;margin:0}.payment-page .completion-icon{color:#4caf50;flex-shrink:0;height:1.5rem;width:1.5rem}.payment-page .payment-info-card{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;padding:1.5rem}.payment-page .payment-info-title{color:#191919;font-size:1rem;font-weight:700;margin:0 0 1rem}.payment-page .payment-info-list{display:flex;flex-direction:column;gap:.75rem;margin:0}.payment-page .payment-info-item{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding-bottom:.75rem}.payment-page .payment-info-item:last-child{border-bottom:none;padding-bottom:0}.payment-page .payment-info-item dt{color:#6b7280;font-size:.875rem;white-space:nowrap}.payment-page .payment-info-item dd{color:#191919;font-size:.875rem;font-weight:600;margin:0}.payment-page .receipt-cd-item{flex-direction:column;gap:.25rem}.payment-page .receipt-cd-item dt{align-self:flex-start}.payment-page .receipt-cd-item dd{align-self:flex-end;word-break:break-all}.payment-page .store-name-item{flex-direction:column;gap:.25rem}.payment-page .store-name-item dt{align-self:flex-start}.payment-page .store-name-item dd{align-self:flex-end}.payment-page .error-text{color:#f44336;font-size:.875rem;margin-top:.5rem;text-align:center}.payment-page .notice-text{color:#4caf50;font-size:.875rem;margin-top:.5rem;text-align:center}.error-page[data-v-945f6d14]{align-items:center;background-color:#f5f5f5;display:flex;justify-content:center;min-height:100vh;padding:20px}.error-content[data-v-945f6d14]{max-width:500px;text-align:center}.error-code[data-v-945f6d14]{color:#ff8a66;font-size:120px;font-weight:700;line-height:1;margin:0 0 20px}.error-message[data-v-945f6d14]{color:#191919;font-size:24px;font-weight:700;margin:0 0 16px}.error-description[data-v-945f6d14]{color:#666;font-size:16px;line-height:1.6;margin:0}
