.root, :root{
  /* QRlets Brand Tokens */
  --qr-green: #219653;
  --qr-ink: #111827;
  --qr-muted: #6B7280;
  --qr-bg: #ffffff;
  --qr-bg-soft: #F3F4F6;
  --qr-radius: 12px;
}

body{
  font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  color: var(--qr-ink);
  background: var(--qr-bg);
}

/* Brand logo sizing */
.brand-logo{
  height: 34px;
  width: auto;
  display: block;
}

/* Links + nav (utility-first, not salesy) */
.navbar .nav-link{
  color: var(--qr-ink);
  font-weight: 500;
}
.navbar .nav-link:hover,
.navbar .nav-link:focus{
  color: var(--qr-green);
}

/* Buttons */
.btn-success {
  background: var(--qr-green);
  border-color: var(--qr-green);
}
.btn-success:hover { filter: brightness(.95); }

.btn-outline-success{
  --bs-btn-color: var(--qr-green);
  --bs-btn-border-color: var(--qr-green);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--qr-green);
  --bs-btn-hover-border-color: var(--qr-green);
  --bs-btn-active-bg: var(--qr-green);
  --bs-btn-active-border-color: var(--qr-green);
}
.hero {
  background: linear-gradient(180deg, rgba(33,150,83,0.10), rgba(33,150,83,0));
}
.ad-slot {
  border: 1px dashed #cfd8dc;
  background: #fafafa;
  border-radius: var(--qr-radius);
  min-height: 140px;
}
.profile-card {
  border-radius: 18px;
}
.link-btn {
  border-radius: 14px;
}

/* Inputs: subtle focus = helpful */
.form-control:focus{
  border-color: rgba(33,150,83,0.55);
  box-shadow: 0 0 0 .25rem rgba(33,150,83,0.18);
}

/* Reduce “sales page” feel: slightly calmer hero type scale */
.hero h1{ letter-spacing: -0.02em; }
.mobile-bottom-nav{
  position: fixed;
  left:0; right:0; bottom:0;
  z-index: 1030;
}
body.has-bottom-nav { padding-bottom: 78px; }

.avatar-box{width:84px;height:84px;border-radius:18px;overflow:hidden;background:#f3f5f7;display:flex;align-items:center;justify-content:center;}
.avatar-box img{width:100%;height:100%;object-fit:cover;display:block;}
.repeat-card{background:#fff;}
