.nav {
    display: flex;
    column-gap: 2rem;
    align-items: center;
}

.nav .nav__tab {
    padding-top: 4px;
    border-bottom: 4px solid transparent;
    display: flex;
    align-items: center;
    padding-inline: 0.5rem;
    color: inherit;
    text-decoration: none;
    transition: border-color 200ms ease, opacity 200ms ease, color 200ms ease;
    opacity: 0.8;
}

.nav .nav__tab:hover {
    border-color: var(--color-on-primary);
    opacity: 1;
}

.nav .nav__tab.router-link-active {
    border-color: var(--color-on-primary);
    opacity: 1;
}

.nav .nav__actions {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
}

.nav .nav__actions .nav__icon {
    height: 3rem;
    width: 3rem;
    border: none;
    background-color: transparent;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 200ms ease, transform 150ms ease;
}

.nav .nav__actions .nav__icon:hover {
    background-color: rgba(255, 255, 255, 0.15);
    transform: scale(1.05);
}

.nav .nav__actions .nav__icon:active {
    transform: scale(0.95);
}

.nav .nav__actions .nav__icon img {
    height: 1.5rem;
    width: 1.5rem;
    object-fit: contain;
}

.nav .nav__actions .nav__cta {
    margin-left: 0.5rem;
    padding: 0.75rem 1.25rem;
    background-color: var(--color-on-primary);
    color: var(--color-primary);
    border-radius: 0.5rem;
    text-decoration: none;
    font-weight: 700;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transition: transform 150ms ease, box-shadow 150ms ease, background-color 200ms ease;
}

.nav .nav__actions .nav__cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
}

.nav .nav__actions .nav__cta:active {
    transform: translateY(0);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}
