.scanPage{max-width:680px;margin:0 auto;padding:12px 0 48px}.scanIntro{margin:28px 0 20px}.scanIntro h1{font-size:42px;letter-spacing:-2px;margin:14px 0 8px}.scanIntro p{max-width:620px;line-height:1.55}.scanPanel,.scanCustomerCard{background:#fff;border:1px solid #eadfd2;border-radius:26px;padding:22px;box-shadow:0 14px 35px #6f4e2610}.scanCamera{position:relative;overflow:hidden;border-radius:20px;background:#20170f;min-height:300px;display:grid;place-items:center;color:#fff;text-align:center}.scanCamera video{width:100%;height:360px;object-fit:cover}.scanFrame{position:absolute;width:190px;height:190px;border:3px solid #e7b55d;border-radius:20px;box-shadow:0 0 0 999px #0005}.scanCamera p{position:absolute;bottom:8px;left:16px;right:16px;font-size:13px}.scanManualForm,.scanAwardForm{display:grid;gap:10px;margin-top:22px}.scanManualForm label,.scanAwardForm label{font-weight:850}.scanManualForm input,.scanAwardForm input{width:100%;box-sizing:border-box;padding:14px;border:1px solid #eadfd2;border-radius:12px;font:inherit}.scanManualForm .btn,.scanAwardForm .btn{margin-top:4px}.scanCustomerCard h2{font-size:40px;margin:12px 0 4px}.scanReward{display:grid;gap:5px;border-top:1px solid #eee3d8;margin-top:20px;padding-top:18px}.scanReward span{font-size:10px;color:#a36a0b;letter-spacing:.14em;font-weight:900}.scanReward strong{font-size:21px}.scanReward small{color:#756b61}.scanAwardForm small{margin-top:-3px}.scanPage>.backLink{color:#6d5a45;text-decoration:none;font-weight:800}@media(max-width:600px){.scanIntro h1{font-size:34px}.scanCamera video{height:310px}}
.scanStartButton{width:100%;margin:0 0 14px;min-height:48px}.scanStatus{min-height:24px;margin:10px 2px;color:#6d655e;line-height:1.5;font-size:14px}.scanCamera video[hidden],.scanFrame[hidden]{display:none}.scanCamera video:not([hidden]){display:block}.scanCamera.isScanning{min-height:300px}.scanCamera.isScanning .scanFrame{display:block;pointer-events:none}
.scanStatusError{color:#a22c1c;font-weight:750}.scanManualForm button:disabled{opacity:.65;cursor:wait}.scanCustomerCard{margin-top:4px}
.scanMethodHint{display:grid;gap:7px;margin:0 0 16px;padding:14px 16px;border:1px solid #ead4ae;border-radius:15px;background:#fff8eb;color:#5e4b34;font-size:13px;line-height:1.5}.scanMethodHint strong{color:#382716;font-size:14px}.scanMethodHint span{position:relative;padding-left:18px}.scanMethodHint span:before{content:"•";position:absolute;left:2px;color:#a36a0b;font-weight:900}
.scanResultPanel{margin-top:24px}.scanFoundNotice{display:flex;align-items:center;gap:13px;margin:0 0 16px;padding:15px 18px;border:1px solid #cfe3c8;border-radius:16px;background:#f2f8ef;color:#315b2b}.scanFoundNotice>span{display:grid;place-items:center;width:34px;height:34px;flex:none;border-radius:50%;background:#dcefd5;font-size:20px;font-weight:900}.scanFoundNotice div{display:grid;gap:3px}.scanFoundNotice strong{font-size:15px}.scanFoundNotice small{color:#52704c;line-height:1.4}.scanPanel.scanPanelResult{padding:0;border:0;background:transparent;box-shadow:none}.scanCustomerCard{margin:0;padding:24px;border-radius:24px;box-shadow:0 14px 35px #6f4e2610}.scanAwardForm .btn{justify-self:end;width:auto;min-width:190px;white-space:nowrap}
.scanPage [hidden]{display:none!important}
.scanAsyncResults{max-width:620px;margin:26px auto 0;scroll-margin-top:96px}
.scanCustomerCard{display:grid;gap:14px;margin:0;padding:0;border:0;background:transparent;box-shadow:none}.scanCustomerCard .walletCardFace{width:100%;box-sizing:border-box;overflow:hidden;border:1px solid #dfd0bb;border-radius:26px;background:linear-gradient(145deg,#fffdfa,#f5eddf);box-shadow:0 16px 38px rgba(55,35,19,.10)}.scanCustomerCard .scanAwardFormLive{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0;padding:14px 16px;border:1px solid #eadfd2;border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(55,35,19,.045)}.scanAwardHeading{display:grid;gap:4px}.scanAwardHeading label{font-size:14px;font-weight:850}.scanAwardHeading small{font-size:11px;line-height:1.4;color:#756b61}.scanAwardControls{display:flex;align-items:center;gap:10px}.scanAwardFormLive input{width:88px!important;padding:10px 11px!important;text-align:center;font-weight:800}.scanAwardFormLive .btn{min-width:160px;min-height:42px;margin:0;white-space:nowrap}.scanAnotherCardWrap{display:flex;justify-content:flex-end;margin-top:16px}.scanAnotherCard{display:inline-flex;align-items:center;justify-content:center;min-width:190px;text-decoration:none;text-align:center}
.scanAwardFeedback{display:grid;gap:6px;margin-bottom:6px;padding:12px 15px;border:1px solid #cfe3c8;border-radius:14px;background:#f2f8ef;color:#315b2b;font-size:13px;line-height:1.45}.scanAwardFeedback a{width:max-content;max-width:100%;color:#7b500a;font-weight:850;text-decoration:none}
.onboardingStepNav{display:flex;justify-content:flex-end;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}.onboardingStepNav .btn,.onboardingStepNav .secondaryBtn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border-radius:999px;text-decoration:none;font-weight:850}.onboardingStepNav .btn{color:#fff}
.scanAwardFeedbackError{border-color:#e7c4bc;background:#fff3f0;color:#963b2e}
.scanRewardReady{display:grid;gap:5px;padding:14px 16px;border:1px solid #ead4ae;border-radius:16px;background:#fff8eb;color:#604719;line-height:1.45}.scanRewardReady strong{color:#382716;font-size:14px}.scanRewardReady span{font-size:12px}
.scanRedeemForm{display:flex;justify-content:flex-end}.scanRedeemForm .btn{min-height:44px;white-space:nowrap}
@media(max-width:600px){.scanResultPanel{margin-top:20px}.scanCustomerCard{padding:0}.scanCustomerCard .scanAwardFormLive{grid-template-columns:1fr;gap:10px;padding:14px}.scanAwardControls{justify-content:space-between}.scanAwardFormLive input{width:78px!important}.scanAwardFormLive .btn{width:auto;flex:1;min-width:0;justify-self:stretch}}
@media(max-width:480px){.onboardingStepNav{justify-content:stretch}.onboardingStepNav>*{flex:1;text-align:center}}
