CSS
.cle-bracket {
position: relative;
display: inline-block;
padding: 0 16px;
color: #00e5ff;
font:
700 16px/1.2 ui-monospace,
monospace;
letter-spacing: 0.04em;
text-decoration: none;
transition: text-shadow 0.2s;
}
.cle-bracket::before,
.cle-bracket::after {
position: absolute;
top: 50%;
font: inherit;
color: #00e5ff;
opacity: 0;
transform: translateY(-50%) scale(0.4);
transition:
opacity 0.25s ease,
transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.cle-bracket::before {
content: "[";
left: 0;
}
.cle-bracket::after {
content: "]";
right: 0;
}
.cle-bracket:hover {
text-shadow: 0 0 12px rgba(0, 229, 255, 0.55);
}
.cle-bracket:hover::before,
.cle-bracket:hover::after,
.cle-bracket:focus-visible::before,
.cle-bracket:focus-visible::after {
opacity: 1;
transform: translateY(-50%) scale(1);
}