:root{--bg:#f4f8f6;--card:#fff;--card-soft:#f0f7f3;--line:#e3eae5;--line-strong:#d4ded8;--text:#0f1512;--muted:#5f6b64;--green:#0b7a4b;--green-dark:#075c38;--green-soft:#e7f6ee;--danger:#b42318;--danger-soft:#fdecea;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}h1{letter-spacing:-.03em;margin:0 0 1rem;font-size:1.7rem;font-weight:800}.brand{color:var(--text);letter-spacing:-.01em;align-items:center;gap:9px;margin:0 0 .45rem;font-size:1.05rem;font-weight:800;display:inline-flex}.brand-word:after{content:"";background:var(--green);border-radius:50%;width:7px;height:7px;margin-left:3px;display:inline-block}.brand-tag{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700}.muted{color:var(--muted)}.small{font-size:.8rem}.error{color:var(--danger);background:var(--danger-soft);border:1px solid #f6d5d1;border-radius:12px;margin:.9rem 0 0;padding:.7rem .9rem}.centered{place-items:center;min-height:100%;padding:2rem 1rem;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:2rem;box-shadow:0 1px 2px #0f15120a,0 12px 32px #0f15120f}.narrow{width:min(440px,100%)}.till{max-width:760px;margin:0 auto;padding:1.5rem 1rem 3rem}.topbar{color:#fff;background:#0f1512;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:1rem;margin:0 0 1.2rem;padding:1rem 1.25rem 1.1rem;display:flex}.topbar .brand{color:#fff}.topbar .brand-tag{color:#9fb8aa}.topbar .store{color:#fff}.topbar .muted{color:#a9beb2}.topbar .ghost.small{color:#eef5f0;border-color:#39514a}.topbar .ghost.small:hover:not(:disabled){border-color:var(--green);color:#fff;background:#0b7a4b59}.steps{flex-wrap:wrap;gap:.5rem;margin:0 .2rem 1.1rem;display:flex}.step{border:1.5px solid var(--line);background:var(--card);color:var(--muted);border-radius:999px;align-items:center;gap:.5rem;padding:.42rem .9rem .42rem .5rem;font-size:.82rem;font-weight:600;display:inline-flex}.stepnum{border:1.5px solid var(--line-strong);border-radius:50%;place-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;display:grid}.step.active{color:var(--green-dark);border-color:var(--green)}.step.active .stepnum{background:var(--green);border-color:var(--green);color:#fff}.step.done{background:var(--green-soft);border-color:var(--green-soft);color:var(--green-dark)}.step.done .stepnum{border-color:var(--green)}.store{letter-spacing:-.02em;margin:0;font-size:1.3rem;font-weight:800}.who{align-items:center;gap:.8rem;font-size:.85rem;display:flex}.tillcard{flex-direction:column;justify-content:center;min-height:340px;display:flex}label{color:var(--muted);margin:1.1rem 0 .45rem;font-size:.85rem;font-weight:600;display:block}input,select{width:100%;font:inherit;color:var(--text);background:var(--card);border:1.5px solid var(--line-strong);border-radius:14px;outline:none;padding:.9rem 1rem;font-size:1.05rem;transition:border-color .15s,box-shadow .15s}input::placeholder{color:#9aa5a0}input:focus,select:focus{border-color:var(--green);box-shadow:0 0 0 3px #0b7a4b24}.scaninput{letter-spacing:.05em;padding:1.15rem 1.1rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--green);margin:0 0 .45rem;font-size:.72rem;font-weight:700}.big{letter-spacing:-.03em;margin:.1rem 0 .3rem;font-size:2.6rem;font-weight:800}.primary,.ghost{font:inherit;cursor:pointer;border-radius:14px;transition:transform 50ms,background .15s,border-color .15s}.primary{color:#fff;background:var(--green);border:none;margin-top:1.2rem;padding:1rem 1.5rem;font-weight:700}.primary:hover:not(:disabled){background:var(--green-dark)}.primary:active:not(:disabled){transform:translateY(1px)}.primary:disabled{background:var(--green-soft);color:#688e7c;cursor:not-allowed}.ghost{color:var(--text);border:1.5px solid var(--line-strong);background:0 0;margin-top:.8rem;padding:.75rem 1.15rem}.ghost:hover:not(:disabled){border-color:var(--green);color:var(--green-dark);background:#fbfdfc}.ghost.small{border-radius:10px;margin-top:0;padding:.45rem .85rem;font-size:.8rem}.preview{min-height:1.5rem;color:var(--green-dark);margin:.9rem 0 0;font-weight:600}.preview.error{color:var(--danger);background:0 0;border:none;padding:0}.actions{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.secret{letter-spacing:.14em;color:var(--text);background:var(--card-soft);border:1.5px dashed var(--line-strong);word-break:break-all;border-radius:12px;padding:.9rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1.15rem}.uri{color:var(--muted);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.choices{gap:.6rem;margin:.5rem 0 1rem;padding:0;list-style:none;display:grid}.choice{text-align:left;width:100%;font:inherit;color:var(--text);background:var(--card);border:1.5px solid var(--line);cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.15rem;font-weight:600;transition:border-color .15s,background .15s;display:flex}.choice:hover{border-color:var(--green);background:#fbfdfc}.result{text-align:center;background:var(--green-soft);border-radius:18px;padding:1.6rem 1rem 1.7rem}.result .big{color:var(--green-dark)}.resultmark{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:64px;height:64px;margin:0 auto .7rem;font-size:1.7rem;font-weight:800;display:grid}.result .primary{margin-top:1.6rem}.money{background:var(--card);border:1.5px solid var(--line-strong);border-radius:14px;align-items:center;gap:.55rem;padding:0 1.1rem;transition:border-color .15s,box-shadow .15s;display:flex}.money:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #0b7a4b24}.money-euro{color:var(--muted);font-size:1.35rem;font-weight:700}.money input{letter-spacing:-.02em;border:none;flex:1;width:auto;min-width:0;padding:.95rem 0;font-size:1.7rem;font-weight:700}.money input:focus{box-shadow:none;border:none}.earn{background:var(--green-soft);border-radius:16px;margin:1.05rem 0 .2rem;padding:1rem 1.25rem 1.1rem}.earn .big{color:var(--green-dark);margin:0}.earnunit{letter-spacing:0;font-size:1rem;font-weight:700}.earnsub{color:#34654e;margin:.3rem 0 0;font-size:.9rem;font-weight:600}@media (width<=560px){.topbar{flex-direction:column}.big{font-size:2rem}.scaninput{font-size:1.2rem}}.idlewarn{z-index:5;text-align:center;color:#7a5c00;background:#fdf3d8;border-bottom:1px solid #e8d49a;margin:0;padding:10px 16px;font-weight:600;position:sticky;top:0}.tillcard.flash-ok{animation:.9s ease-out scanflash}@keyframes scanflash{0%{box-shadow:0 0 0 3px var(--green)}to{box-shadow:0 0 #0000}}.cam{flex-direction:column;align-items:center;gap:12px;display:flex}.camzone{border:1px solid var(--line-strong);background:#0f1512;border-radius:12px;width:min(320px,100%);min-height:240px;overflow:hidden}.breakdown{text-align:left;background:var(--green-soft);color:var(--green-dark);border-radius:8px;margin:8px 0 0;padding:8px 12px;font-size:.85rem;list-style:none}.breakdown li{padding:2px 0}.recent{border-top:1px dashed var(--line-strong);text-align:left;margin-top:18px;padding-top:12px}.recentline{align-items:baseline;gap:10px;margin:2px 0;display:flex}.recenttime{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.85rem}.recentname{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.recentpoints{color:var(--green-dark);font-weight:700}.helpline{text-align:center;margin-top:14px}.rewards{text-align:left;margin-top:14px}.rewardrow{flex-wrap:wrap;gap:8px;display:flex}.rewardbtn{border:1px solid var(--line-strong);background:var(--card);color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:8px 14px;font-size:.9rem;font-weight:600}.rewardbtn.on{border-color:var(--green);background:var(--green-soft);color:var(--green-dark)}.rewardbtn:disabled{opacity:.45;cursor:not-allowed}.discount{text-align:left;margin-top:14px}.discountrow{gap:8px;display:flex}.discountrow input{flex:1}.splash{z-index:60;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex;position:fixed;inset:0}.splash-leaving{animation:.26s ease-in forwards splash-fade}@keyframes splash-fade{to{opacity:0}}.splash-row{align-items:baseline;display:flex}.splash-letter{letter-spacing:-.02em;color:var(--text);opacity:0;font-size:3rem;font-weight:800;animation:.43s cubic-bezier(.22,1,.36,1) forwards splash-rise}@keyframes splash-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.splash-dot{background:var(--green);opacity:0;border-radius:50%;width:14px;height:14px;margin-left:6px;animation:.42s cubic-bezier(.22,1,.36,1) .5s forwards splash-pop;transform:scale(.2)}@keyframes splash-pop{to{opacity:1;transform:scale(1)}}.splash-tagline{color:var(--muted);opacity:0;margin:0;font-weight:600;animation:.3s ease-out .88s forwards splash-tag;transform:translateY(8px)}@keyframes splash-tag{to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.splash-letter,.splash-dot,.splash-tagline{animation-duration:1ms!important;animation-delay:0s!important}}.who{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.statuschip{color:#dbe8e1;white-space:nowrap;background:#ffffff0d;border:1px solid #39514a;border-radius:999px;align-items:center;gap:7px;padding:4px 10px;font-size:.78rem;font-weight:600;display:inline-flex}.statusdot{background:#6ee7a8;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #6ee7a82e}.statuschip.offline{color:#f4d9a6;border-color:#5c4a28}.statuschip.offline .statusdot{background:#e0a33a;box-shadow:0 0 0 3px #e0a33a2e}.rewardprogress{margin:4px 0 14px}.segbar{gap:3px;height:8px;margin-bottom:6px;display:flex}.segbar span{background:var(--line-strong);border-radius:2px;flex:1}.segbar span.on{background:var(--green)}.rewardprogress .small{margin:0;font-size:.82rem}@media (width<=560px){.whoemail{display:none}}.preview.hint{color:var(--muted);font-weight:500}
