:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#132824;background:#f1faf7;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #132824;--muted: #60736f;--deep-green: #052e2b;--green: #087968;--green-hover: #066455;--mint: #dff8ee;--mint-light: #f1fcf8;--line: #dbe9e4;--warning: #a15c12;--warning-bg: #fff8eb;--shadow: 0 22px 55px rgb(8 67 58 / 12%)}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:#f1faf7}body{min-width:320px;min-height:100vh;margin:0;background:radial-gradient(circle at 8% 5%,rgb(72 201 169 / 18%),transparent 28rem),radial-gradient(circle at 96% 16%,rgb(255 212 107 / 15%),transparent 22rem),linear-gradient(180deg,#f5fcfa,#ecf7f3)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid rgb(8 121 104 / 28%);outline-offset:3px}#root{min-height:100vh}.app-shell{display:flex;min-height:100vh;flex-direction:column}.brand-header{display:flex;width:min(100% - 32px,560px);margin:0 auto;padding:max(18px,env(safe-area-inset-top)) 2px 14px;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--deep-green);text-decoration:none}.brand img{width:42px;height:42px;border-radius:13px;box-shadow:0 8px 20px #084e432e}.brand>span{display:flex;flex-direction:column;line-height:1}.brand strong{font-size:17px;letter-spacing:.16em}.brand small{margin-top:4px;color:var(--green);font-size:9px;font-weight:800;letter-spacing:.28em}.secure-label{display:inline-flex;align-items:center;gap:5px;color:#57726c;font-size:12px;font-weight:700}.offline-banner{width:min(100% - 32px,560px);margin:0 auto 8px;padding:10px 14px;border:1px solid #f4cf91;border-radius:12px;color:#82450d;background:#fff9e9;font-size:13px;font-weight:650;text-align:center}.page-content{display:flex;width:min(100% - 28px,560px);margin:auto;padding:10px 0 28px;flex:1;align-items:center;justify-content:center}.site-footer{display:flex;width:min(100% - 40px,560px);margin:0 auto;padding:12px 0 max(22px,env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:center;gap:5px;color:#71837f;font-size:10.5px;line-height:1.45;text-align:center}.offer-hero,.waiting-card,.reward-card,.message-card{position:relative;width:100%;overflow:hidden;border:1px solid rgb(206 226 219 / 90%);border-radius:28px;background:#fffffff0;box-shadow:var(--shadow);animation:card-in .36s cubic-bezier(.16,1,.3,1)}.offer-hero{padding:27px 22px 22px}.offer-hero:before{position:absolute;z-index:0;width:180px;height:180px;top:-108px;right:-62px;border-radius:999px;background:radial-gradient(circle,#3dc8a43d,#3dc8a400);content:""}.offer-hero>*{position:relative;z-index:1}.offer-badge{display:inline-flex;padding:8px 11px;align-items:center;gap:7px;border:1px solid #bee9da;border-radius:999px;color:#086758;background:#edfcf7;font-size:11px;font-weight:800;letter-spacing:.02em}.machine-label{margin:22px 0 7px;color:var(--green);font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.offer-hero h1,.waiting-card h1,.reward-card h1,.message-card h1{margin:0;color:var(--deep-green);font-size:clamp(28px,7.4vw,38px);line-height:1.06;letter-spacing:-.035em}.lead-copy{margin:14px 0 0;color:var(--muted);font-size:15px;line-height:1.6}.flow-preview{display:grid;margin:23px 0;padding:17px 12px;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:4px;border:1px solid #deebe7;border-radius:19px;background:linear-gradient(145deg,#f8fcfb,#f0f9f6)}.flow-preview>svg{color:#9bb2ac}.flow-preview>div{display:flex;min-width:0;flex-direction:column;align-items:center;text-align:center}.flow-preview>div>span{display:grid;width:36px;height:36px;margin-bottom:7px;border-radius:12px;color:var(--green);background:#ddf5ed;place-items:center}.flow-preview small{color:#7c8e8a;font-size:9px;font-weight:700;text-transform:uppercase}.flow-preview strong{margin-top:2px;color:#25413b;font-size:11px;white-space:nowrap}.all-products-note{display:flex;margin:0 0 20px;padding:14px;align-items:center;gap:12px;border:1px solid #d4e9e1;border-radius:16px;background:#f6fcfa}.product-icon{display:grid;width:42px;height:42px;flex:0 0 auto;border-radius:13px;color:#087968;background:#dff7ee;place-items:center}.all-products-note>span:last-child{display:flex;min-width:0;flex-direction:column;gap:3px}.all-products-note strong{color:#193e36;font-size:14px}.all-products-note small{color:#6b7f7a;font-size:11px;line-height:1.35}.products-section{margin:0 0 20px}.products-section--compact{margin-top:21px}.section-heading{display:flex;margin:0 3px 9px;align-items:center;justify-content:space-between;color:#415b55;font-size:12px;font-weight:750}.section-heading small{display:grid;min-width:23px;height:23px;padding:0 6px;border-radius:999px;color:#116c5e;background:#e2f6ef;font-size:10px;place-items:center}.product-list{display:grid;max-height:220px;margin:0;padding:0;gap:7px;overflow-y:auto;list-style:none;scrollbar-width:thin}.product-row{display:grid;min-height:54px;padding:6px 11px 6px 7px;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;border:1px solid #e2ece9;border-radius:15px;color:#26413b;background:#fbfefd;font-size:13px;font-weight:700}.product-row img,.product-placeholder{width:44px;height:44px;border-radius:11px;background:#edf5f2;object-fit:cover}.product-placeholder{display:grid;color:#64817a;place-items:center}.product-check{color:#159b7f}.primary-button,.secondary-button{display:inline-flex;width:100%;min-height:52px;border-radius:15px;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:800;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.primary-button{border:1px solid var(--green);color:#fff;background:linear-gradient(135deg,#0b816e,#07695b);box-shadow:0 12px 25px #0879683d}.primary-button:not(:disabled):hover{background:linear-gradient(135deg,#087360,#055b4e);box-shadow:0 14px 28px #0879684a;transform:translateY(-1px)}.primary-button:not(:disabled):active,.secondary-button:active{transform:translateY(1px)}.primary-button:disabled{border-color:#9ebbb4;background:#9ebbb4;box-shadow:none;cursor:not-allowed}.primary-button--large{min-height:58px;padding:0 18px;font-size:16px}.primary-button--large svg:last-child{margin-left:auto}.secondary-button{border:1px solid #cddfda;color:#1d6155;background:#fff}.secondary-button:hover{border-color:#a7ccc2;background:#f6fcfa}.provider-note,.fine-print{margin:13px 4px 0;color:#7a8c88;font-size:10.5px;line-height:1.5;text-align:center}.inline-alert{margin:13px 0;padding:11px 13px;border:1px solid #f0d39f;border-radius:12px;color:#875016;background:#fff9ec;font-size:12px;font-weight:650;line-height:1.45;text-align:left}.waiting-card,.reward-card,.message-card{padding:31px 22px 24px;text-align:center}.waiting-illustration{position:relative;display:grid;width:86px;height:86px;margin:0 auto 18px;border-radius:28px;color:var(--green);background:#e8faf4;place-items:center}.waiting-ring{position:absolute;inset:-7px;border:2px dashed #9edbc9;border-radius:32px;animation:rotate 8s linear infinite}.eyebrow{margin:0 0 8px;color:var(--green);font-size:11px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.waiting-card .lead-copy{margin-right:auto;margin-left:auto;max-width:420px}.progress-steps{display:grid;margin:25px 0;padding:0;gap:11px;list-style:none;text-align:left}.progress-steps li{display:flex;min-height:46px;padding:0 13px;align-items:center;gap:11px;border:1px solid #e1ebe8;border-radius:14px;color:#6b7c79;background:#fbfdfc;font-size:13px;font-weight:700}.progress-steps li>span{display:grid;width:25px;height:25px;flex:0 0 auto;border:1px solid #c9d9d5;border-radius:50%;font-size:11px;place-items:center}.progress-steps li.complete{color:#397068;background:#f6fbf9}.progress-steps li.complete>span{border-color:#a5ddcd;color:#087968;background:#ddf6ee}.progress-steps li.current{border-color:#a9dbcd;color:#174b42;background:#edfaf6;box-shadow:0 7px 18px #096f5f14}.progress-steps li.current>span{border-color:var(--green);color:#fff;background:var(--green)}.stacked-actions{display:grid;gap:9px}.reward-card{padding-top:30px}.reward-card>*:not(.confetti){position:relative;z-index:1}.confetti{position:absolute;z-index:0;inset:0;pointer-events:none;background:radial-gradient(circle at 9% 9%,#45c8a5 0 3px,transparent 4px),radial-gradient(circle at 21% 18%,#f3c85d 0 2px,transparent 3px),radial-gradient(circle at 82% 12%,#64b9df 0 3px,transparent 4px),radial-gradient(circle at 93% 28%,#f09880 0 2px,transparent 3px),radial-gradient(circle at 13% 40%,#8bd6c0 0 2px,transparent 3px),radial-gradient(circle at 78% 38%,#e8c55a 0 2px,transparent 3px);-webkit-mask-image:linear-gradient(to bottom,#000 0%,transparent 50%);mask-image:linear-gradient(to bottom,#000 0%,transparent 50%);opacity:0;animation:confetti-in 1s ease .18s forwards}.reward-icon,.message-icon{display:grid;width:66px;height:66px;margin:0 auto 17px;border-radius:22px;color:#087968;background:linear-gradient(145deg,#d9f7ed,#effcf8);box-shadow:inset 0 0 0 1px #c7ecdf;place-items:center}.reward-value{margin:14px 0 1px;color:#087968;font-size:32px;font-weight:850;letter-spacing:-.04em}.reward-subtitle{margin:2px 0 18px;color:#687c77;font-size:12px}.code-panel{padding:18px 14px 14px;border:1px solid #acdccc;border-radius:21px;background:linear-gradient(145deg,#effcf8eb,#e0f8f0eb),repeating-linear-gradient(90deg,transparent 0 9px,rgb(8 121 104 / 3%) 10px)}.reward-code-list{display:grid;margin-top:20px;gap:12px}.code-panel--redeemed,.code-panel--expired{border-color:#d8e2df;background:#f5f8f7;box-shadow:none}.code-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.code-label{display:block;color:#54736c;font-size:10px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}.reward-status{display:inline-flex;min-height:24px;padding:0 9px;border-radius:999px;align-items:center;color:#086758;background:#d9f5ec;font-size:9px;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.reward-status--reserved{color:#81520f;background:#fff0c9}.reward-status--redeemed,.reward-status--expired{color:#63736f;background:#e4eae8}.reward-maximum{margin:13px 0 0;color:#087968;font-size:15px;font-weight:850}.code-panel--redeemed .reward-maximum,.code-panel--expired .reward-maximum{color:#687974}.code-panel strong{display:block;margin:7px 0 12px;color:#063f37;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(30px,9vw,42px);letter-spacing:.07em;line-height:1}.code-panel button{display:inline-flex;min-height:38px;padding:0 15px;border:1px solid #b8dace;border-radius:11px;align-items:center;gap:7px;color:#146658;background:#fff;font-size:12px;font-weight:800;cursor:pointer}.inactive-code-note{margin:5px 0 0;color:#687974;font-size:11px;font-weight:700}.reward-code-expiry{display:flex;margin:11px 0 0;align-items:center;justify-content:center;gap:5px;color:#677d77;font-size:10px}.reward-actions{margin-top:22px}.expiry-note{display:flex;margin:12px 0 0;align-items:center;justify-content:center;gap:6px;color:#677d77;font-size:11px}.how-to-card{margin:22px 0 0;padding:17px;border:1px solid #e0ebe7;border-radius:18px;background:#fbfdfc;text-align:left}.how-to-card h2{margin:0 0 12px;color:#29463f;font-size:13px}.how-to-card ol{display:grid;margin:0;padding:0;gap:10px;list-style:none}.how-to-card li{display:grid;grid-template-columns:24px 1fr;align-items:start;gap:9px;color:#61746f;font-size:12px;line-height:1.45}.how-to-card li>span{display:grid;width:22px;height:22px;border-radius:8px;color:#087968;background:#e1f6ef;font-size:10px;font-weight:800;place-items:center}.how-to-card strong{color:#31524b}.message-card{padding:42px 25px 32px}.message-card--warning .message-icon{color:var(--warning);background:var(--warning-bg);box-shadow:inset 0 0 0 1px #f1d7aa}.message-card--success .message-icon{color:var(--green);background:var(--mint)}.message-copy{max-width:390px;margin:14px auto 0;color:var(--muted);font-size:14px;line-height:1.6}.message-copy p{margin:0}.message-actions{margin:23px 0 0}.loading-view{display:flex;flex-direction:column;align-items:center;color:#526a65;font-size:13px;font-weight:700}.loading-orbit{position:relative;width:58px;height:58px;border:2px solid #d2ebe3;border-top-color:var(--green);border-radius:50%;animation:rotate .8s linear infinite}.loading-orbit div{position:absolute;width:9px;height:9px;top:5px;right:4px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px #0879681a}.loading-view p{margin-top:16px}.spin{animation:rotate .85s linear infinite}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes card-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes confetti-in{0%{opacity:0;transform:translateY(-8px) scale(.92)}35%{opacity:1}to{opacity:.65;transform:translateY(8px) scale(1.04)}}@media(max-width:390px){.page-content{width:min(100% - 20px,560px)}.offer-hero,.waiting-card,.reward-card{padding-right:17px;padding-left:17px;border-radius:23px}.flow-preview{padding-right:7px;padding-left:7px}.flow-preview strong{font-size:10px}.flow-preview>svg{width:13px}.code-panel strong{letter-spacing:.04em}}@media(min-width:640px){.page-content{padding-top:24px;padding-bottom:42px}.offer-hero,.waiting-card,.reward-card,.message-card{border-radius:32px}.offer-hero{padding:36px 34px 30px}.waiting-card,.reward-card,.message-card{padding:40px 34px 34px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
