/* ============================================================
   COMPONENTS — Buttons, Chips, Badges (shared across sections)
   ============================================================ */

/* ─── BUTTONS ────────────────────────────────────────────── */
.btn-black {
  display: inline-flex; align-items: center; gap: .5rem;
  background: var(--ink); color: var(--white);
  font-family: 'Instrument Sans', sans-serif;
  font-size: .95rem; font-weight: 700;
  padding: .85rem 1.6rem; border-radius: var(--radius-sm);
  text-decoration: none; transition: all .15s;
  box-shadow: var(--shadow-sm);
  position: relative; overflow: hidden;
}
.btn-black::after {
  content: ''; position: absolute;
  top: 0; left: -80%; width: 55%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.12), transparent);
  animation: shimmer 3.5s ease-in-out 0.5s infinite;
}
.btn-black:hover { background: #000; transform: translateY(-1px); box-shadow: var(--shadow-md); }
.btn-black .arrow { transition: transform .2s; }
.btn-black:hover .arrow { transform: translateX(3px); }

.btn-line {
  display: inline-flex; align-items: center; gap: .5rem;
  background: transparent; color: var(--ink);
  font-family: 'Instrument Sans', sans-serif;
  font-size: .95rem; font-weight: 600;
  padding: .85rem 1.4rem; border-radius: var(--radius-sm);
  text-decoration: none; border: 1.5px solid var(--border-strong);
  transition: all .15s;
}
.btn-line:hover { border-color: var(--ink); background: rgba(0,0,0,0.02); }

.btn-trial {
  display: inline-flex; align-items: center; gap: .6rem;
  background: #fff; color: var(--ink);
  font-family: 'Instrument Sans', sans-serif;
  font-size: 1rem; font-weight: 800;
  padding: 1rem 2rem; border-radius: var(--radius-sm);
  text-decoration: none; transition: all .2s;
  box-shadow: 0 4px 24px rgba(0,0,0,0.25);
}
.btn-trial:hover { transform: translateY(-2px); box-shadow: 0 8px 32px rgba(0,0,0,0.3); }
.btn-trial .tag {
  background: var(--blue); color: #fff;
  font-size: .7rem; font-weight: 800;
  padding: .2rem .5rem; border-radius: 4px;
}

.btn-yellow {
  display: inline-flex; align-items: center; gap: .6rem;
  background: #fbbf24; color: var(--ink);
  font-family: 'Instrument Sans', sans-serif;
  font-size: 1rem; font-weight: 800;
  padding: .9rem 2rem; border-radius: var(--radius-sm);
  text-decoration: none; transition: all .2s;
  box-shadow: 0 4px 20px rgba(251,191,36,0.4);
}
.btn-yellow:hover { background: #f59e0b; transform: translateY(-2px); box-shadow: 0 8px 32px rgba(251,191,36,0.5); }

.btn-white-ghost {
  display: inline-flex; align-items: center; gap: .6rem;
  background: transparent; color: rgba(255,255,255,0.7);
  border: 1.5px solid rgba(255,255,255,0.2);
  font-family: 'Instrument Sans', sans-serif;
  font-size: 1rem; font-weight: 600;
  padding: .9rem 2rem; border-radius: var(--radius-sm);
  text-decoration: none; transition: all .2s;
}
.btn-white-ghost:hover { border-color: rgba(255,255,255,0.5); color: #fff; }

/* ─── STATUS CHIPS ───────────────────────────────────────── */
.status-chip {
  font-size: .68rem; font-weight: 700;
  padding: .2rem .55rem; border-radius: 100px;
  white-space: nowrap;
}
.s-applied   { background: var(--blue-light); color: var(--blue-vivid); }
.s-interview { background: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0; }
.s-offer     { background: #fffbeb; color: #92400e; border: 1px solid #fde68a; }

/* Tracker table chips */
.chip {
  display: inline-flex; align-items: center; gap: .25rem;
  font-size: .7rem; font-weight: 700;
  padding: .22rem .6rem; border-radius: 100px;
}
.chip-applied   { background: var(--blue-light); color: var(--blue-vivid); }
.chip-interview { background: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0; }
.chip-offer     { background: #fffbeb; color: #92400e; border: 1px solid #fde68a; }
.chip-rejected  { background: #fef2f2; color: #991b1b; }
