/* =========================================================
   Boutons d'action sous forme d'icônes - sans police externe
   ========================================================= */
.spr-actions,
.spr-table-actions,
td.actions,
td:last-child .btn,
.table td .btn-group {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    flex-wrap: wrap;
}

.spr-icon-btn {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    font-size: 0 !important;
    text-decoration: none !important;
    border: 1px solid rgba(148, 163, 184, .32) !important;
    background: #fff !important;
    color: #0f172a !important;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .08) !important;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease !important;
    vertical-align: middle !important;
}

.spr-icon-btn:hover,
.spr-icon-btn:focus {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(15, 23, 42, .13) !important;
    outline: none;
}

.spr-icon-btn .spr-action-icon,
.spr-icon-btn::before {
    font-size: 17px !important;
    line-height: 1 !important;
    font-family: "Segoe UI Symbol", "Apple Color Emoji", "Segoe UI Emoji", Arial, sans-serif !important;
}

.spr-icon-btn .spr-action-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.spr-icon-view {
    background: linear-gradient(135deg, #eff6ff, #ffffff) !important;
    color: #1d4ed8 !important;
    border-color: rgba(37, 99, 235, .28) !important;
}

.spr-icon-edit {
    background: linear-gradient(135deg, #ecfeff, #ffffff) !important;
    color: #0e7490 !important;
    border-color: rgba(6, 182, 212, .30) !important;
}

.spr-icon-delete {
    background: linear-gradient(135deg, #fff1f2, #ffffff) !important;
    color: #be123c !important;
    border-color: rgba(225, 29, 72, .30) !important;
}

.spr-icon-add,
.spr-icon-save {
    background: linear-gradient(135deg, #ecfdf5, #ffffff) !important;
    color: #047857 !important;
    border-color: rgba(16, 185, 129, .30) !important;
}

.spr-icon-back,
.spr-icon-cancel {
    background: linear-gradient(135deg, #f8fafc, #ffffff) !important;
    color: #475569 !important;
}

.spr-icon-print,
.spr-icon-export {
    background: linear-gradient(135deg, #fffbeb, #ffffff) !important;
    color: #b45309 !important;
    border-color: rgba(245, 158, 11, .32) !important;
}

.spr-icon-search,
.spr-icon-open {
    background: linear-gradient(135deg, #f5f3ff, #ffffff) !important;
    color: #6d28d9 !important;
    border-color: rgba(124, 58, 237, .28) !important;
}

/* Les gros boutons d'ajout restent lisibles, mais avec une icône forte. */
.spr-primary-action,
.spr-add-main,
a[href*="/Create"].btn-primary,
a[href*="/Create"].btn-success {
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
}

.spr-primary-action::before,
.spr-add-main::before,
a[href*="/Create"].btn-primary::before,
a[href*="/Create"].btn-success::before {
    content: "＋";
    font-family: "Segoe UI Symbol", Arial, sans-serif;
    font-weight: 900;
}

@media (max-width: 640px) {
    .spr-icon-btn {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
    }
}
