/* Lucide icon system — outline, premium, consistent */
:root {
    --icon-primary: #ffffff;
    --icon-muted: rgba(255, 255, 255, 0.55);
    --icon-active: #00e5ff;
    --icon-hover: #00b8ff;
}

.akiv-icon {
    color: var(--icon-primary);
    stroke: currentColor;
    transition: transform 220ms cubic-bezier(0.22, 0.61, 0.36, 1),
        opacity 220ms cubic-bezier(0.22, 0.61, 0.36, 1),
        color 220ms cubic-bezier(0.22, 0.61, 0.36, 1);
    flex-shrink: 0;
}

.akiv-icon svg {
    width: 100%;
    height: 100%;
    display: block;
}

a:hover .akiv-icon,
button:hover .akiv-icon {
    transform: scale(1.05);
    color: var(--icon-hover);
    filter: drop-shadow(0 0 6px rgba(0, 229, 255, 0.35));
}

.mobile-nav a.active .akiv-icon,
.disc-chip.active .akiv-icon {
    color: var(--icon-active);
}

.mobile-nav a .akiv-icon {
    width: 22px;
    height: 22px;
}

.akiv-icon--muted {
    color: var(--icon-muted);
}
