/*
 * ANVCG modern visual layer
 * Shared by accessible, accessible-big and backoffice headers.
 * Conservative: only visual refinements, no structural/JS behavior changes.
 */

:root {
    --anvcg-bg: #edf3f8;
    --anvcg-card-bg: #ffffff;
    --anvcg-card-border: #d5e2ee;
    --anvcg-card-shadow: 0 10px 24px rgba(12, 36, 68, 0.12);
    --anvcg-brand-1: #0d3861;
    --anvcg-brand-2: #146a8f;
    --anvcg-text-main: #173c61;
    --anvcg-text-soft: #4f647a;
}

body {
    background:
        radial-gradient(circle at 8% 0%, rgba(20, 106, 143, 0.10), transparent 40%),
        linear-gradient(180deg, var(--anvcg-bg), #f4f8fc 45%, #eef3f8);
    color: var(--anvcg-text-main);
}

/* Accessible navigation bar */
.anvcg-navbar {
    border-radius: 12px;
    border: 1px solid rgba(26, 80, 124, 0.16);
    background: rgba(255, 255, 255, 0.80);
    box-shadow: var(--anvcg-card-shadow);
    backdrop-filter: blur(2px);
}

#breadcrumbs {
    color: var(--anvcg-text-main);
}

#breadcrumbs a,
#breadcrumbs .here {
    color: var(--anvcg-text-main);
    font-weight: 600;
}

#profile .text-profile,
#profile .user-icon i {
    color: var(--anvcg-text-main);
}

/* Accessible content wrappers */
.main-container,
.home.container.main-container,
.login.container.main-container,
.change-password.container.main-container,
.profile.container.main-container {
    border-radius: 14px;
}

/* Common tiles/blocks in accessible area */
a.block,
.block {
    border-radius: 12px;
    border: 1px solid var(--anvcg-card-border);
    background: linear-gradient(180deg, #ffffff, #f6f9fc);
    box-shadow: 0 6px 16px rgba(17, 45, 82, 0.10);
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

a.block:hover,
a.block:focus,
.block:hover,
.block:focus {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(17, 45, 82, 0.16);
    border-color: #92b3d4;
    text-decoration: none;
}

/* Backoffice top bar and breadcrumb modernization */
#navbar.navbar-default {
    border: 0;
    background: linear-gradient(95deg, rgba(13, 56, 97, 0.94), rgba(20, 106, 143, 0.92));
    box-shadow: 0 8px 20px rgba(10, 34, 64, 0.22);
}

#navbar .navbar-brand img {
    filter: drop-shadow(0 3px 8px rgba(0, 0, 0, 0.28));
}

#navbar .user-info,
#navbar .icon-user,
#navbar .icon-caret-down {
    color: #f3f8ff !important;
}

.main-content-inner .breadcrumbs,
ul.breadcrumb {
    border-radius: 10px;
    border: 1px solid rgba(26, 80, 124, 0.16);
    background: rgba(255, 255, 255, 0.80);
}

.page-content {
    border-radius: 12px;
}


/* Global button modernization (accessible + backoffice) */
.main-container .btn:not(.btn-app):not(.btn-scroll-up),
.page-content .btn:not(.btn-app):not(.btn-scroll-up),
.page-content a.btn:not(.btn-app):not(.btn-scroll-up),
.main-container a.btn:not(.btn-app):not(.btn-scroll-up) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 12px;
    min-height: 42px;
    padding: 9px 16px;
    border: 1px solid #d7e2ef;
    background: linear-gradient(180deg, #ffffff, #f5f8fc);
    color: #143f67;
    font-weight: 700;
    text-shadow: none;
    box-shadow: 0 6px 16px rgba(17, 45, 82, 0.10);
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.main-container .btn:not(.btn-app):not(.btn-scroll-up):hover,
.main-container .btn:not(.btn-app):not(.btn-scroll-up):focus,
.page-content .btn:not(.btn-app):not(.btn-scroll-up):hover,
.page-content .btn:not(.btn-app):not(.btn-scroll-up):focus,
.main-container a.btn:not(.btn-app):not(.btn-scroll-up):hover,
.main-container a.btn:not(.btn-app):not(.btn-scroll-up):focus,
.page-content a.btn:not(.btn-app):not(.btn-scroll-up):hover,
.page-content a.btn:not(.btn-app):not(.btn-scroll-up):focus {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(17, 45, 82, 0.16);
    border-color: #9db9d6;
    text-decoration: none;
}

.main-container .btn.btn-primary,
.page-content .btn.btn-primary {
    border-color: #b7d1e8;
    color: #0f436c;
}

.main-container .btn.btn-success,
.page-content .btn.btn-success {
    border-color: #bfe2ce;
    color: #1d6d3a;
}

.main-container .btn.btn-danger,
.page-content .btn.btn-danger {
    border-color: #efc7c7;
    color: #8f1f1f;
}

.main-container .btn.btn-warning,
.page-content .btn.btn-warning {
    border-color: #f2deb2;
    color: #8a5a00;
}

.main-container .btn.btn-info,
.page-content .btn.btn-info,
.main-container .btn.btn-inverse,
.page-content .btn.btn-inverse,
.main-container .btn.btn-secondary,
.page-content .btn.btn-secondary,
.main-container .btn.btn-default,
.page-content .btn.btn-default,
.main-container .btn.btn-grey,
.page-content .btn.btn-grey,
.main-container .btn.btn-pink,
.page-content .btn.btn-pink,
.main-container .btn.btn-light,
.page-content .btn.btn-light {
    border-color: #d7e2ef;
    color: #143f67;
}

.main-container .btn.btn-xs,
.page-content .btn.btn-xs {
    min-height: 26px;
    padding: 2px 8px;
    border-radius: 8px;
    font-size: 11px;
}

.main-container .btn.btn-sm,
.page-content .btn.btn-sm {
    min-height: 34px;
    padding: 6px 12px;
    border-radius: 10px;
}

.main-container .btn.btn-lg,
.page-content .btn.btn-lg,
.main-container .btn.btn-block,
.page-content .btn.btn-block {
    min-height: 48px;
}
@media (max-width: 767px) {
    .anvcg-navbar {
        border-radius: 10px;
    }

    #navbar .navbar-brand img {
        max-height: 44px;
        width: auto;
    }
}

/* Accessible module tiles: align to dashboard card style */
.home.main-container .block,
.home.container.main-container .block {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    overflow: hidden;
    border-radius: 12px !important;
    border: 1px solid #d7e2ef !important;
    background: linear-gradient(180deg, #ffffff, #f5f8fc) !important;
    box-shadow: 0 6px 16px rgba(17, 45, 82, 0.10) !important;
    min-height: 138px;
    padding: 20px 14px !important;
    color: #143f67 !important;
    text-decoration: none;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.home.main-container .block:hover,
.home.container.main-container .block:hover,
.home.main-container .block:focus,
.home.container.main-container .block:focus {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(17, 45, 82, 0.16) !important;
    border-color: #92b3d4 !important;
    text-decoration: none;
}

.home.main-container .block i,
.home.container.main-container .block i {
    display: block !important;
    width: auto !important;
    min-height: 0 !important;
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
    color: #0f477a !important;
    background: transparent !important;
    line-height: 1;
}

.home.main-container .block h2,
.home.container.main-container .block h2 {
    margin: 0 !important;
    padding: 0 !important;
    color: #143f67 !important;
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 0.1px;
    line-height: 1.15;
    min-height: 2.3em;
    text-transform: none !important;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    text-wrap: balance;
}

@media (max-width: 767px) {
    .home.main-container .block,
    .home.container.main-container .block {
        min-height: 112px;
        padding: 16px 10px !important;
    }

    .home.main-container .block h2,
    .home.container.main-container .block h2 {
        font-size: 20px;
    }
}

/* Ricerca soci: modern card layout + aligned results panel */
.rs-layout {
    margin-top: 6px;
}

.rs-filters-col,
.rs-results-col {
    margin-bottom: 14px;
}

.rs-card {
    border-radius: 12px;
    border: 1px solid #d7e2ef;
    background: linear-gradient(180deg, #ffffff, #f7faff);
    box-shadow: 0 8px 20px rgba(17, 45, 82, 0.10);
    padding: 16px;
}

.rs-filters-card {
    min-height: 100%;
}

.rs-title {
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #e2ebf5;
    color: #174977;
    font-size: 22px;
    font-weight: 700;
}

#search-form label {
    color: #204a74;
    font-weight: 700;
    margin-bottom: 6px;
}

#search-form .form-control {
    border-radius: 10px;
    border: 1px solid #c6d9ea;
    min-height: 40px;
    box-shadow: none;
}

#search-form .form-control:focus {
    border-color: #90b2d4;
    box-shadow: 0 0 0 3px rgba(35, 97, 151, 0.12);
}

.rs-check-inline {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 8px;
    font-weight: 600;
    color: #335779;
}

.rs-note {
    margin: 10px 0 12px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #d9e5f2;
    background: #f4f8fc;
    color: #47617d;
    font-size: 13px;
    line-height: 1.35;
}

.rs-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 0;
}

.rs-results-card {
    min-height: 100%;
}

.rs-results-toolbar {
    display: flex;
    justify-content: center;
    margin-bottom: 8px;
}

.rs-search-title {
    margin: 0 0 12px;
    color: #174977;
    font-size: 21px;
    font-weight: 700;
}

/* jqxGrid modern skin for ricerca soci */
.rs-results-card .jqx-widget,
.rs-results-card .jqx-widget-content,
.rs-results-card .jqx-grid {
    border-color: #d6e3f0 !important;
    border-radius: 10px !important;
}

.rs-results-card .jqx-grid-header,
.rs-results-card .jqx-widget-header,
.rs-results-card .jqx-grid-column-header {
    background: linear-gradient(180deg, #f1f6fc, #e9f1fa) !important;
    border-color: #d3e1ef !important;
    color: #1d4f7e !important;
    font-weight: 700;
}

.rs-results-card .jqx-grid-cell {
    border-color: #e4edf7 !important;
    color: #294d70 !important;
    font-size: 13px;
}

.rs-results-card .jqx-grid-cell a {
    text-decoration: none;
}

.rs-results-card .jqx-grid-pager,
.rs-results-card .jqx-grid-pager-top {
    background: #f7faff !important;
    border-color: #d6e3f0 !important;
}

@media (max-width: 991px) {
    .rs-layout {
        margin-top: 0;
    }

    .rs-card {
        padding: 12px;
    }

    .rs-title {
        font-size: 20px;
    }
}

/* Ricerca soci: kill legacy offset from .grid-box (ANVCG.css) */
.rs-layout .rs-results-col,
.rs-layout .grid-box.rs-results-col,
#gridContainer.rs-results-col {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.rs-layout .rs-results-card {
    margin-top: 0 !important;
}

/* Ricerca soci: export button bottom-right */
.rs-results-card {
    display: flex;
    flex-direction: column;
}

.rs-grid {
    flex: 1 1 auto;
}

.rs-results-footer {
    display: flex;
    justify-content: center;
    margin-top: 10px;
}

.rs-export-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 10px;
    font-weight: 700;
}

/* Ricerca soci: no hover movement (keep motion only on dashboard buttons) */
.rs-layout .rs-card,
.rs-layout .rs-card:hover,
.rs-layout .rs-card:focus {
    transform: none !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.rs-layout .rs-card:hover,
.rs-layout .rs-card:focus {
    box-shadow: 0 8px 20px rgba(17, 45, 82, 0.10) !important;
}

.rs-layout .btn,
.rs-layout .btn:hover,
.rs-layout .btn:focus,
.rs-layout a.btn:hover,
.rs-layout a.btn:focus {
    transform: none !important;
}

/* Ricerca soci: disable hover movement on side panel and results table card */
.rs-layout .rs-card,
.rs-layout .rs-card:hover,
.rs-layout .rs-card:focus,
.rs-layout .block,
.rs-layout .block:hover,
.rs-layout .block:focus {
    transform: none !important;
    transition: box-shadow 0.15s ease, border-color 0.15s ease !important;
}

.rs-layout .rs-filters-card:hover,
.rs-layout .rs-results-card:hover {
    box-shadow: 0 8px 20px rgba(17, 45, 82, 0.10) !important;
    border-color: #d7e2ef !important;
}

/* Ricerca soci: compact result rows + centered delete action */
.rs-results-card .jqx-grid-cell {
    font-size: 12px;
}

.rs-results-card #gridAnagrafica .jqx-grid-content .jqx-grid-cell {
    cursor: pointer;
}

.rs-row-actions {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.rs-row-actions .rs-delete-btn {
    min-height: 26px;
    min-width: 28px;
    padding: 2px 7px;
    line-height: 1;
}

.rs-row-actions .rs-delete-btn i {
    font-size: 12px;
}

/* Ricerca soci: trash icon without button box */
.rs-row-actions .rs-delete-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    padding: 0;
    border: 0;
    background: transparent !important;
    box-shadow: none !important;
    color: #c03a3a;
    text-decoration: none;
}

.rs-row-actions .rs-delete-btn:hover,
.rs-row-actions .rs-delete-btn:focus {
    color: #9f2525;
    background: transparent !important;
    text-decoration: none;
}

.rs-row-actions .rs-delete-btn i {
    font-size: 14px;
    line-height: 1;
}

/* Ricerca soci: hard center for custom-rendered cells */
.rs-results-card .rs-cell-center {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-align: center;
}

/* Ricerca soci: results area without surrounding card box */
.rs-results-col .rs-results-card {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
}

.rs-results-col #live-validation-error {
    margin-bottom: 6px;
}

/* Ricerca soci: card-based results list */
.rs-cards-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.rs-result-card {
    border: 1px solid #d7e2ef;
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff, #f8fbff);
    padding: 12px 14px;
    box-shadow: 0 4px 12px rgba(17, 45, 82, 0.08);
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.rs-result-card:hover,
.rs-result-card:focus,
.rs-result-card:focus-within {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(17, 45, 82, 0.16);
    border-color: #9db9d6;
}

.rs-result-card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}

.rs-result-name {
    margin: 0;
    color: #174977;
    font-size: 17px;
    font-weight: 700;
}

.rs-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px 14px;
}

.rs-card-item {
    display: flex;
    gap: 6px;
    min-width: 0;
}

.rs-card-item-label {
    color: #6b7280;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.2px;
    white-space: nowrap;
}

.rs-card-item-value {
    color: #294d70;
    font-size: 13px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rs-cards-empty {
    border: 1px dashed #c8d9ea;
    border-radius: 10px;
    background: #f7fbff;
    color: #496783;
    padding: 12px;
    margin-bottom: 10px;
}

.rs-cards-pager {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
}

.rs-pager-info {
    color: #355776;
    font-size: 13px;
    font-weight: 600;
}

.rs-pager-btn[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
}

@media (max-width: 767px) {
    .rs-result-grid {
        grid-template-columns: 1fr;
    }
}

/* Ricerca soci: keep "Ricerca" label readable on hover/focus */
.rs-layout #search-form .btn.btn-primary,
.rs-layout #search-form .btn.btn-primary:hover,
.rs-layout #search-form .btn.btn-primary:focus,
.rs-layout #search-form .btn.btn-primary:active {
    color: #0f436c !important;
}


/* Dettaglio socio: modern layout */
.dettaglio-socio .ds-shell,
.dettaglio-socio-page .ds-layout {
    margin-top: 10px;
}

.dettaglio-socio .ds-main,
.dettaglio-socio-page .ds-header {
    border: 1px solid #d7e2ef;
    border-radius: 14px;
    background: linear-gradient(180deg, #ffffff, #f8fbff);
    box-shadow: 0 8px 20px rgba(17, 45, 82, 0.08);
}

.dettaglio-socio .ds-main,
.dettaglio-socio-page {
    padding: 14px;
}

.dettaglio-socio .ds-page-title,
.dettaglio-socio-page .ds-page-title {
    margin: 0;
    color: #174977;
    font-size: 24px;
    line-height: 1.25;
}

.dettaglio-socio .ds-actions,
.dettaglio-socio-page .ds-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 10px;
}

.dettaglio-socio .ds-layout,
.dettaglio-socio-page .ds-layout {
    margin-top: 14px;
}

.dettaglio-socio .ds-col,
.dettaglio-socio-page .ds-col {
    border: 1px solid #dbe6f1;
    border-radius: 12px;
    background: #ffffff;
    padding: 14px 12px;
    box-shadow: 0 4px 12px rgba(17, 45, 82, 0.05);
    margin-bottom: 12px;
}

.dettaglio-socio .ds-section-title,
.dettaglio-socio-page .ds-section-title {
    margin: 0 0 12px;
    color: #1b4d78;
    font-size: 18px;
    font-weight: 700;
    border-bottom: 1px solid #e5edf5;
    padding-bottom: 8px;
}

.dettaglio-socio .ds-col .row,
.dettaglio-socio-page .ds-col .row {
    margin-left: 0;
    margin-right: 0;
    padding: 8px 0;
    border-bottom: 1px dashed #e7eef6;
}

.dettaglio-socio .ds-col .row:last-child,
.dettaglio-socio-page .ds-col .row:last-child {
    border-bottom: 0;
}

.dettaglio-socio .ds-col .row > [class*="col-"],
.dettaglio-socio-page .ds-col .row > [class*="col-"] {
    padding-left: 6px;
    padding-right: 6px;
}

.dettaglio-socio .ds-col .row h4,
.dettaglio-socio-page .ds-col .row h4 {
    margin: 0;
    font-size: 14px;
    line-height: 1.35;
}

.dettaglio-socio .ds-col .row [align="right"] h4,
.dettaglio-socio-page .ds-col .row [align="right"] h4 {
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.2px;
    font-size: 11px;
    font-weight: 700;
}

.dettaglio-socio .ds-col .row > div:last-child h4,
.dettaglio-socio-page .ds-col .row > div:last-child h4 {
    color: #244565;
    font-weight: 600;
}

.ds-note {
    margin-top: 10px;
    padding: 10px 12px;
    border: 1px solid #dbe6f1;
    border-radius: 10px;
    background: #f4f8fc;
    color: #4b647e;
    font-size: 12px;
}

@media (max-width: 991px) {
    .dettaglio-socio .ds-actions,
    .dettaglio-socio-page .ds-actions {
        justify-content: flex-start;
    }

    .dettaglio-socio .ds-col .row [align="right"],
    .dettaglio-socio-page .ds-col .row [align="right"] {
        text-align: left;
    }
}

/* Dettaglio socio: field rows in two columns with compact label/value spacing */
.dettaglio-socio .ds-col,
.dettaglio-socio-page .ds-col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 12px;
    align-items: start;
}

.dettaglio-socio .ds-col .ds-section-title,
.dettaglio-socio-page .ds-col .ds-section-title,
.dettaglio-socio .ds-col .ds-note,
.dettaglio-socio-page .ds-col .ds-note {
    grid-column: 1 / -1;
}

.dettaglio-socio .ds-col .row,
.dettaglio-socio-page .ds-col .row {
    margin: 0;
    padding: 10px;
    border: 1px dashed #dbe6f1;
    border-radius: 10px;
    background: #fbfdff;
}

.dettaglio-socio .ds-col .row > [class*="col-"],
.dettaglio-socio-page .ds-col .row > [class*="col-"] {
    float: none;
    width: 100%;
    max-width: none;
    padding: 0;
    text-align: left !important;
}

.dettaglio-socio .ds-col .row [align="right"] h4,
.dettaglio-socio-page .ds-col .row [align="right"] h4 {
    margin-bottom: 4px;
}

@media (max-width: 991px) {
    .dettaglio-socio .ds-col,
    .dettaglio-socio-page .ds-col {
        grid-template-columns: 1fr;
    }
}

/* Dettaglio socio: fix vertical alignment for action buttons */
.dettaglio-socio .ds-page-title,
.dettaglio-socio-page .ds-page-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.dettaglio-socio .ds-actions,
.dettaglio-socio-page .ds-actions {
    float: none !important;
    margin-top: 0;
    align-items: center;
}

.dettaglio-socio .ds-actions .btn,
.dettaglio-socio-page .ds-actions .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    line-height: 1.2;
    vertical-align: middle;
}

/* Dettaglio socio: keep action button labels readable on hover/focus */
.dettaglio-socio .ds-actions .btn,
.dettaglio-socio-page .ds-actions .btn,
.dettaglio-socio .ds-actions .btn:hover,
.dettaglio-socio-page .ds-actions .btn:hover,
.dettaglio-socio .ds-actions .btn:focus,
.dettaglio-socio-page .ds-actions .btn:focus,
.dettaglio-socio .ds-actions .btn:active,
.dettaglio-socio-page .ds-actions .btn:active {
    color: #1f4b75 !important;
    text-shadow: none !important;
}

/* Ricerca soci cards: red trash icon for better visibility */
.rs-result-card .rs-delete-btn {
    color: #c62828 !important;
}

.rs-result-card .rs-delete-btn i {
    color: #c62828 !important;
    font-size: 16px;
}

.rs-result-card .rs-delete-btn:hover,
.rs-result-card .rs-delete-btn:focus,
.rs-result-card .rs-delete-btn:hover i,
.rs-result-card .rs-delete-btn:focus i {
    color: #a61d1d !important;
}

/* Dettaglio socio: disable hover movement on container/cards */
.dettaglio-socio .block,
.dettaglio-socio .block:hover,
.dettaglio-socio .block:focus,
.dettaglio-socio .ds-main,
.dettaglio-socio .ds-main:hover,
.dettaglio-socio .ds-main:focus,
.dettaglio-socio-page .ds-header,
.dettaglio-socio-page .ds-header:hover,
.dettaglio-socio-page .ds-header:focus,
.dettaglio-socio .ds-col,
.dettaglio-socio .ds-col:hover,
.dettaglio-socio-page .ds-col,
.dettaglio-socio-page .ds-col:hover {
    transform: none !important;
}

/* Edit socio: modern wizard layout */
.edit-socio.wizard,
.edit-socio-page {
    margin-top: 10px;
}

.edit-socio.wizard .block,
.edit-socio-page .block {
    border: 1px solid #d7e2ef;
    border-radius: 14px;
    background: linear-gradient(180deg, #ffffff, #f8fbff);
    box-shadow: 0 8px 20px rgba(17, 45, 82, 0.08);
    padding: 14px;
}

.edit-socio-page .edit-socio-header {
    border: 1px solid #d7e2ef;
    border-radius: 14px;
    background: linear-gradient(180deg, #ffffff, #f8fbff);
    box-shadow: 0 8px 20px rgba(17, 45, 82, 0.08);
    padding: 14px 16px;
    margin-bottom: 12px;
}

.edit-socio-page .edit-socio-header h2 {
    margin: 0;
    color: #174977;
}

.edit-socio.wizard .tabbable,
.edit-socio-page .tabbable {
    border: 1px solid #dbe6f1;
    border-radius: 12px;
    background: #ffffff;
    padding: 12px;
}

.edit-socio.wizard #tabSteps,
.edit-socio-page #tabSteps {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    border-bottom: 0;
    margin-bottom: 12px;
}

.edit-socio.wizard #tabSteps > li,
.edit-socio-page #tabSteps > li {
    float: none;
}

.edit-socio.wizard #tabSteps > li > a,
.edit-socio-page #tabSteps > li > a {
    border: 1px solid #d1dfec;
    border-radius: 10px;
    background: #f3f8fd;
    color: #2a577f;
    font-weight: 700;
    padding: 8px 12px;
}

.edit-socio.wizard #tabSteps > li.active > a,
.edit-socio-page #tabSteps > li.active > a {
    border-color: #9db9d6;
    background: #e8f1fa;
    color: #174977;
}

.edit-socio.wizard .well,
.edit-socio-page .well {
    border: 1px solid #dbe6f1;
    border-radius: 12px;
    background: #fbfdff;
    box-shadow: none;
}

.edit-socio.wizard .lead,
.edit-socio-page .lead {
    margin-bottom: 10px;
    color: #1f4b75;
    font-size: 18px;
    font-weight: 700;
}

.edit-socio.wizard .form-group,
.edit-socio-page .form-group {
    margin-bottom: 10px;
}

.edit-socio.wizard input[type="text"],
.edit-socio.wizard input[type="email"],
.edit-socio.wizard input[type="tel"],
.edit-socio.wizard select,
.edit-socio.wizard textarea,
.edit-socio-page input[type="text"],
.edit-socio-page input[type="email"],
.edit-socio-page input[type="tel"],
.edit-socio-page select,
.edit-socio-page textarea {
    border: 1px solid #c9d9ea;
    border-radius: 10px;
    min-height: 38px;
    padding: 7px 10px;
    background: #ffffff;
    color: #234a6f;
}

.edit-socio.wizard textarea,
.edit-socio-page textarea {
    min-height: 82px;
}

.edit-socio.wizard .tab-content,
.edit-socio-page .tab-content {
    border: 1px solid #e2ebf4;
    border-radius: 12px;
    background: #ffffff;
    padding: 12px;
}

.edit-socio.wizard .btn,
.edit-socio-page .btn {
    min-height: 40px;
    border-radius: 10px;
    font-weight: 700;
}

.edit-socio.wizard .validation_errors,
.edit-socio-page .validation_errors {
    margin-top: 8px;
    color: #8e2121;
    font-weight: 600;
}

/* avoid hover movement on edit socio container */
.edit-socio.wizard .block,
.edit-socio.wizard .block:hover,
.edit-socio-page .block,
.edit-socio-page .block:hover,
.edit-socio-page .edit-socio-header,
.edit-socio-page .edit-socio-header:hover {
    transform: none !important;
}

/* Edit socio: refined step tabs typography */
.edit-socio.wizard #tabSteps > li > a,
.edit-socio-page #tabSteps > li > a {
    min-height: 38px;
    min-width: 98px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    letter-spacing: 0.45px;
    text-transform: uppercase;
}

.edit-socio.wizard #tabSteps > li.disabled > a,
.edit-socio-page #tabSteps > li.disabled > a {
    opacity: 0.7;
}

.edit-socio.wizard #tabSteps > li.active > a,
.edit-socio-page #tabSteps > li.active > a {
    box-shadow: inset 0 0 0 1px rgba(23, 73, 119, 0.08), 0 6px 14px rgba(17, 45, 82, 0.10);
}

.edit-socio.wizard .tab-pane .lead,
.edit-socio-page .tab-pane .lead {
    border-left: 4px solid #bcd2e8;
    padding-left: 10px;
}

/* Edit socio: prevent initial tabs flicker before wizard init */
.edit-socio.wizard #tabSteps > li,
.edit-socio-page #tabSteps > li {
    display: none;
}

/* Edit socio: white circular preloader */
.admin-page-shell #form-socio > .loadmask,
.edit-socio-page #form-socio > .loadmask,
.edit-socio.wizard #form-socio > .loadmask {
    background: rgba(255, 255, 255, 0.96);
    opacity: 1;
    border: 1px solid rgba(201, 217, 234, 0.9);
    box-shadow: 0 12px 28px rgba(15, 67, 108, 0.10);
}

.admin-page-shell #form-socio > .loadmask-msg,
.edit-socio-page #form-socio > .loadmask-msg,
.edit-socio.wizard #form-socio > .loadmask-msg {
    border: 0;
    background: transparent;
}

.admin-page-shell #form-socio > .loadmask-msg div,
.edit-socio-page #form-socio > .loadmask-msg div,
.edit-socio.wizard #form-socio > .loadmask-msg div {
    position: relative;
    border: 0;
    background: transparent;
    color: #1b5d96;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.3px;
    text-align: center;
    padding: 56px 14px 0;
    min-width: 220px;
    text-shadow: none;
}

.admin-page-shell #form-socio > .loadmask-msg div::before,
.edit-socio-page #form-socio > .loadmask-msg div::before,
.edit-socio.wizard #form-socio > .loadmask-msg div::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 50%;
    width: 34px;
    height: 34px;
    margin-left: -17px;
    border-radius: 50%;
    border: 3px solid rgba(201, 217, 234, 0.9);
    border-top-color: #1b5d96;
    animation: anvcgSpin 0.9s linear infinite;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.72);
}

@keyframes anvcgSpin {
    to {
        transform: rotate(360deg);
    }
}

/* Edit socio: tab clickability is controlled by step-enabled state */

/* Edit socio: keep one visible tab per logical step, unlock progressively */
.edit-socio.wizard #tabSteps > li,
.edit-socio-page #tabSteps > li {
    display: none !important;
    opacity: 0.46;
}

.edit-socio.wizard #tabSteps > li.step-visible,
.edit-socio-page #tabSteps > li.step-visible {
    display: block !important;
}

.edit-socio.wizard #tabSteps > li > a,
.edit-socio-page #tabSteps > li > a {
    pointer-events: none;
    cursor: not-allowed;
}

.edit-socio.wizard #tabSteps > li.step-enabled,
.edit-socio-page #tabSteps > li.step-enabled {
    opacity: 1;
}

.edit-socio.wizard #tabSteps > li.step-enabled > a,
.edit-socio-page #tabSteps > li.step-enabled > a {
    pointer-events: auto;
    cursor: pointer;
}

/* Edit socio: ensure readable labels on bottom navigation buttons */
.edit-socio.wizard .btn-default,
.edit-socio-page .btn-default {
    color: #1f4b75;
    background: #eef4fa;
    border-color: #c8d8e8;
}

.edit-socio.wizard .btn-default:hover,
.edit-socio.wizard .btn-default:focus,
.edit-socio.wizard .btn-default:active,
.edit-socio-page .btn-default:hover,
.edit-socio-page .btn-default:focus,
.edit-socio-page .btn-default:active {
    color: #143a5d !important;
    background: #dfeaf6;
    border-color: #b2c8de;
}

.edit-socio.wizard .btn-primary,
.edit-socio-page .btn-primary {
    color: #ffffff;
}

.edit-socio.wizard .btn-primary:hover,
.edit-socio.wizard .btn-primary:focus,
.edit-socio.wizard .btn-primary:active,
.edit-socio-page .btn-primary:hover,
.edit-socio-page .btn-primary:focus,
.edit-socio-page .btn-primary:active {
    color: #ffffff !important;
}

/* Edit socio: hard override for step navigation button contrast */
.edit-socio-page button.btn.prev.btn-default,
.edit-socio.wizard button.btn.prev.btn-default,
.edit-socio-page button.btn.prev.btn-default:hover,
.edit-socio.wizard button.btn.prev.btn-default:hover,
.edit-socio-page button.btn.prev.btn-default:focus,
.edit-socio.wizard button.btn.prev.btn-default:focus,
.edit-socio-page button.btn.prev.btn-default:active,
.edit-socio.wizard button.btn.prev.btn-default:active {
    color: #163f63 !important;
    background: #e3edf7 !important;
    border-color: #b8cbde !important;
    text-shadow: none !important;
    -webkit-text-fill-color: #163f63 !important;
}

.edit-socio-page button.btn.next.btn-primary,
.edit-socio.wizard button.btn.next.btn-primary,
.edit-socio-page button.btn.next.btn-primary:hover,
.edit-socio.wizard button.btn.next.btn-primary:hover,
.edit-socio-page button.btn.next.btn-primary:focus,
.edit-socio.wizard button.btn.next.btn-primary:focus,
.edit-socio-page button.btn.next.btn-primary:active,
.edit-socio.wizard button.btn.next.btn-primary:active {
    color: #ffffff !important;
    background: #2d6ea5 !important;
    border-color: #235780 !important;
    text-shadow: none !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Edit socio: make next/prev buttons visually uniform */
.edit-socio-page button.btn.prev.btn-default,
.edit-socio.wizard button.btn.prev.btn-default,
.edit-socio-page button.btn.prev.btn-default:hover,
.edit-socio.wizard button.btn.prev.btn-default:hover,
.edit-socio-page button.btn.prev.btn-default:focus,
.edit-socio.wizard button.btn.prev.btn-default:focus,
.edit-socio-page button.btn.prev.btn-default:active,
.edit-socio.wizard button.btn.prev.btn-default:active,
.edit-socio-page button.btn.next.btn-primary,
.edit-socio.wizard button.btn.next.btn-primary,
.edit-socio-page button.btn.next.btn-primary:hover,
.edit-socio.wizard button.btn.next.btn-primary:hover,
.edit-socio-page button.btn.next.btn-primary:focus,
.edit-socio.wizard button.btn.next.btn-primary:focus,
.edit-socio-page button.btn.next.btn-primary:active,
.edit-socio.wizard button.btn.next.btn-primary:active {
    color: #163f63 !important;
    background: #e3edf7 !important;
    background-image: none !important;
    border-color: #b8cbde !important;
    text-shadow: none !important;
    -webkit-text-fill-color: #163f63 !important;
}


/* Edit socio: back arrow to detail page */
.edit-socio-page .edit-socio-header,
.edit-socio.wizard .edit-socio-accessible-top {
    display: flex;
    align-items: center;
    gap: 10px;
}

.edit-socio-page .edit-socio-header h2 {
    margin: 0;
}

.edit-socio-page .edit-socio-back,
.edit-socio.wizard .edit-socio-back {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #1a4d79;
    background: #e5f0fb;
    border: 1px solid #c4d8ec;
    text-decoration: none;
}

.edit-socio-page .edit-socio-back:hover,
.edit-socio-page .edit-socio-back:focus,
.edit-socio.wizard .edit-socio-back:hover,
.edit-socio.wizard .edit-socio-back:focus {
    color: #123957;
    background: #d8e8f8;
    border-color: #aec9e2;
    text-decoration: none;
}

/* Edit socio: back arrow refined position/size (no circle) */
.edit-socio-page .edit-socio-header {
    align-items: center;
}

.edit-socio.wizard .edit-socio-accessible-top {
    min-height: 44px;
    align-items: center;
}

.edit-socio-page .edit-socio-back,
.edit-socio.wizard .edit-socio-back {
    width: auto;
    height: auto;
    border: 0 !important;
    border-radius: 0;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 6px 0 0;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #1a4d79;
    font-size: 30px;
    line-height: 1;
    text-decoration: none;
}

.edit-socio-page .edit-socio-back:hover,
.edit-socio-page .edit-socio-back:focus,
.edit-socio.wizard .edit-socio-back:hover,
.edit-socio.wizard .edit-socio-back:focus {
    color: #123957;
    background: transparent !important;
    border: 0 !important;
    text-decoration: none;
}

/* Edit socio: back button with label */
.edit-socio-page .edit-socio-back-btn,
.edit-socio.wizard .edit-socio-back-btn,
.edit-socio-page .edit-socio-back-btn:hover,
.edit-socio.wizard .edit-socio-back-btn:hover,
.edit-socio-page .edit-socio-back-btn:focus,
.edit-socio.wizard .edit-socio-back-btn:focus,
.edit-socio-page .edit-socio-back-btn:active,
.edit-socio.wizard .edit-socio-back-btn:active {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 8px 14px;
    border-radius: 10px;
    color: #163f63 !important;
    background: #e3edf7 !important;
    background-image: none !important;
    border: 1px solid #b8cbde !important;
    text-decoration: none;
    text-shadow: none !important;
    -webkit-text-fill-color: #163f63 !important;
}

.edit-socio-page .edit-socio-back-btn i,
.edit-socio.wizard .edit-socio-back-btn i {
    font-size: 13px;
}

/* Edit socio: precise vertical centering for back button */
.edit-socio.wizard .edit-socio-accessible-top,
.edit-socio-page .edit-socio-header {
    display: flex;
    align-items: center;
}

.edit-socio.wizard .edit-socio-accessible-top {
    height: 56px;
    min-height: 56px;
    margin: 0 0 10px;
    padding: 0;
}

.edit-socio-page .edit-socio-back-btn,
.edit-socio.wizard .edit-socio-back-btn {
    height: 40px;
    min-height: 40px;
    padding: 0 14px;
    line-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}

.edit-socio-page .edit-socio-back-btn i,
.edit-socio.wizard .edit-socio-back-btn i,
.edit-socio-page .edit-socio-back-btn span,
.edit-socio.wizard .edit-socio-back-btn span {
    line-height: 1;
}

/* Dettaglio socio: back to search button style */
.dettaglio-socio .ds-actions .edit-socio-back-btn,
.dettaglio-socio-page .ds-actions .edit-socio-back-btn,
.dettaglio-socio .ds-actions .edit-socio-back-btn:hover,
.dettaglio-socio-page .ds-actions .edit-socio-back-btn:hover,
.dettaglio-socio .ds-actions .edit-socio-back-btn:focus,
.dettaglio-socio-page .ds-actions .edit-socio-back-btn:focus,
.dettaglio-socio .ds-actions .edit-socio-back-btn:active,
.dettaglio-socio-page .ds-actions .edit-socio-back-btn:active {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 42px;
    padding: 8px 14px;
    border-radius: 10px;
    color: #163f63 !important;
    background: #e3edf7 !important;
    background-image: none !important;
    border: 1px solid #b8cbde !important;
    text-decoration: none;
    text-shadow: none !important;
    -webkit-text-fill-color: #163f63 !important;
}

/* Dettaglio socio: place back button like edit header */
.dettaglio-socio-page .ds-header {
    display: flex;
    align-items: center;
    gap: 10px;
}

.dettaglio-socio-page .ds-header .ds-page-title {
    margin: 0;
}

.dettaglio-socio-page .ds-header .ds-actions {
    margin-left: auto;
    float: none !important;
}

.dettaglio-socio .ds-main > .edit-socio-back-btn {
    margin-bottom: 10px;
}

/* Dettaglio socio: back button above card spacing */
.dettaglio-socio-page .ds-back-top,
.dettaglio-socio .ds-back-top {
    margin: 0 0 10px;
}

.dettaglio-socio .ds-shell .ds-back-top {
    padding-left: 0;
    padding-right: 0;
}

/* Edit socio: back button should match white style used in detail */
.edit-socio-page .edit-socio-back-btn,
.edit-socio.wizard .edit-socio-back-btn,
.edit-socio-page .edit-socio-back-btn:hover,
.edit-socio.wizard .edit-socio-back-btn:hover,
.edit-socio-page .edit-socio-back-btn:focus,
.edit-socio.wizard .edit-socio-back-btn:focus,
.edit-socio-page .edit-socio-back-btn:active,
.edit-socio.wizard .edit-socio-back-btn:active {
    color: #163f63 !important;
    background: #ffffff !important;
    background-image: none !important;
    border: 1px solid #cfdceb !important;
    text-shadow: none !important;
    -webkit-text-fill-color: #163f63 !important;
}

/* Dettaglio socio: print as clean detail sheet (not page screenshot) */
@media print {
    html,
    body {
        background: #fff !important;
        color: #000 !important;
    }

    body::before {
        display: none !important;
        content: none !important;
    }

    .anvcg-navbar,
    .sidebar,
    .breadcrumbs,
    .breadcrumb,
    .ace-settings-container,
    .navbar,
    .footer,
    .page-header .ds-actions,
    .ds-back-top,
    #editDigit,
    #cessaSocio,
    #stampaSocio,
    #editBenemerito,
    #regolarizza {
        display: none !important;
    }

    .main-content,
    .main-container,
    .page-content,
    .dettaglio-socio,
    .dettaglio-socio-page,
    .dettaglio-socio .ds-shell,
    .dettaglio-socio .ds-main,
    .dettaglio-socio-page .ds-layout,
    .dettaglio-socio-page .ds-col,
    .dettaglio-socio .ds-col {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        float: none !important;
    }

    .dettaglio-socio .ds-main,
    .dettaglio-socio-page .ds-layout,
    .dettaglio-socio-page .ds-header {
        border: 0 !important;
        box-shadow: none !important;
        background: #fff !important;
    }

    .dettaglio-socio .row,
    .dettaglio-socio-page .row {
        margin: 0 !important;
    }

    .dettaglio-socio .form-group,
    .dettaglio-socio-page .form-group,
    .dettaglio-socio .control-label,
    .dettaglio-socio-page .control-label,
    .dettaglio-socio .form-control-static,
    .dettaglio-socio-page .form-control-static {
        color: #000 !important;
        font-size: 12px !important;
        line-height: 1.35 !important;
    }

    .dettaglio-socio .ds-page-title,
    .dettaglio-socio-page .ds-page-title {
        color: #000 !important;
        margin: 0 0 12px !important;
    }

    .dettaglio-socio .ds-section-title,
    .dettaglio-socio-page .ds-section-title {
        margin-top: 14px !important;
        color: #000 !important;
    }
}

/* Elenchi soci MEF: align with modern ANVCG tesseramento style */
.mef-layout {
    margin-top: 6px;
}

.mef-layout #fileMinistero {
    width: 100% !important;
    margin-left: 0 !important;
    float: none !important;
    background: transparent !important;
}

.mef-layout .mef-card {
    margin-bottom: 14px;
}

.mef-layout .mef-title {
    margin-bottom: 10px;
}

.mef-layout .mef-intro {
    margin: 0 0 14px;
    color: #3e5f7f;
    font-size: 14px;
    line-height: 1.5;
}

.mef-layout .mef-form .mef-field {
    width: 100% !important;
    max-width: 460px;
    margin-bottom: 12px;
}

.mef-layout .mef-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 8px;
}

.mef-layout .mef-last-update {
    color: #4c6783;
    font-size: 13px;
    font-weight: 600;
}

.mef-layout .mef-divider {
    margin: 12px 0;
    border-top-color: #dbe6f2;
}

.mef-layout .mef-subtitle {
    margin: 0 0 10px;
    color: #174977;
    font-size: 19px;
    font-weight: 700;
}

.mef-layout .mef-legend-list {
    margin: 0 0 10px;
    padding-left: 18px;
}

.mef-layout .mef-legend-list li {
    margin-bottom: 6px;
    color: #365978;
    line-height: 1.45;
}

.mef-layout .mef-note {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #dbe6f2;
    background: #f7fbff;
    color: #3f5f7e;
    line-height: 1.5;
}

.mef-layout .btn.btn-primary,
.mef-layout .btn.btn-primary:hover,
.mef-layout .btn.btn-primary:focus,
.mef-layout .btn.btn-primary:active {
    color: #0f436c !important;
}

@media (max-width: 767px) {
    .mef-layout .mef-actions {
        align-items: stretch;
    }

    .mef-layout .mef-actions .btn {
        width: 100%;
    }
}

/* Elenchi soci MEF: feedback stato download */
.mef-layout .mef-download-status {
    margin: 10px 0 0;
    font-size: 13px;
    line-height: 1.4;
}

/* Contabilita: modernizzazione pagina edit_entrata */
.nuova-entrata-contabilita {
    margin-top: 8px;
}

.page-content.nuova-entrata-contabilita,
.main-container.nuova-entrata-contabilita {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.nuova-entrata-contabilita .page-header {
    margin: 0 0 14px;
    padding: 8px 4px 10px;
    border-bottom: 1px solid rgba(22, 74, 116, 0.14);
}

.nuova-entrata-contabilita .page-header h2,
.nuova-entrata-contabilita .page-header h3 {
    margin: 0;
    color: #0f436c;
    font-weight: 700;
    letter-spacing: 0.2px;
}

.nuova-entrata-contabilita #entrata {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.nuova-entrata-contabilita #entrata .form-group {
    margin-bottom: 12px;
}

.nuova-entrata-contabilita #entrata .control-label {
    color: #123f66;
    font-weight: 700;
    padding-top: 9px;
}

.nuova-entrata-contabilita #entrata .form-control,
.nuova-entrata-contabilita #entrata select,
.nuova-entrata-contabilita #entrata input[type="text"],
.nuova-entrata-contabilita #entrata input[type="number"],
.nuova-entrata-contabilita #entrata textarea {
    border-radius: 11px !important;
    border: 1px solid #c9d9e9 !important;
    background: #fff !important;
    color: #163f63;
    min-height: 40px;
    box-shadow: inset 0 1px 2px rgba(18, 63, 99, 0.06);
}

.nuova-entrata-contabilita #entrata textarea {
    min-height: 96px;
}

.nuova-entrata-contabilita #entrata .help-block,
.nuova-entrata-contabilita #entrata .text-danger {
    color: #9a2f2f;
    font-weight: 600;
}

.nuova-entrata-contabilita #entrata > div:last-child {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-top: 8px;
}

.nuova-entrata-contabilita #entrata > div:last-child .btn {
    min-width: 150px;
}

.nuova-entrata-contabilita hr {
    border-color: #d9e6f1;
    margin: 16px 0;
}

.nuova-entrata-contabilita h4 {
    margin-top: 8px;
    color: #0f436c;
    font-weight: 700;
}

.nuova-entrata-contabilita #atti {
    border: 1px dashed #b9cde0;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.70);
    padding: 12px;
}

.nuova-entrata-contabilita p {
    color: #264f72;
}

.nuova-entrata-contabilita .addInfoEntrata {
    margin-top: 8px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid #c6d9ea;
    background: #f2f8fc;
    color: #154465;
    font-weight: 600;
}

@media (max-width: 767px) {
    .nuova-entrata-contabilita #entrata {
        padding: 14px 12px 8px;
    }

    .nuova-entrata-contabilita #entrata .control-label {
        padding-top: 0;
        margin-bottom: 6px;
    }

    .nuova-entrata-contabilita #entrata > div:last-child .btn {
        width: 100%;
        min-width: 0;
    }
}

/* Contabilita edit_entrata: layout smart campi */
@media (min-width: 992px) {
    .nuova-entrata-contabilita #entrata {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 12px 16px;
    }

    .nuova-entrata-contabilita #entrata .form-group {
        width: calc(50% - 8px);
        margin-bottom: 0;
    }

    .nuova-entrata-contabilita #entrata .form-group.entrata-full-row {
        width: 100%;
    }

    .nuova-entrata-contabilita #entrata .form-group > .control-label,
    .nuova-entrata-contabilita #entrata .form-group > [class*="col-"] {
        float: none !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 0;
        padding-right: 0;
        text-align: left;
    }

    .nuova-entrata-contabilita #entrata .form-group > .control-label {
        margin: 0 0 6px;
        padding-top: 0;
    }

    .nuova-entrata-contabilita #entrata > div:last-child {
        width: 100%;
        margin-top: 2px;
    }
}

@media (max-width: 991px) {
    .nuova-entrata-contabilita #entrata .form-group {
        width: 100%;
    }
}

@media (min-width: 992px) {
    .nuova-entrata-contabilita #entrata .form-group:has(textarea),
    .nuova-entrata-contabilita #entrata .form-group:has(input[type="radio"]) {
        width: 100%;
    }
}

/* Contabilita edit_entrata: separatori logici campi */
.nuova-entrata-contabilita #entrata .entrata-section-title {
    width: 100%;
    margin: 6px 0 2px;
    padding-top: 8px;
    border-top: 1px solid #deebf6;
    color: #0e4a76;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.4px;
    text-transform: uppercase;
}

.nuova-entrata-contabilita #entrata .entrata-section-title:first-of-type {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.nuova-entrata-contabilita #entrata .entrata-actions-row {
    width: 100%;
}

/* Contabilita edit_entrata: no movimento card contenitore on hover */
.nuova-entrata-contabilita .block:hover,
.nuova-entrata-contabilita .block:focus,
.nuova-entrata-contabilita .block:active {
    transform: none !important;
}

/* Contabilita edit_entrata: allineamento contenuti alle intestazioni sezione */
.nuova-entrata-contabilita #entrata {
    --entrata-section-gutter: 10px;
}

.nuova-entrata-contabilita #entrata .entrata-section-title,
.nuova-entrata-contabilita #entrata .form-group,
.nuova-entrata-contabilita #entrata .entrata-actions-row {
    box-sizing: border-box;
    padding-left: var(--entrata-section-gutter);
    padding-right: var(--entrata-section-gutter);
}

.nuova-entrata-contabilita #entrata .form-group {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* ANVCG: allineamento stile form uscita a form entrata */
.nuova-uscita-contabilita #uscita {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  --entrata-section-gutter: 10px;
}

.nuova-uscita-contabilita #uscita .form-group {
  margin-bottom: 12px;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.nuova-uscita-contabilita #uscita .control-label {
  color: #123f66;
  font-weight: 700;
  padding-top: 9px;
}

.nuova-uscita-contabilita #uscita .form-control,
.nuova-uscita-contabilita #uscita select,
.nuova-uscita-contabilita #uscita input[type="text"],
.nuova-uscita-contabilita #uscita input[type="number"],
.nuova-uscita-contabilita #uscita textarea {
  color: #163f63;
  min-height: 40px;
  box-shadow: inset 0 1px 2px rgba(18, 63, 99, 0.06);
  border-radius: 11px !important;
  border: 1px solid #c9d9e9 !important;
  background: #fff !important;
}

.nuova-uscita-contabilita #uscita textarea {
  min-height: 96px;
}

.nuova-uscita-contabilita #uscita .help-block,
.nuova-uscita-contabilita #uscita .text-danger {
  color: #9a2f2f;
  font-weight: 600;
}

.nuova-uscita-contabilita #uscita > div:last-child {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-top: 8px;
}

.nuova-uscita-contabilita #uscita > div:last-child .btn {
  min-width: 150px;
}

.nuova-uscita-contabilita #uscita .entrata-section-title {
  width: 100%;
  margin: 6px 0 2px;
  padding-top: 8px;
  border-top: 1px solid #deebf6;
  color: #0e4a76;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.4px;
  text-transform: uppercase;
}

.nuova-uscita-contabilita #uscita .entrata-section-title:first-of-type {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}

.nuova-uscita-contabilita #uscita .entrata-actions-row {
  width: 100%;
}

.nuova-uscita-contabilita #uscita .entrata-section-title,
.nuova-uscita-contabilita #uscita .form-group,
.nuova-uscita-contabilita #uscita .entrata-actions-row {
  box-sizing: border-box;
  padding-left: var(--entrata-section-gutter);
  padding-right: var(--entrata-section-gutter);
}


@media (max-width: 767px) {
  .nuova-uscita-contabilita #uscita {
    padding: 14px 12px 8px;
  }

  .nuova-uscita-contabilita #uscita .control-label {
    padding-top: 0;
    margin-bottom: 6px;
  }

  .nuova-uscita-contabilita #uscita > div:last-child .btn {
    width: 100%;
    min-width: 0;
  }
}

@media (min-width: 992px) {
  .nuova-uscita-contabilita #uscita {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 12px 16px;
  }

  .nuova-uscita-contabilita #uscita .form-group {
    width: calc(50% - 8px);
    margin-bottom: 0;
  }

  .nuova-uscita-contabilita #uscita .form-group.entrata-full-row {
    width: 100%;
  }

  .nuova-uscita-contabilita #uscita .form-group > .control-label,
  .nuova-uscita-contabilita #uscita .form-group > [class*="col-"] {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0;
    padding-right: 0;
    text-align: left;
  }

  .nuova-uscita-contabilita #uscita .form-group > .control-label {
    margin: 0 0 6px;
    padding-top: 0;
  }

  .nuova-uscita-contabilita #uscita > div:last-child {
    width: 100%;
    margin-top: 2px;
  }
}

@media (max-width: 991px) {
  .nuova-uscita-contabilita #uscita .form-group {
    width: 100%;
  }
}

@media (min-width: 992px) {
  .nuova-uscita-contabilita #uscita .form-group:has(textarea),
  .nuova-uscita-contabilita #uscita .form-group:has(input[type="radio"]),
  .nuova-uscita-contabilita #uscita .form-group:has(input[type="checkbox"]) {
    width: 100%;
  }
}
/* Global override: hide breadcrumb navigation across pages */
ul.breadcrumb,
.breadcrumb,
.breadcrumbs {
  display: none !important;
}
