.icon {
 display: inline-block;
 width: 1em;
 height: 1em;
 vertical-align: -0.125em;
 fill: none;
 stroke: currentColor;
 stroke-width: 1.8;
 stroke-linecap: round;
 stroke-linejoin: round;
 pointer-events: none;
}

button .icon,
a .icon {
 pointer-events: none;
}

.icon-sm { width: 0.875rem; height: 0.875rem; }
.icon-lg { width: 1.25rem; height: 1.25rem; }
.icon-xl { width: 1.5rem; height: 1.5rem; }

.back-home-link {
 display: inline-flex;
 align-items: center;
 gap: 0.35em;
 padding: 0.4rem 0.85rem;
 border-radius: 999px;
 color: inherit;
 text-decoration: none;
 font-size: 0.85rem;
 line-height: 1;
 background: rgba(255, 255, 255, 0.62);
 border: 1px solid rgba(0, 0, 0, 0.08);
 transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}
.back-home-link:hover {
 background: rgba(255, 255, 255, 0.92);
 border-color: rgba(0, 0, 0, 0.16);
}
.back-home-link:focus-visible {
 outline: 2px solid currentColor;
 outline-offset: 2px;
}
.back-home-link .icon {
 width: 1em;
 height: 1em;
}
[data-theme="dark"] .back-home-link {
 background: rgba(37, 38, 34, 0.62);
 border-color: rgba(218, 211, 190, 0.18);
 color: #e4e2dc;
}
[data-theme="dark"] .back-home-link:hover {
 background: rgba(37, 38, 34, 0.92);
 border-color: rgba(218, 211, 190, 0.32);
}
@media (prefers-reduced-motion: reduce) {
 .back-home-link { transition: none; }
}