:root{color:#111318;font-synthesis:none;text-rendering:optimizelegibility;--ink:#111318;--muted:#536071;--accent:#05f;--accent-dark:#003ec2;--line:#dbe0ea;--shadow:0 8px 30px #11131808, 0 2px 5px #11131804;background:#fff;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*{box-sizing:border-box}[hidden]{display:none!important}body{background:#f5f7fb;margin:0}button,input,select,textarea{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{min-height:46px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #dbe0ea;border-radius:15px;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:.88rem;font-weight:700;transition:background .18s,box-shadow .18s,border-color .18s;display:inline-flex}button:hover{background:#dbe0ea;border-color:#7b8799}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}button.primary:hover{background:var(--accent-dark)}:focus-visible{outline-offset:4px;outline:3px solid #69f}input,select,textarea{min-height:48px;color:var(--ink);background:#fff;border:1px solid #dbe0ea;border-radius:13px;padding:11px 14px;font-size:1rem}input{width:100%}input::placeholder{color:#536071;opacity:1}input:disabled,select:disabled{color:#536071;opacity:.8}label{color:#536071;font-size:.82rem;font-weight:700;display:block}p{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink)}h1{letter-spacing:-.045em;font-size:clamp(1.8rem,3vw,2.25rem);font-weight:750;line-height:1.2}h2{letter-spacing:-.035em;font-size:1.25rem;line-height:1.3}h3{font-size:.95rem}code{font-family:inherit;font-size:.88em}a{color:#111318;text-underline-offset:3px}.icon{flex-shrink:0;width:22px;height:22px;display:block}.brand{align-items:center;min-width:0;display:flex}.brand-logo{object-fit:contain;width:132px;max-width:100%;height:auto;display:block}.sign-in-intro .brand-logo{width:210px}.badge{color:#05f;background:#f5f7fb;border:1px solid #dbe0ea;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:700;display:inline-block}.notice,.error{border-radius:15px;padding:13px 16px;font-size:.87rem}.notice{color:#111318;background:#f5f7fb;border:1px solid #dbe0ea}.error{color:#852f28;background:#f5f7fb;border:1px solid #ebcac2}.sign-in-layout{flex-direction:column;justify-content:center;max-width:460px;min-height:100dvh;margin:auto;padding:36px 20px;display:flex}.sign-in-intro{align-self:center;margin-bottom:32px}.sign-in-card{width:100%;box-shadow:var(--shadow);background:#fff;border:1px solid #ffffffe0;border-radius:30px;padding:34px}.sign-in-card h1{margin:15px 0 24px;font-size:1.9rem}.sign-in-card form label{margin:18px 0 7px}.sign-in-card form button{margin-top:25px}.sign-in-card .error{margin-top:16px}.full-width{width:100%}.demo-credentials{border-top:1px solid var(--line);color:var(--muted);margin-top:24px;padding-top:20px;font-size:.75rem}.startup{max-width:520px;margin:15vh auto;padding:24px}.startup .brand{margin-bottom:32px}.app-layout{grid-template-rows:auto 1fr;grid-template-columns:245px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--line);background:#fff;align-self:start;height:calc(100dvh - 110px);padding:24px 22px;position:sticky;top:0}nav{gap:10px;margin-top:0;display:grid}nav a{color:#536071;border:1px solid #0000;border-radius:19px;align-items:center;gap:16px;min-height:56px;padding:14px 20px;font-size:.93rem;font-weight:650;text-decoration:none;transition:background .18s;display:flex}nav a .icon{width:24px;height:24px}nav a:hover{background:#dbe0ea}nav a[aria-current]{background:var(--accent);color:#fff;border-color:var(--accent)}.workspace-body{min-width:0}.topbar{border-bottom:1px solid var(--line);background:#fff;grid-column:1/-1;align-items:center;gap:24px;min-height:110px;padding:26px 40px 18px 22px;display:flex}.topbar>.brand{margin-right:auto}.vendor-identity{order:2;align-items:center;gap:12px;min-width:0;display:flex}.vendor-identity>div{min-width:0}.vendor-identity strong{letter-spacing:-.02em;overflow-wrap:anywhere;font-size:.95rem;display:block}.vendor-avatar{color:#05f;background:#dbe0ea;border:3px solid #fff;border-radius:50%;flex-shrink:0;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 0 0 1px #dbe0ea}.vendor-avatar .icon{width:25px;height:25px}.account-role{color:#536071;margin-top:2px;font-size:.69rem;display:block}.account-menu{min-width:0;max-width:360px;position:relative}.account-menu>summary{cursor:pointer;border:1px solid #0055ff18;border-radius:12px;min-height:48px;padding:8px;list-style:none;transition:background .18s,box-shadow .18s;box-shadow:0 2px 12px #0055ff0d}.account-menu>summary::-webkit-details-marker{display:none}.account-menu>summary:hover,.account-menu[open]>summary{background:#f5f8ff;box-shadow:0 3px 16px #0055ff18}.account-dropdown{z-index:8;border:1px solid var(--line);background:#fff;border-radius:16px;width:min(290px,100vw - 40px);padding:12px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 36px #11131814}.account-name{border-bottom:1px solid var(--line);overflow-wrap:anywhere;margin:0 0 6px;padding:8px 10px 12px;font-size:.8rem}.account-dropdown .install-tools summary{color:var(--ink);padding:10px;font-size:.85rem}.account-dropdown .install-content{width:100%;box-shadow:none;background:#f5f7fb;margin:4px 0 8px;padding:12px;position:static}.account-dropdown .sign-out{background:0 0;border:0;border-radius:10px;justify-content:start;width:100%}.account-dropdown .sign-out:hover{background:#f5f7fb}.account-dropdown .sign-out .icon{width:18px;height:18px}.workspace{max-width:1040px;margin:0 auto;padding:12px 40px 40px}.page-intro{padding:4px 0 14px}.page-intro h1{margin:0}.data-source{flex-wrap:wrap;align-items:center;gap:5px 14px;margin:0 0 20px;font-size:.74rem;display:flex}.data-source strong{color:#536071;background:#dbe0ea;border:1px solid #dbe0ea;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:650}.data-source span{color:#536071;font-size:.72rem}.data-source a{align-items:center;gap:6px;font-size:.72rem;font-weight:600;display:inline-flex}.data-source a .icon{width:14px;height:14px}.data-source a[aria-disabled=true]{opacity:.5}.live-source{justify-content:space-between;max-width:730px;margin:0 auto 15px}.live-source strong:before{content:"";background:#05f;border-radius:50%;width:6px;height:6px;margin:0 7px 1px 0;display:inline-block}.scan-workspace{max-width:none}.card-flow{width:100%;min-height:calc(100dvh - 164px)}.scan-panel{min-height:inherit;color:#fff;border:1px solid #164ed1;border-radius:24px;flex-direction:column;padding:28px;display:flex}.scan-panel,.stats-grid>.members-stat{background-color:#315d9e;background-image:repeating-linear-gradient(0deg,#ffffff03 0 1px,#0000 1px 4px),linear-gradient(115deg,#ffffff08,#0000 35%,#ffffff04 65%,#0000),linear-gradient(155deg,#416fac,#2e5895 60%,#284b80);background-size:auto}.qr-scanner{flex-direction:column;flex:1;min-width:0;display:flex}.qr-scanner.manual-mode{flex:0}.scan-content{flex:1;place-items:center;min-height:340px;margin-top:24px;display:grid}.qr-scanner.manual-mode .scan-content:not(.has-card){display:none}.scan-content.has-card{background:#ffffff0a;border-radius:18px;padding:clamp(10px,2vw,24px)}.scan-content.has-card .loyalty-card{margin:0}.scan-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.scan-heading h2{color:#fff;letter-spacing:-.04em;margin:0 0 5px;font-size:2rem}.scan-heading p{color:#e0ebff;margin:0;font-size:.91rem}.scan-stage{background:#062b7855;border-radius:18px;place-items:center;width:100%;height:100%;min-height:320px;display:grid;position:relative;overflow:hidden}.scan-glyph{color:#fff;width:61px;height:61px}.scan-frame{pointer-events:none;width:207px;height:166px;position:absolute;top:50%;left:50%;transform:translate(-50%,-54%)}.scan-frame i{border:5px solid #a9ccff;width:37px;height:34px;position:absolute}.scan-frame i:first-child{border-bottom:0;border-right:0;border-radius:13px 0 0;top:0;left:0}.scan-frame i:nth-child(2){border-bottom:0;border-left:0;border-radius:0 13px 0 0;top:0;right:0}.scan-frame i:nth-child(3){border-top:0;border-right:0;border-radius:0 0 0 13px;bottom:0;left:0}.scan-frame i:nth-child(4){border-top:0;border-left:0;border-radius:0 0 13px;bottom:0;right:0}.scanner-status{color:#e0ebff;letter-spacing:.06em;margin:0;font-size:.66rem;position:absolute;bottom:10px}.qr-scanner video{object-fit:cover;background:#111318;width:100%;height:100%;display:block;position:absolute;inset:0}.camera-active .scanner-status{background:#111318e8;border-radius:20px;padding:4px 10px;bottom:9px}.scan-options{border:1px solid var(--line);background:#f5f7fb;border-radius:16px;grid-template-columns:1fr 1fr;gap:4px;margin-top:20px;padding:4px;display:grid}.scan-options button{border-radius:12px;min-height:45px;padding:8px 12px;font-size:.96rem}.scan-options button[aria-pressed=true]{border-color:var(--accent);color:#fff;background:var(--accent)}.scan-options button[aria-pressed=true]:hover{background:var(--accent-dark)}.scan-options button[aria-pressed=false]{color:var(--muted);background:0 0;border-color:#0000;font-weight:600}.scan-options button[aria-pressed=false]:hover{background:#ffffff0e}.scan-options .icon{width:19px;height:19px}.qr-scanner .error{background:#fff;border-radius:12px;margin:14px 0 0;padding:12px}.manual-lookup{margin-top:17px}.manual-lookup label{color:#e0ebff;font-size:.8rem;font-weight:600}.lookup-row{gap:7px;margin-top:6px;display:flex}.lookup-row input{min-width:0;min-height:48px;color:var(--ink);background:#f5f7fb;border-radius:12px}.lookup-row input::placeholder,.lookup-row input:disabled{color:var(--muted)}.lookup-row button{min-height:48px;color:var(--accent-dark);background:#fff;border-color:#fff;border-radius:12px;flex-shrink:0;font-size:.85rem}.lookup-row button:hover{background:#e0ebff}.lookup-row button .icon{width:16px;height:16px}.scan-panel :focus-visible{outline-color:#a9ccff}.scan-panel .loyalty-card :focus-visible{outline-color:var(--accent)}.scan-panel>.error,.scan-panel>.notice,.flow-status{margin:16px 0}.scan-panel>.error,.scan-panel>.notice{background:#fff;border-radius:12px;padding:12px}.flow-status{text-align:center;color:#e0ebff;font-size:.85rem}.desktop-lookup .manual-lookup{width:100%;max-width:720px;margin:32px auto 0}.loyalty-card{border:1px solid var(--line);width:100%;max-width:660px;color:var(--ink);background:#fff;border-radius:20px;padding:clamp(22px,4vw,40px)}.card-heading{align-items:center;gap:14px;display:flex}.card-title{flex:1;min-width:0}.card-heading h2{overflow-wrap:anywhere;margin:0 0 3px;font-size:1.15rem}.card-heading code{color:#536071;overflow-wrap:anywhere;font-size:.78rem}.card-emblem{color:#f5f7fb;background:radial-gradient(circle at 30% 30%,#536071,#111318);border:3px solid #fff;border-radius:50%;flex-shrink:0;place-items:center;width:55px;height:55px;display:grid;box-shadow:0 0 0 1px #dbe0ea}.card-emblem .icon{width:29px;height:29px}.card-heading .badge{font-size:.64rem}.stamp-summary{align-items:center;gap:22px;margin:22px 0 18px;display:flex}.stamp-balance{color:#05f;white-space:nowrap;flex-shrink:0;align-items:baseline;gap:4px;margin:0;display:flex}.stamp-balance strong{letter-spacing:-.05em;font-size:3rem;font-weight:750;line-height:1}.stamp-balance span{color:#536071;font-size:.83rem}.stamp-track{flex:1;justify-content:end;gap:5px;min-width:0;display:grid}.stamp-track>span{aspect-ratio:1;background:#fff;border:1px solid #dbe0ea;border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 1px 2px #0055ff07}.stamp-track>span.collected{background:var(--accent);color:#fff;border-color:var(--accent)}.stamp-track .icon{width:65%;height:65%}.loyalty-card progress:not(.visually-hidden){appearance:none;background:#fff;border:0;border-radius:8px;width:100%;height:8px;margin:15px 0;display:block;overflow:hidden}.loyalty-card progress::-webkit-progress-bar{background:#fff}.loyalty-card progress::-webkit-progress-value{background:#05f;border-radius:8px}.loyalty-card progress::-moz-progress-bar{background:#05f;border-radius:8px}.reward-label{color:var(--ink);background:#fff;border:1px solid #dbe0ea;border-radius:17px;align-items:center;gap:14px;margin:0 0 18px;padding:15px 17px;font-size:1rem;font-weight:700;display:flex}.reward-label>.icon:first-child{color:#05f;width:28px;height:28px}.reward-label span{overflow-wrap:anywhere;flex:1}.flow-actions{flex-wrap:wrap;gap:10px;display:flex}.flow-actions button{flex:1}.redeem-confirmation{background:#f5f7fb;border-radius:17px;padding:19px}.redeem-confirmation h3{margin:0 0 6px}.redeem-confirmation p{margin-bottom:16px;font-size:.82rem}.management-panel{box-shadow:var(--shadow);background:#fff;border:1px solid #ffffffe6;border-radius:27px;padding:27px}.muted,.result-count,.empty-state,.today-summary{color:var(--muted);font-size:.83rem}.empty-state{text-align:center;margin:0;padding:38px 0}.result-count{text-transform:uppercase;letter-spacing:.12em;margin:24px 0 8px;font-size:.65rem}.section-actions{justify-content:space-between;gap:12px;margin-bottom:22px;display:flex}.member-search{grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:12px;margin-bottom:20px;display:grid}.member-search input,.member-search select{width:100%;margin-top:7px;display:block}.member-search button{min-height:48px}.member-list,.activity-list{margin:0;padding:0;list-style:none}.member-list li+li{border-top:1px solid #dbe0ea}.member-row{text-align:left;background:0 0;border:0;border-radius:15px;justify-content:space-between;align-items:center;gap:14px;width:100%;padding:21px 6px;display:flex}.member-row:hover{background:#fff}.member-row>span{min-width:0}.member-row strong,.member-row code,.member-row small{display:block}.member-row code,.member-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:.73rem;font-weight:400}.member-avatar{color:#05f;background:#f5f7fb;border:1px solid #dbe0ea;border-radius:50%;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:.77rem;display:grid}.member-name{flex:1}.member-progress{text-align:right;flex-shrink:0}.member-progress strong{color:#05f;font-size:1rem}.member-chevron{color:#536071;width:15px;height:15px}.member-heading{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:16px;margin-top:24px;display:flex}.member-heading h2{margin-bottom:6px}.member-heading p{margin:5px 0 0;font-size:.85rem}.member-heading code{overflow-wrap:anywhere}.member-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:10px 24px;margin:24px 0;padding:18px 0;font-size:.9rem;display:flex}.activity-list li{border-bottom:1px solid #dbe0ea;padding:17px 0}.activity-list li:last-child{border-bottom:0}.activity-list li>div{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;display:flex}.activity-list strong{font-size:.86rem}.activity-list time{color:var(--muted);font-size:.73rem}.activity-list p{overflow-wrap:anywhere;margin:6px 0 0;font-size:.79rem}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 22px;display:grid}.stats-grid>div{box-shadow:var(--shadow);background:#fff;border:1px solid #fff;border-radius:24px;padding:22px 18px;position:relative}.stat-link{color:inherit;text-decoration:none}.stat-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.stats-grid>div:has(.stat-link):hover{border-color:var(--accent)}.stat-link:focus-visible{outline:none}.stat-link:focus-visible:after{outline:3px solid var(--accent);outline-offset:3px}.stats-grid>.members-stat{border-color:#315d9e}.stats-grid dt{color:#536071;font-size:.74rem}.stats-grid dt .icon{color:#05f;width:26px;height:26px;margin-bottom:22px}.stats-grid dd{letter-spacing:-.05em;margin:12px 0 0;font-size:2.25rem;font-weight:750;line-height:1}.stats-grid>.members-stat dt,.stats-grid>.members-stat .icon{color:#e0ebff}.stats-grid>.members-stat dd{color:#fff}.management-panel.activity-disclosure{padding:0}.activity-disclosure>summary{border-radius:inherit;cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:20px 24px;font-size:1rem;font-weight:700;list-style:none;display:flex}.activity-disclosure>summary::-webkit-details-marker{display:none}.activity-disclosure>summary:hover{background:#f5f8ff}.activity-disclosure>summary .icon{width:20px;height:20px;color:var(--muted);flex-shrink:0}.activity-disclosure[open]>summary .icon{transform:rotate(90deg)}.activity-content{padding:0 24px 16px}.today-summary{margin:0 0 28px;padding:0 2px}.daily-analytics{margin-bottom:22px}.analytics-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.analytics-heading h2{margin:0 0 4px;font-size:1.15rem}.analytics-heading p{margin:0;font-size:.76rem}.analytics-period{background:#f5f7fb;border-radius:12px;gap:4px;padding:4px;display:flex}.analytics-period button{background:0 0;border:0;border-radius:9px;min-height:40px;padding:7px 12px;font-size:.76rem}.analytics-period button[aria-pressed=true]{color:#fff;background:var(--accent)}.analytics-legend{color:var(--muted);flex-wrap:wrap;gap:12px 20px;margin:22px 0 12px;padding:0;font-size:.76rem;list-style:none;display:flex}.analytics-legend li{align-items:center;gap:7px;display:flex}.analytics-legend span{border-radius:3px;width:10px;height:10px}.stamps-swatch,.analytics-stamps{background:var(--accent);fill:var(--accent)}.redemptions-swatch,.analytics-redemptions{fill:#536071;background:#536071}.analytics-plot{position:relative;overflow-x:auto}.analytics-plot svg{width:100%;min-width:640px;height:auto;display:block}.analytics-plot text{fill:var(--muted);font-family:inherit;font-size:14px}.analytics-gridline{stroke:var(--line);stroke-width:1px}.analytics-empty{text-align:center;background:#fffffff2;border-radius:10px;width:max-content;max-width:85%;margin:0;padding:10px 14px;font-size:.85rem;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.analytics-values{margin-top:12px;font-size:.8rem}.analytics-values summary{cursor:pointer;min-height:44px;padding:10px 0}.analytics-table{overflow-x:auto}.analytics-table table{border-collapse:collapse;width:100%}.analytics-table th,.analytics-table td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:10px}.enroll-qr{background:#f5f7fb;border-radius:18px;margin-bottom:28px;padding:20px}.enroll-qr p{margin:0 0 16px;font-size:.85rem}.enroll-qr-image{width:180px;margin-bottom:16px}.enroll-qr-image svg{width:100%;height:auto;display:block}.program-fields{gap:23px;display:grid}.program-fields input{margin-top:8px}.program-actions,.program-confirmation{margin-top:28px}.program-confirmation{background:#f5f7fb;border-radius:18px;padding:20px}.program-confirmation p{font-size:.85rem}.program-fields+.error,.program-fields+.notice{margin-top:20px}.offer-composer{border-top:1px solid #dbe0ea;gap:12px;margin-top:36px;padding-top:28px;display:grid}.offer-composer textarea{resize:vertical;width:100%;margin-top:8px;display:block}.offer-composer .muted{margin:0;font-size:.85rem}.offer-composer .program-actions,.offer-composer .program-confirmation{margin-top:8px}fieldset{border:0;min-width:0;margin:0;padding:0}.install-tools{font-size:.77rem;position:relative}.install-tools summary{cursor:pointer;color:#536071;align-items:center;gap:7px;min-height:44px;padding:9px 3px;list-style:none;display:flex}.install-tools summary::-webkit-details-marker{display:none}.install-tools summary .icon{width:17px;height:17px}.install-content{z-index:6;border:1px solid var(--line);background:#fff;border-radius:18px;width:min(290px,80vw);padding:20px;position:absolute;top:100%;right:0;box-shadow:0 10px 30px #1113181a}.install-content p{margin:12px 0 0;line-height:1.6}.install-content p:first-child{margin-top:0}.sign-in-card .install-tools{margin-top:12px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;color:var(--accent);background:#fff;border-radius:12px;padding:12px;position:fixed;top:-100px;left:12px}.skip-link:focus{top:12px}@media (width<=1100px){.app-layout{grid-template-columns:212px minmax(0,1fr)}.sidebar{padding:30px 18px}.topbar .brand{gap:8px}.workspace{padding-left:28px;padding-right:28px}.topbar{padding-left:18px;padding-right:28px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-search{grid-template-columns:1fr 1fr}.member-search>label:first-child{grid-column:1/-1}}@media (width<=700px){.app-layout{display:block}.sidebar{background:0 0;border:0;height:auto;padding:0;position:static}.topbar .brand{gap:8px;min-width:0}nav{z-index:5;padding:9px 14px max(12px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffffff5;border:1px solid #ffffffe6;border-bottom:0;border-radius:29px 29px 0 0;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 25px #11131808}nav a{border-radius:21px;flex-direction:column;justify-content:center;gap:5px;min-height:61px;padding:9px 2px;font-size:.72rem;font-weight:500}nav a .icon{width:24px;height:24px}.topbar{min-height:0;padding:max(17px, env(safe-area-inset-top)) 20px 6px;grid-template-columns:auto minmax(0,1fr);gap:8px 14px;display:grid}.vendor-avatar{border-width:2px;width:32px;height:32px}.vendor-avatar .icon{width:18px;height:18px}.vendor-identity{order:0;justify-self:end;gap:7px}.vendor-identity strong{font-size:.75rem}.account-role{font-size:.67rem}.account-menu{justify-self:end;max-width:100%}.account-menu>summary{gap:6px;padding:6px}.workspace{padding:9px 17px calc(105px + env(safe-area-inset-bottom))}.page-intro:not(.visually-hidden){padding:4px 3px 10px}.data-source{gap:6px 10px;margin-bottom:16px;padding:0 3px}.data-source span{font-size:.66rem}.live-source{margin-bottom:12px}.live-source strong{padding:4px 8px;font-size:.66rem}.live-source a{min-height:44px;font-size:.69rem}.scan-panel{border-radius:20px;padding:18px}.scan-heading h2{font-size:1.7rem}.scan-heading p{font-size:.78rem}.scan-stage{min-height:245px}.card-flow{min-height:calc(100dvh - 265px - env(safe-area-inset-bottom))}.brand-logo{width:116px}.scan-content{min-height:270px}.scan-frame{width:170px;height:124px}.scan-frame i{border-width:4px;width:30px;height:28px}.scan-glyph{width:47px;height:47px}.scanner-status{font-size:.66rem}.scan-options button{gap:7px;min-height:44px;font-size:.85rem}.scan-options .icon{width:17px;height:17px}.manual-lookup{margin-top:14px}.lookup-row input{font-size:1rem}.lookup-row button{gap:5px;padding:8px 10px;font-size:.69rem}.lookup-row button .icon{width:14px;height:14px}.loyalty-card{border-radius:18px;padding:20px}.card-heading{flex-wrap:wrap;gap:11px}.card-emblem{width:46px;height:46px}.card-emblem .icon{width:25px;height:25px}.card-title{min-width:150px}.card-heading h2{font-size:1.04rem}.card-heading code{font-size:.73rem}.card-heading .badge{margin-left:57px;font-size:.59rem}.stamp-summary{flex-wrap:wrap;gap:14px;margin:19px 0 16px}.stamp-balance{gap:3px}.stamp-balance strong{font-size:2.6rem}.stamp-balance span{font-size:.65rem}.stamp-track{flex-basis:100%;justify-content:start;gap:5px}.reward-label{border-radius:14px;gap:10px;margin-bottom:15px;padding:12px;font-size:.87rem}.reward-label>.icon:first-child{width:25px;height:25px}.flow-actions button{padding:10px 12px;font-size:.78rem}.management-panel{border-radius:24px;padding:22px 18px}.member-search{gap:13px 9px}.member-search input,.member-search select{font-size:.91rem}.member-row{gap:9px;padding:18px 0}.member-row strong{font-size:.83rem}.member-avatar{width:34px;height:34px;font-size:.64rem}.member-row code,.member-row small{font-size:.64rem}.member-chevron{display:none}.member-heading>div{min-width:0}.stats-grid{gap:12px}.stats-grid>div{border-radius:23px;padding:21px 19px}.stats-grid dd{font-size:2.05rem}.today-summary{font-size:.77rem}.sign-in-card{padding:28px 24px}input,select,button,summary{scroll-margin-block:100px}}@media (width<=360px){.topbar{column-gap:10px;padding-inline:14px}.topbar .brand{gap:6px}.workspace{padding-inline:12px}.vendor-avatar{width:28px;height:28px}.vendor-identity{gap:5px}.vendor-identity strong{font-size:.69rem}.account-role{font-size:.6rem}.scan-panel{padding-inline:16px}.scan-heading p{font-size:.72rem}.stamp-summary{flex-wrap:wrap}.stamp-track{flex-basis:100%}.stamp-track>span{max-width:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
