/* ═══════════════════════════════════════════════════════
   SNAGLIFY — Full Design System CSS (v3)
   Fonts: Plus Jakarta Sans (body) + Nunito (headings)
   Colors: Blue #1a56db / Orange #f97316 / Green #16a34a
═══════════════════════════════════════════════════════ */

/* ── Reset & Base ──────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;font-size:15px;line-height:1.6;color:#111827;background:#f3f4f6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5{font-family:'Nunito',sans-serif;font-weight:900;line-height:1.2;color:#111827}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button{cursor:pointer;font-family:inherit}
input,select,textarea{font-family:inherit}

/* ── CSS Variables ─────────────────────────────────────── */
:root{
  --blue:#1a56db;--blue-dark:#1344b8;--blue-deeper:#0e2e7a;--blue-mid:#2563eb;--blue-light:#eff6ff;
  --orange:#f97316;--orange-dark:#ea6c0a;
  --green:#16a34a;--green-light:#f0fdf4;
  --red:#dc2626;
  --gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;
  --gray-400:#9ca3af;--gray-500:#6b7280;--gray-700:#374151;--gray-900:#111827;
  --shadow-sm:0 1px 3px rgba(0,0,0,.07),0 1px 2px rgba(0,0,0,.05);
  --shadow:0 4px 12px rgba(0,0,0,.08);
  --shadow-lg:0 10px 30px rgba(0,0,0,.12);
  --radius:14px;--radius-sm:8px;--radius-lg:20px;
}

/* ── Layout ────────────────────────────────────────────── */
.wrap{max-width:1280px;margin:0 auto;padding:0 20px}
main{min-height:70vh}
.page-body{padding:36px 20px}

/* ── Navbar ────────────────────────────────────────────── */
.nav{background:linear-gradient(135deg,#0e2e7a,#1344b8 50%,#2563eb);position:sticky;top:0;z-index:100;box-shadow:0 2px 16px rgba(14,46,122,.35)}
.nav-inner{max-width:1280px;margin:0 auto;padding:0 20px;display:flex;align-items:center;height:64px;gap:16px}
.nav-logo{display:flex;align-items:center;gap:10px;shrink:0;margin-right:4px}
.nav-logo-icon{width:36px;height:36px;background:white;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.15);flex-shrink:0}
.nav-logo-icon svg{width:22px;height:22px}
.nav-logo-text{font-family:'Nunito',sans-serif;font-weight:900;font-size:1.2rem;color:white;letter-spacing:-.3px}
.nav-logo-text span{color:#fde68a}
.nav-links{display:flex;align-items:center;gap:2px;flex:1}
.nav-links a,.nav-drop-btn{padding:7px 12px;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.88);border-radius:8px;border:none;background:none;transition:all .15s;white-space:nowrap;display:flex;align-items:center;gap:5px}
.nav-links a:hover,.nav-drop-btn:hover,.nav-links a.active{color:white;background:rgba(255,255,255,.15)}
.nav-hot{color:#fde68a!important;font-weight:700}
.nav-hot:hover{background:rgba(253,230,138,.12)!important}
.nav-dropdown{position:relative}
.nav-drop-btn{cursor:pointer}
.nav-drop-menu{display:none;position:absolute;top:calc(100% + 8px);left:0;background:white;border:1px solid var(--gray-200);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:10px;min-width:220px;display:grid;grid-template-columns:1fr 1fr;gap:4px}
.nav-dropdown:hover .nav-drop-menu{display:grid}
.nav-drop-menu a{padding:8px 12px;font-size:.82rem;color:var(--gray-700);border-radius:8px;font-weight:500;transition:all .12s}
.nav-drop-menu a:hover{color:var(--blue);background:var(--blue-light)}
.drop-all{grid-column:1/-1;border-top:1px solid var(--gray-100);margin-top:4px;padding-top:10px!important;color:var(--blue)!important;font-weight:700!important}
.nav-search{display:flex;align-items:center;flex:1;max-width:280px;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.2);border-radius:50px;padding:0 14px;gap:8px;transition:all .2s}
.nav-search:focus-within{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.45)}
.nav-search-icon{color:rgba(255,255,255,.6);flex-shrink:0}
.nav-search input{flex:1;background:none;border:none;outline:none;color:white;font-size:.85rem;padding:9px 0}
.nav-search input::placeholder{color:rgba(255,255,255,.55)}
.nav-auth{display:flex;align-items:center;gap:8px;flex-shrink:0}
.nav-signin{font-size:.85rem;font-weight:600;color:rgba(255,255,255,.88);padding:7px 14px;border:1.5px solid rgba(255,255,255,.2);border-radius:10px;background:rgba(255,255,255,.1);transition:all .15s}
.nav-signin:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.35)}
.nav-account{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.88);padding:7px 12px;border-radius:10px;background:rgba(255,255,255,.1);transition:all .15s}
.nav-account:hover{background:rgba(255,255,255,.18)}
.nav-admin-link{font-size:.78rem;font-weight:700;color:#fde68a;padding:5px 10px;background:rgba(253,230,138,.15);border-radius:8px}
.btn-orange,.nav-signup{font-family:'Nunito',sans-serif;font-weight:900;font-size:.85rem;color:white!important;padding:8px 18px;border-radius:10px;background:var(--orange);box-shadow:0 2px 12px rgba(249,115,22,.4);transition:all .15s;border:none}
.btn-orange:hover,.nav-signup:hover{background:var(--orange-dark);transform:translateY(-1px);box-shadow:0 4px 16px rgba(249,115,22,.5)}
.nav-burger{display:none;flex-direction:column;gap:5px;padding:6px;background:rgba(255,255,255,.1);border:none;border-radius:8px}
.nav-burger span{display:block;width:20px;height:2px;background:white;border-radius:2px;transition:all .2s}

/* ── Flash ─────────────────────────────────────────────── */
.flash{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;font-size:.88rem;font-weight:600}
.flash-success{background:#dcfce7;color:#166534;border-bottom:2px solid #86efac}
.flash-error{background:#fee2e2;color:#991b1b;border-bottom:2px solid #fca5a5}
.flash-info{background:#dbeafe;color:#1e40af;border-bottom:2px solid #93c5fd}
.flash button{background:none;border:none;font-size:1.1rem;cursor:pointer;opacity:.6;margin-left:12px}

/* ── Buttons ────────────────────────────────────────────── */
.btn-blue{font-family:'Nunito',sans-serif;font-weight:900;display:inline-flex;align-items:center;justify-content:center;padding:11px 22px;border-radius:12px;color:white;background:linear-gradient(135deg,var(--blue),var(--blue-mid));border:none;font-size:.9rem;transition:all .15s;box-shadow:0 2px 10px rgba(26,86,219,.25);cursor:pointer}
.btn-blue:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(26,86,219,.35)}
.btn-shop-amazon{background:#ff9900;color:white;font-family:'Nunito',sans-serif;font-weight:900;border-radius:12px;padding:11px 16px;font-size:.85rem;border:none;transition:all .15s;display:block;text-align:center;cursor:pointer}
.btn-shop-amazon:hover{background:#e68900;transform:translateY(-1px)}
.btn-shop-walmart{background:#0071ce;color:white;font-family:'Nunito',sans-serif;font-weight:900;border-radius:12px;padding:11px 16px;font-size:.85rem;border:none;transition:all .15s;display:block;text-align:center}
.btn-shop-walmart:hover{background:#005fa8;transform:translateY(-1px)}
.btn-shop-bestbuy{background:#003087;color:white;font-family:'Nunito',sans-serif;font-weight:900;border-radius:12px;padding:11px 16px;font-size:.85rem;border:none;transition:all .15s;display:block;text-align:center}
.btn-shop-bestbuy:hover{background:#002266;transform:translateY(-1px)}
.btn-shop-ebay{background:#e53238;color:white;font-family:'Nunito',sans-serif;font-weight:900;border-radius:12px;padding:11px 16px;font-size:.85rem;border:none;transition:all .15s;display:block;text-align:center}
.btn-shop-ebay:hover{background:#c82026;transform:translateY(-1px)}
.btn-shop-default{background:linear-gradient(135deg,var(--blue),var(--blue-mid));color:white;font-family:'Nunito',sans-serif;font-weight:900;border-radius:12px;padding:11px 16px;font-size:.85rem;border:none;transition:all .15s;display:block;text-align:center}

/* ── Hero ────────────────────────────────────────────────── */
.hero{background:linear-gradient(135deg,#0e2e7a,#1344b8 40%,#2563eb 80%,#3b82f6);position:relative;overflow:hidden;padding:60px 20px}
.hero-bg{position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Ccircle cx='30' cy='30' r='20'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none}
.hero-inner{position:relative;text-align:center;max-width:720px;margin:0 auto}
.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);color:white;padding:6px 16px;border-radius:50px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:20px}
.hero-badge-dot{width:8px;height:8px;background:#4ade80;border-radius:50%;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.hero-h1{font-size:clamp(2rem,5vw,3.2rem);color:white;margin-bottom:16px;line-height:1.15}
.hero-sub{color:rgba(255,255,255,.82);font-size:1.05rem;margin-bottom:32px;max-width:560px;margin-left:auto;margin-right:auto}
.hero-sub strong{color:white}
.hero-search{display:flex;align-items:center;gap:12px;background:white;border-radius:50px;padding:8px 8px 8px 20px;box-shadow:0 8px 32px rgba(0,0,0,.2);max-width:580px;margin:0 auto 28px}
.hero-search svg{color:var(--gray-400);flex-shrink:0}
.hero-search input{flex:1;border:none;outline:none;font-size:.95rem;color:var(--gray-900);background:none}
.hero-search button{font-family:'Nunito',sans-serif;font-weight:900;background:linear-gradient(135deg,var(--blue),var(--blue-mid));color:white;border:none;border-radius:40px;padding:10px 22px;font-size:.88rem;white-space:nowrap;cursor:pointer;transition:all .15s}
.hero-search button:hover{transform:translateY(-1px)}
.hero-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.hero-stat{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:10px 18px;display:flex;flex-direction:column;align-items:center;min-width:100px}
.hero-stat strong{font-family:'Nunito',sans-serif;font-weight:900;font-size:1.25rem;color:white;line-height:1}
.hero-stat span{font-size:.72rem;color:rgba(255,255,255,.65);margin-top:3px;text-align:center}

/* ── Ticker ─────────────────────────────────────────────── */
.ticker-bar{background:white;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;overflow:hidden;height:40px}
.ticker-label{background:var(--blue);color:white;font-size:.72rem;font-weight:900;padding:0 14px;height:100%;display:flex;align-items:center;white-space:nowrap;flex-shrink:0}
.ticker-track{display:flex;gap:0;overflow:hidden;flex:1;align-items:center}
.ticker-item{display:flex;align-items:center;gap:8px;padding:0 20px;font-size:.8rem;white-space:nowrap;border-right:1px solid var(--gray-100);height:100%;transition:background .15s}
.ticker-item:hover{background:var(--gray-50)}
.ticker-name{color:var(--gray-700);font-weight:600}
.ticker-price{color:var(--green);font-weight:700;font-family:'Nunito',sans-serif}
.ticker-save{background:var(--orange);color:white;font-size:.68rem;font-weight:800;padding:2px 6px;border-radius:50px}

/* ── Sections ───────────────────────────────────────────── */
.section{margin-bottom:36px}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.section-title{font-family:'Nunito',sans-serif;font-size:1.15rem;font-weight:900;display:flex;align-items:center;gap:8px;color:var(--gray-900)}
.section-cta{font-size:.82rem;font-weight:700;color:var(--blue);padding:6px 14px;border-radius:8px;background:var(--blue-light);transition:all .15s}
.section-cta:hover{background:#dbeafe}

/* ── Deal Grid ──────────────────────────────────────────── */
.deal-grid{display:grid;gap:16px}
.deal-grid-4{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}
.deal-grid-3{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}

/* ── Deal Card ──────────────────────────────────────────── */
.deal-card{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);overflow:hidden;display:flex;flex-direction:column;transition:all .2s;box-shadow:var(--shadow-sm)}
.deal-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--gray-300)}
.deal-card-img{position:relative;height:180px;background:var(--gray-50);display:flex;align-items:center;justify-content:center;overflow:hidden}
.deal-card-img img{max-height:150px;max-width:85%;object-fit:contain;transition:transform .3s}
.deal-card:hover .deal-card-img img{transform:scale(1.05)}
.no-img{font-size:3rem;color:var(--gray-300)}
.deal-card-body{padding:14px;display:flex;flex-direction:column;gap:8px;flex:1}
.deal-retailer{font-size:.7rem;font-weight:800;padding:2px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.05em;width:fit-content}
.retailer-amazon{background:#fff8e7;color:#b45309}
.retailer-walmart{background:#eff6ff;color:#1d4ed8}
.retailer-bestbuy{background:#eff6ff;color:#1e3a8a}
.retailer-ebay{background:#fef2f2;color:#991b1b}
.deal-name{font-size:.85rem;font-weight:600;color:var(--gray-800);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.deal-prices{display:flex;align-items:flex-end;gap:8px}
.price-new{font-family:'Nunito',sans-serif;font-size:1.3rem;font-weight:900;color:var(--green);line-height:1}
.price-old{font-size:.78rem;color:var(--gray-400);text-decoration:line-through}
.price-save{font-size:.72rem;font-weight:700;color:var(--orange)}
.deal-price-meta{display:flex;flex-direction:column;gap:1px;padding-bottom:2px}

/* Snag Score Badge */
.snag-score{font-family:'Nunito',sans-serif;font-weight:900;font-size:.75rem;border-radius:8px;padding:3px 8px;border:2px solid;display:inline-flex;align-items:center;gap:3px}
.snag-high{border-color:#86efac;color:var(--green);background:#f0fdf4}
.snag-med{border-color:#fdba74;color:#c2410c;background:#fff7ed}
.snag-lo{border-color:var(--gray-200);color:var(--gray-500);background:white}
.snag-score.snag-high{position:absolute;top:10px;right:10px}
.deal-card-img .snag-score{position:absolute;top:10px;right:10px}

/* Tier Badges */
.badge{position:absolute;top:10px;left:10px;font-size:.68rem;font-weight:800;padding:3px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.04em;border:1px solid}
.badge-rare{background:#fef2f2;color:var(--red);border-color:#fca5a5}
.badge-great{background:#fff7ed;color:#c2410c;border-color:#fdba74}
.badge-good{background:#fffbeb;color:#92400e;border-color:#fcd34d}

/* ── Two-col panels ─────────────────────────────────────── */
.two-col-panels{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:36px}
.panel{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);overflow:hidden;box-shadow:var(--shadow-sm)}
.panel-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--gray-100)}
.panel-title{font-family:'Nunito',sans-serif;font-weight:900;font-size:.95rem;color:var(--gray-900);display:flex;align-items:center;gap:6px}
.panel-badge{font-size:.72rem;color:var(--gray-400);background:var(--gray-100);padding:3px 10px;border-radius:50px}
.panel-link{font-size:.78rem;font-weight:700;color:var(--blue)}
.panel-foot{padding:12px 20px;border-top:1px solid var(--gray-100);background:var(--gray-50)}

/* Radar rows */
.radar-list{display:flex;flex-direction:column}
.radar-row{display:flex;align-items:center;gap:12px;padding:12px 20px;border-bottom:1px solid var(--gray-50);transition:background .12s}
.radar-row:last-child{border-bottom:none}
.radar-row:hover{background:var(--gray-50)}
.radar-img{width:36px;height:36px;background:var(--gray-100);border-radius:8px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.radar-img img{width:100%;height:100%;object-fit:contain;padding:3px}
.radar-info{flex:1;min-width:0}
.radar-name{font-size:.82rem;font-weight:600;color:var(--gray-800);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.radar-retailer{font-size:.68rem;font-weight:700;text-transform:uppercase}
.radar-prices{text-align:right;flex-shrink:0}
.radar-prices .price-new{font-size:1rem}

/* Snag score rows */
.snag-list{display:flex;flex-direction:column}
.snag-row{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--gray-50);transition:background .12s}
.snag-row:hover{background:var(--gray-50)}
.snag-rank{font-family:'Nunito',sans-serif;font-size:1.2rem;font-weight:900;color:var(--gray-200);width:28px;flex-shrink:0}
.snag-info{flex:1;min-width:0}
.snag-name{font-size:.82rem;font-weight:600;color:var(--gray-800);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.snag-retailer{font-size:.68rem;font-weight:700;text-transform:uppercase}
.snag-price{font-size:.82rem;font-weight:700;color:var(--green);display:block;margin-top:2px}

/* ── Category Grid ──────────────────────────────────────── */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}
.cat-card{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:16px 10px;display:flex;flex-direction:column;align-items:center;gap:8px;transition:all .18s;box-shadow:var(--shadow-sm)}
.cat-card:hover{border-color:var(--blue);background:var(--blue-light);transform:translateY(-2px);box-shadow:var(--shadow)}
.cat-emoji{font-size:1.6rem;transition:transform .18s}
.cat-card:hover .cat-emoji{transform:scale(1.15)}
.cat-name{font-size:.75rem;font-weight:700;color:var(--gray-700);text-align:center;line-height:1.2}
.cat-card:hover .cat-name{color:var(--blue)}

/* ── CTA Banner ─────────────────────────────────────────── */
.cta-banner{background:linear-gradient(135deg,#0e2e7a,#1344b8 40%,#2563eb);border-radius:var(--radius-lg);padding:48px 40px;text-align:center;position:relative;overflow:hidden;margin-bottom:36px}
.cta-bg{position:absolute;inset:0;opacity:.04;background:repeating-linear-gradient(45deg,white 0,white 1px,transparent 0,transparent 50%);background-size:20px 20px;pointer-events:none}
.cta-content{position:relative}
.cta-tag{display:inline-block;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);color:white;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:5px 14px;border-radius:50px;margin-bottom:16px}
.cta-banner h2{font-size:1.8rem;color:white;margin-bottom:10px}
.cta-banner p{color:rgba(255,255,255,.78);margin-bottom:24px;font-size:.95rem}
.cta-form{display:flex;gap:10px;max-width:440px;margin:0 auto}
.cta-form input{flex:1;background:rgba(255,255,255,.12);border:1.5px solid rgba(255,255,255,.25);border-radius:12px;padding:12px 16px;color:white;font-size:.9rem;outline:none}
.cta-form input::placeholder{color:rgba(255,255,255,.5)}
.cta-form input:focus{border-color:rgba(255,255,255,.5);background:rgba(255,255,255,.18)}
.cta-form button{font-family:'Nunito',sans-serif;font-weight:900;background:var(--orange);color:white;border:none;border-radius:12px;padding:12px 22px;font-size:.88rem;white-space:nowrap;cursor:pointer;transition:all .15s;box-shadow:0 4px 16px rgba(249,115,22,.4)}
.cta-form button:hover{background:var(--orange-dark);transform:translateY(-1px)}

/* ── Seasonal Grid ──────────────────────────────────────── */
.seasonal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.seasonal-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-radius:var(--radius);padding:22px 16px;font-weight:900;font-family:'Nunito',sans-serif;font-size:.88rem;color:white;transition:all .18s;text-align:center}
.seasonal-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);opacity:.95}
.seasonal-em{font-size:1.6rem}

/* ── Browse Page ────────────────────────────────────────── */
.browse-page{padding:28px 20px}
.browse-head{display:flex;align-items:baseline;gap:14px;margin-bottom:24px}
.browse-head h1{font-size:1.5rem}
.browse-count{font-size:.85rem;color:var(--gray-500);font-weight:600}
.browse-layout{display:grid;grid-template-columns:220px 1fr;gap:24px;align-items:start}
.filters-sidebar{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:20px;position:sticky;top:80px;box-shadow:var(--shadow-sm)}
.filter-group{margin-bottom:20px}
.filter-group:last-child{margin-bottom:0}
.filter-group h4{font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--gray-500);margin-bottom:10px}
.filter-radio{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;cursor:pointer;font-size:.83rem;color:var(--gray-700);transition:background .12s;line-height:1.3}
.filter-radio:hover{background:var(--gray-50)}
.filter-radio input{accent-color:var(--blue);width:14px;height:14px;flex-shrink:0}
.filter-input{width:100%;padding:8px 12px;border:1.5px solid var(--gray-200);border-radius:8px;font-size:.85rem;outline:none;transition:border .15s}
.filter-input:focus{border-color:var(--blue)}
.filter-clear{display:block;text-align:center;margin-top:12px;font-size:.8rem;font-weight:700;color:var(--red);padding:8px;border-radius:8px;border:1px solid #fca5a5;background:#fef2f2;transition:all .15s}
.filter-clear:hover{background:#fee2e2}
.filter-toggle{display:none;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:var(--blue);background:var(--blue-light);border:none;border-radius:8px;padding:8px 14px;cursor:pointer}
.browse-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.browse-showing{font-size:.82rem;color:var(--gray-500)}
.browse-results{}

/* ── Pagination ─────────────────────────────────────────── */
.pagination{display:flex;gap:6px;justify-content:center;margin-top:28px;flex-wrap:wrap}
.pag-btn{padding:8px 14px;border-radius:8px;font-size:.85rem;font-weight:700;color:var(--gray-700);background:white;border:1.5px solid var(--gray-200);transition:all .15s}
.pag-btn:hover{border-color:var(--blue);color:var(--blue)}
.pag-active{background:var(--blue);color:white!important;border-color:var(--blue)!important}

/* ── Deal Detail Page ───────────────────────────────────── */
.deal-page{padding:24px 20px}
.breadcrumb{font-size:.8rem;color:var(--gray-400);margin-bottom:20px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.breadcrumb a{color:var(--blue);font-weight:500}
.breadcrumb a:hover{text-decoration:underline}
.deal-page-grid{display:grid;grid-template-columns:340px 1fr;gap:32px;margin-bottom:40px}
.deal-page-left{display:flex;flex-direction:column;gap:16px}
.deal-page-img-wrap{background:white;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:24px;display:flex;align-items:center;justify-content:center;position:relative;min-height:280px;box-shadow:var(--shadow-sm)}
.deal-page-img{max-height:240px;max-width:100%;object-fit:contain}
.deal-page-img-wrap .badge{position:absolute;top:14px;left:14px}
.snag-meter{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:16px;box-shadow:var(--shadow-sm)}
.snag-meter-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.85rem;font-weight:600;color:var(--gray-700)}
.snag-bar{height:8px;background:var(--gray-100);border-radius:50px;overflow:hidden}
.snag-bar-fill{height:100%;border-radius:50px;transition:width .4s ease}
.snag-bar-fill.snag-high{background:linear-gradient(90deg,var(--green),#4ade80)}
.snag-bar-fill.snag-med{background:linear-gradient(90deg,#f97316,#fb923c)}
.snag-bar-fill.snag-lo{background:var(--gray-300)}
.snag-desc{font-size:.78rem;color:var(--gray-500);margin-top:8px;line-height:1.4}
.deal-page-actions{display:flex;gap:10px}
.btn-watchlist,.btn-share{flex:1;padding:10px;border-radius:10px;font-size:.85rem;font-weight:700;border:1.5px solid var(--gray-200);background:white;cursor:pointer;text-align:center;transition:all .15s;color:var(--gray-700)}
.btn-watchlist:hover,.btn-share:hover{border-color:var(--blue);color:var(--blue);background:var(--blue-light)}
.btn-watchlist.watching{background:#fef2f2;border-color:#fca5a5;color:var(--red)}

.deal-page-right{display:flex;flex-direction:column;gap:16px}
.deal-page-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.deal-retailer-tag{font-size:.75rem;font-weight:800;padding:3px 10px;border-radius:8px;text-transform:uppercase}
.deal-category-tag{font-size:.78rem;font-weight:600;color:var(--gray-600);background:var(--gray-100);padding:3px 10px;border-radius:8px}
.deal-updated{font-size:.75rem;color:var(--gray-400);margin-left:auto}
.deal-page-title{font-size:1.5rem;line-height:1.25;color:var(--gray-900)}
.deal-page-brand{font-size:.88rem;color:var(--gray-500)}
.deal-price-block{background:var(--gray-50);border-radius:var(--radius);padding:18px 20px;border:1px solid var(--gray-200)}
.deal-price-main{display:flex;align-items:center;gap:16px}
.deal-price-current{font-family:'Nunito',sans-serif;font-size:2.4rem;font-weight:900;color:var(--green);line-height:1}
.deal-price-sub{display:flex;flex-direction:column;gap:4px}
.deal-save-badge{background:var(--orange);color:white;font-size:.78rem;font-weight:800;padding:3px 10px;border-radius:50px}
.deal-expires{font-size:.8rem;color:var(--gray-500);margin-top:10px}
.deal-cta-btn{display:block;width:100%;font-size:1rem;padding:16px 24px;text-align:center;font-family:'Nunito',sans-serif;font-weight:900;border-radius:14px;cursor:pointer;border:none}
.deal-affiliate-note{font-size:.72rem;color:var(--gray-400);text-align:center;margin-top:-8px}
.deal-alert-form{background:var(--blue-light);border:1.5px solid #bfdbfe;border-radius:var(--radius);padding:18px}
.deal-alert-form h3{font-size:.95rem;margin-bottom:12px}
.alert-input-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}
.alert-input-row label{font-size:.82rem;color:var(--gray-600);grid-column:1/-1}
.alert-input-row input{padding:9px 12px;border:1.5px solid var(--gray-200);border-radius:8px;font-size:.88rem;outline:none}
.alert-input-row input:focus{border-color:var(--blue)}
.deal-alert-cta{display:block;background:var(--blue-light);border:1.5px solid #bfdbfe;color:var(--blue);padding:14px;border-radius:var(--radius);text-align:center;font-size:.85rem;font-weight:700}
.deal-description{background:white;border:1px solid var(--gray-200);border-radius:var(--radius);padding:18px}
.deal-description h3{font-size:.95rem;margin-bottom:10px}
.deal-description p{font-size:.88rem;color:var(--gray-600);line-height:1.6}
.price-history-section{background:white;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:28px;margin-bottom:36px;box-shadow:var(--shadow-sm)}
.chart-wrap{margin:20px 0;padding:10px}
.price-history-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.ph-stat{background:var(--gray-50);border-radius:10px;padding:14px;text-align:center}
.ph-stat span{font-size:.75rem;color:var(--gray-500);display:block}
.ph-stat strong{font-family:'Nunito',sans-serif;font-size:1.1rem;font-weight:900;color:var(--gray-900);display:block;margin-top:4px}
.ph-stat strong.green{color:var(--green)}
.empty-state{text-align:center;padding:60px 20px}
.empty-icon{font-size:3rem;margin-bottom:12px}
.empty-state p{color:var(--gray-500);font-size:.9rem}
.empty-state a{color:var(--blue);font-weight:700}

/* ── Auth Pages ─────────────────────────────────────────── */
.auth-page{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:40px 20px}
.auth-card{background:white;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:40px;width:100%;max-width:420px;box-shadow:var(--shadow-lg)}
.auth-logo{display:flex;justify-content:center;margin-bottom:20px}
.auth-card h1{font-size:1.5rem;text-align:center;margin-bottom:6px}
.auth-sub{text-align:center;color:var(--gray-500);font-size:.88rem;margin-bottom:24px}
.auth-form{display:flex;flex-direction:column;gap:16px}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-label{font-size:.85rem;font-weight:700;color:var(--gray-700)}
.form-label.required::after{content:' *';color:var(--red)}
.form-optional{font-weight:400;color:var(--gray-400);font-size:.8em}
.form-input,.form-select,.form-textarea{padding:10px 14px;border:1.5px solid var(--gray-200);border-radius:10px;font-size:.9rem;outline:none;transition:border .15s;color:var(--gray-900);width:100%;background:white}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,86,219,.08)}
.form-hint{font-size:.76rem;color:var(--gray-400);line-height:1.4}
.form-hint a{color:var(--blue);font-weight:600}
.form-check,.form-check-label{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--gray-700);cursor:pointer}
.form-error{background:#fef2f2;border:1px solid #fca5a5;color:var(--red);border-radius:10px;padding:12px 16px;font-size:.85rem;margin-bottom:4px}
.auth-btn{width:100%;font-size:.95rem;padding:13px}
.auth-switch{text-align:center;font-size:.85rem;color:var(--gray-500);margin-top:16px}
.auth-switch a{color:var(--blue);font-weight:700}

/* ── Account Pages ──────────────────────────────────────── */
.account-page{padding:32px 20px}
.account-nav{display:flex;align-items:center;gap:8px;margin-bottom:28px;padding-bottom:16px;border-bottom:1px solid var(--gray-200)}
.account-nav a{font-size:.88rem;font-weight:600;color:var(--gray-600);padding:8px 16px;border-radius:10px;border:1.5px solid var(--gray-200);transition:all .15s}
.account-nav a:hover{border-color:var(--blue);color:var(--blue)}
.account-nav a.active{background:var(--blue);color:white;border-color:var(--blue)}
.account-signout{margin-left:auto;color:var(--gray-400)!important;border-color:var(--gray-100)!important}
.account-title{font-size:1.4rem;margin-bottom:20px}
.account-welcome{margin-bottom:24px}
.account-welcome h1{font-size:1.5rem}
.account-welcome p{color:var(--gray-500);margin-top:6px}
.account-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.account-quick-card{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:20px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;transition:all .18s;box-shadow:var(--shadow-sm)}
.account-quick-card:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:var(--shadow)}
.account-quick-card span:first-child{font-size:1.6rem}
.account-quick-card strong{font-family:'Nunito',sans-serif;font-size:1.3rem;font-weight:900;color:var(--gray-900)}
.account-quick-card span:last-child{font-size:.78rem;color:var(--gray-500)}
.watchlist-grid{display:flex;flex-direction:column;gap:12px}
.watchlist-card{display:flex;align-items:center;gap:14px;background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:14px;box-shadow:var(--shadow-sm);transition:box-shadow .15s}
.watchlist-card:hover{box-shadow:var(--shadow)}
.watchlist-img{width:56px;height:56px;background:var(--gray-50);border-radius:10px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--gray-100)}
.watchlist-img img{width:100%;height:100%;object-fit:contain;padding:4px}
.watchlist-info{flex:1;min-width:0}
.watchlist-name{font-size:.88rem;font-weight:700;color:var(--gray-900);display:block;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.watchlist-name:hover{color:var(--blue)}
.watchlist-price{font-family:'Nunito',sans-serif;font-size:1.1rem;font-weight:900}
.watchlist-no-deal{font-size:.78rem;color:var(--gray-400);font-style:italic}
.watchlist-since{font-size:.73rem;color:var(--gray-400);display:block;margin-top:2px}
.watchlist-remove{background:#fef2f2;border:1px solid #fca5a5;color:var(--red);border-radius:8px;padding:6px 10px;font-size:.8rem;cursor:pointer;transition:all .15s}
.watchlist-remove:hover{background:#fee2e2}
.alerts-list{display:flex;flex-direction:column;gap:12px}
.alert-card{display:flex;align-items:center;gap:14px;background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:14px;box-shadow:var(--shadow-sm)}
.alert-triggered{opacity:.65}
.alert-img{width:48px;height:48px;background:var(--gray-50);border-radius:8px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.alert-img img{width:100%;height:100%;object-fit:contain;padding:4px}
.alert-info{flex:1;min-width:0}
.alert-name{font-size:.88rem;font-weight:700;color:var(--gray-800);display:block;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.alert-prices{display:flex;gap:16px;font-size:.82rem;color:var(--gray-600)}
.alert-prices strong{color:var(--gray-900)}
.alert-prices strong.green{color:var(--green)}
.alert-triggered-badge{font-size:.75rem;font-weight:700;color:var(--green);background:#f0fdf4;border:1px solid #86efac;padding:2px 8px;border-radius:6px;display:inline-block;margin-top:6px}
.alert-delete{background:#fef2f2;border:1px solid #fca5a5;color:var(--red);border-radius:8px;padding:6px 10px;font-size:.8rem;cursor:pointer}

/* ── Store pages ────────────────────────────────────────── */
.store-hero{padding:40px 20px}
.store-hero-inner{display:flex;align-items:center;gap:16px}
.store-hero-dot{width:16px;height:16px;border-radius:50%;flex-shrink:0}
.store-hero-inner h1{font-size:1.6rem}
.store-hero-inner p{color:var(--gray-500);font-size:.88rem;margin-top:4px}
.stores-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}
.store-card{background:white;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:24px;box-shadow:var(--shadow-sm);transition:all .18s}
.store-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.store-card-dot{width:12px;height:12px;border-radius:50%;margin-bottom:14px}
.store-card h2{font-size:1.2rem;margin-bottom:8px}
.store-card p{font-size:.85rem;color:var(--gray-500);line-height:1.4;margin-bottom:16px}
.store-card-cta{font-size:.82rem;font-weight:700}

/* ── Cat page ───────────────────────────────────────────── */
.cat-page-head{display:flex;align-items:center;gap:16px;margin:20px 0 24px}
.cat-page-emoji{font-size:3rem}
.cat-page-head h1{font-size:1.6rem}
.cat-page-head p{font-size:.88rem;color:var(--gray-500);margin-top:4px}

/* ── Admin Layout ───────────────────────────────────────── */
.admin-layout{display:grid;grid-template-columns:220px 1fr;min-height:100vh;align-items:start}
.admin-sidebar{background:#111827;min-height:100vh;padding:20px 0;position:sticky;top:0}
.admin-sidebar-brand{color:#fde68a;font-family:'Nunito',sans-serif;font-weight:900;font-size:1rem;padding:0 20px 16px;border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:8px}
.admin-nav{display:flex;flex-direction:column}
.admin-nav a{display:flex;align-items:center;gap:10px;padding:10px 20px;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.65);transition:all .15s}
.admin-nav a:hover,.admin-nav a.active{color:white;background:rgba(255,255,255,.08)}
.admin-nav a.active{border-right:3px solid var(--blue)}
.admin-nav-sep{border:none;border-top:1px solid rgba(255,255,255,.08);margin:12px 0}
.admin-main{padding:28px;background:var(--gray-100);min-height:100vh}
.admin-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.admin-page-title{font-size:1.4rem}
.admin-back{font-size:.85rem;font-weight:600;color:var(--blue)}
.admin-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin-bottom:28px}
.admin-stat-card{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:18px;display:flex;align-items:center;gap:14px;box-shadow:var(--shadow-sm);transition:all .15s}
.admin-stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.admin-stat-icon{font-size:1.6rem}
.admin-stat-card strong{font-family:'Nunito',sans-serif;font-size:1.4rem;font-weight:900;display:block;color:var(--gray-900)}
.admin-stat-card span{font-size:.75rem;color:var(--gray-500)}
.admin-section{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);overflow:hidden;margin-bottom:20px;box-shadow:var(--shadow-sm)}
.admin-section-head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--gray-100)}
.admin-section-head h2{font-size:1rem}
.admin-link{font-size:.82rem;font-weight:700;color:var(--blue)}
.admin-table-wrap{overflow-x:auto}
.admin-table{width:100%;border-collapse:collapse}
.admin-table th{text-align:left;padding:10px 16px;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-500);background:var(--gray-50);border-bottom:1px solid var(--gray-200)}
.admin-table td{padding:12px 16px;font-size:.85rem;border-bottom:1px solid var(--gray-100);vertical-align:middle}
.admin-table tr:last-child td{border-bottom:none}
.admin-table tr:hover td{background:var(--gray-50)}
.admin-deal-link{font-weight:600;color:var(--gray-800)}
.admin-deal-link:hover{color:var(--blue)}
.admin-old-price{font-size:.78rem;color:var(--gray-400);text-decoration:line-through;margin-right:4px}
.admin-pct{font-size:.75rem;font-weight:700;color:var(--orange)}
.status-badge{font-size:.72rem;font-weight:800;padding:3px 9px;border-radius:6px;text-transform:uppercase}
.status-active{background:#dcfce7;color:#166534}
.status-inactive{background:var(--gray-100);color:var(--gray-500)}
.admin-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}
.admin-btn-edit{font-size:.78rem;font-weight:700;color:var(--blue);background:var(--blue-light);padding:4px 10px;border-radius:6px}
.admin-btn-toggle{font-size:.78rem;font-weight:700;color:var(--gray-600);background:var(--gray-100);padding:4px 10px;border-radius:6px;border:none;cursor:pointer}
.admin-btn-toggle:hover{background:var(--gray-200)}
.retailer-chip{font-size:.72rem;font-weight:800;padding:2px 8px;border-radius:6px;text-transform:uppercase}
.asin-link{color:var(--blue);font-size:.82rem;font-weight:600;font-family:monospace}

/* ── Admin Form ─────────────────────────────────────────── */
.admin-form{background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:28px;box-shadow:var(--shadow-sm)}
.admin-errors{background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;padding:14px 18px;margin-bottom:20px}
.admin-errors p{font-size:.85rem;color:var(--red)}
.admin-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:24px}
.admin-form-col{display:flex;flex-direction:column;gap:18px}
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24'%3E%3Cpath fill='%236b7280' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}
.form-textarea{resize:vertical;min-height:90px}

/* Affiliate URL section */
.affiliate-url-group{background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:2px solid #bfdbfe;border-radius:var(--radius);padding:18px}
.affiliate-auto-badge{font-size:.7rem;font-weight:800;background:var(--blue);color:white;padding:2px 8px;border-radius:50px;margin-left:8px;text-transform:uppercase;letter-spacing:.04em}
.asin-row{display:grid;grid-template-columns:1fr auto;gap:8px;margin-bottom:10px}
.asin-input-wrap{display:flex;align-items:center;background:white;border:1.5px solid var(--gray-200);border-radius:10px;overflow:hidden}
.asin-prefix{padding:0 10px;font-size:.78rem;font-weight:800;color:var(--gray-400);text-transform:uppercase;background:var(--gray-50);border-right:1px solid var(--gray-200);height:100%;display:flex;align-items:center;white-space:nowrap}
.asin-input{border:none!important;border-radius:0!important;padding:10px 12px!important;font-family:monospace;font-size:.88rem;letter-spacing:.04em}
.asin-input:focus{box-shadow:none!important}
.btn-asin-fill{font-size:.82rem;font-weight:700;color:white;background:var(--blue);border:none;border-radius:10px;padding:10px 14px;cursor:pointer;white-space:nowrap;transition:all .15s}
.btn-asin-fill:hover{background:var(--blue-dark)}
.affiliate-url-input{font-family:monospace;font-size:.82rem;letter-spacing:-.01em}
.affiliate-url-meta{display:flex;align-items:center;gap:12px;margin-top:6px;min-height:20px}
.affiliate-url-status{font-size:.78rem}
.affiliate-verify-link{font-size:.78rem;font-weight:700;color:var(--blue)}
.asin-helpers{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:10px}
.asin-helpers span{font-size:.72rem;color:var(--gray-400)}
.asin-helper-btn{font-size:.72rem;font-weight:700;color:var(--blue);background:var(--blue-light);border:1px solid #bfdbfe;border-radius:6px;padding:3px 8px;cursor:pointer;transition:all .12s}
.asin-helper-btn:hover{background:#dbeafe}

/* Calc preview */
.calc-preview{display:flex;gap:12px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:10px;padding:12px 16px;margin-top:-8px}
.calc-item{display:flex;flex-direction:column;gap:3px;flex:1}
.calc-item span{font-size:.7rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em}
.calc-item strong{font-family:'Nunito',sans-serif;font-size:.95rem;font-weight:900;color:var(--gray-900)}

/* Product preview */
.product-preview-box{background:var(--gray-50);border-radius:10px;border:1px solid var(--gray-200);padding:14px;display:flex;align-items:center;gap:12px}
.product-preview-img{width:80px;height:80px;object-fit:contain;border-radius:8px;border:1px solid var(--gray-200)}
.product-preview-name{font-size:.82rem;font-weight:600;color:var(--gray-800)}
.asin-generated-url{background:white;border:1px solid #bfdbfe;border-radius:8px;padding:10px 14px;font-size:.78rem;font-family:monospace;word-break:break-all}
.asin-generated-url a{color:var(--blue)}

/* Price history quick-add */
.ph-quick-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px}
.btn-ph-add{font-size:.82rem;font-weight:700;color:white;background:var(--green);border:none;border-radius:10px;padding:10px 14px;cursor:pointer;transition:all .15s;white-space:nowrap}
.btn-ph-add:hover{background:#15803d}

/* Admin form actions */
.admin-form-actions{display:flex;align-items:center;gap:10px;padding-top:20px;border-top:1px solid var(--gray-100)}
.admin-submit{padding:12px 28px;font-size:.95rem}
.admin-preview-btn{font-size:.85rem;font-weight:700;color:var(--gray-600);background:var(--gray-100);border:1px solid var(--gray-200);border-radius:10px;padding:10px 16px;transition:all .15s}
.admin-preview-btn:hover{background:var(--gray-200)}
.admin-delete-btn{font-size:.85rem;font-weight:700;color:var(--red);background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;padding:10px 16px;cursor:pointer;transition:all .15s}
.admin-delete-btn:hover{background:#fee2e2}
.admin-cancel-btn{font-size:.85rem;font-weight:600;color:var(--gray-500);margin-left:auto}
.admin-cancel-btn:hover{color:var(--gray-700)}

/* ── Footer ─────────────────────────────────────────────── */
.footer{background:linear-gradient(180deg,#111827,#0f172a);color:rgba(255,255,255,.55);margin-top:60px}
.footer-inner{max-width:1280px;margin:0 auto;padding:48px 20px 32px;display:grid;grid-template-columns:2fr 1fr 1.2fr 1fr;gap:32px}
.footer-brand{}
.footer-logo{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.footer-logo-icon{width:34px;height:34px;background:linear-gradient(135deg,var(--blue),var(--blue-mid));border-radius:9px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.footer-logo-icon svg{width:18px;height:18px}
.footer-logo-name{font-family:'Nunito',sans-serif;font-weight:900;font-size:1.15rem;color:white}
.footer-logo-name span{color:#fde68a}
.footer-desc{font-size:.82rem;line-height:1.6;margin-bottom:18px;color:rgba(255,255,255,.45)}
.footer-sub-form{display:flex;gap:8px;margin-bottom:20px}
.footer-sub-form input{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:8px;padding:9px 14px;color:white;font-size:.82rem;outline:none}
.footer-sub-form input::placeholder{color:rgba(255,255,255,.35)}
.footer-sub-form input:focus{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.1)}
.footer-sub-form button{font-family:'Nunito',sans-serif;font-weight:900;font-size:.8rem;color:white;background:linear-gradient(135deg,var(--blue),var(--blue-mid));border:none;border-radius:8px;padding:9px 14px;cursor:pointer;white-space:nowrap;transition:all .15s}
.footer-sub-form button:hover{transform:translateY(-1px)}
.footer-social-label{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:white;margin-bottom:10px}
.social-icons{display:flex;gap:7px;flex-wrap:wrap}
.si{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);transition:all .18s;flex-shrink:0}
.si svg{width:15px;height:15px}
.si:hover{transform:translateY(-2px)}
.si-yt{color:#ff4444}.si-yt:hover{background:rgba(255,68,68,.18);border-color:rgba(255,68,68,.3)}
.si-ig{color:#e1306c}.si-ig:hover{background:rgba(225,48,108,.18);border-color:rgba(225,48,108,.3)}
.si-fb{color:#4a90d9}.si-fb:hover{background:rgba(74,144,217,.18);border-color:rgba(74,144,217,.3)}
.si-tt{color:rgba(255,255,255,.8)}.si-tt:hover{background:rgba(255,255,255,.15)}
.si-pin{color:#e60023}.si-pin:hover{background:rgba(230,0,35,.18)}
.si-x{color:rgba(255,255,255,.7)}.si-x:hover{background:rgba(255,255,255,.15)}
.si-red{color:#ff6534}.si-red:hover{background:rgba(255,101,52,.18)}
.footer-col h4{font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:white;margin-bottom:14px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:8px}
.footer-col li a{font-size:.82rem;color:rgba(255,255,255,.5);transition:color .15s;line-height:1.3}
.footer-col li a:hover{color:white}
.footer-link-more{color:rgba(99,179,237,.8)!important;font-weight:700}
.footer-bottom{border-top:1px solid rgba(255,255,255,.07);margin:0 20px;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer-bottom span{font-size:.73rem;color:rgba(255,255,255,.35)}
.footer-chips{display:flex;gap:12px;flex-wrap:wrap}
.chip{display:flex;align-items:center;gap:5px;font-size:.72rem;color:rgba(255,255,255,.35)}
.chip-dot{width:7px;height:7px;background:#4ade80;border-radius:50%;animation:pulse 2s infinite;flex-shrink:0}

/* ── Utilities ──────────────────────────────────────────── */
.green{color:var(--green)!important}
.blue{color:var(--blue)!important}
.orange{color:var(--orange)!important}

/* ── Responsive ─────────────────────────────────────────── */
@media(max-width:1024px){
  .browse-layout{grid-template-columns:1fr}
  .filters-sidebar{position:static;display:none}
  .filters-sidebar.open{display:block}
  .filter-toggle{display:flex}
  .two-col-panels{grid-template-columns:1fr}
  .deal-page-grid{grid-template-columns:1fr}
  .deal-page-left{flex-direction:row;flex-wrap:wrap}
  .deal-page-img-wrap{flex:1;min-width:240px}
  .price-history-stats{grid-template-columns:repeat(2,1fr)}
  .admin-layout{grid-template-columns:1fr}
  .admin-sidebar{display:none}
  .admin-form-grid{grid-template-columns:1fr}
}
@media(max-width:768px){
  .nav-links,.nav-search,.nav-auth{display:none}
  .nav-burger{display:flex}
  .hero-h1{font-size:1.75rem}
  .hero-search{flex-wrap:wrap;border-radius:var(--radius)}
  .hero-search button{width:100%}
  .deal-grid-4{grid-template-columns:repeat(2,1fr)}
  .cat-grid{grid-template-columns:repeat(4,1fr)}
  .seasonal-grid{grid-template-columns:repeat(2,1fr)}
  .footer-inner{grid-template-columns:1fr 1fr}
  .cta-form{flex-direction:column}
  .account-quick{grid-template-columns:1fr 1fr}
  .ph-quick-row{grid-template-columns:1fr 1fr;}.ph-quick-row .btn-ph-add{grid-column:1/-1}
  .form-row-2{grid-template-columns:1fr}
  .alert-input-row{grid-template-columns:1fr auto}
}
@media(max-width:480px){
  .deal-grid-4{grid-template-columns:1fr}
  .cat-grid{grid-template-columns:repeat(3,1fr)}
  .footer-inner{grid-template-columns:1fr}
  .price-history-stats{grid-template-columns:1fr 1fr}
  .account-quick{grid-template-columns:1fr}
  .asin-row{grid-template-columns:1fr}
}

/* ── Admin stat card accents ──────────────────────────── */
.stat-blue   { border-left: 4px solid var(--blue); }
.stat-green  { border-left: 4px solid var(--green); }
.stat-orange { border-left: 4px solid var(--orange); }
.stat-purple { border-left: 4px solid #7c3aed; }
.stat-blue   .admin-stat-icon { color: var(--blue); }
.stat-green  .admin-stat-icon { color: var(--green); }
.stat-orange .admin-stat-icon { color: var(--orange); }
.stat-purple .admin-stat-icon { color: #7c3aed; }
.stat-blue   strong { color: var(--blue); }
.stat-green  strong { color: var(--green); }
.stat-orange strong { color: var(--orange); }
.stat-purple strong { color: #7c3aed; }

/* ── Search head ─────────────────────────────────────── */
.search-head { display: flex; align-items: baseline; gap: 12px; margin: 16px 0 24px; }
.search-head h1 { font-size: 1.4rem; }

/* ── Alert delete button fix ──────────────────────────── */
.alert-delete:hover { background: #fee2e2; }

/* ── Affiliate Tools ─────────────────────────────────── */
.form-card { background:white;border-radius:var(--radius);border:1px solid var(--gray-200);padding:22px 24px;box-shadow:var(--shadow-sm); }
.form-card-title { font-size:.95rem;font-weight:900;margin-bottom:16px;font-family:'Nunito',sans-serif; }
.affiliate-batch-actions { display:flex;flex-direction:column;gap:8px; }
.affiliate-url-cell { max-width:240px;overflow:hidden; }
.url-preview { font-size:.75rem;color:var(--blue);font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block; }
.asin-code { font-family:monospace;font-size:.8rem;background:var(--gray-100);padding:2px 6px;border-radius:4px;color:var(--gray-700); }
.form-hint-block { font-size:.82rem;color:var(--gray-500);line-height:1.5; }
.form-hint-block code { background:var(--gray-100);padding:1px 5px;border-radius:4px;font-size:.8em; }
.status-warn { background:#fff7ed;color:#c2410c;font-size:.72rem;font-weight:800;padding:3px 9px;border-radius:6px;text-transform:uppercase; }
.stat-red { border-left:4px solid var(--red); }
.stat-red .admin-stat-icon { color:var(--red); }
.stat-red strong { color:var(--red); }
.text-muted { color:var(--gray-400);font-size:.82rem; }
code { font-family:monospace;background:var(--gray-100);padding:2px 6px;border-radius:4px;font-size:.85em; }

/* ── Store cards ─────────────────────────────────────── */
.stores-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px; }
.store-card { background:white;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:24px;box-shadow:var(--shadow-sm);transition:all .18s;display:block; }
.store-card:hover { transform:translateY(-3px);box-shadow:var(--shadow-lg); }

/* ── Alert target/current ────────────────────────────── */
.alert-target { font-size:.8rem;color:var(--gray-600); }
.alert-current { font-size:.78rem;color:var(--gray-500);display:block;margin-top:2px; }

/* ── Account welcome ──────────────────────────────────── */
.account-welcome { background:linear-gradient(135deg,var(--blue-light),#fff);border:1px solid #bfdbfe;border-radius:var(--radius);padding:24px;margin-bottom:24px; }
.account-welcome h1 { font-size:1.3rem;color:var(--blue-deeper); }
.account-welcome p { color:var(--gray-600);margin-top:6px;font-size:.9rem; }

/* ── Deal page no img ──────────────────────────────────── */
.deal-page-no-img { font-size:5rem;display:flex;align-items:center;justify-content:center;width:100%;height:200px;color:var(--gray-300); }

/* ── Mobile nav open state ────────────────────────────── */
.nav-links.mob-open { display:flex!important; }

/* ── Breadcrumb spacing ───────────────────────────────── */
.breadcrumb span { color:var(--gray-600); }

/* ── Cat page grid fix ────────────────────────────────── */
@media(max-width:640px) {
  .two-col-panels { grid-template-columns:1fr; }
  .hero-stats { gap:8px; }
  .hero-stat { min-width:80px;padding:8px 12px; }
  .deal-page-grid { grid-template-columns:1fr; }
  .price-history-stats { grid-template-columns:1fr 1fr; }
  .admin-form-grid { grid-template-columns:1fr; }
  .asin-row { grid-template-columns:1fr; }
  .form-row-2 { grid-template-columns:1fr; }
}
