Trazado de borde
Trazado de borde: botón en CSS. Copia las reglas, o el prompt que reproduce el resultado.
CSS
.btn-067 {
position: relative;
font: 600 14px/1 system-ui,sans-serif;
letter-spacing: .06em;
text-transform: uppercase;
color: #0f172a;
background: none;
border: 0;
padding: 14px 26px;
cursor: pointer
}
.btn-067::before,.btn-067::after {
content: "";
position: absolute;
width: 0;
height: 0;
border: 2px solid transparent;
transition: width .2s,height .2s .2s
}
.btn-067::before {
top: 0;
left: 0;
border-top-color: #0f172a;
border-left-color: #0f172a
}
.btn-067::after {
bottom: 0;
right: 0;
border-bottom-color: #0f172a;
border-right-color: #0f172a
}
.btn-067:hover::before,.btn-067:hover::after {
width: calc(100% - 4px);
height: calc(100% - 4px)
}
.btn-067:focus-visible {
outline: 2px solid #0f172a;
outline-offset: 4px
}
.btn-067:active {
color: #475569
}
HTML
<button class="btn-067">Trace</button>Prompt
Un botón de texto en mayúsculas (14px semibold, 0.06em de espaciado, #0f172a, sin caja, padding de 14px por 26px) cuyo borde de 2px se dibuja solo al pasar el cursor: los cantos superior e izquierdo crecen desde la esquina superior izquierda y los cantos inferior y derecho desde la inferior derecha, primero el ancho y luego el alto (200ms cada uno), hasta que aparece un rectángulo completo. En active el texto se agrisa. Outline de foco de 2px oscuro.