:root{--cream:#f6f2e9;--paper:#fffdf8;--ink:#111;--muted:#64625e;--green:#3155f5;--green-2:#2443ca;--coral:#ff5a36;--coral-dark:#db3d1e;--yellow:#ffd84d;--mint:#21b890;--line:#d9d4c9;--soft-line:#ece6db;--danger:#9f2822;--success:#17613c;--shadow:0 24px 70px #1111111f;--radius:24px;color:var(--ink);background:var(--cream);font-synthesis:none;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}img,video,svg{max-width:100%;display:block}.shell{width:min(1180px,100% - 40px);margin-inline:auto}.shell-narrow{width:min(780px,100% - 40px);margin-inline:auto}.logo{color:inherit;align-items:center;display:inline-flex}.logo-word{letter-spacing:-.07em;font-size:25px;font-weight:920;line-height:1}.logo-word>span{color:var(--coral)}.site-header{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f6f2e9e6;border-bottom:1px solid #d9d4c9db;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;height:76px;display:flex}.header-nav{align-items:center;gap:30px;font-size:14px;font-weight:680;display:flex}.header-nav>a:not(.button):hover{color:var(--coral)}.button{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:0 20px;font-size:14px;font-weight:820;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-2px)}.button:focus-visible,.icon-button:focus-visible,.text-button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:2px;outline:3px solid #f15a3a47}.button:disabled{opacity:.55;cursor:not-allowed}.button-primary{background:var(--coral);color:#fff;box-shadow:0 10px 24px #f15a3a38}.button-primary:hover:not(:disabled){background:var(--coral-dark);box-shadow:0 14px 28px #f15a3a47}.button-dark{background:var(--ink);color:#fff}.button-secondary{background:var(--paper);border-color:var(--line);color:var(--ink)}.button-secondary:hover:not(:disabled){border-color:#b9c0b9}.button-ghost{background:0 0;min-height:40px;padding-inline:10px}.button-small{border-radius:12px;min-height:40px;padding:0 15px;font-size:13px}.button-wide{width:100%}.button-reward{color:var(--green);background:var(--yellow);box-shadow:0 12px 26px #f5c94a47}.icon-button{cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:7px;padding:9px 10px;font-size:13px;font-weight:720;display:inline-flex}.icon-button:hover{background:#173d2b12}.text-button{color:var(--coral-dark);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:5px;font-size:13px;font-weight:760;display:inline-flex}.text-button:hover{text-decoration:underline}.inline-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.eyebrow,.kicker{color:var(--coral-dark);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:830}.eyebrow{background:#fffdf9b3;border:1px solid #f15a3a38;border-radius:99px;align-items:center;gap:7px;width:fit-content;padding:8px 12px;font-size:11px;display:inline-flex}.kicker-light{color:#f5d8b0}.landing-main{overflow:hidden}.hero{grid-template-columns:1.06fr .94fr;align-items:center;gap:80px;min-height:720px;padding-block:78px 90px;display:grid}.hero-copy h1{letter-spacing:-.075em;text-wrap:balance;max-width:690px;margin:18px 0 20px;font-size:clamp(54px,6.7vw,92px);font-weight:920;line-height:.91}.hero-lead{color:#4d5f55;max-width:630px;margin:0;font-size:19px;line-height:1.65}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.trust-row{color:var(--muted);flex-wrap:wrap;align-items:center;gap:20px;margin-top:24px;font-size:12px;font-weight:650;display:flex}.trust-row span{align-items:center;gap:6px;display:flex}.trust-row svg{color:var(--green-2)}.hero-visual{place-items:center;min-height:570px;display:grid;position:relative}.hero-glow{background:var(--yellow);border-radius:50%;width:500px;height:500px;position:absolute;transform:rotate(-8deg)}.phone-card{z-index:2;background:#f8f4eb;border:7px solid #111;border-radius:42px;width:340px;min-height:560px;padding:12px 14px 20px;position:relative;transform:rotate(3deg);box-shadow:18px 22px #ff5a36,0 36px 80px #11111138}.phone-topbar{justify-content:space-between;align-items:center;height:30px;padding-inline:11px;font-size:10px;font-weight:750;display:flex}.loyalty-card-preview{color:#fff;background:var(--green);border-radius:26px;flex-direction:column;min-height:420px;padding:25px;display:flex;box-shadow:0 15px 35px #173d2b33}.preview-brand{align-items:center;gap:12px;display:flex}.preview-brand>div:last-child{flex-direction:column;gap:2px;display:flex}.preview-brand strong{font-size:17px}.preview-brand span{color:#b9cabf;font-size:11px}.preview-icon{background:var(--yellow);width:48px;height:48px;color:var(--green);border-radius:15px;place-items:center;display:grid}.stamp-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-block:38px 30px;display:grid}.stamp{aspect-ratio:1;color:#ffffff80;border:1px dashed #ffffff5e;border-radius:50%;place-items:center;font-size:11px;display:grid}.stamp.filled{border-style:solid;border-color:var(--yellow);color:var(--green);background:var(--yellow);box-shadow:0 7px 14px #f5c94a2e}.preview-reward{border-top:1px solid #ffffff1f;flex-direction:column;gap:5px;margin-top:auto;padding-top:20px;display:flex}.preview-reward span{color:#b9cabf;font-size:11px}.preview-reward strong{font-size:20px;font-weight:850}.scan-note{color:#526159;align-items:center;gap:10px;margin:17px 8px 0;font-size:11px;line-height:1.35;display:flex}.floating-proof{z-index:3;box-shadow:var(--shadow);background:#fffdf9f0;border:1px solid #fffc;border-radius:16px;align-items:center;gap:10px;padding:14px 18px;display:flex;position:absolute;bottom:80px;right:-24px;transform:rotate(-4deg)}.floating-proof svg{color:var(--success)}.floating-proof div{flex-direction:column;gap:1px;display:flex}.floating-proof strong{font-size:12px}.floating-proof span{color:var(--muted);font-size:10px}.benefit-strip{background:#fffdf98f;border-block:1px solid #173d2b1a}.benefit-grid{grid-template-columns:repeat(3,1fr);align-items:center;min-height:124px;display:grid}.benefit-grid>div{border-right:1px solid var(--line);flex-direction:column;justify-content:center;gap:5px;min-height:60px;padding-inline:36px;display:flex}.benefit-grid>div:first-child{padding-left:0}.benefit-grid>div:last-child{border:0}.benefit-grid strong{font-size:19px;font-weight:850}.benefit-grid span{color:var(--muted);font-size:13px}.section{padding-block:118px}.section-heading{max-width:660px;margin-bottom:52px}.section-heading h2,.security-inner h2,.price-card h2{letter-spacing:-.06em;text-wrap:balance;margin:10px 0 14px;font-size:clamp(38px,5vw,58px);font-weight:900;line-height:.98}.section-heading p,.security-inner p,.price-card p{color:var(--muted);margin:0;font-size:17px;line-height:1.65}.steps-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.step-card{border:1px solid var(--line);border-radius:var(--radius);background:#fffdf99e;flex-direction:column;align-items:flex-start;min-height:280px;padding:29px;display:flex}.step-card.featured{color:#fff;background:var(--green);border-color:var(--green);box-shadow:12px 12px 0 var(--yellow);transform:translateY(-10px)}.step-card.featured p{color:#ffffffc2}.step-card.featured .step-number{color:#fff9}.step-card.featured>svg{color:var(--yellow)}.step-number{color:#a5aba5;align-self:flex-end;font-size:11px;font-weight:850}.step-card>svg{color:var(--coral);margin:28px 0 20px}.step-card h3{letter-spacing:-.025em;margin:0 0 9px;font-size:20px}.step-card p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.security-section{color:#fff;background:var(--ink);padding-block:100px}.security-inner{grid-template-columns:1.15fr .85fr;align-items:center;gap:90px;display:grid}.security-inner p{color:#b9cabf}.security-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.security-list li{background:#ffffff0d;border:1px solid #ffffff1f;border-radius:14px;align-items:center;gap:12px;padding:17px 18px;font-weight:670;display:flex}.security-list svg{color:var(--yellow)}.pricing-section{padding-bottom:140px}.price-card{border:2px solid var(--ink);background:var(--yellow);box-shadow:14px 14px 0 var(--ink);border-radius:32px;grid-template-columns:1fr auto;align-items:center;gap:36px 60px;padding:54px;display:grid}.price-card>div:first-child{max-width:610px}.price-card .button{width:fit-content}.price-block{text-align:right;flex-direction:column;min-width:190px;display:flex}.price-block strong{color:var(--green);letter-spacing:-.07em;font-size:62px;font-weight:920;line-height:1}.price-block span{color:var(--muted);font-size:12px}.footer{color:#f6f2e9;background:#111;padding-block:55px}.footer-inner{justify-content:space-between;align-items:flex-end;gap:30px;display:flex}.footer p{color:#91a99a;margin:12px 0 0;font-size:13px}.footer-links{color:#a9b9af;gap:25px;font-size:12px;display:flex}.footer-links a:hover{color:#fff}.auth-page{background:var(--paper);grid-template-columns:minmax(360px,.88fr) 1.12fr;min-height:100svh;display:grid}.auth-brand-panel{color:#fff;background:var(--green);flex-direction:column;justify-content:space-between;padding:45px 8vw 55px 5vw;display:flex}.auth-brand-panel .logo-word>span{color:var(--yellow)}.auth-brand-panel>div h1{letter-spacing:-.065em;max-width:520px;margin:12px 0 20px;font-size:clamp(44px,5vw,68px);font-weight:900;line-height:.94}.auth-brand-panel>div p{color:#b9cabf;max-width:460px;line-height:1.65}.auth-brand-panel small{color:#b8c9bf}.auth-form-panel{flex-direction:column;justify-content:center;padding:60px max(40px,10vw);display:flex}.auth-copy{margin-bottom:28px}.auth-copy h2{letter-spacing:-.055em;margin:8px 0;font-size:38px;font-weight:900}.auth-copy p{color:var(--muted);margin:0;line-height:1.55}.auth-card{max-width:500px}.auth-tabs{background:#f1eee7;border-radius:13px;grid-template-columns:1fr 1fr;margin-bottom:22px;padding:5px;display:grid}.auth-tabs button{color:#56645c;cursor:pointer;background:0 0;border:0;border-radius:10px;min-height:39px;font-size:13px;font-weight:730}.auth-tabs button.active{color:var(--ink);background:#fff;box-shadow:0 4px 12px #17251e14}.form-stack{gap:16px;display:grid}.form-stack label,.field-grid label,.manual-code-form label{color:#425249;gap:7px;font-size:12px;font-weight:760;display:grid}input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #d7d9d2;border-radius:12px}input,select{height:48px;padding:0 13px}textarea{resize:vertical;padding:12px 13px}input::placeholder,textarea::placeholder{color:#a5aaa6}input:focus,select:focus,textarea:focus{border-color:var(--coral)}.form-message{border-radius:10px;margin:0;padding:11px 13px;font-size:12px;line-height:1.45}.error-message{color:var(--danger);background:#fff0ec}.success-message{color:var(--success);background:#e8f6ee}.password-reset-link{justify-self:end;margin-top:-10px}.spin{animation:.85s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.onboarding-page{padding-block:38px 80px}.onboarding-heading{margin-block:60px 35px}.onboarding-heading h1{letter-spacing:-.065em;margin:10px 0;font-size:clamp(42px,7vw,64px);font-weight:900;line-height:.96}.onboarding-heading p{color:var(--muted)}.onboarding-form{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:26px;gap:32px;padding:35px;display:grid}.form-section{grid-template-columns:44px 1fr;gap:16px;display:grid}.form-section h2{margin:2px 0 22px;font-size:21px}.form-step{color:#fff;background:var(--green);border-radius:50%;place-items:center;width:35px;height:35px;font-size:12px;font-weight:800;display:grid}.field-grid{grid-template-columns:1fr 1fr;gap:17px;display:grid}.field-wide{grid-column:1/-1}.input-prefix{background:#fff;border:1px solid #d7d9d2;border-radius:12px;align-items:center;height:48px;display:flex}.input-prefix span{color:var(--muted);padding-left:12px}.input-prefix input{border:0;height:46px;padding-left:3px}.app-shell{background:#f5f3ed;grid-template-columns:230px 1fr;min-height:100svh;display:grid}.app-sidebar{border-right:1px solid var(--line);background:var(--paper);flex-direction:column;height:100svh;padding:28px 20px 22px;display:flex;position:sticky;top:0}.app-nav{gap:7px;margin-top:45px;display:grid}.app-nav a{color:#526159;border-radius:11px;align-items:center;gap:10px;min-height:44px;padding:0 12px;font-size:13px;font-weight:720;display:flex}.app-nav a:hover{color:var(--green);background:#edf2ee}.app-sidebar>.icon-button{color:var(--muted);justify-content:flex-start;margin-top:auto}.app-content{min-width:0}.dashboard-main,.scanner-main{width:min(1100px,100% - 60px);margin-inline:auto;padding-block:42px 70px}.dashboard-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:30px;display:flex}.dashboard-header h1,.scanner-header h1{letter-spacing:-.055em;margin:7px 0 4px;font-size:39px;font-weight:900}.dashboard-header p{color:var(--muted);margin:0;font-size:14px}.notice{border-radius:12px;justify-content:space-between;gap:15px;margin-bottom:20px;padding:13px 15px;font-size:13px;display:flex}.notice button{cursor:pointer;background:0 0;border:0;font-size:20px;line-height:1}.notice-success{color:var(--success);background:#e3f3ea}.notice-error{color:var(--danger);background:#ffebe7}.approval-notice{color:#79530b;background:#fff4d6;justify-content:flex-start;align-items:flex-start}.approval-notice strong{flex:none}.approval-notice span{line-height:1.5}.button-disabled{opacity:.58;cursor:not-allowed;pointer-events:none}.pending-program-state{border:1px dashed var(--line);min-height:270px;color:var(--muted);text-align:center;background:#faf9f5;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:35px;display:flex}.pending-program-state svg{color:#ad7b1e}.pending-program-state p{max-width:350px;margin:0;line-height:1.6}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;display:grid}.stat-card{border:1px solid var(--soft-line);background:var(--paper);border-radius:18px;align-items:center;gap:15px;min-height:112px;padding:20px;display:flex}.stat-icon{border-radius:13px;place-items:center;width:43px;height:43px;display:grid}.stat-icon.coral{color:#ad351f;background:#ffe3da}.stat-icon.yellow{color:#6f5310;background:#fff1bd}.stat-icon.green{color:var(--green);background:#dceee4}.stat-card div{flex-direction:column;display:flex}.stat-card strong{font-size:29px;font-weight:900;line-height:1}.stat-card span:last-child{color:var(--muted);margin-top:5px;font-size:11px}.dashboard-grid{grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);gap:20px;display:grid}.panel{border:1px solid var(--soft-line);background:var(--paper);border-radius:20px;padding:25px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.panel-heading h2{letter-spacing:-.045em;margin:5px 0 0;font-size:25px;font-weight:860}.program-qr{background:#f3f1ea;border-radius:17px;grid-template-columns:176px 1fr;align-items:center;gap:25px;padding:20px;display:grid}.qr-surface{background:#fff;border-radius:13px;width:fit-content;padding:14px;box-shadow:0 8px 25px #173d2b14}.qr-surface.large{padding:18px}.program-qr h3{margin:7px 0 6px;font-size:18px}.program-qr p{max-width:310px;color:var(--muted);overflow-wrap:anywhere;margin:0 0 15px;font-size:11px}.role-badge{color:var(--green);text-transform:uppercase;background:#dfede5;border-radius:8px;padding:5px 8px;font-size:10px;font-weight:800}.team-placeholder{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:140px;display:flex}.team-placeholder>span{width:44px;height:44px;color:var(--green);background:#edf2ee;border-radius:50%;place-items:center;display:grid}.team-placeholder p{max-width:220px;color:var(--muted);margin:12px 0;font-size:12px;line-height:1.5}.compact-form{padding-top:5px}.check-field{grid-column:1/-1;align-items:center;grid-template-columns:18px 1fr!important;display:flex!important}.check-field input{width:17px;height:17px}.invite-form{margin-top:15px}.activity-panel{margin-top:20px}.empty-state{color:#9aa39e;align-content:center;place-items:center;gap:8px;min-height:120px;display:grid}.empty-state p{margin:0;font-size:12px}.activity-list{display:grid}.activity-row{border-top:1px solid var(--soft-line);grid-template-columns:10px 1fr auto;align-items:center;gap:13px;min-height:64px;padding-block:11px;display:grid}.activity-row:first-child{border-top:0}.activity-dot{background:var(--coral);border-radius:50%;width:8px;height:8px}.activity-dot.redemption{background:var(--yellow)}.activity-dot.reversal{background:#909a94}.activity-row>div{flex-direction:column;gap:2px;display:flex}.activity-row strong{font-size:13px}.activity-row span,.activity-row small{color:var(--muted);font-size:10px}.scanner-main{max-width:760px}.scanner-header{align-items:center;gap:24px;margin-bottom:28px;display:flex}.scanner-header>.icon-button{margin-right:auto}.scanner-header>div{text-align:right}.scanner-success{color:var(--success);background:#e0f3e8;border-radius:15px;align-items:center;gap:12px;margin-bottom:18px;padding:17px;display:flex}.scanner-success div{flex-direction:column;gap:2px;display:flex}.scanner-success strong{font-size:14px}.scanner-success span{font-size:11px}.scanner-panel{border:1px solid var(--soft-line);background:var(--paper);border-radius:25px;place-items:center;min-height:520px;display:grid;overflow:hidden}.scanner-start,.manual-code-form{text-align:center;flex-direction:column;align-items:center;gap:13px;width:min(420px,100% - 40px);display:flex}.scanner-icon{width:64px;height:64px;color:var(--coral);background:#ffebe5;border-radius:20px;place-items:center;display:grid}.scanner-start h2,.manual-code-form h2{letter-spacing:-.045em;margin:8px 0 0;font-size:28px;font-weight:880}.scanner-start p,.manual-code-form p{max-width:360px;color:var(--muted);margin:0 0 10px;font-size:13px;line-height:1.55}.manual-code-form label{text-align:left;width:100%}.camera-stage{background:#0d1511;width:100%;height:520px;position:relative;overflow:hidden}.camera-stage video{object-fit:cover;opacity:.84;width:100%;height:100%}.camera-stage:after{content:"";clip-path:polygon(0 0,100% 0,100% 100%,0 100%,0 0,calc(50% - 120px) calc(50% - 120px),calc(50% - 120px) calc(50% + 120px),calc(50% + 120px) calc(50% + 120px),calc(50% + 120px) calc(50% - 120px),calc(50% - 120px) calc(50% - 120px));position:absolute;inset:0;box-shadow:inset 0 0 0 100vmax #050c0875}.scan-frame{z-index:2;width:240px;height:240px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.scan-frame span{border-color:var(--yellow);border-style:solid;width:45px;height:45px;position:absolute}.scan-frame span:first-child{border-width:4px 0 0 4px;border-radius:12px 0 0;top:0;left:0}.scan-frame span:nth-child(2){border-width:4px 4px 0 0;border-radius:0 12px 0 0;top:0;right:0}.scan-frame span:nth-child(3){border-width:0 4px 4px 0;border-radius:0 0 12px;bottom:0;right:0}.scan-frame span:nth-child(4){border-width:0 0 4px 4px;border-radius:0 0 0 12px;bottom:0;left:0}.camera-stage p{z-index:3;bottom:30px;color:#fff;justify-content:center;align-items:center;gap:8px;margin:0;font-size:12px;display:flex;position:absolute;inset-inline:20px}.loading-state{min-height:300px;color:var(--muted);justify-content:center;align-items:center;gap:10px;display:flex}.scanned-card-wrap{grid-template-columns:1fr 280px;align-items:start;gap:20px;display:grid}.scanned-card{color:#fff;background:var(--green);min-height:420px;box-shadow:var(--shadow);border-radius:26px;padding:30px}.scanned-card h2{margin:7px 0 30px;font-size:31px;font-weight:900}.scanned-progress{align-items:baseline;gap:8px;display:flex}.scanned-progress strong{color:var(--yellow);font-size:66px;font-weight:920;line-height:1}.scanned-progress span{color:#c0cec5;font-size:13px}.mini-stamps{flex-wrap:wrap;gap:9px;margin-block:25px;display:flex}.mini-stamps span{color:#ffffff80;border:1px dashed #ffffff59;border-radius:50%;place-items:center;width:38px;height:38px;font-size:10px;display:grid}.mini-stamps span.filled{color:var(--green);background:var(--yellow);border:0}.scanned-reward{border-top:1px solid #ffffff21;align-items:center;gap:11px;margin-top:28px;padding-top:20px;display:flex}.scanned-reward div{flex-direction:column;gap:3px;display:flex}.scanned-reward span{color:#a9bbb0;font-size:10px}.scanned-reward strong{font-size:14px}.scanner-actions{border:1px solid var(--soft-line);background:var(--paper);border-radius:20px;gap:11px;padding:22px;display:grid}.action-hint{color:var(--muted);text-align:center;margin:-2px 0 3px;font-size:10px}.customer-page{background:var(--cream);width:min(510px,100%);min-height:100svh;margin-inline:auto;padding:22px 20px 45px}.customer-top{justify-content:space-between;align-items:center;display:flex}.customer-top .logo{font-size:16px}.customer-top .logo-word{font-size:20px}.customer-top>span{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:730}.join-hero{text-align:center;flex-direction:column;align-items:center;padding-block:50px 30px;display:flex}.customer-brand-icon{color:#fff;background:var(--accent,var(--coral));width:70px;height:70px;box-shadow:0 12px 25px color-mix(in srgb, var(--accent,var(--coral)) 22%, transparent);border-radius:22px;place-items:center;margin-bottom:18px;display:grid;transform:rotate(-5deg)}.customer-brand-icon.small{border-radius:16px;width:50px;height:50px;margin:0}.join-hero h1{letter-spacing:-.065em;margin:8px 0 12px;font-size:42px;font-weight:900;line-height:.96}.join-hero p{max-width:400px;color:var(--muted);margin:0;font-size:14px;line-height:1.6}.join-preview-card{color:#fff;background:var(--green);box-shadow:var(--shadow);border-radius:23px;padding:26px}.join-preview-label{color:#b6c7bd;justify-content:space-between;font-size:11px;display:flex}.join-preview-card>strong{margin-top:7px;font-size:23px;font-weight:860;display:block}.join-stamps{flex-wrap:wrap;gap:9px;margin-block:27px 19px;display:flex}.join-stamps span{color:#ffffff8c;border:1px dashed #ffffff59;border-radius:50%;place-items:center;width:37px;height:37px;font-size:10px;display:grid}.join-preview-card>p{color:#aabcb1;margin:0;font-size:10px}.join-action-card{border:1px solid var(--line);background:var(--paper);border-radius:20px;gap:13px;margin-top:16px;padding:23px;display:grid}.join-perks{color:#526159;gap:9px;margin-bottom:4px;font-size:11px;display:grid}.join-perks span{align-items:center;gap:8px;display:flex}.join-perks svg{color:var(--success)}.join-action-card small{color:#8b948f;text-align:center;font-size:9px}.location-note{color:var(--muted);background:#fffdf9a6;border-radius:14px;align-items:flex-start;gap:10px;margin-top:18px;padding:15px;font-size:11px;display:flex}.location-note svg{color:var(--coral);flex:none}.location-note span{flex-direction:column;gap:2px;display:flex}.location-note strong{color:var(--ink)}.terms-details{color:var(--muted);background:#fffdf980;border-radius:12px;margin-top:12px;padding:13px 15px;font-size:10px;line-height:1.55}.terms-details summary{cursor:pointer;font-weight:720}.terms-details p:last-child{margin-bottom:0}.card-page{padding-bottom:60px}.live-card{color:#fff;background:var(--green);box-shadow:var(--shadow);border-radius:25px;margin-top:38px;padding:26px}.live-card-head{align-items:center;gap:13px;display:flex}.live-card-head>div:last-child{flex-direction:column;display:flex}.live-card-head span{color:#b8c8be;font-size:10px}.live-card-head h1{margin:2px 0 0;font-size:17px}.live-progress-copy{margin-top:37px}.live-progress-copy>span{color:#b8c8be;font-size:11px}.live-progress-copy h2{letter-spacing:-.05em;margin:5px 0 0;font-size:26px;font-weight:900}.reward-ready{background:var(--yellow);border-radius:7px;align-items:center;gap:5px;width:fit-content;padding:5px 8px;font-weight:780;display:flex;color:var(--green)!important}.live-stamps{grid-template-columns:repeat(4,1fr);gap:12px;margin-block:28px;display:grid}.live-stamps span{aspect-ratio:1;color:#ffffff80;border:1px dashed #ffffff59;border-radius:50%;place-items:center;font-size:10px;display:grid}.live-stamps span.filled{color:var(--green);background:var(--yellow);border:0}.live-reward{border-top:1px solid #ffffff21;align-items:center;gap:11px;padding-top:18px;display:flex}.live-reward.available{color:var(--yellow)}.live-reward div{flex-direction:column;gap:2px;display:flex}.live-reward span{color:#a7bbb0;font-size:9px}.live-reward strong{color:#fff;font-size:13px}.card-qr-wrap{gap:10px;margin-top:15px;display:grid}.card-qr-sheet{border:1px solid var(--line);background:var(--paper);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:14px;padding:25px 20px;display:flex}.qr-status{color:var(--success);text-transform:uppercase;letter-spacing:.06em;background:#e5f4eb;border-radius:8px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:800;display:flex}.card-qr-sheet code{color:#68736d;word-break:break-all;font-size:9px}.card-qr-sheet p{max-width:300px;color:var(--muted);margin:0;font-size:10px;line-height:1.45}.save-card-panel{border:1px solid var(--line);background:var(--paper);border-radius:20px;gap:15px;margin-top:16px;padding:23px;display:grid;box-shadow:0 12px 35px #173d2b0f}.save-card-heading{align-items:flex-start;gap:12px;display:flex}.save-card-icon{width:43px;height:43px;color:var(--green);background:#dceee4;border-radius:13px;flex:none;place-items:center;display:grid}.save-card-heading h2{letter-spacing:-.045em;margin:3px 0 4px;font-size:22px;font-weight:880}.save-card-heading p{color:var(--muted);margin:0;font-size:11px;line-height:1.45}.wallet-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.wallet-button{cursor:pointer;text-align:left;min-height:58px;font:inherit;border:0;border-radius:13px;justify-content:center;align-items:center;gap:9px;padding:9px 13px;display:flex}.wallet-button>span:last-child{flex-direction:column;font-size:14px;font-weight:780;line-height:1.1;display:flex}.wallet-button small{opacity:.72;margin-bottom:3px;font-size:8px;font-weight:600}.wallet-button-apple{color:#fff;background:#080a09}.wallet-button-google{color:#202124;background:#fff;border:1px solid #dadce0}.google-wallet-mark{color:#fff;background:linear-gradient(135deg,#4285f4,#34a853 48%,#fbbc04 72%,#ea4335);border-radius:8px;place-items:center;width:24px;height:24px;font-size:13px;font-weight:900;display:grid}.wallet-button-disabled{color:#7c8580;cursor:not-allowed;background:#f2f2ee;border:1px dashed #d4d8d3}.install-help{color:#4e5c54;background:#f2efe7;border-radius:12px;align-items:flex-start;gap:9px;padding:12px;display:flex}.install-help svg{color:var(--coral);flex:none}.install-help p{margin:0;font-size:10px;line-height:1.5}.save-card-secondary{border-block:1px solid var(--soft-line);grid-template-columns:repeat(3,1fr);display:grid}.save-action{border:0;border-right:1px solid var(--soft-line);color:#536159;cursor:pointer;background:0 0;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-height:54px;padding:8px 5px;font-size:9px;font-weight:720;display:flex}.save-action:last-child{border-right:0}.save-action:hover{color:var(--coral-dark);background:#fcf8f1}.save-recovery-toggle{justify-self:center}.recovery-card{background:#f3f1ea;border-radius:15px;grid-template-columns:auto 1fr;align-items:center;gap:16px;padding:15px;display:grid}.recovery-qr{background:#fff;border-radius:10px;padding:10px}.recovery-qr svg{width:132px;height:132px}.recovery-card>div:last-child{min-width:0}.recovery-card strong{font-size:12px}.recovery-card p{color:var(--muted);margin:6px 0 10px;font-size:9px;line-height:1.5}.save-confirmation{color:var(--success);background:#e8f6ee;border-radius:10px;justify-content:center;align-items:center;gap:6px;margin:0;padding:9px 11px;font-size:10px;font-weight:720;display:flex}.offline-page{flex-direction:column;justify-content:center;align-items:center;gap:35px;min-height:100svh;padding:30px;display:flex}.offline-page section{border:1px solid var(--line);background:var(--paper);text-align:center;width:min(430px,100%);box-shadow:var(--shadow);border-radius:24px;flex-direction:column;align-items:center;padding:36px;display:flex}.offline-page section>svg{color:var(--coral)}.offline-page h1{letter-spacing:-.05em;margin:16px 0 8px;font-size:32px;font-weight:900}.offline-page p{color:var(--muted);margin:0 0 22px;font-size:13px;line-height:1.6}.legal-page{padding-block:90px 110px}.legal-page h1{letter-spacing:-.07em;margin:10px 0 15px;font-size:clamp(46px,8vw,68px);font-weight:920}.legal-intro{max-width:620px;color:var(--muted);margin:0 0 50px;font-size:17px;line-height:1.6}.legal-content{gap:15px;display:grid}.legal-content section{border:1px solid var(--line);background:var(--paper);border-radius:17px;padding:26px}.legal-content h2{margin:0 0 12px;font-size:17px}.legal-content p{color:#536159;font-size:13px;line-height:1.7}.invite-page,.not-found-page{flex-direction:column;justify-content:center;align-items:center;gap:40px;min-height:100svh;padding:30px;display:flex}.invite-accept-card,.not-found-page>div{border:1px solid var(--line);background:var(--paper);text-align:center;width:min(450px,100%);box-shadow:var(--shadow);border-radius:23px;padding:35px}.invite-accept-card>svg{color:var(--success);margin-inline:auto}.invite-accept-card h1,.not-found-page h1{letter-spacing:-.05em;margin:16px 0 8px;font-size:35px;font-weight:900}.invite-accept-card p,.not-found-page p{color:var(--muted);font-size:13px;line-height:1.6}.account-main{max-width:860px}.account-deletion-panel{gap:22px;display:grid}.account-deletion-panel>p{color:var(--muted);margin:0;line-height:1.7}.deletion-status,.deletion-warning{border-radius:14px;align-items:flex-start;gap:13px;padding:17px;display:flex}.deletion-status{color:var(--success);background:#e7f5ed}.deletion-warning{color:#79530b;background:#fff4d6}.deletion-status>div{gap:4px;display:grid}.deletion-status span,.deletion-status small{color:#536159}.button-danger{color:#8d201b;background:#fff0ee;border:1px solid #efc1bc;width:fit-content}.button-danger:hover{background:#ffe4e0}.turnstile-wrap{gap:6px;width:100%;display:grid}.turnstile-wrap>div{width:100%}.turnstile-wrap small{color:var(--muted);font-size:10px}@media (max-width:980px){.hero{text-align:center;grid-template-columns:1fr;gap:20px;padding-top:60px}.hero-copy{flex-direction:column;align-items:center;display:flex}.hero-copy h1{max-width:760px}.hero-visual{min-height:600px}.security-inner{grid-template-columns:1fr;gap:45px}.price-card{grid-template-columns:1fr auto}.price-card .button{grid-column:1/-1}.auth-page{grid-template-columns:1fr}.auth-brand-panel{min-height:400px;padding:35px 8vw}.auth-form-panel{min-height:600px}.app-shell{grid-template-columns:82px 1fr}.app-sidebar{align-items:center;padding-inline:12px}.app-sidebar .logo>span:last-child,.app-nav a{font-size:0}.app-nav a{justify-content:center;width:48px}.app-sidebar>.icon-button span{display:none}.dashboard-grid,.scanned-card-wrap{grid-template-columns:1fr}}@media (max-width:720px){.shell,.shell-narrow{width:min(100% - 30px,100%)}.site-header{position:relative}.header-inner{height:68px}.header-nav>a:not(.button){display:none}.hero{min-height:auto;padding-block:48px 70px}.hero-copy h1{font-size:clamp(44px,13vw,56px)}.hero-lead{font-size:16px}.hero-actions{flex-direction:column;width:100%}.hero-actions .button{width:100%}.trust-row{justify-content:center}.hero-visual{min-height:540px;margin-block:-15px;transform:scale(.91)}.phone-card{width:330px}.floating-proof{right:0}.benefit-grid{grid-template-columns:1fr;padding-block:15px}.benefit-grid>div,.benefit-grid>div:first-child{border-right:0;border-bottom:1px solid var(--line);min-height:75px;padding:15px 0}.section{padding-block:80px}.steps-grid{grid-template-columns:1fr}.step-card.featured{transform:none}.security-section{padding-block:75px}.price-card{grid-template-columns:1fr;padding:32px 25px}.price-block{text-align:left}.footer-inner{flex-direction:column;align-items:flex-start}.footer-links{flex-direction:column;gap:12px}.auth-brand-panel{min-height:350px}.auth-form-panel{min-height:600px;padding:55px 24px}.onboarding-page{padding-top:25px}.onboarding-heading{margin-top:45px}.onboarding-form{padding:25px 20px}.form-section,.field-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.app-shell{padding-bottom:78px;display:block}.app-sidebar{z-index:60;border:0;border-top:1px solid var(--line);flex-direction:row;justify-content:space-around;width:100%;height:68px;padding:8px 15px;position:fixed;inset:auto 0 0}.app-sidebar .logo{display:none}.app-nav{margin:0;display:flex}.app-nav a{width:56px;height:48px}.app-sidebar>.icon-button{justify-content:center;width:48px;height:48px;margin:0}.dashboard-main,.scanner-main{width:min(100% - 30px,100%);padding-block:28px 45px}.dashboard-header{flex-direction:column;align-items:flex-start}.dashboard-header .button{width:100%}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:88px}.program-qr{text-align:center;grid-template-columns:1fr}.program-qr .qr-surface,.program-qr .inline-actions,.program-qr p{margin-inline:auto}.panel{padding:20px}.scanner-header{justify-content:space-between}.scanner-header h1{font-size:30px}.scanner-panel,.camera-stage{height:480px;min-height:480px}.scanned-card{min-height:390px}.wallet-actions{grid-template-columns:1fr}.recovery-card{text-align:center;grid-template-columns:1fr}.recovery-qr,.recovery-card .button{margin-inline:auto}.legal-page{padding-block:65px 80px}.legal-content section{padding:21px}}@media print{body *{visibility:hidden}.program-qr,.program-qr *{visibility:visible}.program-qr{text-align:center;background:#fff;flex-direction:column;justify-content:center;width:18cm;min-height:24cm;padding:2cm;display:flex;position:absolute;inset:0}.program-qr .qr-surface{margin-inline:auto;margin-bottom:2cm;transform:scale(1.8)}.program-qr .inline-actions{display:none}}
