/* ===================== botones ===================== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.55rem;
  padding:.82rem 1.5rem;border-radius:var(--r-md);
  font-size:.86rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;
  border:1px solid transparent;transition:background-color .28s ease,color .28s ease,border-color .28s ease,transform .28s ease;
}
.btn:hover{transform:translateY(-1px)}
.btn--gold{background:var(--accent-bright);color:var(--on-accent)}
.btn--gold:hover{background:color-mix(in oklab,var(--gold) 86%,var(--pri-950))}
.btn--wine{background:var(--primary);color:var(--on-primary)}
.btn--wine:hover{background:var(--pri-800)}
.btn--line{border-color:currentColor;color:inherit}
.btn--line:hover{background:oklch(1 0 0 / .1)}
.btn--ghost{border-color:var(--line);color:var(--ink);background:var(--surface)}
.btn--ghost:hover{border-color:var(--accent)}
.btn--wide{width:100%}
.btn[disabled]{opacity:.45;pointer-events:none}
.pill{
  display:inline-flex;align-items:center;gap:.4rem;
  padding:.45rem 1rem;border-radius:999px;border:1px solid var(--line);
  background:transparent;color:var(--ink-soft);
  font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  transition:background-color .25s ease,color .25s ease,border-color .25s ease;
}
.pill:hover{border-color:var(--accent);color:var(--ink)}
.pill[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}
.icon{width:1.15rem;height:1.15rem;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.icon--solid{fill:currentColor;stroke:none}