:root{--bg:#081826;--accent:#e91e63;--text:#e9eef6;--muted:#9fb0c4;}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto;background:var(--bg);color:var(--text);}
.wrap{max-width:1100px;margin:0 auto;padding:14px;}
.nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;}
.nav a{color:var(--text);text-decoration:none;margin-left:10px}
.logo{font-weight:800}
main{min-height:70vh}
.card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px;}
.card.subtle{background:rgba(255,255,255,.04)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;}
.row{display:flex;gap:8px;align-items:center}
.row.wrap{flex-wrap:wrap}
.row-between{display:flex;justify-content:space-between;align-items:center;gap:8px}
label{display:block;font-size:13px;margin-top:8px;color:var(--muted)}
input,textarea{width:100%;padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.25);color:var(--text)}
textarea{min-height:76px}
.btn{display:inline-block;background:var(--accent);border:none;color:white;padding:8px 12px;border-radius:8px;font-weight:700;cursor:pointer;text-decoration:none}
.btn.ghost{background:transparent;border:1px solid rgba(255,255,255,.2)}
.btn.danger{background:#c0392b}
.hero h1{margin:0 0 6px 0}
.muted{color:var(--muted)}
.chip{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.06);padding:4px 8px;border-radius:999px;margin:3px 3px}
.pill{display:inline-block;padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.12);font-size:12px}
.footer{margin-top:18px;font-size:12px;text-align:center}
@media (max-width:640px){.nav{flex-direction:column;align-items:flex-start}}


/* --- Polished Mobile Enhancements v1.1 --- */

@media (max-width: 720px) {
  .grid {
    grid-template-columns: 1fr !important;
  }
  .card {
    padding: 16px;
  }
  .nav {
    flex-direction: column;
    gap: 8px;
  }
  input, textarea {
    font-size: 16px;
  }
  .btn {
    width: 100%;
    text-align: center;
  }
}

/* Smooth card glow */
.card {
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
  transition: transform 0.2s;
}
.card:hover {
  transform: translateY(-2px);
}

/* Sponsor logos responsive */
.sponsor-row img {
  max-height: 52px;
  width: auto;
}

/* Add soft snowfall for holiday aesthetic */
body::after {
  content: '';
  pointer-events: none;
  position: fixed;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="5" height="5"><circle cx="2" cy="2" r="2" fill="white" opacity="0.4"/></svg>');
  animation: snow 12s linear infinite;
  opacity: 0.15;
}

@keyframes snow {
  from { background-position: 0 0; }
  to { background-position: 0 2000px; }
}


/* v1.2 Ultra polish */
body.light{--bg:#f6f8fb;--text:#0b1020;--muted:#55657a;}
body.light .card{background:white;border-color:#e5e9f0;}
body.light input, body.light textarea{background:#f2f4f8;color:#0b1020;border-color:#d8dee9;}
body.light .btn.ghost{color:#0b1020;}

/* Wishlist grid mode */
body[data-wishlist-view="grid"] .wishlist-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;
}
body[data-wishlist-view="grid"] .wishlist-grid .wishlist-item-card{
  flex-direction:column;align-items:flex-start;
}
body[data-wishlist-view="cards"] .wishlist-grid{display:block;}

/* Sponsor rotator */
.sponsor-rotator{position:relative;overflow:hidden}
.sponsor-rotator img{animation: sponsorFade 12s infinite; opacity:0;}
.sponsor-rotator img:nth-child(1){animation-delay:0s}
.sponsor-rotator img:nth-child(2){animation-delay:4s}
.sponsor-rotator img:nth-child(3){animation-delay:8s}
@keyframes sponsorFade{0%,10%{opacity:0} 20%,40%{opacity:1} 50%,100%{opacity:0}}

/* Mini buttons */
.btn.mini{padding:4px 8px;font-size:12px}

/* Draggable potluck rows */
.draggable-row{cursor:grab}
.draggable-row.dragging{opacity:.5}

/* v1.3 */
.tabs-bar{
  position:sticky;top:0;z-index:50;
  display:flex;gap:6px;overflow-x:auto;
  background:var(--bg);padding:8px;border-radius:12px;margin-bottom:10px;
  border:1px solid rgba(255,255,255,.1);
}
.tabs-bar .tab-btn{
  background:transparent;border:0;color:var(--text);padding:8px 10px;border-radius:8px;font-weight:700;cursor:pointer;white-space:nowrap;
}
.tabs-bar .tab-btn.active{background:rgba(255,255,255,.08);}
.tabs-bar .tab-indicator{
  position:absolute;height:3px;background:var(--accent);bottom:6px;left:0;border-radius:999px;transition:all .25s ease;
}
.select{width:100%;padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.25);color:var(--text);}
body[data-hide-purchased="1"] .wishlist-item-card .pill{display:none}
body[data-hide-purchased="1"] .wishlist-item-card:has(.pill){opacity:.35;filter:grayscale(1)}
.premium-banner{margin-bottom:12px}
