/* Програма лоялен клиент — in-app overlay (същия модел като
   weekly-menu-overlay.css: статичен fixed фон + отделен вътрешен скрол
   слой, вместо навигация към отделна страница). Old standalone страница
   /menu/loyalty_rewards_view.php остава непроменена и достъпна като
   резервен вариант — не е изтрита. Всеки селектор е scoped под
   #loyaltyOverlay с префикс ly- за да не се сблъска с генеричните имена
   на класове от оригиналната страница (.reward-card, .track-block, ...). */

#loyaltyOverlay{
  --ly-bg1:#07163d;
  --ly-bg2:#04102a;
  --ly-panel:rgba(8,24,63,.72);
  --ly-panel-strong:rgba(8,24,63,.86);
  --ly-line:rgba(255,255,255,.10);
  --ly-muted:rgba(255,255,255,.75);
  --ly-gold:#f4d65d;
  --ly-blue:#3b6cff;
  --ly-blue2:#1d47be;
  --ly-cardtext:#16305d;
  --ly-shadow:0 18px 50px rgba(0,0,0,.30);
  --ly-container:760px;

  display:none;
  position:fixed;
  inset:0;
  z-index:100002;
  font-family:'Montserrat', Arial, sans-serif;
  color:#fff;
  background:
    linear-gradient(rgba(4,12,32,.46), rgba(4,12,32,.78)),
    linear-gradient(180deg,var(--ly-bg1) 0%, var(--ly-bg2) 100%);
}
#loyaltyOverlay.open{ display:block; }
#loyaltyOverlay *{ box-sizing:border-box; }

/* Скролва само този вътрешен слой, не #loyaltyOverlay самият — вижте
   mobile_scroll_jank_fixed_bg паметта: fixed елемент, който е и собствен
   overflow:auto контейнер, се композира по-тежко в Android WebView. */
#loyaltyOverlay .ly-scroll{
  position:absolute;
  inset:0;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
}

#loyaltyOverlay .ly-app{
  width:100%;
  max-width:var(--ly-container);
  margin:0 auto;
  padding:12px 14px calc(26px + env(safe-area-inset-bottom, 0px));
}
#loyaltyOverlay .ly-topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:34px;margin-bottom:14px}
#loyaltyOverlay .ly-top-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border:none;border-radius:999px;text-decoration:none;cursor:pointer;font-family:inherit;font-size:14px;font-weight:800;color:#fff;background:linear-gradient(180deg,rgba(44,73,160,.95) 0%, rgba(18,40,92,.95) 100%);box-shadow:0 8px 20px rgba(0,0,0,.22)}
#loyaltyOverlay .ly-title{margin:2px 0 0;text-align:center;font-size:30px;line-height:1.05;font-weight:900}
#loyaltyOverlay .ly-subtitle{text-align:center;font-size:14px;color:var(--ly-muted);margin-top:6px;margin-bottom:18px}
#loyaltyOverlay .ly-field{margin:14px 0}
#loyaltyOverlay .ly-field label{display:block;font-size:12px;font-weight:900;text-transform:uppercase;color:var(--ly-muted);margin-bottom:6px}
#loyaltyOverlay .ly-field input{width:100%;min-height:48px;border-radius:14px;border:2px solid var(--ly-line);padding:0 14px;font-size:16px;font-weight:700;color:#17345f;background:#fff}
#loyaltyOverlay .ly-login-card{background:var(--ly-panel-strong);border:1px solid var(--ly-line);border-radius:24px;padding:20px;box-shadow:var(--ly-shadow)}
#loyaltyOverlay .ly-login-btn{width:100%;min-height:50px;border:none;border-radius:16px;font-weight:900;font-size:15px;color:#241600;background:linear-gradient(180deg,var(--ly-gold),#e0b73f);cursor:pointer;margin-top:8px}
#loyaltyOverlay .ly-err{color:#ff8080;font-weight:800;font-size:13px;margin-top:10px;display:none}
#loyaltyOverlay .ly-stat-card{background:var(--ly-panel-strong);border:1px solid var(--ly-line);border-radius:24px;padding:22px;text-align:center;box-shadow:var(--ly-shadow);margin-bottom:18px}
#loyaltyOverlay .ly-stat-num{font-size:52px;font-weight:900;color:var(--ly-gold);line-height:1}
#loyaltyOverlay .ly-stat-label{font-size:13px;color:var(--ly-muted);font-weight:800;margin-top:6px;text-transform:uppercase}
#loyaltyOverlay .ly-section-title{font-size:16px;font-weight:900;color:var(--ly-gold);margin:22px 0 10px}
#loyaltyOverlay .ly-track-block{margin-bottom:8px}
#loyaltyOverlay .ly-track-title{font-size:15px;font-weight:900;color:#fff;margin:0 0 8px;text-align:center}
#loyaltyOverlay .ly-reward-card{display:flex;gap:12px;align-items:center;padding:14px;margin-bottom:10px;border-radius:20px;background:linear-gradient(180deg,#fbfcff 0%, #f1f5ff 100%);color:var(--ly-cardtext);box-shadow:0 10px 24px rgba(0,0,0,.12);cursor:pointer}
#loyaltyOverlay .ly-reward-img{width:60px;height:60px;border-radius:14px;object-fit:cover;background:#e3e9fb;flex-shrink:0}
#loyaltyOverlay .ly-reward-info{flex:1;min-width:0}
#loyaltyOverlay .ly-reward-name{font-size:15px;font-weight:900;line-height:1.2}
#loyaltyOverlay .ly-reward-meta{font-size:12px;color:#5870a6;margin-top:3px;font-weight:700}
#loyaltyOverlay .ly-reward-code{font-size:26px;font-weight:900;letter-spacing:6px;color:#17398a}
#loyaltyOverlay .ly-roadmap-card{display:flex;gap:12px;align-items:center;padding:12px 14px;margin-bottom:10px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--ly-line);cursor:pointer}
#loyaltyOverlay .ly-roadmap-card.done{border-color:rgba(74,222,128,.5);background:rgba(74,222,128,.08)}
#loyaltyOverlay .ly-roadmap-img{width:44px;height:44px;border-radius:12px;object-fit:cover;background:rgba(255,255,255,.1);flex-shrink:0}
#loyaltyOverlay .ly-roadmap-info{flex:1;min-width:0}
#loyaltyOverlay .ly-roadmap-name{font-size:14px;font-weight:800}
#loyaltyOverlay .ly-roadmap-meta{font-size:12px;color:var(--ly-muted);margin-top:2px}
#loyaltyOverlay .ly-roadmap-badge{font-size:11px;font-weight:900;padding:5px 10px;border-radius:999px;white-space:nowrap}
#loyaltyOverlay .ly-roadmap-badge.done{background:rgba(74,222,128,.2);color:#4ade80}
#loyaltyOverlay .ly-roadmap-badge.upcoming{background:rgba(255,255,255,.1);color:var(--ly-muted)}
#loyaltyOverlay .ly-empty{padding:22px 14px;border-radius:18px;text-align:center;background:rgba(255,255,255,.06);border:1px dashed rgba(255,255,255,.14);color:var(--ly-muted);font-weight:700}
#loyaltyOverlay #lyContent{display:none}

#loyaltyOverlay .ly-popup-overlay{display:none;position:fixed;inset:0;z-index:100005;background:rgba(2,6,23,.82);align-items:center;justify-content:center;padding:20px}
#loyaltyOverlay .ly-popup-overlay.show{display:flex}
#loyaltyOverlay .ly-popup-box{width:100%;max-width:420px;background:linear-gradient(180deg,#fbfcff 0%, #f1f5ff 100%);border-radius:28px;padding:30px 22px 26px;text-align:center;box-shadow:0 30px 80px rgba(0,0,0,.4);position:relative;color:var(--ly-cardtext)}
#loyaltyOverlay .ly-popup-close{position:absolute;top:14px;right:14px;width:40px;height:40px;border:none;border-radius:50%;background:#eef3ff;color:#17398a;font-size:20px;font-weight:900;cursor:pointer;line-height:1}
#loyaltyOverlay .ly-popup-img{width:100%;max-width:260px;aspect-ratio:1;object-fit:cover;border-radius:24px;margin:0 auto 18px;display:block;background:#e3e9fb;box-shadow:0 14px 30px rgba(0,0,0,.18)}
#loyaltyOverlay .ly-popup-name{font-size:22px;font-weight:900;margin-bottom:6px}
#loyaltyOverlay .ly-popup-meta{font-size:14px;color:#5870a6;font-weight:700}
#loyaltyOverlay .ly-popup-code{font-size:40px;font-weight:900;letter-spacing:8px;color:#17398a;margin-top:16px}
#loyaltyOverlay .ly-popup-badge{display:inline-block;margin-top:16px;font-size:13px;font-weight:900;padding:8px 20px;border-radius:999px}
#loyaltyOverlay .ly-popup-badge.done{background:rgba(74,222,128,.25);color:#166534}
#loyaltyOverlay .ly-popup-badge.upcoming{background:#eef3ff;color:#17398a}
