.action-btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    background: none;
    border: none;
    cursor: pointer;
    color: #1f1f1f;
    transition: color 0.5s ease, transform 0.5s ease;
    font-size: 22px;
    overflow: visible !important;
}

.action-btn:hover {
    transform: scale(1.05);
}

.action-btn:focus {
    transition: color 0.5s ease 0.3s, transform 1s ease;
}

.action-btn:active {
    transition: color 0s, transform 1s ease;
}

.action-btn svg,
.action-btn mat-icon {
    color: inherit !important;
    fill: currentColor;
}

.action-btn svg path:not([fill='none']),
.action-btn svg [fill]:not([fill='none']) {
    fill: currentColor !important;
}

.action-btn .mat-button-ripple,
.action-btn .mat-mdc-button-ripple,
.action-btn .mat-button-focus-overlay,
.action-btn .mat-mdc-button-persistent-ripple,
.action-btn .mat-mdc-focus-indicator {
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: 30px !important;
    height: 30px !important;
    transform: translate(-50%, -50%) !important;
    background: transparent !important;
    border: 2px solid var(--click-color, #1f1f1f) !important;
    border-radius: 6px !important;
    opacity: 0 !important;
    transition: opacity 0.5s ease !important;
}

.action-btn:active .mat-button-ripple,
.action-btn:active .mat-mdc-button-ripple,
.action-btn:active .mat-button-focus-overlay,
.action-btn:active .mat-mdc-button-persistent-ripple,
.action-btn:active .mat-mdc-focus-indicator {
    opacity: 1 !important;
    transition: opacity 0s !important;
}

.action-btn.view {
    --click-color: #2563eb;
}
.action-btn.view:hover {
    color: #2563eb;
}
.action-btn.view:active {
    color: #1d4ed8;
}

.action-btn.hide {
    --click-color: #64748b;
}
.action-btn.hide:hover {
    color: #64748b;
}
.action-btn.hide:active {
    color: #475569;
}

.action-btn.download {
    --click-color: #10b981;
}
.action-btn.download:hover {
    color: #10b981;
}
.action-btn.download:active {
    color: #059669;
}

.action-btn.delete {
    --click-color: #ef4444;
}
.action-btn.delete:hover {
    color: #ef4444;
}
.action-btn.delete:active {
    color: #b91c1c;
}
