:root{--text:#333;--muted:#777;--bg:#f5f6f8;--card:#fff;--border:#e2e4e8;--accent:#1b5e20;--accent-soft:#e8f0e8;--danger:#c62828;--shadow:0 1px 3px #00000014;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font:16px/1.5 system-ui,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{min-height:100vh;margin:0}#root{max-width:640px;margin:0 auto;padding:16px}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;padding:16px}h1,h2{color:#111;margin:0 0 8px}h1{font-size:22px}h2{font-size:17px}.subtitle,.hint{color:var(--muted);font-size:14px}.reward-title{margin:4px 0 12px;font-size:18px;font-weight:600}.empty{color:var(--muted);text-align:center}.msg{color:var(--muted)}.banner{background:var(--accent-soft);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:8px 0;padding:10px 12px;font-size:14px;display:flex}.offline-banner{color:#7a5c00;text-align:center;background:#fff3cd;border:1px solid #ffe08a;border-radius:8px;margin:8px 0;padding:8px 12px;font-size:14px}.install-banner{background:var(--accent-soft);border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:8px 0;padding:8px 12px;font-size:14px;display:flex}input[type=email],input[type=password]{border:1px solid var(--border);border-radius:8px;width:100%;margin:6px 0;padding:11px 12px;font-size:16px}button{font:inherit;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:8px;padding:10px 16px}button.primary{background:var(--accent);color:#fff;border-color:var(--accent);width:100%;margin-top:6px}button.secondary{background:var(--accent-soft);border-color:var(--border);color:var(--accent)}button.ghost{color:var(--muted);background:0 0}button.link{color:var(--accent);background:0 0;border:none;padding:4px}button.row{text-align:left;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:4px 0;padding:12px;display:flex}button.row:hover{background:var(--accent-soft)}.auth-wrap{justify-content:center;padding-top:10vh;display:flex}.auth-card{text-align:center;width:100%;max-width:380px}.auth-card form{text-align:left}.auth-card .link{margin-top:12px}.google-btn{color:#333;border:1px solid var(--border);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:8px;padding:11px 16px;font-weight:500;display:flex}.google-btn:hover{background:#f7f7f7}.google-icon{color:#fff;background:#4285f4;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:13px;font-weight:700;display:inline-flex}.apple-btn{color:#fff;background:#000;border:1px solid #000;border-radius:8px;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:8px;padding:11px 16px;font-weight:500;display:flex}.apple-btn:hover{background:#1a1a1a}.apple-icon{font-size:18px;line-height:1}.divider{color:var(--muted);align-items:center;gap:10px;margin:14px 0 4px;font-size:13px;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.dashboard{flex-direction:column;gap:12px;display:flex}.topbar{justify-content:space-between;align-items:center;display:flex}.top-actions{gap:8px;display:flex}.navbar{background:var(--accent);color:#fff;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:8px 12px;display:flex}.navbar-links{gap:4px;display:flex}.nav-link{color:#ffffffd9;border-radius:6px;padding:6px 12px;font-size:14px;text-decoration:none}.nav-link:hover{background:#ffffff26}.nav-link.active{color:#fff;background:#ffffff40;font-weight:600}.navbar .link{color:#fff}.email-list{margin:0;padding-left:18px}.email-list li{margin:4px 0}.biz-header{cursor:pointer;background:0 0;border:none;align-items:center;gap:12px;padding:4px;display:flex}.biz-icon,.biz-icon-placeholder{object-fit:cover;border-radius:50%;width:44px;height:44px}.biz-icon-placeholder{background:var(--accent);color:#fff;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:inline-flex}.biz-name{color:#111;font-size:20px;font-weight:700}.biz-icon-preview{object-fit:cover;border-radius:50%;width:80px;height:80px;margin-top:4px}.row-thumb{object-fit:cover;border-radius:8px;flex-shrink:0;width:40px;height:40px}.settings-table{border-collapse:collapse;width:100%}.settings-table th,.settings-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 6px;font-size:14px}.settings-table th{color:var(--muted);font-weight:600}.identity{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.consent-list{flex-direction:column;gap:8px;display:flex}.consent-row{flex-wrap:wrap;gap:8px;display:flex}.segment{gap:8px;display:flex}.segment button{flex:1}.segment .segment-active{background:var(--accent);color:#fff;border-color:var(--accent)}.list{padding:8px}.biz-row{justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.row-main{flex-direction:column;display:flex}.row-title{color:#111;font-weight:600}.row-sub{color:var(--muted);font-size:13px}.toggle-label{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:flex}.overlay{z-index:20;background:#00000080;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.dialog{text-align:center;flex-direction:column;align-items:center;gap:8px;width:100%;max-width:400px;display:flex}.actions{flex-direction:column;gap:8px;display:flex}.row-cost{color:var(--accent);font-weight:600}.scanner-overlay{z-index:30;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.scanner-card{text-align:center;width:100%;max-width:420px}.scanner-view{border-radius:8px;width:100%;min-height:260px;margin:8px 0;overflow:hidden}.scanner-view video{width:100%}.reward-form{text-align:left;flex-direction:column;gap:10px;width:100%;display:flex}.reward-form label{color:var(--muted);flex-direction:column;gap:4px;font-size:14px;display:flex}.reward-form input[type=text],.reward-form input[type=date]{border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:16px}.checkbox-label{align-items:center;flex-direction:row!important;gap:8px!important}.stepper{align-items:center;gap:12px;display:flex}.stepper button{width:40px;height:40px;font-size:20px}.stepper span{text-align:center;min-width:24px;font-size:20px;font-weight:600}
