:root{
  --bg:#0b0f17;
  --card:#121a27;
  --muted:#8aa0b8;
  --text:#eaf2ff;
  --accent:#4dd7ff;
  --border: #1e2d42;
}

*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit;text-decoration:none}
.page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.card{width:min(420px,92vw);background:var(--card);border:1px solid var(--border);border-radius:16px;padding:20px}
label{display:block;margin-top:12px;color:var(--muted);font-size:14px}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="url"],
input[type="search"],select,textarea{width: 100%;margin-top:6px;background:#0c1320;color:var(--text);border:1px solid var(--border);border-radius:12px;padding:5px 5px 5px 28px;}
button{width:auto;margin-top:16px;padding:12px;border:0;border-radius:12px;background:var(--accent);color:#04101a;font-weight:700;cursor:pointer}
button.btn-block {
  width: 100%;
}
input[type="checkbox"],
input[type="radio"] {
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
}
.checkbox-label{display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer}
.checkbox-label input[type="checkbox"]{width:auto;margin-top:0;padding:0;flex-shrink:0;border-radius:4px}
.error{color:#ff7b7b}

.admin-shell{width:100%;min-height:100vh}
.admin-header{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:2000;background:rgba(11,15,23,.92);backdrop-filter:blur(10px)}
.brand{font-weight:800}
.admin-nav{display:flex;gap:12px;flex-wrap:wrap}
.admin-nav a{color:var(--muted)}
.admin-nav a.nav-active{color:var(--accent);font-weight:700}
.autopost-toggle{all:unset;cursor:pointer;font-size:13px;font-weight:600;padding:4px 10px;border-radius:8px;white-space:nowrap}
.autopost-toggle.on{color:#22c55e}
.autopost-toggle.on::before{content:"\1F7E2 "}
.autopost-toggle.off{color:#ef4444}
.autopost-toggle.off::before{content:"\1F534 "}
.admin-main{padding:18px 16px}

.copy-deal-id {
  cursor: pointer;
  transition: color .12s ease;
}

.copy-deal-id-copied {
  color: #22c55e !important;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 6px 0 18px;
  font-size: 17px;
  line-height: 1.5;
  font-weight: 600;
  color: var(--muted);
}

.breadcrumb a {
  color: var(--text);
  text-decoration: none;
}

.breadcrumb a:hover {
  color: var(--accent);
}

.breadcrumb span[aria-hidden="true"] {
  color: var(--muted);
  opacity: 0.6;
  padding: 0 2px;
}

.breadcrumb span:last-child {
  color: #dbeafe;
}
.deal-detail-img {
  position: relative;
  display: block;
  overflow: hidden;
}

/* Deal page only: angled ribbon */
.deal-detail-img.img-coming-soon::after {
  content: "Image Coming Soon";
  position: absolute;
  top: 10px;
  left: -40px;
  width: 180px;
  background: rgba(200, 200, 200, 0.85);
  color: #333;
  font-size: 11px;
  font-weight: 600;
  text-align: center;
  padding: 4px 0;
  transform: rotate(-25deg);
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
  pointer-events: none;
  z-index: 2;
}

.img.img-coming-soon,
.deal-detail-img.img-coming-soon,
.deal-image-wrapper.img-coming-soon {
  position: relative;
  display: block;
  overflow: hidden;
}

/* Card / grid images only */
.deal-card .img.img-coming-soon::after,
.deal-grid .img.img-coming-soon::after {
  content: "Image Coming Soon";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(220, 220, 220, 0.92);
  color: #333;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  padding: 6px 8px;
  pointer-events: none;
  z-index: 2;
}

.img.img-coming-soon img,
.deal-detail-img.img-coming-soon img,
.deal-image-wrapper.img-coming-soon img {
  filter: grayscale(20%) brightness(0.95);
}

.container{width:min(1100px,92vw);margin:0 auto;padding:16px}
.public-header{position:sticky;position:relative;top:0;background:rgba(11,15,23,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:20;flex-wrap: nowrap;}
.public-header-inner{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px 16px;flex-wrap:nowrap}
.logo{display:flex;align-items:center;gap:10px;font-weight:900}
.logo img{width:34px;height:34px;border-radius:8px;object-fit:cover;background:#fff}
.search{flex:1;min-width: 0;display:flex;gap:10px}
.search input{margin-top:0;min-width: 0;}
.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;min-width:0}

.deal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.deal-grid {
  background: var(--card);
  padding: 14px;
  border-radius: 18px;
}

@media (max-width: 950px){ .deal-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width: 640px){ .deal-grid{grid-template-columns:1fr} }

.deal-card {
  border: none;                     /* reset everything */
  border-radius: 12px;
}

.deal-card-body {
  display: block;
  color: inherit;
  text-decoration: none;
}
.deal-card-body:hover {
  background: rgba(255,255,255,.02);
}

.deal-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 10px;
  gap: 8px;
  flex-wrap: wrap;
}

.deal-card-footer .price {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 0;
}

.view-retailer-btn {
  font-size: 11px;
  font-weight: 700;
  padding: 5px 10px;
  border-radius: 6px;
  background: var(--accent);
  color: #04101a;
  white-space: nowrap;
  flex-shrink: 0;
}

.deal-instructions {
  margin-top: 8px;
  padding: 7px 10px;
  background: rgba(77, 215, 255, 0.06);
  border-left: 3px solid var(--accent);
  border-radius: 0 6px 6px 0;
  color: var(--text);
  font-size: 13px;
  line-height: 1.5;
}

.deal-card-body:hover .view-retailer-btn {
  opacity: 0.85;
}

/* Only add separator where you really want it */
.deal-grid .deal-card-wrap + .deal-card-wrap .deal-card {
  border-top: 1px solid var(--border);
}
.deal-card .img{aspect-ratio:16/9;background:#0c1320;display:block}
.deal-card .img img{width:100%;height:100%;object-fit:cover;display:block}
.deal-card .body{padding:12px}
.deal-card .img img.logo-fallback {
  object-fit: contain;
  padding: 20px;
  background: #0c1320;
}

/* ── Coupon Code ── */
.coupon-code {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 8px 12px;
  padding: 8px 10px;
  background: rgba(245, 158, 11, 0.08);
  border: 1px dashed rgba(245, 158, 11, 0.4);
  border-radius: 8px;
  cursor: pointer;
  transition: background .15s;
}
.coupon-code:hover { background: rgba(245, 158, 11, 0.14); }
.coupon-label {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
  color: #f59e0b;
  flex-shrink: 0;
}
.coupon-value {
  font-family: monospace;
  font-size: 13px;
  font-weight: 700;
  color: #fbbf24;
  letter-spacing: .05em;
  flex: 1;
}
.coupon-clip {
  all: unset;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 5px;
  background: #f59e0b;
  color: #1a0f00;
  cursor: pointer;
  flex-shrink: 0;
  transition: background .15s;
  width: auto !important;
  margin-top: 0 !important;
  border: none;
}
.coupon-clip:hover { background: #fbbf24; }
.coupon-clip.copied { background: #22c55e; color: #fff; }

/* ── Filter Tabs ── */
.filter-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 8px;
}

.filter-tab {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 20px;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  color: var(--text);
  background: var(--card);
  border: 1px solid var(--border);
  transition: background .15s, border-color .15s;
  white-space: nowrap;
}

.filter-tab:hover {
  background: rgba(255,255,255,.06);
  border-color: var(--accent);
}

.filter-tab.active {
  background: var(--accent);
  color: #04101a;
  border-color: var(--accent);
}

.filter-tab-logo {
  width: 16px;
  height: 16px;
  object-fit: contain;
  border-radius: 2px;
}

/* ── Search Page ── */
.search-page-form { margin-bottom: 8px; }

.search-page-wrap {
  display: flex;
  gap: 8px;
}

.search-page-input {
  flex: 1;
  padding: 10px 14px;
  border-radius: 8px;
  border: 1px solid var(--border);
  background: var(--card);
  color: var(--text);
  font-size: 15px;
  outline: none;
}

.search-page-input:focus {
  border-color: var(--accent);
}

.search-page-btn {
  padding: 10px 20px;
  border-radius: 8px;
  background: var(--accent);
  color: #04101a;
  font-weight: 700;
  font-size: 14px;
  border: none;
  cursor: pointer;
  width: auto !important;
  margin-top: 0 !important;
}

.search-page-btn:hover { opacity: .85; }

/* ── Deal Detail Page ── */
.deal-detail {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  align-items: start;
  max-width: 900px;
}

.deal-detail-img img {
  width: 100%;
  border-radius: 12px;
  object-fit: contain;
  background: var(--card);
  border: 1px solid var(--border);
}

.deal-detail-info h1 {
  font-size: 1.3rem;
  margin: 8px 0;
  line-height: 1.4;
}

.deal-detail-cta {
  display: inline-block;
  margin-top: 20px;
  padding: 12px 24px;
  background: var(--accent);
  color: #04101a;
  font-weight: 800;
  font-size: 15px;
  border-radius: 8px;
  text-decoration: none;
}

.deal-detail-cta:hover { opacity: .85; }

.deal-text {
  margin: 12px 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--muted);
}

@media (max-width: 640px) {
  .deal-detail { grid-template-columns: 1fr; }
}

.meta{color:var(--muted);font-size:13px}
.price{display:flex;gap:10px;align-items:baseline;margin-top:8px}
.price .now{font-size:20px;font-weight:900}
.price .was{color:var(--muted);text-decoration:line-through;font-size:14px}
.badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.badge{font-size:12px;padding:5px 8px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}

.mobile-bottom-nav{
  display:none;
  position:fixed;left:0;right:0;bottom:0;
  background:rgba(11,15,23,.95);
  border-top:1px solid var(--border);
  padding:10px 10px calc(10px + env(safe-area-inset-bottom));
  z-index:30;
}
.mobile-bottom-nav .row{display:flex;justify-content:space-around;gap:6px}
.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--muted);font-size:12px}
.mobile-bottom-nav a strong{font-size:12px;color:var(--text);font-weight:700}


.deal-card-wrap {
  position: relative;
}
.deal-card-wrap::before {
  display: none !important;
}
.deal-card::before {
  display: block;
}

.admin-actions.inside-card {
  padding: 8px 12px 12px;
  background: var(--card);
  border-left: 1px solid var(--border);
  border-right: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  border-radius: 0 0 16px 16px;
}

.admin-actions a {
  font-size: 11px;
  padding: 4px 6px;
  border-radius: 6px;
  text-decoration: none;
  font-weight: 700;
}

.admin-actions a:nth-child(1) {
  background: #16a34a;  /* green — Edit */
  color: #fff;
}

.admin-actions a:nth-child(2) {
  background: #000;     /* black — Post X */
  color: #fff;
}

.admin-actions a:nth-child(3) {
  background: #1877F2;  /* blue — Post FB */
  color: #fff;
}

/* Taxonomy Admin */
.tax-container{width:min(1100px,96vw);margin:0 auto}
.tax-header{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}
.tax-header h1{margin:0;font-size:22px}
.tax-count{color:var(--muted);font-size:14px}

.tax-flash{padding:10px 14px;border-radius:10px;margin-bottom:14px;font-size:14px}
.tax-flash-ok{background:#0d2818;color:#4dff91;border:1px solid #1a4d2e}
.tax-flash-err{background:#2a0f0f;color:#ff7b7b;border:1px solid #4d1a1a}

.tax-quick-add{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px;margin-bottom:16px}
.tax-quick-fields{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.tax-quick-fields input{flex:1;min-width:140px;margin-top:0;padding:9px 12px;font-size:14px}
.tax-quick-fields button{flex:0 0 auto;margin-top:0;width:auto;padding:9px 18px;font-size:14px;border-radius:10px;white-space:nowrap}

.tax-bulk-bar{align-items:center;gap:12px;padding:10px 14px;background:#1a1a2e;border:1px solid var(--accent);border-radius:10px;margin-bottom:10px;font-size:14px;color:var(--accent)}

.tax-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid var(--border)}
.tax-table{width:100%;border-collapse:collapse;font-size:14px}
.tax-table thead{background:rgba(255,255,255,.03)}
.tax-table th{text-align:left;padding:10px 12px;color:var(--muted);font-weight:600;font-size:13px;border-bottom:1px solid var(--border);white-space:nowrap}
.tax-table td{padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:middle}
.tax-th-check{width:36px}
.tax-name{font-weight:600}
.tax-slug code{background:rgba(255,255,255,.06);padding:2px 6px;border-radius:4px;font-size:13px}
.tax-desc{color:var(--muted);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tax-deals{text-align:center;font-weight:600;color:var(--accent)}
.tax-date{color:var(--muted);white-space:nowrap;font-size:13px}
.tax-actions{white-space:nowrap}
.tax-empty{text-align:center;padding:32px 12px;color:var(--muted)}

.tax-btn-sm{padding:5px 10px;border:0;border-radius:6px;cursor:pointer;font-size:12px;font-weight:600}
.tax-btn-edit{background:rgba(77,215,255,.15);color:var(--accent)}
.tax-btn-del{background:rgba(255,123,123,.12);color:#ff7b7b}
.tax-btn-save{background:var(--accent);color:#04101a}
.tax-btn-cancel{background:rgba(255,255,255,.08);color:var(--muted)}
.tax-btn-danger{padding:6px 14px;border:0;border-radius:8px;background:#b91c1c;color:#fff;cursor:pointer;font-size:13px;font-weight:600}

.tax-edit-row td{background:rgba(77,215,255,.04);padding:14px}
.tax-inline-form{margin:0}
.tax-inline-fields{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.tax-inline-fields label{flex:1;min-width:140px;font-size:12px;color:var(--muted);margin:0}
.tax-inline-fields label input{width:100%;margin-top:4px;padding:8px 10px;font-size:14px}
.tax-inline-btns{display:flex;gap:6px;align-items:flex-end;padding-bottom:1px}

.tax-pagination{display:flex;gap:6px;align-items:center;justify-content:center;margin-top:14px;flex-wrap:wrap}
.tax-pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border-radius:8px;background:var(--card);border:1px solid var(--border);color:var(--text);font-size:13px;text-decoration:none}
.tax-pagination a:hover{border-color:var(--accent);color:var(--accent)}
.tax-page-current{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border-radius:8px;background:var(--accent);color:#04101a;font-size:13px;font-weight:700}
.tax-page-info{color:var(--muted);font-size:13px;margin-left:8px}

@media (max-width:640px){
  .tax-quick-fields{flex-direction:column}
  .tax-quick-fields input,.tax-quick-fields button{width:100%;min-width:0}
  .tax-inline-fields{flex-direction:column}
}

/* Chip picker (deal edit categories/tags) */
.chip-picker{margin-top:6px}
.chip-picker-search{display:block;width:100%;padding:9px 12px;background:#0c1320;color:var(--text);border:1px solid var(--border);border-radius:10px;font-size:13px;margin-bottom:8px}
.chip-picker-search:focus{outline:none;border-color:var(--accent)}
.chip-picker-wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-height:calc(3 * 38px);overflow:hidden;transition:max-height .25s ease}
.chip-picker-wrap.expanded{max-height:none}
.chip-picker-wrap label{display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;border:1px solid var(--border);background:var(--card);color:var(--muted);font-size:13px;cursor:pointer;margin:0;user-select:none;transition:all .12s;white-space:nowrap}
.chip-picker-wrap label:nth-child(4n+2),.chip-picker-wrap label:nth-child(4n+4){background:rgba(255,255,255,.03)}
.chip-picker-wrap label:hover{border-color:rgba(77,215,255,.4);color:var(--text)}
.chip-picker-wrap label.selected{background:rgba(77,215,255,.15);border-color:var(--accent);color:var(--accent);font-weight:600}
.chip-picker-wrap label input{display:none}
.chip-picker-footer{display:flex;align-items:center;gap:12px;margin-top:8px;font-size:12px;color:var(--muted)}
.chip-picker-toggle{background:none;border:none;color:var(--accent);font-size:12px;cursor:pointer;padding:0;font-weight:600;margin:0;width:auto}

select {
    background-color: #1b263b !important;
    color: #ffffff !important;
    border: 1px solid #2c3e50;
}

select option {
    background-color: #1b263b;
    color: #ffffff;
}
/* 
.form-control,
input,
textarea {
    background-color: #1b263b !important;
    color: #ffffff !important;
} */

/* ── Desktop Nav ── */
.desktop-nav {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-shrink: 0;
}
.desktop-nav a {
  color: var(--muted);
  font-size: 14px;
  font-weight: 600;
  padding: 6px 10px;
  border-radius: 8px;
  transition: color .15s, background .15s;
  white-space: nowrap;
}
.desktop-nav a:hover {
  color: var(--text);
  background: rgba(255,255,255,.06);
}
.desktop-nav-admin {
  color: var(--accent) !important;
  border: 1px solid rgba(77,215,255,.3);
}

/* ── Social Links ── */
.social-links {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.social-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: transparent;
  color: var(--muted);
  transition: color .15s, border-color .15s, background .15s, transform .15s;
}

.social-link:hover,
.social-link:focus-visible {
  color: var(--text);
  border-color: rgba(77,215,255,.45);
  background: rgba(255,255,255,.04);
  transform: translateY(-1px);
}

.social-link:focus-visible {
  outline: 2px solid rgba(77,215,255,.18);
  outline-offset: 2px;
}

.social-link-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.social-link-facebook .social-link-icon {
  font-size: 13px;
  font-weight: 900;
}

.social-link-text {
  display: none;
}

/* ── Hamburger Button ── */
.hamburger-btn {
  all: unset;
  cursor: pointer;
  display: none;
  flex-direction: column;
  gap: 5px;
  padding: 6px;
  border-radius: 8px;
  flex-shrink: 0;
}
.hamburger-btn span {
  display: block;
  width: 22px;
  height: 2px;
  background: var(--muted);
  border-radius: 2px;
  transition: transform .2s, opacity .2s, background .2s;
}
.hamburger-btn:hover span { background: var(--text); }
.hamburger-btn.active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.hamburger-btn.active span:nth-child(2) { opacity: 0; }
.hamburger-btn.active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* ── Hamburger Dropdown ── */
.hamburger-menu {
  display: none;
  flex-direction: column;
  position: absolute;
  top: calc(100% + 4px);
  right: 16px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 8px;
  min-width: 180px;
  z-index: 50;
  box-shadow: 0 8px 32px rgba(0,0,0,.4);
}
.hamburger-menu.open { display: flex; }
.hamburger-menu a {
  padding: 10px 14px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 600;
  color: var(--muted);
  transition: background .12s, color .12s;
}
.hamburger-menu a:hover {
  background: rgba(255,255,255,.06);
  color: var(--text);
}

.hamburger-social {
  display: none;
  margin-top: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--border);
}

.hamburger-social-label {
  margin: 0 4px 8px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.hamburger-social .social-links {
  flex-direction: column;
  align-items: stretch;
  gap: 6px;
}

.hamburger-social .social-link {
  width: 100%;
  height: auto;
  min-height: 42px;
  justify-content: flex-start;
  gap: 10px;
  border-radius: 10px;
  padding: 10px 12px;
}

.hamburger-social .social-link-text {
  display: inline;
  font-size: 14px;
  font-weight: 600;
}

/* ── Admin Navigation ── */

.admin-nav {
  display: flex;
  gap: 18px;
  align-items: center;
  position: relative;
  z-index: 2001;
}

/* top-level links */

.admin-nav a,
.nav-parent {
  color: var(--muted);
  font-weight: 600;
}

.admin-nav a:hover,
.nav-parent:hover {
  color: var(--text);
}

.nav-active {
  color: var(--accent) !important;
}

/* dropdown container */

.nav-dropdown {
  position: relative;
  z-index: 2001;
}

.nav-parent {
  cursor: pointer;
}

/* dropdown menu */

.nav-dropdown-menu {
  display: none;
  position: absolute;
  top: calc(100% - 2px);
  left: 0;
  min-width: 180px;
  background: var(--card);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 6px 0;
  box-shadow: 0 8px 24px rgba(0,0,0,.45);
  z-index: 2002;
}

/* dropdown links */

.nav-dropdown-menu a {
  display: block;
  padding: 8px 14px;
  font-size: 14px;
  color: var(--muted);
}

.nav-dropdown-menu a:hover {
  background: rgba(255,255,255,.05);
  color: var(--text);
}

/* show dropdown */

.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu {
  display: block;
}



.admin-quickbar {
  display: flex;
  gap: 10px;
  padding: 10px 18px;
  background: var(--card);
  border-bottom: 1px solid var(--border);
  position: relative;
  z-index: 100;
}

.admin-quickbar a {
  padding: 6px 12px;
  border-radius: 8px;
  text-decoration: none;
  font-weight: 600;
  background: rgba(255,255,255,.05);
  border: 1px solid var(--border);
  color: var(--muted);
}

.admin-quickbar a:hover {
  background: rgba(79, 71, 71, 0.888);
  color: var(--text);
}

.quick-primary {
  background: #2c7be5;
  color: white !important;
  border-color: #2c7be5;
}

/* Desktop */
.radar-editor{
  position:fixed;
  right:0;
  top:0;
  height:100%;
  width:420px;
  background:var(--card);
  border-left:1px solid var(--border);
  transform:translateX(100%);
  transition:transform .25s;
  z-index:999;
}

.radar-editor.open{
  transform:translateX(0);
}

/* Mobile */
@media (max-width: 700px){

  .radar-editor{
    width:100%;
    left:0;
    right:0;
    border-left:none;
    border-top:1px solid var(--border);
  }

  .radar-editor-inner{
    padding:16px;
  }

  .radar-editor input,
  .radar-editor select{
    font-size:16px; /* prevents iOS zoom */
  }

}

.radar-editor label{
  display:block;
  margin-top:12px;
  font-size:13px;
}

.radar-editor input,
.radar-editor select{
  width:100%;
  padding:10px;
  margin-top:4px;
  border-radius:6px;
  border:1px solid var(--border);
}

/* ── Mobile: hide desktop nav & hamburger, show bottom nav ── */
@media (max-width: 900px) {
  .desktop-nav       { display: none; }
  .hamburger-btn     { display: none; }
  .hamburger-menu    { display: none !important; }
  .mobile-bottom-nav { display: block; }
  body               { padding-bottom: 78px; }
}

/* ── Desktop: hide bottom nav ── */
@media (min-width: 901px) {
  .mobile-bottom-nav { display: none !important; }
  body               { padding-bottom: 0 !important; }
}

@media (max-width: 1120px) {
  .desktop-nav a {
    padding: 6px 8px;
    font-size: 13px;
  }
}

@media (max-width: 1040px) {
  .header-actions > .social-links {
    display: none;
  }

  .desktop-nav {
    display: none;
  }

  .hamburger-btn {
    display: flex;
  }

  .hamburger-menu.open {
    display: flex !important;
  }

  .hamburger-social {
    display: block;
  }
}

@media (max-width: 900px) {
  .public-header-inner {
    flex-wrap: wrap;
    align-items: center;
  }

  .logo {
    flex: 1 1 auto;
  }

  .search {
    order: 3;
    flex: 1 0 100%;
  }

  .header-actions {
    margin-left: auto;
  }

  .hamburger-btn {
    display: flex;
  }

  .hamburger-menu {
    width: min(260px, calc(100vw - 32px));
  }

  .hamburger-menu.open {
    display: flex !important;
  }

  .hamburger-social {
    display: block;
  }
}

/* ── Related Live Deals section (stale/expired deal pages) ─────────────── */

.related-live-deals {
  margin: 32px 0 0;
  padding: 22px;
  border: 1px solid #334155;
  border-radius: 14px;
  background: #f8fafc;
  color: #111827;
  box-shadow: 0 4px 32px rgba(0, 0, 0, 0.45);
}

.related-live-deals-header {
  margin-bottom: 18px;
}

.related-live-deals-title {
  margin: 0 0 6px;
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.2;
  color: #111827;
}

.related-live-deals-subtitle {
  margin: 0;
  color: #4b5563;
  font-size: 0.9rem;
  line-height: 1.5;
}

.related-live-deals-fallback {
  margin: 24px 0 0;
}

.related-live-deals-fallback a {
  color: var(--accent);
}

.related-deals-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
  gap: 16px;
}

.related-deal-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #d1d9e6;
  border-radius: 12px;
  background: #ffffff;
  color: #111827;
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.related-deal-card:hover {
  transform: translateY(-2px);
  border-color: #64748b;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}

.related-deal-img {
  display: block;
  aspect-ratio: 1 / 1;
  background: #f1f5f9;
  border-bottom: 1px solid #e2e8f0;
  overflow: hidden;
}

.related-deal-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.related-deal-body {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 12px 14px 14px;
  flex: 1;
}

.related-deal-retailer {
  font-size: 0.7rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.related-deal-title {
  color: #111827;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.related-deal-price {
  margin-top: 5px;
  display: flex;
  align-items: baseline;
  gap: 7px;
  flex-wrap: wrap;
}

.related-deal-now {
  color: #0f172a;
  font-size: 1rem;
  font-weight: 800;
}

.related-deal-was {
  color: #64748b;
  font-size: 0.8rem;
  text-decoration: line-through;
}

@media (max-width: 640px) {
  .related-live-deals {
    padding: 16px;
    margin-top: 24px;
    border-radius: 12px;
  }

  .related-deals-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }

  .related-deal-body {
    padding: 10px;
  }

  .related-deal-title {
    font-size: 0.82rem;
  }

  .related-deal-now {
    font-size: 0.92rem;
  }
}

@media (max-width: 380px) {
  .related-deals-grid {
    grid-template-columns: 1fr;
  }
}
