:root{
  --color-bg: #fff9f2;
  --color-surface: #ffffff;
  --color-primary: #ff7a59; /* warm friendly orange */
  --color-accent: #3ab795; /* soft green */
  --color-muted: #6b7280;
  --text-color: #1f2937;
  --radius: 12px;
  --card-radius: 14px;
  --shadow-sm: 0 1px 3px rgba(31,41,55,0.06);
  --shadow-md: 0 8px 24px rgba(31,41,55,0.08);
  --gap: 0.75rem;
}

/* Mobile first base */
html,body{
  height:100%;
  background:var(--color-bg);
  color:var(--text-color);
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';
  font-size:16px;
  line-height:1.45;
}

main{padding:1rem}

.card{
  border: none;
  border-radius: var(--card-radius);
  background: linear-gradient(180deg, rgba(255,255,255,0.9), var(--color-surface));
  box-shadow: var(--shadow-sm);
}

.card .card-body{padding:0.85rem}

.btn{
  border-radius: 999px;
  padding: 0.45rem 0.75rem;
  font-weight:600;
}

.btn-primary{
  background: linear-gradient(90deg,var(--color-primary), #ff9c80);
  border: none;
  color: #fff;
  box-shadow: 0 6px 18px rgba(255,122,89,0.12);
}

.btn-outline-primary{
  color: var(--color-primary);
  border-radius: 999px;
  border: 1px solid rgba(255,122,89,0.15);
  background: transparent;
}

.muted{color:var(--color-muted)}

.wishlist-card{transition:transform .12s ease, box-shadow .12s ease}
.wishlist-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-md)}

/* utility */
.small{font-size:0.85rem}

/* Layout helpers */
@media(min-width:768px){
  main{padding:1.5rem}
}

/* fun accents */
.badge-fun{
  display:inline-block;
  padding:0.25rem 0.5rem;
  border-radius:8px;
  background: linear-gradient(90deg,var(--color-accent), #7ee0b9);
  color:#054a3a;
  font-weight:700;
}

/* Navbar avatar alignment tweaks */
.navbar .nav-link.d-flex{
  padding-top: .25rem;
  padding-bottom: .25rem;
}
.navbar .nav-link.d-flex img{
  width:32px; height:32px; object-fit:cover; border-radius:50%;
}
.navbar .nav-link.d-flex span{
  display:inline-block; margin-left:0.25rem; line-height:1; vertical-align:middle;
}
