# Botones

> Primarios, secundarios, acentos, tamaños, solo ícono, estados, soft, link, block y con ceja.

Categoría: Acción · Solar v0.8.0

Usa este HTML tal cual, con Tailwind y ccs-tailwind-config.js cargados (ver https://utiliza.me/solar/instalacion.html).

## Guía: Estados

Todos los botones tienen los mismos estados. Hover: cambia el fondo o el borde, según la variante. Foco del teclado: anillo azul separado del botón (focus-visible:ring-2 ring-offset-2 ring-ccs-blue; en oscuro, ring-ccs-dark-accent); sobre un fondo de color, anillo blanco sin separación. Presionado: el botón baja al 95 % mientras se mantiene apretado (active:scale-95), salvo que la persona haya pedido reducir el movimiento (motion-reduce:active:scale-100). Deshabilitado: no recibe foco ni se achica; en claro, azul al 40 %; en oscuro, gris sólido (dark:bg-ccs-dark-overlay dark:text-ccs-dark-line-strong). Para acciones que tardan, usa el estado Cargando de Componentes › Loading.
Cuándo corresponde el botón rojo —y cuándo no— está en el ejemplo Estados de acá abajo, y el caso completo, con su modal, en Modal & Toast › Confirmación.

## Primarios

```html
<div class="flex flex-wrap items-center gap-3">
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-blue text-white font-medium hover:bg-ccs-blue-mid transition shadow-ccs-sm dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Ver más</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-blue text-white font-medium hover:bg-ccs-blue-mid transition shadow-ccs-sm inline-flex items-center gap-2 dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">
    <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 5v14M5 12h14"/></svg>
    Nuevo proyecto
  </button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-blue text-white font-medium hover:bg-ccs-blue-mid transition shadow-ccs-sm inline-flex items-center gap-2 dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">
    Continuar
    <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M5 12h14M13 5l7 7-7 7"/></svg>
  </button>
  <button disabled class="h-10 px-4 text-sm rounded-ccs bg-ccs-blue/40 text-white font-medium cursor-not-allowed dark:bg-ccs-dark-overlay dark:text-ccs-dark-line-strong focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">Disabled</button>
</div>
```

## Secundarios

```html
<div class="flex flex-wrap items-center gap-3">
  <button class="h-10 px-4 text-sm rounded-ccs border border-ccs-blue text-ccs-blue font-medium hover:bg-ccs-blue hover:text-white transition dark:border-ccs-dark-text dark:text-ccs-dark-text dark:hover:bg-ccs-blue-mid dark:hover:border-ccs-blue-mid dark:hover:text-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Ver más</button>
  <button class="h-10 px-4 text-sm rounded-ccs border border-ccs-line-strong text-ccs-ink font-medium hover:border-ccs-blue hover:text-ccs-blue transition bg-white dark:border-ccs-dark-line-strong dark:text-ccs-dark-text dark:hover:border-ccs-dark-text dark:hover:text-ccs-dark-text dark:bg-ccs-dark-surface focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Cancelar</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-bg text-ccs-ink font-medium hover:bg-ccs-hover transition dark:bg-ccs-dark-overlay dark:text-ccs-dark-text dark:hover:bg-ccs-dark-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Sutil</button>
  <button class="h-10 px-4 text-sm rounded-ccs text-ccs-blue font-medium hover:bg-ccs-blue/5 transition inline-flex items-center gap-2 dark:text-ccs-dark-accent dark:hover:bg-ccs-dark-hover dark:hover:text-ccs-dark-text focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">
    Ghost link
    <svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M5 12h14M13 5l7 7-7 7"/></svg>
  </button>
</div>
```

## Contorno sobre fondo oscuro

```html
<p class="text-sm text-ccs-slate mb-4 max-w-xl dark:text-ccs-dark-text-2">Secundario para fondos oscuros: Ink, Azul CCS o foto con velo. Lleva un fondo blanco al 10 % y desenfoca lo que tiene detrás, para que el texto se lea también sobre fotos. Va al lado de un botón blanco o de color; no cambia con el modo.</p>
<div class="grid gap-4 sm:grid-cols-3">
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Ink</div>
    <div class="relative isolate overflow-hidden rounded-ccs bg-ccs-ink px-6 py-8 flex flex-wrap items-center justify-center gap-3">
      <button class="h-10 px-4 text-sm rounded-ccs border border-white/40 bg-white/10 text-white font-medium backdrop-blur-md hover:bg-white/20 hover:border-white transition inline-flex items-center gap-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white active:scale-95 motion-reduce:active:scale-100">Ver programa</button>
      <button class="h-10 px-4 text-sm rounded-ccs border border-white/40 bg-white/10 text-white font-medium backdrop-blur-md hover:bg-white/20 hover:border-white transition inline-flex items-center gap-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white active:scale-95 motion-reduce:active:scale-100"><iconify-icon icon="solar:hamburger-menu-outline" class="shrink-0 text-[18px]" aria-hidden="true"></iconify-icon>Menú</button>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Azul CCS</div>
    <div class="relative isolate overflow-hidden rounded-ccs bg-ccs-blue px-6 py-8 flex flex-wrap items-center justify-center gap-3">
      <button class="h-10 px-4 text-sm rounded-ccs border border-white/40 bg-white/10 text-white font-medium backdrop-blur-md hover:bg-white/20 hover:border-white transition inline-flex items-center gap-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white active:scale-95 motion-reduce:active:scale-100">Ver programa</button>
      <button class="h-10 px-4 text-sm rounded-ccs border border-white/40 bg-white/10 text-white font-medium backdrop-blur-md hover:bg-white/20 hover:border-white transition inline-flex items-center gap-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white active:scale-95 motion-reduce:active:scale-100"><iconify-icon icon="solar:hamburger-menu-outline" class="shrink-0 text-[18px]" aria-hidden="true"></iconify-icon>Menú</button>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Foto con velo</div>
    <div class="relative isolate overflow-hidden rounded-ccs bg-ccs-ink px-6 py-8 flex flex-wrap items-center justify-center gap-3">
      <img src="assets/img/hero-foto-horizontal.jpg" alt="" class="absolute inset-0 -z-10 h-full w-full object-cover">
      <div aria-hidden="true" class="absolute inset-0 -z-10 bg-ccs-ink/50"></div>
      <button class="h-10 px-4 text-sm rounded-ccs border border-white/40 bg-white/10 text-white font-medium backdrop-blur-md hover:bg-white/20 hover:border-white transition inline-flex items-center gap-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white active:scale-95 motion-reduce:active:scale-100">Ver programa</button>
      <button class="h-10 px-4 text-sm rounded-ccs border border-white/40 bg-white/10 text-white font-medium backdrop-blur-md hover:bg-white/20 hover:border-white transition inline-flex items-center gap-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white active:scale-95 motion-reduce:active:scale-100"><iconify-icon icon="solar:hamburger-menu-outline" class="shrink-0 text-[18px]" aria-hidden="true"></iconify-icon>Menú</button>
    </div>
  </div>
</div>
```

## Acentos

```html
<div class="flex flex-wrap items-center gap-3">
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-success-fill text-white font-semibold transition shadow-ccs-sm dark:bg-ccs-dark-success-fill dark:hover:bg-ccs-dark-success-fill-hover hover:bg-ccs-success-fill-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Acción positiva</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-banner text-white font-semibold hover:bg-ccs-banner-dark transition shadow-ccs-sm dark:bg-ccs-banner-dark dark:hover:bg-ccs-banner-dark-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Banner CTA</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-ink text-white font-semibold hover:bg-ccs-slate transition dark:bg-ccs-dark-text dark:text-ccs-dark-bg dark:hover:bg-ccs-dark-text-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Oscuro</button>
</div>
```

## Tamaños

```html
<div class="flex flex-wrap items-center gap-3">
  <button class="h-8 px-3 text-sm rounded-ccs bg-ccs-blue text-white font-medium hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100">Small</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-blue text-white font-medium hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100">Medium · Default</button>
  <button class="h-12 px-6 text-base rounded-ccs bg-ccs-blue text-white font-medium hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100">Large</button>
  <button class="h-14 px-8 text-base rounded-ccs bg-ccs-blue text-white font-semibold hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100">Extra Large</button>
</div>
```

## Solo ícono

Miden 40 px. Dentro de una fila de tabla o lista (por ejemplo, el botón para copiar una clase en Color) pueden ser más chicos, pero nunca bajo 24 px, el mínimo de WCAG 2.5.8. Llevan siempre aria-label.

```html
<div class="flex flex-wrap items-center gap-3">
  <button aria-label="Agregar" class="w-10 h-10 rounded-lg bg-ccs-blue text-white hover:bg-ccs-blue-mid grid place-items-center dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100"><svg aria-hidden="true" class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M12 5v14M5 12h14"/></svg></button>
  <button aria-label="Buscar" class="w-10 h-10 rounded-lg border border-ccs-line-strong bg-white hover:border-ccs-blue hover:text-ccs-blue text-ccs-ink grid place-items-center dark:border-ccs-dark-line-strong dark:bg-ccs-dark-surface dark:hover:border-ccs-dark-text dark:hover:text-ccs-dark-text dark:text-ccs-dark-text focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100"><svg aria-hidden="true" class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M21 21l-4.35-4.35M17 11a6 6 0 1 1-12 0 6 6 0 0 1 12 0Z"/></svg></button>
  <button aria-label="Más opciones" class="w-10 h-10 rounded-full bg-ccs-bg hover:bg-ccs-hover text-ccs-ink grid place-items-center dark:bg-ccs-dark-overlay dark:hover:bg-ccs-dark-hover dark:text-ccs-dark-text focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100"><svg aria-hidden="true" class="w-4 h-4" viewBox="0 0 24 24" fill="currentColor"><circle cx="5" cy="12" r="2"/><circle cx="12" cy="12" r="2"/><circle cx="19" cy="12" r="2"/></svg></button>
  <button aria-label="Eliminar" class="w-10 h-10 rounded-lg border border-ccs-line-strong bg-white hover:border-ccs-error-line hover:text-ccs-error text-ccs-slate grid place-items-center dark:border-ccs-dark-line-strong dark:bg-ccs-dark-surface dark:hover:border-ccs-dark-error dark:hover:text-ccs-dark-error dark:text-ccs-dark-text-2 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100"><svg aria-hidden="true" class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><path d="M3 6h18M8 6V4a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v2m3 0v14a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V6"/></svg></button>
</div>
```

## Grupo segmentado

```html
<div class="inline-flex rounded-xl border border-ccs-line bg-white p-1 dark:border-ccs-dark-line dark:bg-ccs-dark-surface">
  <button class="px-4 h-9 text-sm font-medium rounded-lg bg-ccs-blue text-white dark:bg-ccs-blue-mid focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100">Lista</button>
  <button class="px-4 h-9 text-sm font-medium text-ccs-slate hover:text-ccs-ink dark:text-ccs-dark-text-2 dark:hover:text-ccs-dark-text focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100">Grilla</button>
  <button class="px-4 h-9 text-sm font-medium text-ccs-slate hover:text-ccs-ink dark:text-ccs-dark-text-2 dark:hover:text-ccs-dark-text focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg transition active:scale-95 motion-reduce:active:scale-100">Calendario</button>
</div>
```

## Estados (Advertencia / Error)

El rojo se gana, no se reparte: es para la acción que frena una pérdida que la persona no buscaba — cerrar sin guardar, descartar un borrador, sobrescribir un archivo. Si ya eligió deliberadamente la acción destructiva y solo falta confirmarla, el botón principal normal con el verbo exacto («Eliminar miembro») basta: el rojo repite lo que acaba de pedir y, de tanto verlo, deja de significar algo. El rojo de un campo con error es otra cosa y no cuenta acá: ahí no marca una acción, marca un dato que hay que corregir.

```html
<div class="flex flex-wrap items-center gap-3">
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-warning-fill text-white font-medium hover:bg-ccs-warning-fill-hover transition shadow-ccs-sm dark:bg-ccs-dark-warning-fill dark:hover:bg-ccs-dark-warning-fill-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Advertencia</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-error-fill text-white font-medium hover:bg-ccs-error-fill-hover transition shadow-ccs-sm dark:bg-ccs-dark-error-fill dark:hover:bg-ccs-dark-error-fill-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Error</button>
</div>
```

## Soft

```html
<div class="flex flex-wrap items-center gap-3">
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-blue/10 text-ccs-blue font-medium hover:bg-ccs-blue/15 transition dark:bg-ccs-dark-accent/10 dark:text-ccs-dark-accent dark:hover:bg-ccs-dark-accent/15 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Primario suave</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-success-soft text-ccs-success font-medium hover:bg-ccs-success-soft-hover hover:text-ccs-success-hover transition dark:bg-ccs-dark-success-fill/10 dark:hover:bg-ccs-dark-success-fill/20 dark:text-ccs-dark-success dark:hover:text-ccs-dark-success focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Éxito suave</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-warning-soft text-ccs-warning font-medium hover:bg-ccs-warning-soft-hover transition dark:text-ccs-dark-warning dark:bg-ccs-dark-warning-fill/10 dark:hover:bg-ccs-dark-warning-fill/20 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Advertencia suave</button>
  <button class="h-10 px-4 text-sm rounded-ccs bg-ccs-error-soft text-ccs-error font-medium hover:bg-ccs-error-soft-hover hover:text-ccs-error-hover transition dark:text-ccs-dark-error dark:hover:text-ccs-dark-error dark:bg-ccs-dark-error-fill/10 dark:hover:bg-ccs-dark-error-fill/20 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Error suave</button>
</div>
```

## Link

```html
<div class="flex flex-wrap items-center gap-3">
  <button class="h-10 inline-flex items-center text-sm text-ccs-blue font-medium hover:underline transition dark:text-ccs-dark-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Ver detalles</button>
  <button class="h-10 inline-flex items-center text-sm text-ccs-slate font-medium hover:text-ccs-ink hover:underline transition dark:text-ccs-dark-text-2 dark:hover:text-ccs-dark-text focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Cancelar</button>
</div>
```

## Block

```html
<div class="max-w-sm space-y-3">
  <button class="w-full h-10 px-4 text-sm rounded-ccs bg-ccs-blue text-white font-medium hover:bg-ccs-blue-mid transition shadow-ccs-sm dark:bg-ccs-blue-mid dark:hover:bg-ccs-blue focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Confirmar pedido</button>
  <button class="w-full h-10 px-4 text-sm rounded-ccs border border-ccs-line-strong text-ccs-ink font-medium hover:border-ccs-blue hover:text-ccs-blue transition bg-white dark:border-ccs-dark-line-strong dark:text-ccs-dark-text dark:hover:border-ccs-dark-text dark:hover:text-ccs-dark-text dark:bg-ccs-dark-surface focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg active:scale-95 motion-reduce:active:scale-100">Cancelar</button>
</div>
```

## Con ceja

```html
<p class="text-sm text-ccs-slate mb-4 max-w-xl dark:text-ccs-dark-text-2">Botón con un texto corto encima, para banners. La ceja es una capa translúcida sobre el fondo, sin sombra ni borde: sobre la página cambia con el modo. En hover cambia solo el botón.</p>
<div class="flex flex-wrap items-end gap-3">
  <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
    <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink dark:text-white">Exclusivo socios</span>
    <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-blue text-white group-hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:group-hover:bg-ccs-blue text-base font-medium transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
  </a>
  <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
    <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink dark:text-white">Cupos disponibles</span>
    <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-success-fill text-white group-hover:bg-ccs-success-fill-hover dark:bg-ccs-dark-success-fill dark:group-hover:bg-ccs-dark-success-fill-hover text-base font-medium transition group-active:scale-95 motion-reduce:group-active:scale-100">Inscribirme</span>
  </a>
  <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
    <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink dark:text-white">Nuevo</span>
    <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-banner text-white group-hover:bg-ccs-banner-dark dark:bg-ccs-banner-dark dark:group-hover:bg-ccs-banner-dark-hover text-base font-medium transition group-active:scale-95 motion-reduce:group-active:scale-100">Conoce el programa</span>
  </a>
  <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
    <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink dark:text-white">Solo por hoy</span>
    <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-ink text-white group-hover:bg-ccs-slate dark:bg-ccs-dark-text dark:text-ccs-dark-bg dark:group-hover:bg-ccs-dark-text-2 text-base font-medium transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver beneficios</span>
  </a>
</div>
```

## Con ceja · Tamaños

```html
<div class="flex flex-wrap items-end gap-3">
  <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
    <span class="h-6 px-3 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink dark:text-white">Exclusivo socios</span>
    <span class="h-10 px-4 grid place-items-center rounded-ccs bg-ccs-blue text-white group-hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:group-hover:bg-ccs-blue text-sm font-medium transition group-active:scale-95 motion-reduce:group-active:scale-100">Mediano</span>
  </a>
  <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
    <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink dark:text-white">Exclusivo socios</span>
    <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-blue text-white group-hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:group-hover:bg-ccs-blue text-base font-medium transition group-active:scale-95 motion-reduce:group-active:scale-100">Grande</span>
  </a>
  <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
    <span class="h-8 px-5 grid place-items-center font-mono text-sm uppercase tracking-wider text-ccs-ink dark:text-white">Exclusivo socios</span>
    <span class="h-14 px-8 grid place-items-center rounded-ccs bg-ccs-blue text-white group-hover:bg-ccs-blue-mid dark:bg-ccs-blue-mid dark:group-hover:bg-ccs-blue text-base font-semibold transition group-active:scale-95 motion-reduce:group-active:scale-100">Extra grande</span>
  </a>
</div>
```

## Con ceja · Fondos

```html
<p class="text-sm text-ccs-slate mb-4 max-w-xl dark:text-ccs-dark-text-2">Sobre un fondo de color, la capa depende del color del fondo, no del modo.</p>
<div class="grid gap-4 sm:grid-cols-2">
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Claro · Blanco</div>
    <div class="relative overflow-hidden rounded-ccs bg-white border border-ccs-line px-6 py-8 flex justify-center">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-blue text-white group-hover:bg-ccs-blue-mid text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Claro · Fondo</div>
    <div class="relative overflow-hidden rounded-ccs bg-ccs-bg px-6 py-8 flex justify-center">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/15 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:ring-ccs-blue dark:focus-visible:ring-ccs-dark-accent dark:focus-visible:ring-offset-ccs-dark-bg">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-ccs-ink">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-blue text-white group-hover:bg-ccs-blue-mid text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Color · Verde CCS</div>
    <div class="relative overflow-hidden rounded-ccs bg-ccs-green px-6 py-8 flex justify-center">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-white">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-ink text-white group-hover:bg-ccs-slate text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Color · Verde brillante</div>
    <div class="relative overflow-hidden rounded-ccs bg-ccs-green-br px-6 py-8 flex justify-center">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-white">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-ccs-ink text-white group-hover:bg-ccs-slate text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Oscuro · Azul CCS</div>
    <div class="relative overflow-hidden rounded-ccs bg-ccs-blue px-6 py-8 flex justify-center">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-white">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-white text-ccs-blue group-hover:bg-ccs-bg text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Oscuro · Ink</div>
    <div class="relative overflow-hidden rounded-ccs bg-ccs-ink px-6 py-8 flex justify-center">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-white">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-white text-ccs-blue group-hover:bg-ccs-bg text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
</div>
```

## Con ceja · Degradado y foto

```html
<div class="grid gap-4 sm:grid-cols-2">
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Degradado · ceja a la izquierda, termina antes del 70 % del ancho</div>
    <div class="relative overflow-hidden rounded-ccs bg-ccs-banner dark:bg-ccs-banner-dark px-6 py-8 flex justify-start">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-white">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-white text-ccs-blue group-hover:bg-ccs-bg text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
  <div class="min-w-0">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Foto · con velo</div>
    <div class="relative overflow-hidden rounded-ccs px-6 py-8 flex justify-center">
      <div class="absolute inset-0 bg-ccs-slate"></div>
      <img src="https://images.unsplash.com/photo-1693407548902-9e4046d4555b?auto=format&fit=crop&w=1200&q=75" alt="" class="absolute inset-0 h-full w-full object-cover" />
      <div class="absolute inset-0 bg-ccs-ink/50"></div>
    <div class="relative"><a href="#" class="group inline-flex flex-col rounded-ccs bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-white">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-white text-ccs-blue group-hover:bg-ccs-bg text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a></div>
    </div>
  </div>
  <div class="min-w-0 sm:col-span-2">
    <div class="text-xs font-medium text-ccs-slate mb-2 dark:text-ccs-dark-text-2">Degradado · ceja en el tramo verde, desde el 70 % del ancho</div>
    <div class="relative overflow-hidden rounded-ccs bg-ccs-banner dark:bg-ccs-banner-dark px-6 py-8 flex justify-end">
    <a href="#" class="group inline-flex flex-col rounded-ccs bg-ccs-ink/50 dark:bg-white/30 text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white">
      <span class="h-7 px-4 grid place-items-center font-mono text-xs uppercase tracking-wider text-white">Exclusivo socios</span>
      <span class="h-12 px-6 grid place-items-center rounded-ccs bg-white text-ccs-blue group-hover:bg-ccs-bg text-base font-medium whitespace-nowrap transition group-active:scale-95 motion-reduce:group-active:scale-100">Ver kit de cumplimiento</span>
    </a>
    </div>
  </div>
</div>
```
