html{touch-action:manipulation}
/* Karta hosťa = jeho Wallet karta (Firm::walletLook): predná strana ako v Apple Wallet vo farbách --bg/--fg/--lb,
   pod ňou stav a odmeny na bielych paneloch, tlačidlá vo farbe --accent. */
.lc{
  --bg:#1f6f5c; --fg:#fff; --lb:rgba(255,255,255,.75); --accent:#1f6f5c; --on-accent:#fff;
  --ink:#14171a; --muted:#6b726f; --line:#e4e7e3; --panel:#f3f4f6; --r:16px;
  --stamp-fill:var(--accent); --stamp-ink:var(--on-accent);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue","Inter",system-ui,sans-serif; color:var(--ink);
  max-width:400px; margin:0 auto;
}

/* predná strana karty (store card) */
.lc-card{position:relative;overflow:hidden;border-radius:14px;background:var(--bg);color:var(--fg);box-shadow:0 1px 1px rgba(0,0,0,.08),0 18px 40px -18px rgba(0,0,0,.45)}
.lc-head{display:flex;align-items:center;gap:10px;min-height:56px;padding:12px 14px 10px}
.lc-logo,.lc-mark{width:32px;height:32px;flex:none;border-radius:50%}
.lc-logo{object-fit:cover;background:#fff}
.lc-mark{display:grid;place-items:center;font-weight:700;font-size:15px;background:var(--fg);color:var(--bg)}
.lc-word{flex:1;min-width:0;font-size:19px;font-weight:400;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lc-hf{flex:none;text-align:right}
.lc-lbl{display:block;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--lb);line-height:1.3}
.lc-val{display:block;font-size:17px;line-height:1.2;color:var(--fg)}
.lc-hf .lc-val{font-size:20px;font-variant-numeric:tabular-nums}
.lc-strip img{display:block;width:100%;height:auto}
.lc-strip.lc-glow{animation:lc-glow 1.2s ease}
@keyframes lc-glow{30%{filter:brightness(1.18) saturate(1.2)}}
/* kým podnik nemá uloženú Wallet kartu: pečiatky ako krúžky */
.lc-strip-dots{padding:14px 16px;background:color-mix(in srgb,var(--fg) 8%,var(--bg))}
.lc-stamps{display:grid;gap:10px;justify-items:center}
.lc-stamp{width:100%;max-width:44px;aspect-ratio:1;border-radius:50%;border:2px dashed color-mix(in srgb,var(--fg) 45%,transparent);display:grid;place-items:center;color:color-mix(in srgb,var(--fg) 45%,transparent);transition:background .25s,border-color .25s}
.lc-stamp.on{border:2px solid var(--fg);background:var(--fg);color:var(--bg)}
.lc-stamp .ic{display:none;width:56%;height:56%}
/* body: postup k ďalšej odmene */
.lc-strip-points{display:grid;gap:3px;padding:14px 16px 16px;background:color-mix(in srgb,var(--fg) 8%,var(--bg))}
.lc-strip-points b{font-size:20px;font-weight:600;line-height:1.2}
.lc-strip-points small{font-size:12.5px;color:var(--lb);font-variant-numeric:tabular-nums}
.lc-pts{padding:14px 16px 16px;background:color-mix(in srgb,var(--fg) 8%,var(--bg))}
.lc-pts-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.lc-pts-num{font-size:34px;font-weight:700;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.lc-pts-num small{margin-left:7px;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--lb)}
.lc-pts-left{font-size:13px;font-weight:600;color:var(--lb);text-align:right}
.lc-pts-goal{margin:8px 0 0;font-size:13px;line-height:1.35}
.lc-pts-goal span{color:var(--lb);font-variant-numeric:tabular-nums}
.lc-progress{height:8px;margin:12px 0 0;border-radius:999px;background:color-mix(in srgb,var(--fg) 18%,transparent);overflow:hidden}
.lc-progress i{display:block;height:100%;border-radius:999px;background:var(--fg)}
.lc-fields{display:flex;justify-content:space-between;gap:12px;padding:10px 14px 0}
.lc-fields>div{min-width:0}
.lc-fields .r{text-align:right}
.lc-fields .lc-val{font-size:15.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lc-code{display:grid;justify-items:center;gap:8px;padding:18px 0 16px}
.lc-qrbox{background:#fff;border-radius:10px;padding:10px}
.lc-qr{display:block;width:180px;height:180px}
.lc-hint{margin:0;font-size:12.5px;color:var(--lb)}
.lc-tagline{margin:0;padding:12px 16px 14px;border-top:1px solid color-mix(in srgb,var(--fg) 14%,transparent);font-size:13.5px;line-height:1.4;color:var(--lb);text-align:center}

/* pod kartou: stav, platnosť, úroveň a termíny odmien */
.lc-info{display:grid;gap:8px;margin-top:12px}
.lc-status{display:flex;align-items:center;gap:12px;margin:0;padding:12px 14px;border-radius:var(--r);background:#fff;border:1px solid var(--line);text-align:left;font-size:13px;line-height:1.35;color:var(--muted)}
.lc-status b{display:block;font-size:15.5px;color:var(--ink)}
.lc-status-ic,.lc-status-num{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:19px;background:var(--stamp-fill);color:var(--stamp-ink)}
.lc-status.is-ready{background:#1c8a4f;border-color:#1c8a4f;color:rgba(255,255,255,.85)}
.lc-status.is-ready b{color:#fff}
.lc-status.is-ready .lc-status-ic{background:rgba(255,255,255,.2);color:#fff}

.lc-offers{margin-top:20px}
.lc-offers h2{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;margin:18px 4px 8px;font-family:inherit;color:#6b726f}
.lc-offers h2:first-of-type{margin-top:0}
.lc-offers ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lc-offers li{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;color:#14171a;border:1px solid #e4e7e3;border-radius:var(--r);padding:12px 14px;text-align:left}
.lc-offers li.ready{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}
.lc-offers b{display:block;font-size:14.5px}
.lc-offers em{font-style:normal;font-size:10.5px;font-weight:700;color:#c8553d;text-transform:uppercase;letter-spacing:.05em}
.lc-offers small{display:block;color:#6b726f;font-size:12.5px}
.lc-offers span{white-space:nowrap;font-weight:600;font-size:14px}
.lc[data-offers=off] .lc-offers .lc-more{display:none}
.lc[data-offers=off] .lc-offers:not(:has(li.ready)){display:none}
.lc-offer-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex:none}
.lc-offer-side form{margin:0}
.lc-offer-side small{color:#6b726f;font-size:12px;font-weight:400}
.lc-btn{font:600 13px/1 "Inter",system-ui,sans-serif;padding:8px 12px;border-radius:999px;border:0;background:var(--accent);color:var(--on-accent);cursor:pointer;white-space:nowrap}
.lc-btn-ghost{background:#fff;color:#14171a;border:1px solid #d6dad4}
.lc-offers li.chosen{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}
.lc-choice{display:flex;gap:12px;align-items:center;text-align:left;margin:14px 0 0;padding:12px 14px;border-radius:var(--r);background:#1c8a4f;color:#fff;font-size:13px;line-height:1.4}
.lc-choice b{display:block;font-size:15px}
.lc-choice-ic{width:30px;height:30px;flex:none;border-radius:50%;background:rgba(255,255,255,.22);display:grid;place-items:center;font-weight:700}
.lc-flash{margin:0 0 10px;padding:10px 12px;border-radius:12px;background:#eaf6ee;color:#145c2b;font:500 13.5px/1.4 "Inter",system-ui,sans-serif}
.lc-flash-err{background:#fdf0f0;color:#8f2323}

/* stránka s kartou: svetlé pozadie ako aplikácia Wallet */
.lc-page{min-height:100vh;margin:0;padding:20px 16px 40px;background:#f2f2f7}
.lc-gwallet{display:flex;align-items:center;justify-content:center;gap:10px;max-width:400px;margin:16px auto 0;padding:13px 18px;border-radius:999px;background:#1f1f1f;color:#fff;font:600 15px/1.2 "Inter",system-ui,sans-serif;text-decoration:none}
.lc-gwallet[hidden]{display:none}
.lc-wallets{display:grid;gap:10px;margin:16px 0 0}
.lc-wallets .aw-btn,.lc-wallets .gw-btn{display:flex;justify-content:center;margin:0}
.aw-btn img{display:block;height:48px;width:auto}
html.ua-noapple .lc-wallets .aw-btn,html.ua-ios .lc-wallets .gw-btn{display:none}
.lc-gwallet svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.lc-tip{max-width:400px;margin:18px auto 0;font:13px/1.5 "Inter",system-ui,sans-serif;color:#6b726f;text-align:center}
.lc-vouchers{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:10px 14px;border-radius:var(--r);background:var(--panel);text-align:left}
.lc-vouchers b{min-width:40px;height:40px;padding:0 8px;border-radius:999px;display:grid;place-items:center;background:var(--stamp-fill);color:var(--stamp-ink);font-size:20px}
.lc-vouchers span{font-weight:600;font-size:15px;line-height:1.3}
.lc-vouchers small{display:block;font-weight:400;font-size:12.5px;color:var(--muted)}

.lc-offers .lc-offer-icon{display:grid;place-items:center;flex:none;width:52px;height:52px;border-radius:12px;background:#f4f5f2;font-size:34px;line-height:1}
.lc-offer-main{flex:1;min-width:0}

.lc-offers li:not(.ready) .lc-offer-icon{filter:grayscale(.6);opacity:.75}
.lc-offers .lc-miss{color:#8a918e;font-weight:600}
.lc-toast{position:fixed;left:50%;top:max(16px,env(safe-area-inset-top));transform:translateX(-50%);z-index:30;padding:12px 18px;border-radius:999px;background:#1c8a4f;color:#fff;font:700 15px/1.2 "Inter",system-ui,sans-serif;box-shadow:0 10px 30px rgba(0,0,0,.25);animation:lc-toast 3.2s ease forwards;white-space:nowrap}
@keyframes lc-toast{0%{opacity:0;transform:translate(-50%,-12px)}10%,85%{opacity:1;transform:translate(-50%,0)}100%{opacity:0;transform:translate(-50%,-12px)}}
.lc-stamp.pop{animation:lc-pop .6s ease}
@keyframes lc-pop{0%{transform:scale(.4)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.lc-toast,.lc-stamp.pop,.lc-strip.lc-glow{animation:none}}

.lc-deadlines{list-style:none;margin:0;padding:0;display:grid;gap:6px;text-align:left}
.lc-deadlines li{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:baseline;padding:10px 14px;border-radius:var(--r);background:#fff;border:1px solid var(--line);font-size:13px;color:var(--muted)}
.lc-deadlines li span{grid-row:span 2;font-weight:600;color:var(--ink)}
.lc-deadlines b{color:var(--ink);font-size:14.5px;text-align:right}
.lc-deadlines small{text-align:right;font-size:12.5px}
.lc-deadlines li.soon{background:#fdecea;border-color:#f5c9c4;color:#a3302a}
.lc-deadlines li.soon b,.lc-deadlines li.soon span{color:#a3302a}

/* narodeniny */
.lc-gift{background:#fdf0e0;border-color:#f3dcbd;color:#7a4410}.lc-gift b{color:#5c300a}
.lc-bday{max-width:400px;margin:16px auto 0;padding:16px 18px;border-radius:18px;background:#fff;border:1px solid #e4e7e3;font:14px/1.45 "Inter",system-ui,sans-serif;color:#14171a}
.lc-bday h2{margin:0 0 4px;font-size:16px}
.lc-bday p{margin:0 0 12px;color:#4d5552}
.lc-bday form{display:grid;gap:10px}
.lc-bday small{color:#6b726f;font-size:12.5px}
.lc-bday-row{display:grid;grid-template-columns:1fr 1.6fr;gap:8px}
.lc-bday select{font:inherit;font-size:16px;padding:11px 12px;border:1.5px solid #dde3e1;border-radius:12px;background:#fafbfb;color:inherit;width:100%}
.lc-bday-check{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:#4d5955;cursor:pointer}
.lc-bday-check input{width:19px;height:19px;margin:1px 0 0;accent-color:var(--accent);flex:none}
.lc-bday .lc-btn{justify-self:start;padding:11px 16px;font-size:14px}
.lc-bday-err{margin:0;color:#c0392b;font-weight:600;font-size:13px}
.lc-bday-mail{display:flex!important;align-items:center;justify-content:space-between;gap:10px;color:#4d5552;font-size:13px}
.lc-bday-mail .lc-btn{padding:8px 12px;font-size:13px}
.lc-share-row{display:flex;gap:8px}
.lc-share-row input{flex:1;min-width:0;font:13px/1.2 "Inter",system-ui,sans-serif;padding:10px 12px;border:1.5px solid #dde3e1;border-radius:12px;background:#fafbfb;color:inherit}
.lc-share small{display:block;margin-top:8px}
.lc-bonus{background:#fff6d6;border-color:#f1e2a6;color:#6b4e00}.lc-bonus b{color:#4a3500}
.lc-bonus-soon{color:#6b726f}
.lc-offer-group+.lc-offer-group h2{margin-top:18px}
.lc-contest-bar{height:10px;border-radius:99px;background:#eef0ec;overflow:hidden;margin-bottom:6px}.lc-contest-bar i{display:block;height:100%;border-radius:99px;background:var(--accent)}
.lc-stars{display:flex!important;gap:6px}
.lc-stars button{flex:1;font-size:30px;line-height:1;padding:8px 0;border:1px solid #e4e7e3;border-radius:12px;background:#fafbfb;color:#c9cec9;cursor:pointer;transition:color .15s,transform .15s}
.lc-stars:has(button:hover) button{color:var(--accent)}
.lc-stars button:hover~button{color:#c9cec9}
.lc-stars button:active{transform:scale(.92)}
.lc-feedback textarea{font:inherit;font-size:16px;padding:11px 12px;border:1.5px solid #dde3e1;border-radius:12px;background:#fafbfb;color:inherit;width:100%;box-sizing:border-box;resize:vertical}
.lc-feedback a.lc-btn{display:inline-block;text-decoration:none;padding:11px 16px;font-size:14px}
/* úroveň členstva */
.lc-tier .lc-status-ic{color:#b8860b}
.lc-tier[data-tier="0"] .lc-status-ic{color:var(--muted)}
.lc-tier-bar{display:block;height:5px;margin-top:8px;border-radius:9px;background:rgba(127,127,127,.2);overflow:hidden}
.lc-tier-bar i{display:block;height:100%;background:#d4a017;border-radius:9px}
/* platnosť zostatku */
.lc-expiry{margin:0;padding:0 4px;font-size:12px;color:var(--muted);text-align:left}
.lc-expiry.soon{padding:10px 12px;border-radius:var(--r);background:#fdecea;color:#9b2c24;font-weight:600}

/* dotykové zariadenia: polia aspoň 16 px, inak iPhone pri ťuknutí priblíži stránku */
@media (pointer:coarse){.lc-share-row input{font-size:16px}}

/* oficiálne tlačidlo „Pridať do Google Wallet“: nemeniť farbu ani pomer, výška aspoň 48 px, okolo 8 px voľna */
.gw-btn{display:flex;justify-content:center;margin:16px auto 0;padding:0}
.gw-btn[hidden]{display:none}
.gw-btn img{display:block;height:48px;width:auto;max-width:100%}
