/*
 * Azioni di riga condivise: matita + menu «⋯»
 * (app/views/companies/shared/_row_actions.html.erb, helper row_actions).
 * Stesse misure e colori di «Stampa e Ricordi» (.ric-print-action in
 * public/css/companies/funerals/print.css): 32px su desktop, 40px al tocco.
 */
.ric-row-actions {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    gap: 4px;
    vertical-align: middle;
}

.ric-row-action.btn.btn-icon,
.ric-row-action-placeholder {
    width: 32px;
    height: 32px;
    flex: 0 0 auto;
}

.ric-row-action-placeholder {
    display: inline-block;
}

.ric-row-action.btn i {
    color: var(--ric-brand-text, #5e1f29);
}

.ric-row-action.btn:hover i,
.ric-row-action.btn:focus-visible i,
.ric-row-action.btn.show i {
    color: #7f1f29;
}

.ric-row-action.btn:focus-visible,
.ric-row-actions-menu .dropdown-item:focus-visible {
    outline: 2px solid #7f1f29;
    outline-offset: 2px;
}

.ric-row-actions-menu {
    min-width: 200px;
    max-width: calc(100vw - 32px);
    max-height: calc(100vh - 16px);
    overflow-y: auto;
    z-index: 1090;
}

.ric-row-actions-menu .dropdown-item {
    font-size: 13px;
    white-space: normal;
    width: 100%;
    text-align: start;
}

.ric-row-actions-menu .ric-row-actions-form .dropdown-item {
    border: 0;
    background: transparent;
}

.ric-row-actions-menu .ric-row-actions-form .dropdown-item:hover,
.ric-row-actions-menu .ric-row-actions-form .dropdown-item:focus {
    background-color: var(--bs-dropdown-link-hover-bg);
}

.ric-row-actions-menu .dropdown-item.text-danger:hover,
.ric-row-actions-menu .dropdown-item.text-danger:focus {
    color: var(--bs-danger) !important;
}

@media (max-width: 767.98px) {
    .ric-row-action.btn.btn-icon,
    .ric-row-action-placeholder {
        width: 40px;
        height: 40px;
    }

    /* Voci da almeno 40px al tocco (con il rem a 13px di Metronic il solo
       padding si fermava a 35px). */
    .ric-row-actions-menu .dropdown-item {
        display: flex;
        align-items: center;
        min-height: 40px;
        padding-top: .5rem;
        padding-bottom: .5rem;
    }
}

/* Le card hanno translateY all'hover (contesto di sovrapposizione): con il
   menu aperto la scheda resta sopra quelle che seguono, come per i menu
   Metronic (.card:has(.menu-sub.show) nei temi). */
.card:has(.ric-row-actions-menu.show) {
    z-index: 110;
}

/* Tema scuro: matita e «⋯» nel bordeaux chiaro (10:1), su un pulsante con
   un filo visibile; hover, menu aperto e focus restano in bordeaux chiaro
   invece del bordeaux pieno, che sul fondo scuro sparirebbe. */
[data-bs-theme="dark"] .ric-row-action.btn {
    border: 1px solid var(--ric-dark-line, #3b3439);
}
[data-bs-theme="dark"] .ric-row-action.btn i,
[data-bs-theme="dark"] .ric-row-action.btn:hover i,
[data-bs-theme="dark"] .ric-row-action.btn:focus-visible i,
[data-bs-theme="dark"] .ric-row-action.btn.show i {
    color: var(--ric-brand-text, #efbdc9);
}
[data-bs-theme="dark"] .ric-row-action.btn:hover,
[data-bs-theme="dark"] .ric-row-action.btn.show {
    border-color: var(--ric-brand-border, #73515b);
    background-color: var(--ric-dark-hover, #332e35);
}
[data-bs-theme="dark"] .ric-row-action.btn:focus-visible,
[data-bs-theme="dark"] .ric-row-actions-menu .dropdown-item:focus-visible {
    outline-color: var(--ric-brand-text, #efbdc9);
}
[data-bs-theme="dark"] .ric-row-actions-menu .dropdown-item.text-danger:hover,
[data-bs-theme="dark"] .ric-row-actions-menu .dropdown-item.text-danger:focus {
    color: var(--ric-tone-danger, #f3a097) !important;
    background-color: var(--ric-tone-danger-soft, #3a1f24);
}
