:root{
  --bg:#eef4fb; --card:#ffffff; --ink:#16233f; --muted:#7385a3;
  --line:#e2ebf7; --accent:#1877ff; --accent-soft:#e8f1ff;
  --sale:#14245e; --ok:#10b981;
  --navy:#14245e; --azure:#2e90fa; --azure-deep:#1466e0;
  --glass:rgba(255,255,255,.64); --glass-brd:rgba(255,255,255,.75);
  --radius:22px; --shadow:0 10px 30px rgba(23,80,180,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;letter-spacing:0}

/* ---------- top bar ---------- */
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px 34px;background:rgba(255,255,255,.85);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}
.logo{width:38px;height:38px;border-radius:11px;object-fit:cover;display:block;
  box-shadow:0 2px 6px rgba(47,107,255,.28)}
.brand h1{margin:0;font-size:19px;font-weight:800;letter-spacing:0}
.brand p{margin:1px 0 0;font-size:11.5px;color:var(--muted);font-weight:600}
.topbar-right{display:flex;align-items:center;gap:10px}
.timer{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);
  background:var(--bg);border:1px solid var(--line);padding:8px 13px;border-radius:999px}
.timer b{color:var(--ink);font-variant-numeric:tabular-nums;min-width:36px}
.timer .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(16,185,129,.45)}70%{box-shadow:0 0 0 7px rgba(16,185,129,0)}100%{box-shadow:0 0 0 0 rgba(16,185,129,0)}}
.btn-refresh{border:1px solid var(--line);background:#fff;color:var(--ink);
  padding:9px 16px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;transition:.15s}
.btn-refresh:hover{background:var(--ink);color:#fff;border-color:var(--ink)}

/* ---------- controls ---------- */
.controls{padding:28px 34px 4px;max-width:1280px;margin:0 auto}
.searchwrap{display:flex;gap:10px;margin-bottom:20px}
.searchwrap input{flex:1;padding:15px 20px;border:1px solid var(--line);border-radius:999px;
  font-size:15px;background:#fff;outline:none;transition:.15s}
.searchwrap input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.btn-primary{padding:0 26px;border:0;border-radius:999px;background:var(--ink);color:#fff;
  font-size:14px;font-weight:700;cursor:pointer;transition:.15s}
.btn-primary:hover{background:var(--accent)}

.filters{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{padding:8px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;
  font-size:12.5px;cursor:pointer;user-select:none;transition:.14s;color:var(--muted);font-weight:600}
.chip:hover{color:var(--ink);border-color:#d7dae2}
.chip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
/* coming-soon store: disabled, not clickable */
.chip.soon{cursor:not-allowed;background:#fffaf0;color:#8a6d1a;
  border-style:dashed;border-color:#f0d68a;display:inline-flex;align-items:center;gap:6px}
.chip.soon:hover{color:#8a6d1a;border-color:#f0d68a}
.chip .soon-tag{font-size:9px;font-weight:800;letter-spacing:.05em;
  background:linear-gradient(135deg,#ffca28,#ff9e00);color:#5a3d00;padding:2px 7px;border-radius:6px}
.chip.soon .soon-badge{background:#e6ebf5;color:#5a6b8c;background-image:none}
/* selectable premium store (Kuripot members): normal chip + gold KURIPOT tag */
.chip.premium{display:inline-flex;align-items:center;gap:6px}
.slider,.sort{font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:8px}
.slider b{color:var(--ink)}
.slider input[type=range]{accent-color:var(--accent)}
.sort select{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-size:12.5px}
.toggle{padding:8px 15px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);
  font-size:12.5px;font-weight:600;cursor:pointer;transition:.14s}
.toggle:hover{color:var(--ink);border-color:#d7dae2}
.toggle[aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}
.chips.cats{margin-top:16px}
.chip.cat b{opacity:.5;margin-left:3px;font-weight:700}
.chip em{font-style:normal;font-size:9px;background:#fff3d6;color:#a76b00;padding:2px 6px;border-radius:6px;margin-left:6px}
.chip.on em{background:rgba(255,255,255,.22);color:#fff}

/* ---------- stats ---------- */
.stats{display:flex;flex-wrap:wrap;gap:12px;max-width:1280px;margin:22px auto 0;padding:0 34px}
.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 20px;min-width:112px}
.stat .n{font-size:24px;font-weight:800;letter-spacing:0}
.stat .l{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-top:3px}

/* ---------- grid + cards ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:22px;
  max-width:1280px;margin:24px auto 60px;padding:0 34px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
  display:flex;flex-direction:column;box-shadow:0 1px 2px rgba(20,22,30,.03);
  transition:transform .22s cubic-bezier(.2,.7,.3,1),box-shadow .22s,border-color .22s}
.card:hover{transform:translateY(-6px);box-shadow:0 6px 14px rgba(20,22,30,.07),0 20px 40px rgba(20,22,30,.09);border-color:#e2e4ea}
.thumb{position:relative;aspect-ratio:1;background:linear-gradient(135deg,#f7f8fa,#eef0f4);overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.2,.7,.3,1)}
.card:hover .thumb img{transform:scale(1.055)}
.thumb .noimg{display:flex;align-items:center;justify-content:center;height:100%;color:#d5d8e0;font-size:38px}
/* corner badges */
.badge{position:absolute;top:11px;left:11px;background:var(--sale);color:#fff;
  font-size:11px;font-weight:800;padding:5px 10px;border-radius:8px;letter-spacing:.02em;
  box-shadow:0 2px 6px rgba(20,22,30,.18);backdrop-filter:blur(2px)}
.badge.new{background:linear-gradient(135deg,#2f6bff,#4f82ff)}
.badge.soon{background:linear-gradient(135deg,#7a5cff,#9277ff);letter-spacing:.04em}
.badge.pre{background:linear-gradient(135deg,#e0475f,#f0637a);letter-spacing:.04em}
.badge.sold{background:linear-gradient(135deg,#8a94a6,#6b7688);letter-spacing:.04em}
.now.soon-price{font-size:13.5px;font-weight:800;color:#7a5cff;letter-spacing:.01em}
.view.soon{background:linear-gradient(135deg,#7a5cff,#8f74ff)}
.view.soon:hover{background:#634bde}
.countdown{position:absolute;bottom:0;left:0;right:0;
  background:linear-gradient(0deg,rgba(21,23,28,.92),rgba(21,23,28,.62));color:#fff;
  font-size:11.5px;font-weight:700;text-align:center;padding:8px 6px;letter-spacing:.02em;font-variant-numeric:tabular-nums}
.countdown b{font-weight:800;margin-left:3px;letter-spacing:.03em}
.src{position:absolute;top:11px;right:11px;background:rgba(255,255,255,.9);color:#4b5160;
  font-size:9.5px;padding:4px 9px;border-radius:7px;text-transform:uppercase;letter-spacing:.05em;
  font-weight:800;box-shadow:0 1px 3px rgba(0,0,0,.08);backdrop-filter:blur(6px)}
.soldout{position:absolute;bottom:0;left:0;right:0;background:rgba(21,23,28,.8);color:#fff;
  font-size:10.5px;font-weight:800;text-align:center;padding:7px;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(2px)}
.soldout.soon{background:linear-gradient(0deg,rgba(122,92,255,.94),rgba(122,92,255,.7))}
.body{padding:14px 15px 15px;display:flex;flex-direction:column;gap:8px;flex:1}
.name{font-size:13.5px;line-height:1.4;font-weight:600;color:#23262e;display:-webkit-box;-webkit-line-clamp:2;
  -webkit-box-orient:vertical;overflow:hidden;min-height:38px}
.prices{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:auto}
.now{font-size:19px;font-weight:800;letter-spacing:0}
.was{font-size:12.5px;color:var(--muted);text-decoration:line-through}
.meta{font-size:11px;color:var(--muted);display:flex;gap:7px;flex-wrap:wrap;align-items:center;min-height:15px}
.cat{background:var(--bg);color:#6b7180;font-size:10px;padding:3px 9px;border-radius:999px;font-weight:700;letter-spacing:.01em}

/* ---------- BIG View Deal ---------- */
.card .view{margin-top:8px;display:flex;align-items:center;justify-content:center;gap:8px;
  padding:12px;background:var(--ink);color:#fff;text-decoration:none;
  font-size:14px;font-weight:700;border-radius:12px;letter-spacing:.01em;
  transition:background .16s,transform .1s}
.card .view:hover{background:var(--accent)}
.card .view:active{transform:scale(.98)}
.card .view .arrow{transition:transform .16s}
.card .view:hover .arrow{transform:translateX(4px)}

.pager{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;max-width:1280px;margin:8px auto 10px;padding:0 34px}
.pg{min-width:38px;height:38px;padding:0 12px;border:1px solid var(--line);background:#fff;color:var(--ink);
  border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:.14s}
.pg:hover:not(:disabled){border-color:var(--ink)}
.pg.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.pg:disabled{opacity:.4;cursor:default}
.pg-dots{align-self:center;color:var(--muted);padding:0 4px}
.status{text-align:center;color:var(--muted);padding:20px 36px 40px;font-size:13px}
.spinner{display:inline-block;width:15px;height:15px;border:2px solid var(--line);
  border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;vertical-align:-3px;margin-right:8px}
@keyframes spin{to{transform:rotate(360deg)}}

/* ---------- generic page + helpers ---------- */
.page{max-width:1280px;margin:0 auto;padding:28px 34px 70px}
.muted{color:var(--muted)}
.section-title{font-size:15px;font-weight:800;margin:26px 0 14px}
.empty{max-width:520px;margin:80px auto;text-align:center;color:var(--muted);display:flex;flex-direction:column;gap:16px;align-items:center}
.empty[hidden]{display:none}   /* the .empty display:flex would otherwise override the [hidden] attr (e.g. admin "access required", saved-deals empty state) */
.empty .btn-primary{padding:12px 22px;text-decoration:none;display:inline-block}
.btn-primary.block{width:100%;padding:14px;display:block;text-align:center}

/* ---------- auth pages ---------- */
.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(160deg,#eef2ff,#f4f5f7 45%)}
.auth-card{width:100%;max-width:400px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:var(--shadow)}
.auth-mascot{display:block;width:104px;height:104px;object-fit:contain;margin:-6px auto 8px;
  filter:drop-shadow(0 8px 16px rgba(47,107,255,.18))}
.auth-brand .logo{width:30px;height:30px;border-radius:9px}
.auth-brand{display:flex;align-items:center;gap:9px;font-size:19px;font-weight:800;text-decoration:none;color:var(--ink);justify-content:center;margin-bottom:18px}
.empty-mascot{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(20,22,30,.12))}
.auth-title{margin:0 0 4px;font-size:22px;font-weight:800;text-align:center;letter-spacing:0}
.auth-sub{margin:0 0 22px;font-size:13px;color:var(--muted);text-align:center}
.auth-switch{text-align:center;font-size:13px;color:var(--muted);margin:14px 0 4px}
.auth-switch a{color:var(--accent);font-weight:700;text-decoration:none}
.auth-switch a:hover{text-decoration:underline}
.auth-form{display:flex;flex-direction:column;gap:14px}
.auth-form label,.fld{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:var(--muted)}
.auth-form input,.fld input,.fld textarea,.setting-row input{padding:12px 14px;border:1px solid var(--line);border-radius:11px;
  font-size:14px;background:#fff;outline:none;transition:.15s;color:var(--ink);font-weight:500}
.auth-form input:focus,.fld input:focus,.fld textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.auth-msg{text-align:center;font-size:12.5px;margin:16px 0 6px;min-height:16px;font-weight:600}
.auth-msg.err{color:#e0475f}
.auth-back{display:block;text-align:center;font-size:12.5px;color:var(--muted);text-decoration:none;margin-top:6px}
.auth-back:hover{color:var(--ink)}

/* ---------- account ---------- */
.account-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);
  border-radius:var(--radius);padding:22px 24px}
.avatar{width:56px;height:56px;border-radius:16px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:24px;font-weight:800}
.account-head h2{margin:0;font-size:19px;font-weight:800}
.account-stats{margin-left:auto;display:flex;gap:12px}

/* ---------- admin ---------- */
.admin-stats{margin:24px auto 0;max-width:1280px}
.admin-tabs{display:flex;gap:6px;max-width:1280px;margin:24px auto 0;padding:0 34px;flex-wrap:wrap}
.admin-tab{padding:9px 16px;border:1px solid var(--line);background:#fff;border-radius:999px;font-size:13px;font-weight:700;color:var(--muted);cursor:pointer;transition:.14s}
.admin-tab:hover{color:var(--ink);border-color:#d7dae2}
.admin-tab.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.admin-panel{max-width:1280px;margin:18px auto 0;padding:0 34px}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:8px 0 14px;flex-wrap:wrap}
.panel-head h3{margin:0;font-size:16px;font-weight:800}
.panel-head .muted{font-size:12px;font-weight:600}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff}
.tbl{width:100%;border-collapse:collapse;font-size:13px;min-width:640px}
.tbl th{text-align:left;padding:12px 14px;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--line);font-weight:800;background:#fafbfc}
.tbl td{padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tr:last-child td{border-bottom:0}
.pill{display:inline-block;font-size:10.5px;font-weight:800;padding:3px 9px;border-radius:999px;background:var(--bg);color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.pill.ok{background:#e7f8f1;color:#0e9f6e}
.pill.warn{background:#fff3d6;color:#a76b00}
.pill.off{background:#fdeaec;color:#d64b60}
.row-actions{display:flex;gap:7px;white-space:nowrap}
.user-contact{display:inline-flex;align-items:center;border-radius:999px;background:#e9f2ff;color:#1459bd;padding:5px 9px;font-size:11px;font-weight:800;text-decoration:none;white-space:nowrap}
.user-contact:hover{background:#1877f2;color:#fff}
.mini.danger{color:#d64b60;border-color:#f3d2d8}
.mini.danger:hover{background:#d64b60;color:#fff;border-color:#d64b60}
.admin-msg{max-width:1280px;margin:18px auto 0;padding:0 34px;font-size:12.5px;font-weight:700;min-height:16px}
.admin-msg.ok{color:#0e9f6e}
.admin-msg.err{color:#d64b60}
.setting-row{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap}
.setting-row label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:var(--muted)}
.setting-row input{width:140px}

/* toggle switch */
.switch{position:relative;display:inline-block;width:40px;height:23px;cursor:pointer}
.switch input{opacity:0;width:0;height:0}
.switch span{position:absolute;inset:0;background:#d7dae2;border-radius:999px;transition:.18s}
.switch span:before{content:"";position:absolute;width:17px;height:17px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.18s;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.switch input:checked+span{background:var(--ok)}
.switch input:checked+span:before{transform:translateX(17px)}

/* ads editor */
.ads-editor{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:8px}
.ad-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:12px}
.ad-card-head{display:flex;align-items:center;justify-content:space-between}
.ad-card textarea{resize:vertical;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}
.ad-size{font-size:12px;color:var(--muted);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:9px 12px;display:flex;flex-direction:column;gap:3px}
.ad-size b{color:var(--ink)}
.ad-note{font-size:11px;color:var(--muted)}

/* tier select */
.u-tier{padding:5px 8px;border:1px solid var(--line);border-radius:8px;font-size:12px;font-weight:700;cursor:pointer;background:#fff}
.u-tier.tier-buraot{color:#6b7180}
.u-tier.tier-collector{color:#0e9f6e;border-color:#bfe9d6}
.u-tier.tier-diamond{color:#7a5cff;border-color:#d9d0ff}
.tier-badge{font-size:11px;font-weight:800;padding:4px 11px;border-radius:999px;letter-spacing:.03em}
.tier-badge.buraot{background:var(--bg);color:#6b7180}
.tier-badge.collector{background:#e7f8f1;color:#0e9f6e}
.tier-badge.diamond{background:#efeaff;color:#7a5cff}
.tier-badge.kuripot{background:#ffc928;color:#101a3a}

/* ---------- main menu (Deals / New Arrival) ---------- */
.mainmenu{display:flex;gap:4px;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:4px}
.menu-item{border:0;background:transparent;padding:9px 18px;border-radius:999px;font-size:13px;font-weight:700;
  color:var(--muted);cursor:pointer;transition:.14s;white-space:nowrap}
.menu-item:hover{color:var(--ink)}
.menu-item.on{background:var(--ink);color:#fff}
/* Premium Deals tab + its little badge */
.menu-item.premium{display:inline-flex;align-items:center;gap:6px}
.menu-item.premium .tab-badge{font-size:8.5px;font-weight:800;letter-spacing:.06em;
  background:linear-gradient(135deg,#ffca28,#ff9e00);color:#5a3d00;padding:2px 6px;border-radius:6px}
.menu-item.premium.on{background:linear-gradient(135deg,#1b2a4a,#0c1b3a)}
.menu-item.premium.on .tab-badge{box-shadow:0 0 0 1px rgba(255,255,255,.25)}
/* arrivals mode hides the discount/sort/sold controls (deal-only) */
body.mode-arrivals .slider,body.mode-arrivals .sort,body.mode-arrivals #hideSold{display:none}
/* premium mode: hide all the browse/filter controls — it's a curated members page */
body.mode-premium .controls .searchwrap,
body.mode-premium .controls .storebar,
body.mode-premium .controls .filters,
body.mode-premium #catChips{display:none}
/* ---- Premium Deals placeholder ---- */
.premium-hero{grid-column:1/-1;text-align:center;padding:56px 20px 40px;
  display:flex;flex-direction:column;align-items:center;gap:8px}
.premium-crown{font-size:56px;line-height:1;filter:drop-shadow(0 6px 12px rgba(255,158,0,.35))}
.premium-hero h2{font-size:30px;font-weight:800;color:var(--ink);letter-spacing:0}
.premium-lead{color:var(--muted);font-size:15px;max-width:520px}
.premium-card{margin-top:22px;max-width:560px;width:100%;display:flex;gap:18px;align-items:center;
  text-align:left;background:linear-gradient(135deg,#fffdf6,#fff7e6);
  border:1px solid #f0d68a;border-radius:20px;padding:22px 24px;
  box-shadow:0 18px 44px rgba(180,130,0,.12)}
.premium-card img{width:92px;height:92px;object-fit:contain;flex:none}
.premium-card p{color:#6b5a2a;font-size:14px;line-height:1.5}
.premium-tag{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.08em;
  background:linear-gradient(135deg,#ffca28,#ff9e00);color:#5a3d00;padding:3px 10px;border-radius:7px;margin-bottom:8px}
.premium-cta{display:inline-block;margin-top:14px;text-decoration:none}

/* ---------- user nav ---------- */
.usernav{display:flex;align-items:center;gap:8px}
.nav-link{font-size:12.5px;font-weight:600;color:var(--muted);text-decoration:none;padding:8px 10px;border-radius:999px;transition:.14s}
.nav-link:hover{color:var(--ink);background:var(--bg)}
.nav-cta{font-size:12.5px;font-weight:700;color:#fff;background:var(--ink);text-decoration:none;padding:8px 15px;border-radius:999px;transition:.14s}
.nav-cta:hover{background:var(--accent)}
.nav-user{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--ink);text-decoration:none;
  background:var(--accent-soft);padding:7px 13px;border-radius:999px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nav-user:hover{background:#e2ebff}

/* ---------- notification bell + panel ---------- */
.notif-wrap{position:relative}
.notif-bell{position:relative;border:1px solid var(--line);background:#fff;cursor:pointer;
  width:38px;height:38px;border-radius:50%;font-size:17px;line-height:1;transition:.14s;
  display:flex;align-items:center;justify-content:center}
.notif-bell:hover{background:var(--bg);border-color:#d7dae2}
.notif-count{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;
  background:#ff3860;color:#fff;font-size:10px;font-weight:800;border-radius:999px;
  display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px #fff}
.notif-count[hidden]{display:none}   /* class display:flex would otherwise override [hidden] */
.notif-panel[hidden]{display:none}
.notif-panel{position:absolute;top:48px;right:0;width:340px;max-height:440px;overflow-y:auto;
  background:#fff;border:1px solid var(--line);border-radius:16px;z-index:60;
  box-shadow:0 20px 50px rgba(12,27,58,.18)}
.notif-head{padding:14px 16px;font-weight:800;color:var(--ink);font-size:14px;
  border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;position:sticky;top:0;background:#fff}
.notif-head span{background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:800;padding:2px 8px;border-radius:999px}
.notif-empty{padding:34px 20px;text-align:center;color:var(--muted);font-size:13px;line-height:1.6}
.notif-item{display:flex;gap:11px;padding:12px 15px;border-bottom:1px solid var(--bg);
  text-decoration:none;color:inherit;transition:.12s}
.notif-item:hover{background:var(--bg)}
.notif-ic{font-size:19px;line-height:1.3;flex:none}
.notif-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.notif-body b{font-size:12.5px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notif-txt{font-size:12px;color:var(--accent);font-weight:600}
.notif-src{font-size:10.5px;color:var(--muted)}
.notif-seeall{display:block;text-align:center;padding:12px;font-size:12.5px;font-weight:700;
  color:var(--accent);text-decoration:none;border-top:1px solid var(--line);position:sticky;bottom:0;background:#fff}
.notif-seeall:hover{background:var(--bg)}

/* ---------- full Notifications page ---------- */
.notifpage{max-width:760px;margin:24px auto;padding:0 16px}
.notifpage-head h2{font-size:24px;font-weight:800;color:var(--ink);margin-bottom:14px}
.notifpage-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.notiflist{display:flex;flex-direction:column;gap:10px}
.notifrow{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#fff;
  border:1px solid var(--line);border-radius:16px;text-decoration:none;color:inherit;transition:.14s}
.notifrow:hover{border-color:#c7d4f5;box-shadow:0 8px 24px rgba(47,107,255,.10);transform:translateY(-1px)}
.notifrow-ic{font-size:22px;flex:none}
.notifrow-thumb{width:54px;height:54px;flex:none;border-radius:12px;overflow:hidden;background:var(--bg);display:flex;align-items:center;justify-content:center}
.notifrow-thumb img{width:100%;height:100%;object-fit:cover}
.notifrow-thumb .noimg{color:#c2c8d4;font-size:20px}
.notifrow-body{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.notifrow-title{font-size:14px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notifrow-sub{font-size:13px;color:var(--accent);font-weight:600}
.notifrow-sub .off{color:var(--sale)}
.notifrow-meta{font-size:11px;color:var(--muted)}
.notifrow-arrow{color:var(--muted);font-size:18px;flex:none}
@media(max-width:640px){.notifrow-ic{display:none}}

/* ---------- stock badge on cards ---------- */
.stock{font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px;letter-spacing:.01em;white-space:nowrap}
.stock.in{background:#e8f8ee;color:#1a9e4b}
.stock.low{background:#fff4e0;color:#c47a00}
.stock.out{background:#fdeaee;color:#e0335a}
.stock.unknown{background:#eef1f6;color:#6b7688}

/* ---------- ad rails (blank + invisible until enabled) ---------- */
.adrail{position:fixed;top:50%;transform:translateY(-50%);width:160px;z-index:20;display:none}
.adrail.live{display:block}
.adrail-left{left:16px}
.adrail-right{right:16px}
.adrail img{width:100%;height:auto;border-radius:12px;display:block}
@media(max-width:1500px){.adrail{display:none !important}}
.adslot-mobile{display:none}
.adslot-mobile.live{display:block;grid-column:1/-1;border-radius:14px;overflow:hidden}
.adslot-mobile img{width:100%;height:auto;display:block}

/* ---------- store selector ---------- */
.storebar{margin-bottom:18px}
.storebar-head{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);background:#fff;
  padding:9px 15px;border-radius:12px;cursor:pointer;font-size:13px;font-weight:700;color:var(--ink);transition:.14s}
.storebar-head:hover{border-color:#d7dae2}
.sb-count{font-size:11.5px;font-weight:700;color:var(--accent);background:var(--accent-soft);padding:3px 9px;border-radius:999px}
.sb-caret{color:var(--muted);font-size:11px;transition:transform .18s}
.storebar-head[aria-expanded="false"] .sb-caret{transform:rotate(-90deg)}
.storepanel{margin-top:12px;overflow:hidden;transition:max-height .25s ease,opacity .2s,margin .2s;max-height:600px;opacity:1}
.storepanel.collapsed{max-height:0;opacity:0;margin-top:0}
.storepanel-tools{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.storepanel-tools input{flex:1;min-width:160px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;font-size:12.5px;outline:none;background:#fff}
.storepanel-tools input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.mini{padding:9px 14px;border:1px solid var(--line);background:#fff;border-radius:999px;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer;transition:.14s}
.mini:hover{color:var(--ink);border-color:#d7dae2}
.storechips{max-height:240px;overflow:auto;padding:2px 2px 10px}

/* ---------- save (heart) button ---------- */
.save{position:absolute;bottom:11px;right:11px;width:34px;height:34px;border:0;border-radius:50%;
  background:rgba(255,255,255,.85);color:#e0475f;font-size:16px;line-height:1;cursor:pointer;
  display:grid;place-items:center;box-shadow:0 2px 8px rgba(0,0,0,.14);backdrop-filter:blur(8px);
  transition:transform .14s,background .14s,opacity .14s;opacity:0}
.card:hover .save,.save.on{opacity:1}
.save:hover{transform:scale(1.14);background:#fff}
.save:active{transform:scale(.95)}
.save.on{background:#fff;color:#e0475f}

/* ---------- mobile (clean app-like) ---------- */
@media(max-width:640px){
  .topbar{padding:12px 16px;gap:10px;flex-wrap:wrap}
  .brand p{display:none}
  .timer{font-size:11px;padding:7px 11px}
  .mainmenu{order:3;width:100%;justify-content:center}
  .menu-item{flex:1;padding:9px 0}
  .topbar-right{width:100%;order:2;justify-content:flex-end;gap:8px}  /* own row, right-aligned */
  .timer{margin-right:auto;font-size:12px;padding:7px 11px}          /* timer left, nav right */
  .timer .timer-lbl{display:none}                                    /* just show ● + countdown */
  .usernav{gap:5px}
  .nav-link{padding:7px 7px;font-size:12px}
  .nav-user{display:none}
  /* full-width notification sheet — no more off-screen overflow */
  .notif-panel{position:fixed;top:60px;left:10px;right:10px;width:auto;max-height:70vh;
    box-shadow:0 24px 60px rgba(12,27,58,.30)}
  .notif-bell{width:36px;height:36px}
  .controls{padding:18px 16px 4px}
  .searchwrap input{padding:14px 18px}
  .storechips{max-height:150px}
  .stats{padding:0 18px;gap:10px}
  .stat{flex:1;min-width:0;padding:12px 14px}
  .stat .n{font-size:20px}
  .grid{grid-template-columns:repeat(2,1fr);gap:14px;padding:0 18px;margin-bottom:40px}
  .body{padding:12px 13px 13px;gap:7px}
  .now{font-size:16px}
  .card .view{padding:11px;font-size:13px}
  .save{opacity:1;width:30px;height:30px;font-size:14px}
}

/* ── Codes page ─────────────────────────────────────────────────────────── */
.menu-item.menu-codes{display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.menu-item.menu-codes .codes-badge{font-size:10px;background:#fff3d6;
  padding:2px 6px;border-radius:7px;background-image:none}
.menu-item.menu-codes:hover{background:#fff7e6;color:#a76b00}

.codespage{max-width:1080px;margin:0 auto;padding:26px 32px 60px}
.codes-head h2{font-size:26px;font-weight:800;margin:0 0 6px}
.codes-lead{color:var(--muted);font-size:14px;max-width:640px;line-height:1.55;margin:0 0 20px}
.codes-tools{margin-bottom:22px}
.codes-search{margin-bottom:14px}
.codes-stores{display:flex;flex-wrap:wrap;gap:8px}
.codes-stores .chip b{opacity:.5;margin-left:4px;font-weight:700}

/* brand accordion */
.brand-block{background:var(--card);border:1px solid var(--line);border-radius:14px;
  margin-bottom:12px;overflow:hidden;box-shadow:var(--shadow)}
.brand-head{display:flex;align-items:center;gap:14px;width:100%;border:0;background:transparent;
  padding:16px 18px;cursor:pointer;font-family:inherit;text-align:left}
.brand-head:hover{background:#fafbfe}
.brand-logo{width:40px;height:40px;border-radius:10px;object-fit:contain;background:#fff;
  border:1px solid var(--line);flex:0 0 auto}
.brand-logo-x{display:flex;align-items:center;justify-content:center;font-weight:800;
  font-size:18px;color:var(--accent);background:var(--accent-soft)}
.brand-name{font-size:16px;font-weight:800;color:var(--ink);flex:1;min-width:0}
.brand-count{font-size:12px;font-weight:700;color:var(--accent);background:var(--accent-soft);
  padding:4px 11px;border-radius:999px;flex:0 0 auto}
.brand-caret{font-size:13px;color:var(--muted);transition:transform .2s;flex:0 0 auto}
.brand-block.open .brand-caret{transform:rotate(180deg)}
.brand-codes{padding:4px 18px 18px}
.code-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.code-disc-x{background:#eef3ff;color:var(--accent)}

.code-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:16px;display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow)}
.code-card-top{display:flex;gap:12px;align-items:flex-start}
.code-disc{flex:0 0 auto;min-width:56px;text-align:center;background:var(--ink);color:#fff;
  font-weight:800;font-size:15px;line-height:1.05;padding:10px 8px;border-radius:12px}
.code-card-info{min-width:0}
.code-card-title{font-size:13.5px;font-weight:700;line-height:1.35;color:var(--ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.code-card-meta{font-size:11.5px;color:var(--muted);margin-top:4px;display:flex;gap:8px;align-items:center}
.code-verified{color:var(--ok);font-weight:700}
.code-verified.code-ai{color:#7c3aed}   /* seen working recently (web-search researched) */
.code-unverified{color:#9aa4b5;font-weight:600;font-size:11px}   /* aggregator code, not recently confirmed */

.code-copy{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;
  border:1.5px dashed #c7cdda;background:#fbfcfe;border-radius:12px;padding:11px 14px;cursor:pointer;
  font-family:inherit;transition:.15s}
.code-copy:hover{border-color:var(--accent);background:var(--accent-soft)}
.code-copy.copied{border-color:var(--ok);background:#eafaf3;border-style:solid}
.code-val{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:800;font-size:15px;
  letter-spacing:.03em;color:var(--ink);word-break:break-all;text-align:left}
.code-copy-lbl{flex:0 0 auto;font-size:12px;font-weight:800;color:var(--accent);
  text-transform:uppercase;letter-spacing:.04em}
.code-copy.copied .code-copy-lbl{color:var(--ok)}

.code-goto{font-size:12px;font-weight:700;color:var(--muted);text-decoration:none;text-align:center}
.code-goto:hover{color:var(--accent)}

@media (max-width:640px){
  .codespage{padding:20px 16px 50px}
  .codes-head h2{font-size:22px}
  .code-grid{grid-template-columns:1fr}
}

/* ── Notification per-shop settings ─────────────────────────────────────── */
.chip.settings-chip{border-style:dashed}
.chip.settings-chip.on{background:var(--accent);border-color:var(--accent);color:#fff}
.notif-settings{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:16px 18px;margin:0 0 18px;box-shadow:var(--shadow)}
.notif-settings-head{display:flex;flex-direction:column;gap:3px;margin-bottom:12px}
.notif-settings-head b{font-size:14px}
.notif-settings-sub{font-size:12px;color:var(--muted)}
.notif-settings-tools{display:flex;gap:8px;margin-bottom:12px}
.notif-settings .storechips{display:flex;flex-wrap:wrap;gap:8px;max-height:none}

/* ══════════ mobile bottom nav (app-like) ══════════ */
.bottomnav{display:none}
@media(max-width:640px){
  .bottomnav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:45;
    background:rgba(255,255,255,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
    border-top:1px solid var(--line);padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    box-shadow:0 -8px 26px rgba(15,30,70,.08)}
  .bnav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px 2px;
    border-radius:13px;text-decoration:none;color:var(--muted);font-size:10.5px;font-weight:700;transition:.14s}
  .bnav-item .bic{width:24px;height:24px;background:currentColor;transition:transform .18s,background .14s;
    -webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;
    -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
  .bnav-item:active{background:var(--bg)}
  .bnav-item.on{color:var(--accent)}
  .bnav-item.on .bic{transform:translateY(-2px) scale(1.08)}
  body{padding-bottom:66px}                 /* clear the fixed bar */
}

/* clean custom bottom-nav icons (crisp SVG masks, tinted via currentColor) */
.ic-deals{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4a2 2 0 00-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58s1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41s-.23-1.06-.59-1.42zM6.5 8A1.5 1.5 0 116.5 5a1.5 1.5 0 010 3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4a2 2 0 00-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58s1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41s-.23-1.06-.59-1.42zM6.5 8A1.5 1.5 0 116.5 5a1.5 1.5 0 010 3z'/%3E%3C/svg%3E")}
.ic-codes{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M22 10V6a2 2 0 00-2-2H4a2 2 0 00-2 2v4a2 2 0 010 4v4a2 2 0 002 2h16a2 2 0 002-2v-4a2 2 0 010-4zm-9 6.5h-2v-2h2v2zm0-4h-2v-2h2v2zm0-4h-2v-2h2v2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M22 10V6a2 2 0 00-2-2H4a2 2 0 00-2 2v4a2 2 0 010 4v4a2 2 0 002 2h16a2 2 0 002-2v-4a2 2 0 010-4zm-9 6.5h-2v-2h2v2zm0-4h-2v-2h2v2zm0-4h-2v-2h2v2z'/%3E%3C/svg%3E")}
.ic-alerts{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22a2 2 0 002-2h-4a2 2 0 002 2zm6-6v-5c0-3.07-1.64-5.64-4.5-6.32V4a1.5 1.5 0 00-3 0v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 22a2 2 0 002-2h-4a2 2 0 002 2zm6-6v-5c0-3.07-1.64-5.64-4.5-6.32V4a1.5 1.5 0 00-3 0v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2z'/%3E%3C/svg%3E")}
.ic-saved{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54z'/%3E%3C/svg%3E")}
.ic-profile{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a5 5 0 100-10 5 5 0 000 10zm0 2c-5.33 0-8 2.67-8 5v2h16v-2c0-2.33-2.67-5-8-5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 12a5 5 0 100-10 5 5 0 000 10zm0 2c-5.33 0-8 2.67-8 5v2h16v-2c0-2.33-2.67-5-8-5z'/%3E%3C/svg%3E")}

/* ════════ e-commerce card refinements (price pill + top-right heart) ════════ */
.ppill{position:absolute;left:11px;bottom:11px;z-index:2;white-space:nowrap;
  background:linear-gradient(135deg,#2e90fa,#1466e0);color:#fff;
  font-size:14px;font-weight:800;letter-spacing:0;padding:6px 12px;border-radius:12px;
  box-shadow:0 6px 16px rgba(20,102,224,.42)}
.ppill.soon{background:linear-gradient(135deg,#7a5cff,#5f43e0);box-shadow:0 6px 16px rgba(122,92,255,.4)}
.save{top:11px;right:11px;bottom:auto}                 /* heart to the top-right (reference style) */
.srcchip{background:#eef4ff;color:#3f6aad;font-size:10px;font-weight:800;padding:3px 9px;
  border-radius:999px;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap}
.card .prices{min-height:0;margin-top:0}                /* current price lives on the image pill now */
.card .was{font-size:13px}
@media(max-width:640px){ .ppill{font-size:12.5px;padding:5px 10px;left:9px;bottom:9px} .save{top:9px;right:9px} }

/* ════════════ soft pastel refresh (soft app reference) + BIG % sale ════════════ */
body{
  background:
    radial-gradient(68% 42% at 8% -8%, #d6e2f8 0%, rgba(214,226,248,0) 54%),
    radial-gradient(58% 40% at 101% -2%, #dde8fc 0%, rgba(221,232,252,0) 50%),
    linear-gradient(180deg,#eef3fc 0%,#f6f9fe 55%,#eef3fc 100%);
  background-attachment:fixed}
/* softer, more diffuse shadows + rounder surfaces (airy, gentle) */
.card{border-radius:26px;box-shadow:0 16px 40px rgba(88,118,196,.13),0 3px 9px rgba(88,118,196,.05)}
.card:hover{box-shadow:0 28px 58px rgba(88,118,196,.2)}
.hc-inner{border-radius:30px}
.searchwrap input{border-radius:18px}
.btn-primary{border-radius:16px}
.stat,.account-head,.brand-block,.code-card,.notif-settings,.auth-card,.table-wrap,.notifrow{border-radius:22px}
.storebar-head,.sort select,.toggle,.mini{border-radius:14px}
/* the deal "% sale" — BIG, bold, and warm so it pops (was a tiny 11px badge) */
.badge{font-size:17px;font-weight:900;padding:6px 13px;border-radius:14px;letter-spacing:0;
  background:linear-gradient(135deg,#ff5b70,#e5324d);box-shadow:0 7px 18px rgba(229,50,77,.4);backdrop-filter:none}
.badge.new,.badge.pre,.badge.soon,.badge.sold{font-size:11px;font-weight:800;padding:5px 10px}
@media(max-width:640px){ .badge{font-size:15.5px;padding:5px 11px} .card{border-radius:22px} }

/* ════════════ Sign in with Google ════════════ */
.auth-or{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:11.5px;font-weight:700;
  text-transform:uppercase;letter-spacing:.08em}
.auth-or::before,.auth-or::after{content:"";flex:1;height:1px;background:var(--line)}
.btn-google{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;padding:13px;
  border:1px solid var(--line);border-radius:14px;background:#fff;color:#3c4043;font-size:14.5px;font-weight:700;
  text-decoration:none;transition:.15s;box-shadow:0 2px 8px rgba(23,80,180,.05)}
.btn-google:hover{background:#f7f9fc;border-color:#cfd6e4;box-shadow:0 8px 20px rgba(23,80,180,.1);transform:translateY(-1px)}
.btn-google:active{transform:translateY(0)}
.btn-google svg{flex:none}

/* ══════════ mobile UI polish (easier to use) ══════════ */
@media(max-width:640px){
  /* tighter, cleaner header */
  .topbar{padding:11px 15px 10px;gap:9px;position:sticky;top:0}
  .brand h1{font-size:17px}
  .logo{width:34px;height:34px}
  /* mode tabs = full-width segmented control (Codes moved to bottom nav) */
  .menu-item.menu-codes{display:none}
  .mainmenu{order:3;width:100%;margin-top:2px;padding:4px;gap:4px}
  .menu-item{flex:1;padding:11px 4px;font-size:12.5px}
  .menu-item.premium{gap:4px;justify-content:center}
  .menu-item.premium .tab-badge{font-size:7.5px;padding:2px 5px}
  /* bigger, comfier search + controls */
  .controls{padding:16px 15px 4px}
  .searchwrap{gap:8px;margin-bottom:16px}
  .searchwrap input{padding:14px 17px;font-size:15px}
  .btn-primary{padding:0 20px}
  .filters{gap:10px}
  .catChips,.chips.cats{margin-top:14px}
  /* roomier cards + always-visible save heart */
  .grid{gap:13px}
  .card{border-radius:16px}
  .name{font-size:13px;min-height:36px}
  .card .view{padding:12px;font-size:13.5px;border-radius:11px}
  .save{opacity:1;width:32px;height:32px;font-size:15px}
  .badge{font-size:10.5px;padding:4px 9px}
}

/* ════════════════ Modern glass theme (fintech-style refresh) ════════════════ */
/* Real backdrop-blur is used ONLY on the few chrome elements (bar/search/hero/nav);
   the many deal cards stay solid + soft-shadowed so scrolling stays smooth on phones. */
body{
  background:
    radial-gradient(66% 42% at 6% -6%, #dcecff 0%, rgba(220,236,255,0) 52%),
    radial-gradient(58% 40% at 102% -2%, #e3f0ff 0%, rgba(227,240,255,0) 48%),
    linear-gradient(180deg,#f4f9ff 0%,#fbfdff 52%,#f5faff 100%);
  background-attachment:fixed;min-height:100vh}

/* frosted top bar */
.topbar{background:rgba(255,255,255,.66);backdrop-filter:blur(20px) saturate(1.4);
  -webkit-backdrop-filter:blur(20px) saturate(1.4);border-bottom:1px solid rgba(255,255,255,.55);
  box-shadow:0 6px 26px rgba(23,80,180,.07)}
.logo{border-radius:13px}
.brand h1{color:var(--ink)}

/* glassy search (single element -> blur is fine) */
.searchwrap input{background:rgba(255,255,255,.72);backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.8);
  box-shadow:0 10px 26px rgba(23,80,180,.09)}
.searchwrap input:focus{border-color:var(--azure);box-shadow:0 0 0 4px var(--accent-soft),0 10px 26px rgba(23,80,180,.12)}

/* light, semi-solid pills/controls (no blur -> cheap even in bulk) */
.storebar-head,.storepanel-tools input,.sort select,.toggle,.mini,.notif-bell{
  background:rgba(255,255,255,.7);border-color:rgba(255,255,255,.85);box-shadow:0 3px 10px rgba(23,80,180,.05)}
.chip{background:rgba(255,255,255,.66);border-color:rgba(255,255,255,.85);color:#5c6d8a;box-shadow:0 2px 8px rgba(23,80,180,.04)}
.chip:hover{color:var(--ink);border-color:#bcd6ff}
.chip.on{background:linear-gradient(135deg,var(--azure),var(--azure-deep));border-color:transparent;color:#fff;
  box-shadow:0 6px 16px rgba(20,102,224,.32)}
.menu-item.on{background:var(--navy)}
.toggle[aria-pressed="true"]{background:var(--navy);border-color:var(--navy)}
.mainmenu{background:rgba(255,255,255,.6);border-color:rgba(255,255,255,.8)}
.pg{background:rgba(255,255,255,.72);border-color:rgba(255,255,255,.85)}
.pg.on{background:var(--navy);border-color:var(--navy)}

/* primary actions -> azure gradient */
.btn-primary{background:linear-gradient(135deg,#2e90fa,#1466e0);box-shadow:0 10px 24px rgba(20,102,224,.32)}
.btn-primary:hover{background:linear-gradient(135deg,#1e88ff,#0f57cf)}

/* deal cards -> clean solid, rounder, soft blue shadow (NO per-card blur) */
.grid{gap:20px}
.card{background:#fff;border:1px solid rgba(255,255,255,.9);border-radius:24px;
  box-shadow:0 14px 34px rgba(23,80,180,.10),0 2px 6px rgba(23,80,180,.05)}
.card:hover{box-shadow:0 24px 50px rgba(23,80,180,.17);border-color:#dbe8fb}
.thumb{background:linear-gradient(135deg,#eef4ff,#e1ecfb)}
.card .view{background:linear-gradient(135deg,#2e90fa,#1466e0);border-radius:13px}
.card .view:hover{background:linear-gradient(135deg,#1e88ff,#0f57cf)}
.badge{border-radius:10px}
.src{background:rgba(255,255,255,.85);backdrop-filter:blur(6px)}
.cat{background:#eef4ff;color:#4f6a92}

/* floating panels -> glass */
.notif-panel{background:rgba(255,255,255,.82);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
.bottomnav{background:rgba(255,255,255,.72)!important}
.stat{background:rgba(255,255,255,.72);border-color:rgba(255,255,255,.85);border-radius:18px;box-shadow:0 6px 18px rgba(23,80,180,.06)}

/* generic cards on other pages (account/codes) -> match */
.account-head,.brand-block,.code-card,.notif-settings,.auth-card,.notifrow{
  border-color:rgba(255,255,255,.9);box-shadow:0 12px 30px rgba(23,80,180,.09)}
.auth-body{background:
  radial-gradient(70% 50% at 10% 0%, #d6e8ff 0%, rgba(214,232,255,0) 55%),
  linear-gradient(160deg,#e9f2ff,#f2f7fd 50%)}

/* ── gradient hero summary card (the signature reference element) ── */
.hero-card{max-width:1280px;margin:22px auto 0;padding:0 34px}
.hero-card[hidden]{display:none}
.hc-inner{position:relative;overflow:hidden;border-radius:26px;padding:22px 26px;
  display:flex;align-items:center;gap:16px;
  background:linear-gradient(125deg,#2e90fa 0%,#1a6ee0 52%,#0e4fb8 100%);
  box-shadow:0 20px 44px rgba(18,86,196,.32)}
.hc-inner::before{content:"";position:absolute;inset:0;
  background:radial-gradient(130% 90% at 118% -30%, rgba(255,255,255,.28), transparent 52%)}
.hc-inner::after{content:"";position:absolute;right:-46px;top:-72px;width:250px;height:250px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.18);box-shadow:0 0 0 28px rgba(255,255,255,.07),0 0 0 60px rgba(255,255,255,.04)}
.hc-body{position:relative;z-index:2;color:#fff;flex:1;min-width:0}
.hc-eyebrow{font-size:12.5px;font-weight:800;letter-spacing:.01em;color:#e2eeff}
.hc-big{font-size:36px;font-weight:800;letter-spacing:0;line-height:1;margin-top:5px;display:flex;align-items:baseline;gap:9px}
.hc-big span{font-size:14px;font-weight:700;opacity:.85;letter-spacing:0}
.hc-stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.hc-pill{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.24);border-radius:999px;
  padding:7px 14px;font-size:12.5px;font-weight:700;color:#fff;backdrop-filter:blur(6px)}
.hc-pill b{color:#ffd97a;font-weight:800}
.hc-mascot{width:104px;height:104px;object-fit:contain;flex:none;position:relative;z-index:2;
  filter:drop-shadow(0 12px 20px rgba(4,26,66,.4))}
@media(max-width:640px){
  .hero-card{padding:0 15px;margin-top:14px}
  .hc-inner{padding:15px 17px;border-radius:22px;gap:10px}
  .hc-big{font-size:28px}.hc-mascot{width:74px;height:74px}
  .hc-eyebrow{font-size:11px}.hc-pill{padding:6px 11px;font-size:11.5px}
  .card{border-radius:20px;box-shadow:0 10px 24px rgba(23,80,180,.1)}
}

/* Kimi K3 deals redesign */
body.deals-page{
  --navy-900:#0F2A4A;--navy-800:#16355A;--blue-600:#2563EB;
  --amber-400:#F59E0B;--amber-700:#B45309;
  --surface:#FFFFFF;--page:#F4F6FA;--ink:#0F2A4A;--muted:#64748B;
  --line:#E2E8F0;--well:#F8FAFC;--radius:12px;--gap:12px;
  background:var(--page);color:var(--ink);font-family:ui-rounded,"Avenir Next","Trebuchet MS",sans-serif;
  padding-bottom:calc(60px + env(safe-area-inset-bottom,0px));
}
/* ---------- shared measure ---------- */
body.deals-page .grid,
body.deals-page .controls,
body.deals-page .hero-card{width:min(1440px,calc(100% - 24px));margin-inline:auto;}
/* ---------- topbar (max two rows) ---------- */
body.deals-page .topbar{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;background:var(--navy-900);color:#fff;padding:6px 12px;}
body.deals-page .brand{display:flex;align-items:center;gap:8px;min-height:44px;color:#fff;font-weight:700;text-decoration:none;}
body.deals-page .logo{width:28px;height:28px;flex:0 0 auto;}
body.deals-page .topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px;}
body.deals-page .timer{background:var(--amber-400);color:var(--navy-900);font-size:12px;font-weight:700;border-radius:999px;padding:4px 10px;font-variant-numeric:tabular-nums;white-space:nowrap;}
body.deals-page .mainmenu{order:5;flex:1 0 100%;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;}
body.deals-page .mainmenu::-webkit-scrollbar{display:none;}
body.deals-page .menu-item{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;border-radius:8px;color:#CBD5E1;font-size:14px;text-decoration:none;white-space:nowrap;}
body.deals-page .menu-item:hover{background:var(--navy-800);color:#fff;}
/* ---------- hero: compact utility strip ---------- */
body.deals-page .hero-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-top:8px;margin-bottom:8px;padding:0;box-shadow:none;}
body.deals-page .hc-inner{display:flex;align-items:center;gap:12px;padding:8px 12px;min-height:0;}
body.deals-page .hc-mascot{width:32px;height:32px;flex:0 0 auto;margin:0;}
body.deals-page .hc-body{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;flex:1;min-width:0;}
body.deals-page .hc-eyebrow{margin:0;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--amber-700);}
body.deals-page .hc-big{margin:0;font-size:15px;line-height:1.25;font-weight:700;color:var(--ink);}
body.deals-page .hc-stats{display:flex;gap:6px;margin-left:auto;flex:0 0 auto;}
body.deals-page .hc-pill{background:var(--well);border:1px solid var(--line);border-radius:999px;padding:4px 10px;font-size:12px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;}
/* ---------- sticky toolbar ---------- */
body.deals-page .controls{position:sticky;top:0;z-index:50;display:flex;flex-direction:column;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:8px 12px;margin-bottom:8px;box-shadow:0 2px 8px rgba(15,42,74,.06);}
body.deals-page .searchwrap{display:flex;align-items:center;gap:8px;min-width:0;}
body.deals-page .searchwrap input{flex:1;min-width:0;min-height:44px;padding:10px 12px;font-size:16px;line-height:1.3;border:1px solid var(--line);border-radius:8px;background:var(--well);color:var(--ink);text-overflow:ellipsis;}
body.deals-page .btn-primary{min-height:44px;padding:0 16px;border:0;border-radius:8px;background:var(--navy-900);color:#fff;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;}
body.deals-page .btn-primary:hover{background:var(--navy-800);}
body.deals-page .search-icon{display:none;width:19px;height:19px;background:currentColor;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 105.293 14l5.353 5.354 1.414-1.414-5.353-5.354A8 8 0 0010 2zm0 2a6 6 0 110 12 6 6 0 010-12z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 105.293 14l5.353 5.354 1.414-1.414-5.353-5.354A8 8 0 0010 2zm0 2a6 6 0 110 12 6 6 0 010-12z'/%3E%3C/svg%3E");}
/* ---------- store / filter rows ---------- */
body.deals-page .storebar{display:flex;flex-direction:column;gap:8px;min-width:0;}
body.deals-page .storebar-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;font-weight:600;}
body.deals-page .storepanel{display:flex;gap:8px;flex-wrap:wrap;min-width:0;}
body.deals-page .filters{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;min-width:0;padding-bottom:2px;}
body.deals-page .filters::-webkit-scrollbar{display:none;}
body.deals-page .filters select,
body.deals-page .filters input,
body.deals-page .storepanel select,
body.deals-page .sort select{flex:0 0 auto;min-height:44px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:14px;}
body.deals-page .slider{display:flex;align-items:center;gap:8px;flex:0 0 auto;font-size:13px;color:var(--muted);}
body.deals-page .sort{display:flex;align-items:center;gap:6px;flex:0 0 auto;}
body.deals-page .toggle{display:inline-flex;align-items:center;gap:6px;min-height:44px;flex:0 0 auto;font-size:13px;color:var(--ink);cursor:pointer;white-space:nowrap;}
/* pressed state has a dark navy background — force white text so the label
   stays visible (this scoped rule must out-specify body.deals-page .toggle) */
body.deals-page .toggle[aria-pressed="true"]{color:#fff;}
/* ---------- chip rail ---------- */
body.deals-page .chips{display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding:2px;min-width:0;
  -webkit-mask-image:linear-gradient(90deg,#000 93%,transparent);mask-image:linear-gradient(90deg,#000 93%,transparent);}
body.deals-page .chips::-webkit-scrollbar{display:none;}
body.deals-page .chip{flex:0 0 auto;scroll-snap-align:start;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;}
body.deals-page .chip:hover{border-color:var(--navy-900);}
body.deals-page .chip[aria-pressed="true"],
body.deals-page .chip.active{background:var(--navy-900);border-color:var(--navy-900);color:#fff;}
/* ---------- results caption ---------- */
body.deals-page .status{width:min(1440px,calc(100% - 24px));margin:0 auto 8px;font-size:12px;color:var(--muted);text-align:left;}
/* ---------- grid ---------- */
body.deals-page .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-bottom:16px;}
/* ---------- card ---------- */
body.deals-page .card{display:flex;flex-direction:column;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px;transition:transform .18s ease-out,box-shadow .18s ease-out;}
body.deals-page .card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,42,74,.12);}
body.deals-page .thumb{position:relative;aspect-ratio:1/1;background:var(--well);border-radius:8px;padding:8px;overflow:hidden;}
body.deals-page .thumb img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .18s ease-out;}
body.deals-page .card:hover .thumb img{transform:scale(1.03);}
body.deals-page .badge{position:absolute;top:8px;left:8px;background:var(--amber-400);color:var(--navy-900);font-size:12px;font-weight:700;line-height:1;padding:4px 8px;border-radius:4px;font-variant-numeric:tabular-nums;}
body.deals-page .save{position:absolute;top:8px;right:8px;background:var(--amber-400);color:var(--navy-900);font-size:11px;font-weight:700;line-height:1;padding:4px 8px;border-radius:4px;}
body.deals-page .countdown{position:absolute;left:8px;bottom:8px;background:rgba(15,42,74,.85);color:#fff;font-size:11px;font-weight:600;padding:3px 8px;border-radius:4px;font-variant-numeric:tabular-nums;}
body.deals-page .thumb .soldout{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(15,42,74,.7);color:#fff;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;}
body.deals-page .body{display:flex;flex-direction:column;gap:6px;flex:1;min-width:0;padding-top:10px;}
/* ---------- price-first block ---------- */
body.deals-page .prices{display:flex;flex-wrap:nowrap;align-items:baseline;gap:8px;min-width:0;overflow:hidden;}
body.deals-page .now{font-size:19px;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;}
body.deals-page .was{font-size:12px;color:var(--muted);text-decoration:line-through;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.deals-page .name{margin:0;font-size:14px;font-weight:500;line-height:1.3;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em;}
body.deals-page .meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;}
body.deals-page .srcchip{flex:0 1 auto;background:rgba(15,42,74,.08);color:var(--navy-900);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis;}
body.deals-page .cat{flex:0 0 auto;background:var(--well);border:1px solid var(--line);border-radius:999px;padding:2px 8px;font-size:11px;color:var(--muted);}
body.deals-page .stock{flex:0 0 auto;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;}
/* ---------- CTA ---------- */
body.deals-page .view{margin-top:auto;display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;border:0;border-radius:8px;background:var(--navy-900);color:#fff;font-size:14px;font-weight:600;text-decoration:none;text-align:center;cursor:pointer;}
body.deals-page .view:hover{background:var(--navy-800);}
body.deals-page .card.soldout-card .view,
body.deals-page .view[disabled],
body.deals-page .view.disabled{background:#CBD5E1;color:#475569;cursor:not-allowed;pointer-events:none;}
/* ---------- pagination ---------- */
body.deals-page .pager{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;padding:16px 0;}
body.deals-page .pager a,
body.deals-page .pager button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:14px;text-decoration:none;cursor:pointer;}
body.deals-page .pager .active,
body.deals-page .pager [aria-current]{background:var(--navy-900);border-color:var(--navy-900);color:#fff;}
/* ---------- bottom nav (mobile) ---------- */
body.deals-page .bottomnav{position:fixed;left:0;right:0;bottom:0;z-index:70;display:flex;background:var(--navy-900);border-top:1px solid var(--navy-800);padding-bottom:env(safe-area-inset-bottom,0px);}
body.deals-page .bnav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;color:#CBD5E1;font-size:11px;text-decoration:none;}
body.deals-page .bnav-item.active,
body.deals-page .bnav-item[aria-current]{color:var(--amber-400);}
/* ---------- skeletons ---------- */
body.deals-page .skeleton-card{display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px;}
body.deals-page .skeleton-block{aspect-ratio:1/1;border-radius:8px;}
body.deals-page .skeleton-line{height:14px;border-radius:4px;}
body.deals-page .skeleton-line.short{width:60%;}
body.deals-page .skeleton-block,
body.deals-page .skeleton-line{background:#EAEFF5;animation:deal-pulse 1.2s ease-in-out infinite alternate;}
@keyframes deal-pulse{to{opacity:.46;}}
/* ---------- focus ---------- */
body.deals-page :is(a,button,input,select,[tabindex],.chip,.menu-item,.bnav-item,.view,.toggle,.btn-primary):focus-visible{outline:2px solid var(--amber-400);outline-offset:2px;border-radius:6px;}
/* ---------- ≥640px ---------- */
@media (min-width:640px){
  body.deals-page .grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--gap);}
  body.deals-page .controls{flex-direction:row;flex-wrap:wrap;align-items:center;}
  body.deals-page .searchwrap{flex:1 1 220px;}
  body.deals-page .chips{-webkit-mask-image:none;mask-image:none;}
}
/* ---------- ≥1024px ---------- */
@media (min-width:1024px){
  body.deals-page{padding-bottom:0;}
  body.deals-page .topbar{flex-wrap:nowrap;position:sticky;top:0;z-index:60;min-height:56px;padding:0 20px;}
  body.deals-page .mainmenu{order:0;flex:0 1 auto;}
  body.deals-page .controls{top:56px;flex-wrap:nowrap;min-height:56px;gap:12px;}
  body.deals-page .chips{flex:1 1 auto;min-width:0;}
  body.deals-page .searchwrap{flex:0 0 280px;margin-left:auto;}
  body.deals-page .searchwrap input{font-size:14px;}
  body.deals-page .grid{gap:16px;}
  body.deals-page .bottomnav{display:none;}
  body.deals-page .hc-big{font-size:16px;}
}
/* ---------- ≥1440px ---------- */
@media (min-width:1440px){
  body.deals-page .grid{gap:16px;}
}
/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion:reduce){
  body.deals-page *{animation:none !important;transition:none !important;scroll-behavior:auto !important;}
  body.deals-page .card:hover{transform:none;box-shadow:none;}
  body.deals-page .card:hover .thumb img{transform:none;}
  body.deals-page .skeleton-block,
  body.deals-page .skeleton-line{background:#EAEFF5;}
}

/* Implementation review fixes for the Kimi K3 layer */
body.deals-page .grid,
body.deals-page .controls,
body.deals-page .hero-card{max-width:1440px;}
body.deals-page .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
body.deals-page .grid{margin-block:8px 28px;padding:0 0 16px;}
body.deals-page .controls{position:relative;top:auto;margin-top:0;}
body.deals-page .hero-card{padding:0;}
body.deals-page .brand h1{color:#fff;}
body.deals-page .brand p{color:#CBD5E1;}
body.deals-page .mainmenu{background:rgba(255,255,255,.07);border:0;padding:3px;}
body.deals-page .menu-item.on{background:#fff;color:var(--navy-900);box-shadow:none;}
body.deals-page .hc-inner{background:transparent;box-shadow:none;border-radius:inherit;}
body.deals-page .hc-inner::before,
body.deals-page .hc-inner::after{display:none;}
body.deals-page .hc-pill b{color:var(--navy-900);}
body.deals-page .storebar-head{min-height:44px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:var(--well);box-shadow:none;}
body.deals-page .storepanel{display:block;}
body.deals-page .storepanel-tools{display:flex;gap:8px;margin-bottom:8px;}
body.deals-page .storepanel-tools input{min-height:44px;}
body.deals-page .storechips{max-height:190px;}
body.deals-page .chip.on{background:var(--navy-900);border-color:var(--navy-900);color:#fff;}
body.deals-page .status{padding:4px 12px;}
body.deals-page .body{padding:10px 0 0;}
body.deals-page .save{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:#DC3652;font-size:17px;box-shadow:0 4px 12px rgba(15,42,74,.14);}
body.deals-page .badge.new{background:var(--blue-600);color:#fff;}
body.deals-page .badge.pre,
body.deals-page .badge.soon{background:#F04438;color:#fff;}
body.deals-page .badge.sold{background:#64748B;color:#fff;}
body.deals-page .thumb .soldout{inset:auto 8px 8px;min-height:34px;border-radius:6px;background:rgba(15,42,74,.88);font-size:12px;}
body.deals-page .bottomnav .bnav-item.on{color:var(--amber-400);}
body.deals-page .skeleton-line.price{width:48%;height:20px;}
body.deals-page .skeleton-line.title{width:92%;height:34px;}
body.deals-page .skeleton-line.meta-line{width:72%;}
body.deals-page .skeleton-line.action{width:100%;height:44px;margin-top:auto;}

@media (min-width:1024px){
  body.deals-page .controls{position:sticky;top:56px;display:grid;grid-template-columns:minmax(320px,1fr) auto minmax(250px,auto);align-items:center;}
  body.deals-page .searchwrap{width:auto;margin:0;}
  body.deals-page .storebar{position:relative;width:190px;}
  body.deals-page .storebar-head{width:100%;}
  body.deals-page .storepanel{position:absolute;top:calc(100% + 8px);right:0;width:min(680px,75vw);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 38px rgba(15,42,74,.18);}
  body.deals-page .filters{justify-self:end;max-width:460px;}
  body.deals-page .chips.cats{grid-column:1/-1;width:100%;}
}

@media (max-width:639px){
  body.deals-page .grid,
  body.deals-page .controls,
  body.deals-page .hero-card,
  body.deals-page .status{width:calc(100% - 16px);}
  body.deals-page .brand h1{font-size:16px;}
  body.deals-page .brand p{display:none;}
  body.deals-page .mainmenu{flex:0 0 100%;width:100%;justify-content:flex-start;}
  body.deals-page .menu-item{flex:0 0 auto;}
  body.deals-page .topbar-right{max-width:48%;}
  body.deals-page .timer .timer-lbl{display:none;}
  body.deals-page .menu-item{font-size:12px;padding-inline:10px;}
  body.deals-page .hc-stats{overflow-x:auto;max-width:100%;}
  body.deals-page .hc-pill{padding:3px 7px;font-size:10px;}
  body.deals-page .searchwrap input{font-size:16px;}
  body.deals-page .btn-primary{min-width:48px;padding:0 12px;}
  body.deals-page .search-icon{display:block;}
  body.deals-page .btn-primary>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}
  body.deals-page .card{padding:8px;border-radius:10px;}
  body.deals-page .thumb{padding:5px;}
  body.deals-page .body{padding-top:8px;gap:5px;}
  body.deals-page .now{font-size:16px;}
  body.deals-page .was{font-size:10px;}
  body.deals-page .name{font-size:12px;}
  body.deals-page .meta{font-size:10px;gap:4px;}
  body.deals-page .srcchip,
  body.deals-page .cat,
  body.deals-page .stock{font-size:9px;padding:2px 5px;}
  body.deals-page .view{font-size:12px;}
}

/* Profile dashboard: account, membership, and Saved utility */
.profile-nav-link{max-width:210px;gap:8px;}
.profile-nav-link span{font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.08em;opacity:.7;}
.profile-nav-link strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

body.profile-page{
  --profile-paper:#fff9ed;--profile-ink:#101a3a;--profile-blue:#0b43d9;
  --profile-mango:#ffc928;--profile-coral:#f04438;--profile-mint:#c9f6df;
  --profile-line:#101a3a;--profile-shadow:7px 7px 0 #101a3a;
  min-height:100vh;background:var(--profile-paper);color:var(--profile-ink);
  font-family:ui-rounded,"Avenir Next","Trebuchet MS",sans-serif;
}
body.profile-page .topbar{background:var(--profile-paper);border-bottom:2px solid var(--profile-line);backdrop-filter:none;}
body.profile-page .brand h1{color:var(--profile-ink);}
body.profile-page .brand p{color:#566079;}
body.profile-page .nav-link{color:var(--profile-ink);}
body.profile-page .nav-link:hover{background:var(--profile-mango);}
body.profile-page .profile-logout{border:2px solid var(--profile-ink);border-radius:10px;background:var(--profile-ink);cursor:pointer;}
body.profile-page .profile-logout:hover{background:var(--profile-blue);}
body.profile-page .profile-dashboard{max-width:1180px;padding-top:42px;}
body.profile-page .profile-hero{display:grid;grid-template-columns:minmax(0,.8fr) minmax(430px,1.2fr);gap:34px;align-items:stretch;}
body.profile-page .profile-identity{display:flex;align-items:center;gap:20px;padding:28px 4px;}
body.profile-page .avatar{width:82px;height:82px;border:2px solid var(--profile-ink);border-radius:22px;background:var(--profile-blue);box-shadow:5px 5px 0 var(--profile-mango);font-size:32px;}
body.profile-page .profile-kicker,
body.profile-page .membership-kicker{margin:0 0 7px;font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;}
body.profile-page .profile-kicker{color:var(--profile-coral);}
body.profile-page .profile-identity h2{margin:0;font-size:clamp(28px,4vw,48px);line-height:1;letter-spacing:-.04em;overflow-wrap:anywhere;}
body.profile-page .profile-intro{max-width:430px;margin:12px 0 0;color:#566079;font-size:14px;line-height:1.55;}
body.profile-page .membership-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:22px;padding:26px;border:2px solid var(--profile-line);border-radius:22px;background:var(--profile-mango);box-shadow:var(--profile-shadow);overflow:hidden;}
body.profile-page .membership-card::after{content:"BURAOT";position:absolute;right:-7px;bottom:-19px;color:rgba(16,26,58,.09);font-size:74px;font-weight:900;letter-spacing:-.07em;pointer-events:none;}
body.profile-page .membership-main{position:relative;z-index:1;}
body.profile-page .membership-kicker{color:var(--profile-ink);}
body.profile-page .membership-card .tier-badge{display:inline-block;border:2px solid var(--profile-ink);border-radius:8px;background:var(--profile-ink);color:#fff;padding:8px 12px;font-size:13px;text-transform:uppercase;}
body.profile-page .membership-copy{max-width:480px;margin:14px 0 0;font-size:15px;font-weight:700;line-height:1.45;}
body.profile-page .membership-stamp{position:relative;z-index:1;align-self:start;padding:14px;border:2px dashed var(--profile-ink);border-radius:14px;background:rgba(255,255,255,.48);transform:rotate(1.5deg);}
body.profile-page .membership-stamp span{display:block;margin-bottom:5px;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
body.profile-page .membership-stamp strong{font-size:14px;line-height:1.2;}
body.profile-page .membership-benefits{position:relative;z-index:1;grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;}
body.profile-page .membership-benefits li{border:1px solid var(--profile-ink);border-radius:999px;background:#fff9ed;padding:7px 10px;font-size:11px;font-weight:800;}
body.profile-page[data-tier="collector"] .membership-card{background:var(--profile-mint);}
body.profile-page[data-tier="diamond"] .membership-card{background:#dce8ff;}
body.profile-page[data-tier="kuripot"] .membership-card{background:var(--profile-mango);}
body.profile-page .profile-details{display:grid;grid-template-columns:1.5fr .75fr .75fr;gap:12px;margin:32px 0 18px;}
body.profile-page .profile-detail{min-width:0;border:2px solid var(--profile-ink);border-radius:16px;background:#fff;padding:17px 18px;box-shadow:3px 3px 0 var(--profile-ink);}
body.profile-page .profile-detail span{display:block;margin-bottom:7px;color:#667089;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
body.profile-page .profile-detail strong{display:block;overflow:hidden;color:var(--profile-ink);font-size:15px;text-overflow:ellipsis;white-space:nowrap;}
body.profile-page .profile-detail-saved{background:var(--profile-mint);}
body.profile-page .profile-detail-saved strong{font-size:28px;line-height:.9;}
body.profile-page .profile-contact{position:relative;display:grid;grid-template-columns:96px minmax(210px,.7fr) minmax(380px,1.3fr);gap:22px;align-items:center;margin:0 0 48px;border:2px solid var(--profile-ink);border-radius:20px;background:#fff;box-shadow:5px 5px 0 var(--profile-ink);overflow:hidden;}
body.profile-page .contact-banner{align-self:stretch;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#1877f2;color:#fff;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
body.profile-page .contact-mark{display:grid;place-items:end center;width:42px;height:42px;border:2px solid #fff;border-radius:12px;background:#fff;color:#1877f2;font-family:Georgia,serif;font-size:42px;font-weight:900;line-height:1;overflow:hidden;transform:rotate(-2deg);}
body.profile-page .contact-copy{padding:24px 0;}
body.profile-page .contact-copy h3{margin:0;font-size:clamp(22px,2.5vw,34px);line-height:1;letter-spacing:-.04em;}
body.profile-page .contact-copy p:last-child{margin:10px 0 0;color:#566079;font-size:13px;line-height:1.5;}
body.profile-page .facebook-form{min-width:0;padding:22px 24px 22px 0;}
body.profile-page .facebook-form label{display:block;margin-bottom:8px;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;}
body.profile-page .facebook-input-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;border:2px solid var(--profile-ink);border-radius:12px;background:#f7f8fc;box-shadow:2px 2px 0 var(--profile-ink);transition:box-shadow .16s ease,transform .16s ease;}
body.profile-page .facebook-input-row:focus-within{box-shadow:4px 4px 0 var(--profile-mango);transform:translate(-1px,-1px);}
body.profile-page .facebook-prefix{padding-left:13px;color:#1877f2;font-size:18px;font-weight:900;}
body.profile-page #facebookContact{min-width:0;height:46px;border:0;outline:0;background:transparent;padding:0 10px;color:var(--profile-ink);font-family:inherit;font-size:14px;font-weight:700;line-height:1.2;}
body.profile-page #facebookContact::placeholder{color:#8a91a3;font-weight:600;}
body.profile-page .facebook-save{min-height:38px;margin-right:4px;border:0;border-radius:8px;background:#1877f2;color:#fff;padding:0 14px;font-size:12px;font-weight:900;cursor:pointer;white-space:nowrap;}
body.profile-page .facebook-save:hover{background:var(--profile-ink);}
body.profile-page .facebook-save:disabled{cursor:wait;opacity:.62;}
body.profile-page .facebook-feedback{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;}
body.profile-page #facebookStatus{margin:0;color:#6a7182;font-size:11px;line-height:1.35;}
body.profile-page #facebookStatus.is-success{color:#087446;font-weight:800;}
body.profile-page #facebookStatus.is-error{color:#b42318;font-weight:800;}
body.profile-page #facebookLink{flex:0 0 auto;color:#1459bd;font-size:11px;font-weight:900;text-decoration:none;}
body.profile-page #facebookLink:hover{text-decoration:underline;}
body.profile-page .profile-section{border-top:2px solid var(--profile-ink);padding-top:25px;}
body.profile-page .profile-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px;}
body.profile-page .profile-section-head h3{margin:0;font-size:clamp(25px,3vw,38px);letter-spacing:-.04em;}
body.profile-page .profile-browse{color:var(--profile-blue);font-size:13px;font-weight:900;text-decoration:none;}
body.profile-page .profile-browse:hover{text-decoration:underline;}
body.profile-page .profile-saved-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));max-width:none;margin:0;padding:0;}
body.profile-page .card{border:2px solid var(--profile-ink);border-radius:16px;box-shadow:4px 4px 0 var(--profile-ink);transform:none;}
body.profile-page .card:hover{transform:translate(-1px,-1px);box-shadow:6px 6px 0 var(--profile-ink);}
body.profile-page .thumb{background:#f5f1e8;}
body.profile-page .thumb img{object-fit:contain;}
body.profile-page .card .body{padding:14px;}
body.profile-page .card .prices{margin:0;min-height:24px;}
body.profile-page .card .now{color:var(--profile-blue);font-size:20px;}
body.profile-page .card .view{border-radius:9px;background:var(--profile-ink);}
body.profile-page .card .view:hover{background:var(--profile-blue);}
body.profile-page .card .view.disabled{background:#d7d6d1;color:#5d6270;cursor:not-allowed;pointer-events:none;}
body.profile-page .stock-out{background:#fee7e3;color:#a5271c;}
body.profile-page .soldout-card{background:#f5f1e8;}
body.profile-page .save{opacity:1;border:2px solid var(--profile-ink);box-shadow:2px 2px 0 var(--profile-ink);}
body.profile-page .profile-empty{margin:50px auto;}
body.profile-page .profile-empty .btn-primary{background:var(--profile-blue);border:2px solid var(--profile-ink);border-radius:10px;box-shadow:3px 3px 0 var(--profile-ink);}

@media(max-width:860px){
  body.profile-page .profile-hero{grid-template-columns:1fr;gap:12px;}
  body.profile-page .profile-identity{padding-top:4px;}
  body.profile-page .profile-contact{grid-template-columns:82px 1fr;}
  body.profile-page .facebook-form{grid-column:2;padding:0 22px 22px 0;}
}
@media(max-width:640px){
  body.profile-page .topbar{padding:9px 12px;}
  body.profile-page .topbar .nav-link{display:none;}
  body.profile-page .profile-logout{padding:8px 11px;}
  body.profile-page .profile-dashboard{padding:22px 14px 90px;}
  body.profile-page .profile-identity{align-items:flex-start;gap:14px;padding-bottom:18px;}
  body.profile-page .avatar{width:62px;height:62px;border-radius:17px;font-size:24px;}
  body.profile-page .profile-identity h2{font-size:28px;}
  body.profile-page .membership-card{grid-template-columns:1fr;padding:20px;box-shadow:5px 5px 0 var(--profile-ink);}
  body.profile-page .membership-stamp{width:max-content;max-width:100%;}
  body.profile-page .membership-benefits{grid-column:1;}
  body.profile-page .membership-benefits li{width:100%;border-radius:8px;}
  body.profile-page .profile-details{grid-template-columns:1fr 1fr;margin:27px 0 38px;}
  body.profile-page .profile-detail:first-child{grid-column:1/-1;}
  body.profile-page .profile-contact{grid-template-columns:1fr;gap:0;margin-bottom:38px;border-radius:16px;box-shadow:4px 4px 0 var(--profile-ink);}
  body.profile-page .contact-banner{align-self:auto;flex-direction:row;justify-content:flex-start;min-height:58px;padding:8px 16px;}
  body.profile-page .contact-mark{width:34px;height:34px;border-radius:9px;font-size:34px;}
  body.profile-page .contact-copy{padding:20px 18px 12px;}
  body.profile-page .facebook-form{grid-column:1;padding:0 18px 20px;}
  body.profile-page .facebook-input-row{grid-template-columns:auto minmax(0,1fr);}
  body.profile-page .facebook-save{grid-column:1/-1;width:calc(100% - 8px);min-height:42px;margin:0 4px 4px;}
  body.profile-page .facebook-feedback{align-items:flex-start;flex-direction:column;gap:6px;}
  body.profile-page .profile-section-head{align-items:flex-start;flex-direction:column;gap:8px;}
  body.profile-page .profile-saved-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  body.profile-page .card{border-radius:12px;box-shadow:3px 3px 0 var(--profile-ink);}
  body.profile-page .card .body{padding:10px;gap:6px;}
  body.profile-page .card .name{font-size:12px;}
  body.profile-page .card .now{font-size:16px;}
  body.profile-page .card .view{font-size:12px;padding:10px 6px;}
  body.profile-page .bottomnav{background:var(--profile-ink);border-top:0;backdrop-filter:none;}
  body.profile-page .bnav-item{color:#cbd1df;}
  body.profile-page .bnav-item.on{color:var(--profile-mango);}
}

/* Account-only standby: a quiet velvet-rope waiting room */
body.standby-page{
  --standby-ink:#101a3a;--standby-blue:#1857d8;--standby-sky:#91c9ff;
  --standby-paper:#fff8e9;--standby-mango:#ffc928;--standby-red:#f04438;
  min-height:100vh;margin:0;overflow-x:hidden;background:var(--standby-ink);color:var(--standby-paper);
  font-family:ui-rounded,"Avenir Next","Trebuchet MS",sans-serif;
}
body.standby-page::before{content:"";position:fixed;inset:-30%;z-index:-2;background:
  radial-gradient(circle at 20% 25%,rgba(46,144,250,.48),transparent 27%),
  radial-gradient(circle at 76% 68%,rgba(255,201,40,.2),transparent 22%),
  linear-gradient(145deg,#101a3a 18%,#0d2e78 64%,#101a3a 100%);}
body.standby-page .standby-grid{position:fixed;inset:0;z-index:-1;opacity:.14;background-image:
  linear-gradient(rgba(255,255,255,.24) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.24) 1px,transparent 1px);background-size:42px 42px;
  -webkit-mask-image:linear-gradient(to bottom,#000,transparent 82%);mask-image:linear-gradient(to bottom,#000,transparent 82%);}
.standby-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(1180px,calc(100% - 36px));margin:0 auto;padding:22px 0;}
.standby-brand{display:flex;align-items:center;gap:12px;color:var(--standby-paper);text-decoration:none;}
.standby-brand img{width:44px;height:44px;border:2px solid var(--standby-paper);border-radius:13px;box-shadow:4px 4px 0 var(--standby-mango);}
.standby-brand span{display:flex;flex-direction:column;line-height:1.1;}
.standby-brand strong{font-size:18px;letter-spacing:-.02em;}
.standby-brand small{margin-top:5px;color:#b8caec;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;}
.standby-lock{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.08);padding:9px 13px;color:#dfe9ff;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}
.standby-lock span{color:var(--standby-mango);font-size:14px;animation:standby-pulse 1.8s ease-in-out infinite;}
.standby-stage{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:42px;align-items:center;width:min(1180px,calc(100% - 36px));min-height:calc(100vh - 150px);margin:0 auto;padding:34px 0 74px;}
.standby-card{position:relative;display:grid;grid-template-columns:94px minmax(0,1fr);min-width:0;border:2px solid var(--standby-paper);border-radius:26px;background:var(--standby-paper);color:var(--standby-ink);box-shadow:12px 12px 0 var(--standby-mango);overflow:hidden;animation:standby-rise .65s cubic-bezier(.2,.9,.25,1) both;}
.standby-ticket{display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:var(--standby-red);color:#fff;padding:25px 12px;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;writing-mode:vertical-rl;transform:rotate(180deg);}
.standby-ticket strong{font-family:Georgia,serif;font-size:32px;letter-spacing:.02em;}
.standby-copy{padding:clamp(28px,5vw,60px);}
.standby-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 18px;color:var(--standby-blue);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;}
.standby-eyebrow span{width:26px;height:4px;border-radius:4px;background:var(--standby-mango);box-shadow:8px 0 0 var(--standby-red);}
.standby-copy h1{margin:0;color:var(--standby-ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5.3vw,68px);font-weight:900;line-height:.98;letter-spacing:-.055em;}
.standby-copy h1 em{color:var(--standby-blue);font-style:italic;}
.standby-lead{max-width:610px;margin:22px 0 0;color:#566079;font-size:15px;font-weight:700;line-height:1.6;}
.standby-instruction{display:flex;align-items:center;gap:14px;margin-top:30px;border:2px solid var(--standby-ink);border-radius:15px;background:#fff;padding:14px 16px;box-shadow:4px 4px 0 var(--standby-ink);}
.standby-step{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:11px;background:var(--standby-mango);font-family:Georgia,serif;font-size:22px;font-weight:900;}
.standby-instruction strong{display:block;margin-bottom:3px;font-size:11px;letter-spacing:.09em;text-transform:uppercase;}
.standby-instruction p{margin:0;font-size:16px;font-weight:900;}
.standby-actions{display:flex;align-items:center;gap:18px;margin-top:27px;}
.standby-login{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;border:2px solid var(--standby-ink);border-radius:12px;background:var(--standby-blue);color:#fff;padding:0 20px;font-size:13px;font-weight:900;white-space:nowrap;text-decoration:none;box-shadow:4px 4px 0 var(--standby-ink);transition:transform .16s ease,box-shadow .16s ease;}
.standby-login:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--standby-ink);}
.standby-actions p{max-width:260px;margin:0;color:#6a7182;font-size:11px;font-weight:700;line-height:1.45;}
.standby-mascot{position:relative;display:grid;place-items:center;align-self:end;margin:0;animation:standby-rise .65s .15s cubic-bezier(.2,.9,.25,1) both;}
.standby-mascot img{position:relative;z-index:2;width:min(100%,420px);height:auto;filter:drop-shadow(0 26px 30px rgba(0,0,0,.38));animation:standby-float 4.8s 1s ease-in-out infinite;}
.standby-halo{position:absolute;bottom:7%;width:92%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--standby-sky),rgba(24,87,216,.08) 58%,transparent 70%);filter:blur(5px);}
.standby-bubble{position:absolute;top:-12px;right:0;z-index:3;border:2px solid var(--standby-ink);border-radius:18px 18px 4px 18px;background:var(--standby-paper);color:var(--standby-ink);padding:13px 16px;font-size:13px;line-height:1.25;box-shadow:5px 5px 0 var(--standby-mango);transform:rotate(2deg);}
.standby-bubble strong{color:var(--standby-blue);font-size:17px;}
.standby-status{position:relative;z-index:3;display:inline-flex;align-items:center;gap:8px;margin-top:-24px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(16,26,58,.78);padding:9px 13px;color:#e5eeff;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;backdrop-filter:blur(10px);}
.standby-status span{width:8px;height:8px;border-radius:50%;background:#58db9c;box-shadow:0 0 0 4px rgba(88,219,156,.16);}
.standby-footer{display:flex;justify-content:space-between;gap:16px;width:min(1180px,calc(100% - 36px));margin:-42px auto 0;padding:20px 0 28px;border-top:1px solid rgba(255,255,255,.14);color:#91a5cd;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
@keyframes standby-rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes standby-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}
@keyframes standby-pulse{50%{opacity:.35}}
@media(max-width:900px){
  .standby-stage{grid-template-columns:1fr;gap:55px;}
  .standby-mascot{width:min(430px,90%);justify-self:center;}
  .standby-footer{margin-top:0;}
}
@media(max-width:620px){
  .standby-topbar{padding-top:14px;}.standby-brand small{display:none;}.standby-lock{padding:8px 10px;font-size:9px;}
  .standby-stage{width:min(100% - 24px,1180px);padding-top:18px;}
  .standby-card{grid-template-columns:1fr;border-radius:20px;box-shadow:7px 7px 0 var(--standby-mango);}
  .standby-ticket{min-height:49px;flex-direction:row;padding:10px 16px;writing-mode:horizontal-tb;transform:none;}
  .standby-ticket strong{font-size:22px;}
  .standby-copy{padding:28px 20px 30px;}
  .standby-copy h1{font-size:39px;}.standby-lead{font-size:13px;}
  .standby-instruction{align-items:flex-start;}.standby-instruction p{font-size:14px;}
  .standby-actions{align-items:stretch;flex-direction:column;}.standby-login{width:100%;}.standby-actions p{max-width:none;}
  .standby-bubble{top:-28px;right:-4px;}.standby-footer{width:calc(100% - 28px);}
}
@media(prefers-reduced-motion:reduce){
  body.standby-page *{animation:none !important;transition:none !important;}
}

/* Searchable store checkbox dropdown */
body.deals-page .storebar{position:relative;z-index:55;gap:0;}
body.deals-page .storebar-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:8px;width:100%;text-align:left;}
body.deals-page .storebar-head[aria-expanded="true"]{border-color:var(--navy-900);background:#fff;box-shadow:0 0 0 3px rgba(24,119,255,.11);}
body.deals-page .sb-title{font-weight:800;color:var(--navy-900);}
body.deals-page .sb-summary{min-width:0;overflow:hidden;color:var(--muted);font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap;}
body.deals-page .sb-count{justify-self:start;padding:3px 7px;background:#e9f1ff;color:#1557b7;font-variant-numeric:tabular-nums;white-space:nowrap;}
body.deals-page .sb-caret{margin-left:auto;transform:none;}
body.deals-page .storebar-head[aria-expanded="false"] .sb-caret{transform:rotate(-90deg);}
body.deals-page .storebar-head[aria-expanded="true"] .sb-caret{transform:rotate(0);}
body.deals-page .storepanel{position:absolute;top:calc(100% + 8px);right:0;display:block;width:min(530px,calc(100vw - 24px));max-height:none;margin:0;overflow:hidden;border:1px solid #cfd9e7;border-radius:14px;background:#fff;box-shadow:0 22px 56px rgba(15,42,74,.22),0 3px 10px rgba(15,42,74,.1);opacity:1;z-index:100;}
body.deals-page .storepanel[hidden]{display:none !important;}
body.deals-page .storepanel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:var(--navy-900);color:#fff;}
body.deals-page .storepanel-head>div{display:flex;flex-direction:column;gap:2px;}
body.deals-page .storepanel-kicker{color:var(--amber-400);font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
body.deals-page .storepanel-head strong{font-size:16px;line-height:1.2;}
body.deals-page .storepanel-close{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.24);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;font-size:22px;line-height:1;cursor:pointer;}
body.deals-page .storepanel-close:hover{background:rgba(255,255,255,.16);}
body.deals-page .storepanel-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:14px 14px 8px;background:#f8fafc;}
body.deals-page .storepanel-search input{min-width:0;min-height:44px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 13px;color:var(--ink);font:inherit;font-size:14px;outline:0;}
body.deals-page .storepanel-search input:focus{border-color:var(--blue-600);box-shadow:0 0 0 3px rgba(24,119,255,.12);}
body.deals-page .store-search-button,
body.deals-page .store-apply{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:0;border-radius:9px;background:var(--navy-900);color:#fff;padding:0 14px;font-size:13px;font-weight:800;white-space:nowrap;cursor:pointer;}
body.deals-page .store-search-button:hover,
body.deals-page .store-apply:hover{background:var(--blue-600);}
body.deals-page .store-search-icon{display:block;width:16px;height:16px;background:currentColor;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 105.293 14l5.353 5.354 1.414-1.414-5.353-5.354A8 8 0 0010 2zm0 2a6 6 0 110 12 6 6 0 010-12z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 2a8 8 0 105.293 14l5.353 5.354 1.414-1.414-5.353-5.354A8 8 0 0010 2zm0 2a6 6 0 110 12 6 6 0 010-12z'/%3E%3C/svg%3E");}
body.deals-page .storepanel-tools{display:flex;gap:7px;margin:0;padding:0 14px 10px;background:#f8fafc;}
body.deals-page .storepanel-tools .mini{min-height:32px;padding:0 11px;border-radius:8px;background:#fff;color:var(--navy-900);font-size:11px;}
body.deals-page .store-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:min(330px,42vh);overflow-y:auto;padding:12px 14px;overscroll-behavior:contain;scrollbar-color:#b9c5d6 transparent;}
body.deals-page .store-option{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:42px;border:1px solid #dbe3ed;border-radius:9px;background:#fff;padding:8px 10px;color:var(--navy-900);font-size:12px;font-weight:700;cursor:pointer;transition:border-color .12s ease,background .12s ease,transform .12s ease;}
body.deals-page .store-option:hover{border-color:#8fa5c1;background:#f8fbff;transform:translateY(-1px);}
body.deals-page .store-option.is-selected{border-color:#2477e8;background:#eef5ff;}
body.deals-page .store-option[hidden]{display:none;}
body.deals-page .store-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;}
body.deals-page .store-checkmark{display:grid;place-items:center;width:20px;height:20px;border:2px solid #9aabc0;border-radius:5px;background:#fff;color:#fff;}
body.deals-page .store-option input:checked+.store-checkmark{border-color:var(--blue-600);background:var(--blue-600);}
body.deals-page .store-option input:checked+.store-checkmark::after{content:"";width:8px;height:4px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-1px) rotate(-45deg);}
body.deals-page .store-option input:focus-visible+.store-checkmark{outline:2px solid var(--amber-400);outline-offset:2px;}
body.deals-page .store-option-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
body.deals-page .store-option-tag{border-radius:999px;background:var(--amber-400);padding:3px 6px;color:var(--navy-900);font-size:8px;font-weight:900;letter-spacing:.06em;}
body.deals-page .store-option.is-locked{cursor:not-allowed;opacity:.52;}
body.deals-page .store-option.is-locked:hover{border-color:#dbe3ed;background:#fff;transform:none;}
body.deals-page .store-empty{margin:6px 14px 14px;border:1px dashed #c6d2e1;border-radius:9px;padding:18px;color:var(--muted);font-size:12px;text-align:center;}
body.deals-page .storepanel-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid #e1e7ef;background:#fff;padding:11px 14px;}
body.deals-page .storepanel-actions p{margin:0;color:var(--muted);font-size:11px;}
body.deals-page .storepanel-actions strong{color:var(--navy-900);font-size:14px;font-variant-numeric:tabular-nums;}
body.deals-page .store-apply{min-width:150px;background:var(--blue-600);box-shadow:3px 3px 0 var(--navy-900);}
body.deals-page .store-apply:hover{background:var(--navy-900);}
body.deals-page .store-apply.has-changes{background:var(--blue-600);}

@media(min-width:1024px){
  body.deals-page .storebar{width:230px;}
}
@media(max-width:639px){
  body.deals-page .storebar{width:100%;}
  body.deals-page .storepanel{position:fixed;inset:118px 8px calc(60px + env(safe-area-inset-bottom,0px));display:flex;width:auto;max-height:none;flex-direction:column;}
  body.deals-page .store-checklist{grid-template-columns:1fr;flex:1;min-height:0;max-height:none;}
  body.deals-page .sb-summary{display:none;}
  body.deals-page .storebar-head{grid-template-columns:auto minmax(0,1fr) auto;}
  body.deals-page .storepanel-search{grid-template-columns:minmax(0,1fr) 46px;}
  body.deals-page .store-search-button{padding:0;}
  body.deals-page .store-search-button span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}
  body.deals-page .storepanel-actions{position:static;}
}
@media(prefers-reduced-motion:reduce){
  body.deals-page .store-option{transition:none;}
  body.deals-page .store-option:hover{transform:none;}
}

/* ---------- simple standby (2026-07-20): mascot-first, no clutter ---------- */
.standby-simple{display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;width:min(560px,calc(100% - 36px));min-height:calc(100vh - 140px);
  margin:0 auto;padding:6px 0 56px;}
.standby-simple .standby-mascot{align-self:center;margin-bottom:2px;}
.standby-simple .standby-mascot img{width:min(74vw,290px);}
.standby-simple .standby-bubble{top:-6px;right:-14px;animation:standby-rise .5s .25s cubic-bezier(.2,.9,.25,1) both;}
.standby-simple h1{margin:10px 0 0;color:var(--standby-paper);
  font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,7vw,50px);
  font-weight:900;letter-spacing:-.04em;line-height:1.02;}
.standby-simple p{margin:13px 0 26px;color:#b8caec;font-size:15px;font-weight:700;line-height:1.65;}
.standby-simple p strong{color:var(--standby-mango);}
.standby-simple .standby-login{min-width:220px;font-size:14px;}
@media (max-width:640px){
  .standby-simple .standby-bubble{right:0;}
}


/* ---------- profile photo + sale-variant details (2026-07-20) ---------- */
.avatar-row{display:flex;align-items:center;gap:16px;margin-top:4px}
.avatar-preview{width:76px;height:76px;border-radius:22px;object-fit:cover;border:2px solid var(--line);background:#fff}
.avatar-fallback{display:grid;place-items:center;font-size:32px}
.avatar-upload{cursor:pointer}
.avatar-upload input{display:none}
#avatarStatus{margin:10px 0 0;font-size:12px;color:var(--muted)}
.card .variants{margin:3px 0 0;font-size:11px;font-weight:700;color:#5a6b8c;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Desktop toolbar: drop the 460px cap + hidden-scrollbar rail so Min discount,
   Sort and Hide-sold-out sit on ONE aligned line; categories wrap to extra lines
   instead of a masked scroll rail. Mobile keeps the swipeable rails. */
@media (min-width:1024px){
  body.deals-page .controls{grid-template-columns:minmax(280px,1fr) auto auto;column-gap:14px;}
  body.deals-page .controls .filters{max-width:none;flex-wrap:wrap;overflow-x:visible;
    row-gap:8px;justify-content:flex-end;padding-bottom:0;}
  body.deals-page .chips{flex-wrap:wrap;overflow-x:visible;scroll-snap-type:none;
    -webkit-mask-image:none;mask-image:none;}
}
@media (max-width:1023px){
  body.deals-page .controls .filters{flex-wrap:wrap;overflow-x:visible;row-gap:8px;}
}

/* ---- payment details card (profile dashboard) ---- */

.pay-form { display: grid; gap: 16px; }

.pay-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}

.pay-grid label {
  display: grid;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
}

.pay-grid input {
  border: 1px solid rgba(16, 26, 58, .2);
  border-radius: 10px;
  padding: 11px 13px;
  font: inherit;
  background: #fff;
}

.pay-qr-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.pay-qr-tile {
  border: 1px dashed rgba(16, 26, 58, .25);
  border-radius: 12px;
  padding: 12px 10px;
  display: grid;
  gap: 8px;
  justify-items: center;
  text-align: center;
}

.pay-qr-name { font-size: 12.5px; font-weight: 700; }

.pay-qr-tile img {
  width: 96px;
  height: 96px;
  object-fit: contain;
  border-radius: 8px;
  background: #fff;
  border: 1px solid rgba(16, 26, 58, .12);
}

.pay-qr-upload { cursor: pointer; font-size: 12.5px; padding: 7px 14px; }

.pay-qr-remove {
  border: 0;
  background: none;
  color: #b3261e;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: underline;
}

@media (max-width: 720px) {
  .pay-grid { grid-template-columns: 1fr; }
  .pay-qr-grid { grid-template-columns: 1fr 1fr; }
}

/* ===========================================================================
   Simplified profile page (desktop-first cleanup)
   =========================================================================== */

.pro-shell {
  width: min(1080px, calc(100% - 32px));
  margin: 0 auto;
  padding: 28px 0 110px;
  display: grid;
  gap: 18px;
}

.pro-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  flex-wrap: wrap;
  background: #fff;
  border: 1px solid rgba(16, 26, 58, .14);
  border-radius: 18px;
  padding: 18px 22px;
}

.pro-id { display: flex; align-items: center; gap: 16px; min-width: 0; }

.pro-avatar {
  position: relative;
  width: 72px;
  height: 72px;
  flex: none;
}

.pro-avatar img, .pro-avatar span {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #101a3a;
  color: #ffc928;
  font-size: 28px;
  font-weight: 800;
}

.pro-avatar img[hidden], .pro-avatar span[hidden] { display: none; }

.pro-avatar-edit {
  position: absolute;
  right: -2px;
  bottom: -2px;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: #ffc928;
  color: #101a3a;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  cursor: pointer;
  border: 2px solid #fff;
  box-shadow: 0 2px 6px rgba(16, 26, 58, .25);
}

.pro-who { min-width: 0; }
.pro-who h2 { margin: 0; font-size: 24px; letter-spacing: -.02em; }
.pro-meta { margin: 3px 0 0; color: #5f6a84; font-size: 13.5px; overflow: hidden; text-overflow: ellipsis; }

.pro-badges { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

.pro-stat {
  font-size: 13px;
  font-weight: 600;
  color: #5f6a84;
  background: rgba(16, 26, 58, .06);
  border-radius: 999px;
  padding: 7px 14px;
}

.pro-stat b { color: #101a3a; font-size: 14px; }

.pro-grid {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 18px;
  align-items: start;
}

.pro-card {
  background: #fff;
  border: 1px solid rgba(16, 26, 58, .14);
  border-radius: 18px;
  padding: 20px 22px;
}

.pro-card h3 { margin: 0 0 4px; font-size: 17px; letter-spacing: -.01em; }

.pro-note {
  margin: 0 0 6px;
  color: #5f6a84;
  font-size: 13px;
  line-height: 1.5;
  min-height: 0;
}

.pro-note.is-error, .pro-note.is-error * { color: #b3261e; }
.pro-note.is-success { color: #0f5132; }

.pro-form { display: grid; gap: 12px; margin-top: 10px; }

.pro-row { display: flex; gap: 8px; }

.pro-row input { flex: 1; min-width: 0; }

.pro-form input, .pro-fields input {
  border: 1px solid rgba(16, 26, 58, .2);
  border-radius: 10px;
  padding: 9px 12px;
  font: inherit;
  font-size: 14px;
  background: #fff;
  width: 100%;
}

.pro-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  align-self: start;
  border: 0;
  background: #101a3a;
  color: #ffc928;
  font-weight: 700;
  font-size: 13px;
  border-radius: 999px;
  padding: 9px 18px;
  cursor: pointer;
  white-space: nowrap;
}

.pro-btn:hover { background: #1c2b5c; }

.pro-btn-ghost {
  background: #fff;
  color: #101a3a;
  border: 1.5px solid rgba(16, 26, 58, .3);
  padding: 6px 14px;
  font-size: 12px;
}

.pro-btn-ghost:hover { background: rgba(16, 26, 58, .06); }

.pro-link { color: #1b64e8; font-weight: 700; font-size: 13.5px; text-decoration: none; }
.pro-link:hover { text-decoration: underline; }

.pro-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 12px;
}

.pro-fields label {
  display: grid;
  gap: 5px;
  font-size: 12.5px;
  font-weight: 600;
  color: #3c465f;
}

.pro-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.pro-actions .pro-note { margin: 0; flex: 1; }

/* compact QR tiles inside the payment card */
.pro-card .pay-qr-grid { grid-template-columns: repeat(4, 1fr); gap: 10px; }
.pro-card .pay-qr-tile { padding: 10px 8px; gap: 6px; }
.pro-card .pay-qr-tile img { width: 72px; height: 72px; }
.pro-card .pay-qr-name { font-size: 11.5px; }

.pro-saved-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.pro-saved-head h3 { margin: 0; }

.pro-empty {
  text-align: center;
  color: #5f6a84;
  font-size: 14px;
  padding: 22px 0 10px;
}

.pro-empty-mascot { width: 84px; height: auto; display: block; margin: 0 auto 8px; }

@media (max-width: 880px) {
  .pro-grid { grid-template-columns: 1fr; }
  .pro-head { padding: 16px; }
  .pro-fields { grid-template-columns: 1fr; }
  .pro-card .pay-qr-grid { grid-template-columns: repeat(2, 1fr); }
  .pro-actions { flex-direction: column; align-items: stretch; }
  .pro-actions .pro-btn { align-self: stretch; }
}

/* ---- COD toggle on the profile payment card ---- */

.pro-cod {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(16, 26, 58, .16);
  border-radius: 12px;
  cursor: pointer;
  background: #fff;
}

.pro-cod input { margin-top: 3px; width: 16px; height: 16px; accent-color: #101a3a; }

.pro-cod span { display: grid; gap: 2px; }
.pro-cod b { font-size: 13.5px; color: #101a3a; }
.pro-cod small { font-size: 12px; color: #5f6a84; }

/* ---- Kuripot Deals sub-tabs (Best Deals | Working Codes) ---- */
.premium-tabs{
  display:flex;gap:8px;justify-content:center;flex-wrap:wrap;
  width:min(100% - 32px,1180px);margin:14px auto 0;
}
.premium-tabs[hidden]{display:none}   /* display:flex above would otherwise defeat the hidden attribute */
.ptab{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;
  padding:10px 22px;border-radius:999px;border:1.5px solid var(--line);
  background:rgba(255,255,255,.75);color:var(--ink);font-weight:800;font-size:14px;
  cursor:pointer;white-space:nowrap;transition:.14s;
}
.ptab:hover{border-color:var(--azure)}
.ptab.on{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 6px 16px rgba(20,102,224,.25)}

/* codes view: hide the deal controls, let the codes list span full width */
body.premium-codes .controls{display:none}
body.premium-codes #grid{display:block}
body.premium-codes .status{margin-top:6px}

.codes-view{width:min(100%,940px);margin:0 auto}
.codes-searchbar{margin:2px 0 16px}
.codes-searchbar input{
  width:100%;max-width:540px;padding:12px 18px;font:inherit;font-size:15px;
  border:1px solid var(--line);border-radius:999px;background:#fff;
  box-shadow:0 3px 10px rgba(23,80,180,.05);
}
.codes-searchbar input:focus{border-color:var(--azure);outline:none;box-shadow:0 0 0 4px var(--accent-soft)}
.codes-list{display:grid;gap:14px}

@media (max-width:600px){
  .ptab{flex:1;justify-content:center;padding:11px 10px}
  .premium-tabs{width:min(100% - 24px,1180px)}
}

/* ---- Kuripot membership paywall (/reseller for free users) ---- */
.upgrade-page{background:linear-gradient(180deg,#eef3ff,#fbfcff);min-height:100vh}
.upgrade-shell{max-width:660px;margin:0 auto;padding:44px 18px 110px}
.upgrade-card{background:#fff;border:1px solid rgba(20,36,94,.12);border-radius:24px;padding:clamp(24px,4vw,38px);box-shadow:0 22px 55px rgba(20,36,94,.12);text-align:center}
.upgrade-crown{font-size:46px;line-height:1}
.upgrade-tag{display:inline-block;margin:8px 0 12px;padding:6px 16px;border-radius:999px;background:var(--navy);color:#fff;font-size:11px;font-weight:900;letter-spacing:.14em}
.upgrade-card h2{margin:0 0 6px;font-size:clamp(26px,4vw,36px);color:var(--ink)}
.upgrade-card h2 b{color:#1466e0}
.upgrade-card h2 small{font-size:16px;color:var(--muted);font-weight:700}
.upgrade-lead{color:var(--muted);margin:0 0 18px}
.upgrade-benefits{list-style:none;margin:0 auto 20px;padding:0;max-width:430px;text-align:left;display:grid;gap:10px}
.upgrade-benefits li{position:relative;padding:12px 14px 12px 42px;background:#f4f8ff;border:1px solid rgba(20,36,94,.08);border-radius:12px;font-size:14px}
.upgrade-benefits li::before{content:"✓";position:absolute;left:15px;top:12px;color:#12b76a;font-weight:900}
.upgrade-how{text-align:left;max-width:430px;margin:0 auto 22px;padding:16px 18px;border:1px dashed rgba(20,36,94,.22);border-radius:14px;background:#fffdf5}
.upgrade-how strong{display:block;margin-bottom:8px}
.upgrade-how ol{margin:0;padding-left:20px;color:#33415c;display:grid;gap:6px;font-size:14px}
.upgrade-cta{display:block;max-width:430px;margin:0 auto;padding:15px;border-radius:14px;background:var(--navy);color:#fff;font-weight:900;text-decoration:none;box-shadow:0 10px 24px rgba(20,36,94,.28)}
.upgrade-cta:hover{background:#0f1c4c}
.upgrade-back{display:inline-block;margin-top:14px;color:var(--muted);text-decoration:none;font-weight:700;font-size:14px}

/* ---- free-tier "showing 50%" upgrade banner on the deals grid ---- */
.cap-banner{width:min(1240px,calc(100% - 40px));margin:12px auto 0;padding:12px 18px;border-radius:14px;background:linear-gradient(135deg,#fff5da,#fff);border:1px solid #ffd374;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cap-banner span{font-size:14px;color:var(--ink)}
.cap-banner b{color:#a9600a}
.cap-banner a{margin-left:auto;background:var(--navy);color:#fff;padding:9px 18px;border-radius:999px;font-weight:800;text-decoration:none;font-size:13px;white-space:nowrap}
.cap-banner a:hover{background:#0f1c4c}

/* ---- InstaPay QR payment on the paywall ---- */
.pay-box{max-width:430px;margin:8px auto 4px;display:grid;gap:14px}
.pay-qr{background:#fff;border:1px solid rgba(20,36,94,.14);border-radius:16px;padding:14px;display:flex;justify-content:center}
.pay-qr img{width:min(240px,72%);height:auto;border-radius:8px}
.pay-instructions{margin:0;color:#33415c;font-size:14px;line-height:1.55;text-align:center}
.pay-ref{display:grid;gap:8px;text-align:left;background:#fffdf5;border:1px dashed rgba(20,36,94,.22);border-radius:14px;padding:14px 16px}
.pay-ref>label{font-size:13px;font-weight:800;color:var(--ink)}
.pay-ref-row{display:flex;gap:8px}
.pay-ref-row input{flex:1;min-width:0;border:1px solid rgba(20,36,94,.25);border-radius:12px;padding:12px 14px;font:inherit;font-size:15px;background:#fff}
.pay-verify{display:inline-flex!important;align-items:center;width:auto!important;max-width:none!important;padding:12px 22px!important;margin:0!important}
.pay-msg{min-height:20px;margin:2px 0 0;font-size:14px;color:var(--muted)}
.pay-msg.ok{color:#0f7a3d;font-weight:800}
.pay-msg.err{color:#c0392b;font-weight:700}
.pay-hint{margin:2px 0 0;font-size:12.5px;color:#5f6a84;line-height:1.5}
