/* =========================================================
   ANIMAL KING THEME - CSS CENTRALIZZATO
   Unifica style.css + override scheda.
   Versione: 20260620-ak-theme-centralizzato-v1
========================================================= */

:root {
    --ak-primary: #0d6efd;
    --ak-warning: #ffc107;
    --ak-success: #198754;
    --ak-danger: #dc3545;
    --ak-dark: #212529;
    --ak-muted: #6c757d;
    --ak-border: #dee2e6;
    --ak-surface: #ffffff;
    --ak-radius-lg: 1.5rem;
    --ak-radius-md: .95rem;
    --ak-shadow: 0 1rem 3rem rgba(15, 23, 42, .09);
    --ak-shadow-soft: 0 .75rem 1.75rem rgba(15, 23, 42, .08);
}

html { scroll-behavior: smooth; }
body { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; }
a { text-underline-offset: .18em; }

.card,
.modal-content,
.dropdown-menu {
    border-color: rgba(15, 23, 42, .08);
}

.card {
    box-shadow: var(--ak-shadow-soft);
}

.form-control,
.form-select,
.input-group-text,
.btn {
    min-height: 44px;
}

.form-control,
.form-select {
    border-radius: var(--ak-radius-md);
    border-color: #d9e2ec;
    transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.form-control:focus,
.form-select:focus {
    border-color: rgba(13, 110, 253, .55);
    box-shadow: 0 0 0 .25rem rgba(13, 110, 253, .12);
}

.btn {
    border-radius: var(--ak-radius-md);
    font-weight: 700;
    transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.btn:hover {
    transform: translateY(-1px);
    box-shadow: 0 .65rem 1.35rem rgba(15, 23, 42, .13);
}

.btn:active { transform: translateY(0); }

.table {
    --bs-table-bg: transparent;
    vertical-align: middle;
}

.table thead th {
    color: #495057;
    font-size: .82rem;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom-color: #d9e2ec;
}

.table tbody tr {
    transition: background-color .16s ease;
}

.table tbody tr:hover {
    background-color: rgba(13, 110, 253, .035);
}

.alert {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .06);
}

.badge,
.rounded-pill { letter-spacing: .01em; }

.modal-content {
    border: 0;
    border-radius: 1.25rem;
    box-shadow: var(--ak-shadow);
}

.modal-header,
.modal-footer {
    border-color: rgba(15, 23, 42, .08);
}

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: rgba(15, 23, 42, .04); }
::-webkit-scrollbar-thumb { background: rgba(15, 23, 42, .22); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: rgba(15, 23, 42, .32); }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
    }
}

@media (max-width: 575.98px) {
    .container,
    .container-fluid { padding-left: 1rem; padding-right: 1rem; }
    .btn { width: 100%; }
    .table-responsive { border-radius: 1rem; }
}

/* ============================================================
   Stili PHP centralizzati con scope per pagina
   ============================================================ */


/* === AbbFond/index.php === */
body.pg-abbfond-index { background: #f4f7fb; }
body.pg-abbfond-index .subscription-card { max-width: 720px; border: 0; border-radius: 1.25rem; box-shadow: 0 1rem 2.5rem rgba(15,23,42,.08); }
body.pg-abbfond-index .price-pill { display: inline-flex; align-items: center; gap: .5rem; padding: .75rem 1rem; border-radius: 999px; background: #eef5ff; color: #0d6efd; font-weight: 700; }


/* === AbbFond/phpcodewizard/index.php === */
body.pg-abbfond-phpcodewizard-index .img-rounded {
         border:3px solid #fff;
         background: url(animal-king-logo.png) no-repeat;
         box-shadow: 6px 6px 3px #ccc;
         -moz-box-shadow: 6px 6px 3px #ccc;
         -webkit-box-shadow: 6px 6px 3px #ccc;
         -khtml-box-shadow: 6px 6px 3px #ccc;
      }


/* === Attivatore.php === */
body.pg-attivatore { --ak-primary: #198754; --ak-soft: #f3fbf6; --ak-text: #1f2933; }
body.pg-attivatore { min-height: 100vh; margin: 0; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ak-text); background: radial-gradient(circle at top left, #e8fff0 0, #f8fafc 38%, #ffffff 100%); }
body.pg-attivatore .ak-page { min-height: 100vh; display: flex; align-items: center; padding: clamp(1rem, 4vw, 3rem); }
body.pg-attivatore .ak-card { width: min(100%, 980px); margin: 0 auto; border: 0; border-radius: 1.5rem; box-shadow: 0 1.25rem 3.5rem rgba(15, 23, 42, .12); overflow: hidden; }
body.pg-attivatore .ak-logo-wrap { background: var(--ak-soft); min-height: 100%; display: flex; align-items: center; justify-content: center; padding: 2rem; }
body.pg-attivatore .ak-logo { max-width: 180px; width: 70%; height: auto; border-radius: 1rem; }
body.pg-attivatore .ak-success-icon { width: 4rem; height: 4rem; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(25, 135, 84, .12); color: var(--ak-primary); font-size: 2rem; font-weight: 800; }
body.pg-attivatore .ak-title { font-size: clamp(1.75rem, 5vw, 3rem); line-height: 1.05; letter-spacing: -.04em; }
body.pg-attivatore .ak-text { font-size: clamp(1rem, 2.3vw, 1.2rem); line-height: 1.7; }
body.pg-attivatore .ak-note { background: #fff8e1; border: 1px solid rgba(245, 158, 11, .25); border-radius: 1rem; }
@media (max-width: 767.98px) {
body.pg-attivatore .ak-page { align-items: flex-start; }
body.pg-attivatore .ak-card { border-radius: 1.25rem; }
body.pg-attivatore .ak-logo-wrap { padding: 1.5rem 1rem .5rem; }
body.pg-attivatore .ak-logo { max-width: 140px; }
}


/* === Esercenti/AccordoPDF.php === */
body.pg-esercenti-accordopdf { --ak-primary:#f59f00; --ak-primary-dark:#d97706; --ak-ink:#1f2937; --ak-muted:#6b7280; --ak-bg:#fff7ed; --ak-card:rgba(255,255,255,.96); }
body.pg-esercenti-accordopdf { min-height:100vh; color:var(--ak-ink); background:radial-gradient(circle at top left, rgba(245,159,0,.22), transparent 34rem), linear-gradient(135deg,#fffaf0 0%,#f8fafc 55%,#fff7ed 100%); font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
body.pg-esercenti-accordopdf .page-shell { max-width: 920px; }
body.pg-esercenti-accordopdf .registration-card { border:0; border-radius:1.5rem; background:var(--ak-card); box-shadow:0 1.5rem 4rem rgba(15,23,42,.12); overflow:visible; }
body.pg-esercenti-accordopdf .hero-panel { background:linear-gradient(135deg,#fff3cd 0%,#fff 100%); border-bottom:1px solid rgba(245,159,0,.18); }
body.pg-esercenti-accordopdf .brand-logo { width:min(150px,42vw); height:auto; border-radius:1rem; box-shadow:0 .75rem 1.5rem rgba(15,23,42,.12); }
body.pg-esercenti-accordopdf .section-title { display:flex; align-items:center; gap:.65rem; margin-bottom:1rem; font-weight:800; letter-spacing:-.02em; }
body.pg-esercenti-accordopdf .section-title .icon-badge { display:inline-grid; place-items:center; width:2.35rem; height:2.35rem; border-radius:.85rem; background:rgba(245,159,0,.14); color:var(--ak-primary-dark); }
body.pg-esercenti-accordopdf .form-label { font-weight:650; }
body.pg-esercenti-accordopdf .form-control { min-height:3rem; border-radius:.85rem; border-color:#d7dde7; }
body.pg-esercenti-accordopdf .form-control:focus { border-color:var(--ak-primary); box-shadow:0 0 0 .25rem rgba(245,159,0,.18); }
body.pg-esercenti-accordopdf .btn-ak { --bs-btn-bg:var(--ak-primary); --bs-btn-border-color:var(--ak-primary); --bs-btn-hover-bg:var(--ak-primary-dark); --bs-btn-hover-border-color:var(--ak-primary-dark); --bs-btn-active-bg:var(--ak-primary-dark); --bs-btn-active-border-color:var(--ak-primary-dark); --bs-btn-color:#fff; --bs-btn-hover-color:#fff; border-radius:999px; min-height:3.2rem; font-weight:800; letter-spacing:.02em; }
body.pg-esercenti-accordopdf .signature-pad { width:100%; height:220px; border:1px solid #d7dde7; border-radius:1rem; background:#fff; touch-action:none; }
body.pg-esercenti-accordopdf .pdf-preview-frame { width:100%; height: min(74vh, 760px); border:1px solid #d7dde7; border-radius:1rem; background:#fff; }
body.pg-esercenti-accordopdf .ak-stepper { display:grid; grid-template-columns:repeat(3,1fr); gap:.75rem; margin-bottom:2rem; position:sticky; top:.75rem; z-index:50; padding:.75rem; border-radius:1.25rem; background:rgba(255,255,255,.94); box-shadow:0 .75rem 2rem rgba(15,23,42,.10); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); }
body.pg-esercenti-accordopdf .ak-step { border:1px solid rgba(245,159,0,.22); border-radius:1rem; padding:1rem; background:#fff; min-width:0; }
body.pg-esercenti-accordopdf .ak-step .num { display:inline-grid; place-items:center; width:2rem; height:2rem; border-radius:999px; background:rgba(245,159,0,.16); color:var(--ak-primary-dark); font-weight:800; margin-right:.5rem; }
body.pg-esercenti-accordopdf .ak-step.active { border-color:var(--ak-primary); box-shadow:0 .75rem 1.5rem rgba(245,159,0,.12); }
body.pg-esercenti-accordopdf .ak-step.completed { border-color:#22c55e; background:#f0fdf4; }
body.pg-esercenti-accordopdf .ak-step.completed .num { background:#22c55e; color:#fff; }
body.pg-esercenti-accordopdf .ak-step.active .num { background:var(--ak-primary); color:#fff; }
body.pg-esercenti-accordopdf .otp-help { border-radius:1rem; background:#f8fafc; border:1px solid #e5e7eb; padding:1rem; }
body.pg-esercenti-accordopdf .otp-inline-error { border-radius:.85rem; margin-top:.75rem; margin-bottom:0; padding:.75rem .9rem; }
@media (max-width:575.98px) {
body.pg-esercenti-accordopdf .registration-card {border-radius:1rem;}
body.pg-esercenti-accordopdf .hero-panel {text-align:center;}
body.pg-esercenti-accordopdf .ak-stepper {grid-template-columns:repeat(3,1fr); gap:.35rem; top:.35rem; padding:.45rem; margin-left:-.25rem; margin-right:-.25rem;}
body.pg-esercenti-accordopdf .ak-step {padding:.55rem .35rem; text-align:center; border-radius:.75rem;}
body.pg-esercenti-accordopdf .ak-step .num {width:1.65rem; height:1.65rem; margin:0 auto .25rem; display:grid;}
body.pg-esercenti-accordopdf .ak-step strong {display:block; font-size:.74rem; line-height:1.05;}
body.pg-esercenti-accordopdf .ak-step .small {display:none;}
}


/* === Esercenti/index.php === */
body.pg-esercenti-index {
            overflow-y: scroll;
        }
body.pg-esercenti-index {
            min-height: 100vh;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .10), transparent 32%),
                linear-gradient(135deg, #f8fbff 0%, #eef3f8 100%);
            color: #212529;
        }
body.pg-esercenti-index .page-shell {
            padding: 1rem;
        }
body.pg-esercenti-index .main-card {
            border: 0;
            border-radius: 1.35rem;
            box-shadow: 0 1rem 3rem rgba(15, 23, 42, .10);
            overflow: hidden;
            background: #fff;
        }
body.pg-esercenti-index .page-header {
            padding: 1.25rem;
            border-bottom: 1px solid #e9ecef;
            background: linear-gradient(135deg, #fff 0%, #f6f9ff 100%);
        }
body.pg-esercenti-index .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            margin: 0;
        }
body.pg-esercenti-index .toolbar {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: center;
            gap: .75rem;
        }
body.pg-esercenti-index .table-zone {
            padding: 1rem;
        }
body.pg-esercenti-index .table-responsive {
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }
body.pg-esercenti-index table.dataTable {
            width: 100% !important;
            vertical-align: middle;
        }
body.pg-esercenti-index .table thead th {
            white-space: nowrap;
            text-align: center;
        }
body.pg-esercenti-index .table td {
            vertical-align: middle;
        }
body.pg-esercenti-index .merchant-img {
            width: 72px;
            height: 54px;
            object-fit: cover;
            border-radius: .75rem;
            border: 1px solid #dee2e6;
            background: #fff;
        }
body.pg-esercenti-index .btn {
            border-radius: .75rem;
            font-weight: 700;
        }
body.pg-esercenti-index .action-group {
            display: flex;
            flex-wrap: wrap;
            gap: .35rem;
            justify-content: center;
        }
body.pg-esercenti-index .modal-content {
            border: 0;
            border-radius: 1.15rem;
            box-shadow: 0 1rem 3rem rgba(15, 23, 42, .18);
        }
body.pg-esercenti-index .modal-header, body.pg-esercenti-index .modal-footer {
            border-color: #edf0f3;
        }
body.pg-esercenti-index .modal-body {
            max-height: 72vh;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
        }
body.pg-esercenti-index .form-label {
            font-weight: 700;
            color: #495057;
        }
body.pg-esercenti-index .form-control, body.pg-esercenti-index .form-select {
            min-height: 44px;
            border-radius: .75rem;
        }
body.pg-esercenti-index .detail-photo {
            width: 170px;
            height: 150px;
            object-fit: cover;
            border-radius: 1rem;
            border: 1px solid #dee2e6;
            background: #fff;
        }
body.pg-esercenti-index .detail-row {
            padding: .65rem 0;
            border-bottom: 1px solid #f1f3f5;
        }
body.pg-esercenti-index .detail-label {
            font-weight: 800;
            color: #6c757d;
        }
@media (max-width: 575.98px) {
body.pg-esercenti-index .page-shell {
                padding: .5rem;
            }
body.pg-esercenti-index .page-header, body.pg-esercenti-index .table-zone {
                padding: .75rem;
            }
body.pg-esercenti-index .page-title {
                font-size: 1.25rem;
                text-align: center;
            }
body.pg-esercenti-index .toolbar {
                justify-content: center;
            }
body.pg-esercenti-index .toolbar .btn {
                width: 100%;
            }
body.pg-esercenti-index .action-group .btn {
                width: 100%;
            }
body.pg-esercenti-index .modal-dialog {
                margin: .5rem;
            }
}


/* === Esercenti/signup-user.php === */
body.pg-esercenti-signup-user {
            --ak-primary: #f59f00;
            --ak-primary-dark: #d97706;
            --ak-ink: #1f2937;
            --ak-muted: #6b7280;
            --ak-bg: #fff7ed;
            --ak-card: rgba(255,255,255,.96);
        }
body.pg-esercenti-signup-user {
            min-height: 100vh;
            color: var(--ak-ink);
            background:
                radial-gradient(circle at top left, rgba(245,159,0,.22), transparent 34rem),
                linear-gradient(135deg, #fffaf0 0%, #f8fafc 55%, #fff7ed 100%);
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        }
body.pg-esercenti-signup-user .page-shell { max-width: 1120px; }
body.pg-esercenti-signup-user .registration-card {
            border: 0;
            border-radius: 1.5rem;
            background: var(--ak-card);
            box-shadow: 0 1.5rem 4rem rgba(15, 23, 42, .12);
            overflow: hidden;
        }
body.pg-esercenti-signup-user .hero-panel {
            background: linear-gradient(135deg, #fff3cd 0%, #fff 100%);
            border-bottom: 1px solid rgba(245,159,0,.18);
        }
body.pg-esercenti-signup-user .brand-logo {
            width: min(150px, 42vw);
            height: auto;
            border-radius: 1rem;
            box-shadow: 0 .75rem 1.5rem rgba(15, 23, 42, .12);
        }
body.pg-esercenti-signup-user .section-title {
            display: flex;
            align-items: center;
            gap: .65rem;
            margin-bottom: 1rem;
            font-weight: 800;
            letter-spacing: -.02em;
        }
body.pg-esercenti-signup-user .section-title .icon-badge {
            display: inline-grid;
            place-items: center;
            width: 2.35rem;
            height: 2.35rem;
            border-radius: .85rem;
            background: rgba(245,159,0,.14);
            color: var(--ak-primary-dark);
        }
body.pg-esercenti-signup-user .form-label { font-weight: 650; }
body.pg-esercenti-signup-user .form-control, body.pg-esercenti-signup-user .form-select {
            min-height: 3rem;
            border-radius: .85rem;
            border-color: #d7dde7;
        }
body.pg-esercenti-signup-user .form-control:focus, body.pg-esercenti-signup-user .form-select:focus {
            border-color: var(--ak-primary);
            box-shadow: 0 0 0 .25rem rgba(245,159,0,.18);
        }
body.pg-esercenti-signup-user .input-group-text {
            border-radius: .85rem 0 0 .85rem;
            background: #fff7ed;
            color: var(--ak-primary-dark);
            border-color: #d7dde7;
        }
body.pg-esercenti-signup-user .discount-row {
            padding: 1rem;
            border: 1px solid #edf0f5;
            border-radius: 1rem;
            background: #fff;
        }
body.pg-esercenti-signup-user .privacy-box {
            max-height: 360px;
            overflow: auto;
            padding: 1.1rem;
            border: 1px solid #e5e7eb;
            border-radius: 1rem;
            background: #f9fafb;
            font-size: .95rem;
            line-height: 1.6;
        }
body.pg-esercenti-signup-user .captcha-image {
            max-width: 100%;
            height: auto;
            border-radius: .75rem;
            border: 1px solid #e5e7eb;
            background: #fff;
            padding: .35rem;
        }
body.pg-esercenti-signup-user .btn-ak {
            --bs-btn-bg: var(--ak-primary);
            --bs-btn-border-color: var(--ak-primary);
            --bs-btn-hover-bg: var(--ak-primary-dark);
            --bs-btn-hover-border-color: var(--ak-primary-dark);
            --bs-btn-active-bg: var(--ak-primary-dark);
            --bs-btn-active-border-color: var(--ak-primary-dark);
            --bs-btn-color: #fff;
            --bs-btn-hover-color: #fff;
            border-radius: 999px;
            min-height: 3.2rem;
            font-weight: 800;
            letter-spacing: .02em;
        }
@media (max-width: 575.98px) {
body.pg-esercenti-signup-user .registration-card { border-radius: 1rem; }
body.pg-esercenti-signup-user .hero-panel { text-align: center; }
body.pg-esercenti-signup-user .privacy-box { max-height: 300px; }
body.pg-esercenti-signup-user .discount-row { padding: .85rem; }
}


/* === LogIn/login.php === */
body.pg-login-login {
            --page-bg: #f4f7fb;
            --card-radius: 1.35rem;
        }
body.pg-login-login, body.pg-login-login {
            min-height: 100%;
        }
body.pg-login-login {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, var(--page-bg) 100%);
            color: #212529;
        }
body.pg-login-login .login-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1.25rem;
        }
body.pg-login-login .login-card {
            width: 100%;
            max-width: 430px;
            border: 0;
            border-radius: var(--card-radius);
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-login-login .login-card .card-body {
            padding: 2rem;
        }
body.pg-login-login .login-title {
            font-weight: 700;
            letter-spacing: -.02em;
        }
body.pg-login-login .login-subtitle {
            color: #6c757d;
            margin-bottom: 1.5rem;
        }
body.pg-login-login .form-label {
            font-weight: 600;
        }
body.pg-login-login .form-control {
            min-height: 46px;
            border-radius: .85rem;
        }
body.pg-login-login .btn {
            min-height: 46px;
            border-radius: .85rem;
            font-weight: 600;
        }
body.pg-login-login .actions-stack {
            display: grid;
            gap: .75rem;
        }
body.pg-login-login .policy-links {
            width: 100%;
            max-width: 430px;
            margin: 1rem auto 0;
            display: flex;
            gap: .75rem;
            justify-content: center;
            flex-wrap: wrap;
            font-size: .9rem;
        }
@media (max-width: 575.98px) {
body.pg-login-login .login-shell {
                align-items: flex-start;
                padding: 1rem;
            }
body.pg-login-login .login-card .card-body {
                padding: 1.5rem;
            }
body.pg-login-login .login-title {
                font-size: 1.75rem;
            }
body.pg-login-login .btn {
                width: 100%;
            }
}
@media (max-width: 360px) {
body.pg-login-login .login-card .card-body {
                padding: 1.25rem;
            }
}


/* === LogIn/nuovo-utente.php === */
body.pg-login-nuovo-utente, body.pg-login-nuovo-utente { min-height: 100%; }
body.pg-login-nuovo-utente {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background: radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%), linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-login-nuovo-utente .auth-shell { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 1.25rem; }
body.pg-login-nuovo-utente .auth-card { width: 100%; max-width: 460px; border: 0; border-radius: 1.35rem; box-shadow: 0 1rem 3rem rgba(0,0,0,.09); overflow: hidden; }
body.pg-login-nuovo-utente .auth-card .card-body { padding: 2rem; }
body.pg-login-nuovo-utente .auth-title { font-weight: 800; letter-spacing: -.03em; }
body.pg-login-nuovo-utente .auth-subtitle { color: #6c757d; }
body.pg-login-nuovo-utente .form-label { font-weight: 700; }
@media (max-width: 575.98px) {
body.pg-login-nuovo-utente .auth-shell { align-items: flex-start; padding: 1rem; }
body.pg-login-nuovo-utente .auth-card .card-body { padding: 1.5rem; }
}


/* === LogIn/reset-password.php === */
body.pg-login-reset-password, body.pg-login-reset-password {
            min-height: 100%;
        }
body.pg-login-reset-password {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-login-reset-password .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1.25rem;
        }
body.pg-login-reset-password .reset-card {
            width: 100%;
            max-width: 460px;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-login-reset-password .reset-card .card-body {
            padding: 2rem;
        }
body.pg-login-reset-password .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            line-height: 1.15;
        }
body.pg-login-reset-password .intro-text {
            color: #6c757d;
            line-height: 1.6;
        }
body.pg-login-reset-password .form-label {
            font-weight: 700;
        }
body.pg-login-reset-password .form-control {
            min-height: 46px;
            border-radius: .85rem;
        }
body.pg-login-reset-password .password-container {
            position: relative;
        }
body.pg-login-reset-password .password-container .form-control {
            padding-right: 3rem;
        }
body.pg-login-reset-password .password-toggle {
            position: absolute;
            top: 50%;
            right: .85rem;
            transform: translateY(-50%);
            border: 0;
            background: transparent;
            cursor: pointer;
            line-height: 1;
            padding: .25rem;
            z-index: 3;
        }
body.pg-login-reset-password .btn {
            min-height: 46px;
            border-radius: .85rem;
            font-weight: 800;
        }
@media (max-width: 575.98px) {
body.pg-login-reset-password .page-shell {
                align-items: flex-start;
                padding: 1rem;
            }
body.pg-login-reset-password .reset-card .card-body {
                padding: 1.4rem;
            }
body.pg-login-reset-password .page-title {
                font-size: 1.65rem;
                text-align: center;
            }
body.pg-login-reset-password .intro-text {
                text-align: center;
                font-size: .96rem;
            }
body.pg-login-reset-password .actions {
                display: grid !important;
                grid-template-columns: 1fr;
            }
body.pg-login-reset-password .btn {
                width: 100%;
            }
}


/* === LogIn/welcome.php === */
body.pg-login-welcome, body.pg-login-welcome { min-height: 100%; }
body.pg-login-welcome { margin: 0; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; background: radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%), linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%); color: #212529; }
body.pg-login-welcome .welcome-shell { min-height: 100vh; display: flex; align-items: center; justify-content: center; padding: 1.25rem; }
body.pg-login-welcome .welcome-card { width: 100%; max-width: 720px; border: 0; border-radius: 1.35rem; box-shadow: 0 1rem 3rem rgba(0,0,0,.09); }
body.pg-login-welcome .welcome-card .card-body { padding: 2rem; }
body.pg-login-welcome .welcome-title { font-weight: 800; letter-spacing: -.03em; }
body.pg-login-welcome .welcome-title b { color: #0d6efd; }
@media (max-width: 575.98px) {
body.pg-login-welcome .welcome-shell { align-items: flex-start; padding: 1rem; }
body.pg-login-welcome .welcome-card .card-body { padding: 1.5rem; }
}


/* === PayPal/abb-fond-soci.php === */
body.pg-paypal-abb-fond-soci { min-height: 100vh; background: linear-gradient(135deg, #f7f3ff 0%, #eef8ff 100%); }
body.pg-paypal-abb-fond-soci .logo, body.pg-paypal-abb-fond-soci .product-img { max-width: 260px; height: auto; }
body.pg-paypal-abb-fond-soci .paypal-subscribe { background: url(https://www.sandbox.paypal.com/it_IT/IT/i/btn/btn_subscribeCC_LG.gif) center/contain no-repeat; border: 0; width: 164px; height: 54px; }
@media (max-width: 575.98px) {
body.pg-paypal-abb-fond-soci .page-title { font-size: 1.65rem; }
}


/* === PayPal/abbmensile.php === */
body.pg-paypal-abbmensile { min-height: 100vh; background: linear-gradient(135deg, #f7f3ff 0%, #eef8ff 100%); }
body.pg-paypal-abbmensile .brand-card { max-width: 760px; }
body.pg-paypal-abbmensile .paypal-btn { background: url(https://www.sandbox.paypal.com/it_IT/IT/i/btn/btn_subscribeCC_LG.gif) center/contain no-repeat; border: 0; width: 164px; height: 54px; }
@media (max-width: 575.98px) {
body.pg-paypal-abbmensile .display-title { font-size: 1.7rem; }
body.pg-paypal-abbmensile .brand-card { border-radius: 0 !important; }
}


/* === PayPal/cancel.php === */
body.pg-paypal-cancel { min-height: 100vh; background: linear-gradient(135deg, #fff5f5 0%, #f7f9ff 100%); }
body.pg-paypal-cancel .logo { max-width: 200px; height: auto; }


/* === PayPal/index.php === */
body.pg-paypal-index {
            overflow-y: scroll;
        }
body.pg-paypal-index {
            min-height: 100vh;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .10), transparent 32%),
                linear-gradient(135deg, #f8fbff 0%, #eef3f8 100%);
            color: #212529;
        }
body.pg-paypal-index .page-shell {
            padding: 1rem;
        }
body.pg-paypal-index .hero-card, body.pg-paypal-index .payment-card, body.pg-paypal-index .info-card {
            border: 0;
            border-radius: 1.35rem;
            box-shadow: 0 1rem 3rem rgba(15, 23, 42, .10);
            overflow: hidden;
            background: #fff;
        }
body.pg-paypal-index .hero-card {
            background: linear-gradient(135deg, #fff 0%, #f6f9ff 100%);
        }
body.pg-paypal-index .hero-body {
            padding: 1.5rem;
        }
body.pg-paypal-index .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            margin-bottom: .75rem;
        }
body.pg-paypal-index .lead-text {
            color: #5f6b7a;
            font-size: 1.05rem;
            line-height: 1.6;
        }
body.pg-paypal-index .tessera-badge {
            border-radius: 999px;
            padding: .45rem .8rem;
            font-weight: 800;
            background: #e7f1ff;
            color: #084298;
            display: inline-flex;
            align-items: center;
            gap: .35rem;
        }
body.pg-paypal-index .product-grid {
            display: grid;
            grid-template-columns: repeat(1, minmax(0, 1fr));
            gap: 1rem;
        }
body.pg-paypal-index .product-card {
            height: 100%;
            border: 1px solid #edf0f3;
            border-radius: 1.15rem;
            overflow: hidden;
            transition: transform .18s ease, box-shadow .18s ease;
        }
body.pg-paypal-index .product-card:hover {
            transform: translateY(-2px);
            box-shadow: 0 .75rem 2rem rgba(15, 23, 42, .10);
        }
body.pg-paypal-index .product-img-wrap {
            background: #f8f9fa;
            padding: 1rem;
            text-align: center;
            min-height: 150px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
body.pg-paypal-index .product-img {
            max-width: 100%;
            max-height: 135px;
            object-fit: contain;
            border-radius: .75rem;
        }
body.pg-paypal-index .product-title {
            font-weight: 800;
        }
body.pg-paypal-index .price {
            font-size: 1.25rem;
            font-weight: 900;
            color: #0d6efd;
        }
body.pg-paypal-index .paypal-button-img, body.pg-paypal-index input[type="image"] {
            max-width: 100%;
            height: auto;
        }
body.pg-paypal-index .subscribe-button {
            background: url(https://www.sandbox.paypal.com/it_IT/IT/i/btn/btn_subscribeCC_LG.gif) no-repeat center;
            background-size: contain;
            border: none;
            width: 164px;
            height: 54px;
        }
body.pg-paypal-index .form-select {
            min-height: 46px;
            border-radius: .85rem;
        }
body.pg-paypal-index .section-title {
            font-weight: 800;
            letter-spacing: -.02em;
        }
@media (min-width: 768px) {
body.pg-paypal-index .product-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
}
@media (min-width: 1200px) {
body.pg-paypal-index .product-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }
}
@media (max-width: 575.98px) {
body.pg-paypal-index .page-shell {
                padding: .5rem;
            }
body.pg-paypal-index .hero-body, body.pg-paypal-index .card-body {
                padding: 1rem !important;
            }
body.pg-paypal-index .page-title {
                font-size: 1.45rem;
                text-align: center;
            }
body.pg-paypal-index .lead-text {
                font-size: .98rem;
                text-align: center;
            }
body.pg-paypal-index .tessera-badge {
                width: 100%;
                justify-content: center;
            }
}


/* === PayPal/process.php === */
body.pg-paypal-process { min-height: 100vh; background: linear-gradient(135deg, #f7f3ff 0%, #eef8ff 100%); }


/* === PayPal/success.php === */
body.pg-paypal-success { min-height: 100vh; background: linear-gradient(135deg, #f4fff8 0%, #f7f9ff 100%); }


/* === PayPal/success_fond_socio.php === */
body.pg-paypal-success_fond_socio { min-height: 100vh; background: linear-gradient(135deg, #f4fff8 0%, #f7f9ff 100%); }
body.pg-paypal-success_fond_socio .logo { max-width: 200px; height: auto; }


/* === SendAuthCode.php === */
body.pg-sendauthcode, body.pg-sendauthcode {
            min-height: 100%;
        }
body.pg-sendauthcode {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-sendauthcode .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1.25rem;
        }
body.pg-sendauthcode .auth-card {
            width: 100%;
            max-width: 760px;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-sendauthcode .auth-card .card-body {
            padding: 2rem;
        }
body.pg-sendauthcode .brand-logo {
            width: 170px;
            max-width: 100%;
            height: auto;
            border-radius: 1rem;
        }
body.pg-sendauthcode .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            line-height: 1.15;
        }
body.pg-sendauthcode .message-box {
            border-radius: 1rem;
            padding: 1rem;
            font-size: 1.05rem;
            line-height: 1.6;
        }
body.pg-sendauthcode .btn {
            min-height: 48px;
            border-radius: .95rem;
            font-weight: 800;
        }
@media (max-width: 575.98px) {
body.pg-sendauthcode .page-shell {
                align-items: flex-start;
                padding: 1rem;
            }
body.pg-sendauthcode .auth-card .card-body {
                padding: 1.35rem;
            }
body.pg-sendauthcode .brand-logo {
                width: 145px;
                margin-bottom: 1rem;
            }
body.pg-sendauthcode .page-title {
                font-size: 1.55rem;
                text-align: center;
            }
body.pg-sendauthcode .message-box {
                font-size: .98rem;
                text-align: center;
            }
body.pg-sendauthcode .btn {
                width: 100%;
            }
}


/* === TrackingEmail/ricerca.php === */
body.pg-trackingemail-ricerca {
            --page-bg: #f4f7fb;
        }
body.pg-trackingemail-ricerca {
            min-height: 100vh;
            background: radial-gradient(circle at top left, rgba(25, 135, 84, .12), transparent 35%), var(--page-bg);
        }
body.pg-trackingemail-ricerca .page-shell {
            max-width: 1180px;
        }
body.pg-trackingemail-ricerca .hero-card {
            border: 0;
            border-radius: 1.25rem;
            box-shadow: 0 1rem 2.5rem rgba(15, 23, 42, .08);
            overflow: hidden;
        }
body.pg-trackingemail-ricerca .hero-header {
            background: linear-gradient(135deg, #198754, #0f6848);
        }
body.pg-trackingemail-ricerca .search-card, body.pg-trackingemail-ricerca .result-card {
            border: 0;
            border-radius: 1rem;
            box-shadow: 0 .75rem 1.75rem rgba(15, 23, 42, .07);
        }
body.pg-trackingemail-ricerca .table thead th {
            white-space: nowrap;
            font-size: .82rem;
            text-transform: uppercase;
            letter-spacing: .04em;
        }
body.pg-trackingemail-ricerca .table td {
            vertical-align: middle;
        }
body.pg-trackingemail-ricerca .subject-cell {
            min-width: 220px;
        }
@media (max-width: 575.98px) {
body.pg-trackingemail-ricerca .hero-card, body.pg-trackingemail-ricerca .search-card, body.pg-trackingemail-ricerca .result-card {
                border-radius: .9rem;
            }
body.pg-trackingemail-ricerca .btn-mobile-full {
                width: 100%;
            }
}


/* === VerifyAuthCode.php === */
body.pg-verifyauthcode, body.pg-verifyauthcode {
            min-height: 100%;
        }
body.pg-verifyauthcode {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .10), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-verifyauthcode .page-shell {
            min-height: 100vh;
            padding: 1rem;
        }
body.pg-verifyauthcode .frame-card {
            border: 0;
            border-radius: 1.25rem;
            box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .08);
            overflow: hidden;
            background: #fff;
            height: 100%;
        }
body.pg-verifyauthcode .frame-title {
            padding: .85rem 1rem;
            margin: 0;
            font-size: .95rem;
            font-weight: 800;
            border-bottom: 1px solid #e9ecef;
            background: #fff;
        }
body.pg-verifyauthcode .frame-wrap {
            position: relative;
            width: 100%;
            height: calc(100vh - 110px);
            min-height: 720px;
            background: #fff;
        }
body.pg-verifyauthcode iframe {
            width: 100%;
            height: 100%;
            border: 0;
            display: block;
            background: #fff;
        }
body.pg-verifyauthcode .auth-steps {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: .75rem;
            margin-bottom: 1rem;
        }
body.pg-verifyauthcode .auth-step {
            border: 1px solid #dee2e6;
            background: #fff;
            border-radius: 1rem;
            padding: .8rem .7rem;
            display: flex;
            align-items: center;
            gap: .65rem;
            color: #6c757d;
            font-weight: 700;
            min-height: 64px;
        }
body.pg-verifyauthcode .auth-step-number {
            width: 32px;
            height: 32px;
            border-radius: 50%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #f1f3f5;
            color: #6c757d;
            flex: 0 0 32px;
            font-weight: 800;
        }
body.pg-verifyauthcode .auth-step small {
            display: block;
            font-weight: 600;
            line-height: 1.2;
        }
body.pg-verifyauthcode .auth-step.is-active {
            border-color: #0d6efd;
            box-shadow: 0 .5rem 1.25rem rgba(13, 110, 253, .16);
            color: #212529;
        }
body.pg-verifyauthcode .auth-step.is-active .auth-step-number, body.pg-verifyauthcode .auth-step.is-complete .auth-step-number {
            background: #0d6efd;
            color: #fff;
        }
body.pg-verifyauthcode .auth-step.is-complete {
            border-color: rgba(25, 135, 84, .25);
            color: #198754;
        }
@media (max-width: 767.98px) {
body.pg-verifyauthcode .auth-steps {
                grid-template-columns: 1fr;
            }
body.pg-verifyauthcode .auth-step {
                min-height: auto;
            }
}
@media (min-width: 992px) {
body.pg-verifyauthcode .col-stage {
                flex: 0 0 28%;
                max-width: 28%;
            }
body.pg-verifyauthcode .col-auth {
                flex: 0 0 72%;
                max-width: 72%;
            }
}
@media (max-width: 991.98px) {
body.pg-verifyauthcode .frame-wrap {
                height: 70vh;
                min-height: 560px;
            }
}
@media (max-width: 575.98px) {
body.pg-verifyauthcode .page-shell {
                padding: .75rem;
            }
body.pg-verifyauthcode .frame-title {
                font-size: .9rem;
                text-align: center;
            }
body.pg-verifyauthcode .frame-wrap {
                height: 75vh;
                min-height: 520px;
            }
}


/* === VerifyRegistrationOtp.php === */
body.pg-verifyregistrationotp, body.pg-verifyregistrationotp { min-height: 100%; }
body.pg-verifyregistrationotp {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(255, 193, 7, .18), transparent 30%),
                linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%);
            color: #212529;
        }
body.pg-verifyregistrationotp .page-shell { min-height: 100vh; padding: 1.25rem; }
body.pg-verifyregistrationotp .registration-card {
            max-width: 980px;
            margin: 0 auto;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-verifyregistrationotp .registration-card .card-body { padding: 2rem; }
body.pg-verifyregistrationotp .brand-logo { width: 150px; max-width: 100%; height: auto; border-radius: 1rem; }
body.pg-verifyregistrationotp .page-title { font-weight: 800; letter-spacing: -.03em; line-height: 1.15; margin-bottom: 1rem; }
body.pg-verifyregistrationotp .intro-text { color: #5f6872; font-size: 1.05rem; line-height: 1.65; }
body.pg-verifyregistrationotp .form-label { font-weight: 700; }
body.pg-verifyregistrationotp .form-control { min-height: 46px; border-radius: .85rem; }
body.pg-verifyregistrationotp .input-group-text { border-radius: .85rem 0 0 .85rem; font-weight: 700; min-width: 48px; justify-content: center; }
body.pg-verifyregistrationotp .btn { min-height: 48px; border-radius: .95rem; font-weight: 700; }
body.pg-verifyregistrationotp .required-note { color: #6c757d; font-size: .9rem; }
body.pg-verifyregistrationotp .registration-steps { display: grid; grid-template-columns: repeat(6, 1fr); gap: .75rem; margin-bottom: 1.5rem; }
body.pg-verifyregistrationotp .registration-step { border: 1px solid #dee2e6; background: #fff; border-radius: 1rem; padding: .8rem .7rem; text-align: left; display: flex; align-items: center; gap: .65rem; color: #6c757d; font-weight: 700; min-height: 64px; }
body.pg-verifyregistrationotp .registration-step-number { width: 32px; height: 32px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #f1f3f5; color: #6c757d; flex: 0 0 32px; }
body.pg-verifyregistrationotp .registration-step small { display: block; font-weight: 600; color: #8a939b; line-height: 1.2; }
body.pg-verifyregistrationotp .registration-step.is-active { border-color: #ffc107; box-shadow: 0 .5rem 1.5rem rgba(255, 193, 7, .18); color: #212529; }
body.pg-verifyregistrationotp .registration-step.is-active .registration-step-number, body.pg-verifyregistrationotp .registration-step.is-complete .registration-step-number { background: #ffc107; color: #212529; }
body.pg-verifyregistrationotp .registration-step.is-complete { border-color: rgba(25, 135, 84, .35); }
body.pg-verifyregistrationotp .step-actions { display: flex; justify-content: space-between; gap: .75rem; margin-top: 1rem; }
body.pg-verifyregistrationotp .step-actions .btn { min-width: 150px; }
@media (max-width: 767.98px) {
body.pg-verifyregistrationotp .page-shell { padding: 1rem; }
body.pg-verifyregistrationotp .registration-card .card-body { padding: 1.4rem; }
body.pg-verifyregistrationotp .brand-logo { width: 120px; margin-bottom: 1rem; }
body.pg-verifyregistrationotp .page-title { font-size: 1.7rem; text-align: center; }
body.pg-verifyregistrationotp .intro-text { font-size: 1rem; text-align: center; }
body.pg-verifyregistrationotp .registration-steps { grid-template-columns: 1fr; gap: .55rem; }
body.pg-verifyregistrationotp .registration-step { min-height: auto; padding: .65rem .75rem; }
body.pg-verifyregistrationotp .registration-step small { display: inline; margin-left: .35rem; }
body.pg-verifyregistrationotp .step-actions { flex-direction: column-reverse; }
body.pg-verifyregistrationotp .step-actions .btn { width: 100%; }
}


/* === camera.php === */
body.pg-camera, body.pg-camera {
            min-height: 100%;
        }
body.pg-camera {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-camera .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1.25rem;
        }
body.pg-camera .scanner-card {
            width: 100%;
            max-width: 760px;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-camera .scanner-card .card-body {
            padding: 2rem;
        }
body.pg-camera .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            line-height: 1.15;
        }
body.pg-camera .intro-text {
            color: #6c757d;
        }
body.pg-camera .preview-wrap {
            position: relative;
            width: 100%;
            max-width: 560px;
            margin: 0 auto;
            border-radius: 1.25rem;
            overflow: hidden;
            background: #111;
            box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
        }
body.pg-camera #preview {
            width: 100%;
            aspect-ratio: 4 / 3;
            object-fit: cover;
            display: block;
            background: #111;
        }
body.pg-camera .scan-frame {
            position: absolute;
            inset: 12%;
            border: 3px solid rgba(255, 255, 255, .85);
            border-radius: 1rem;
            pointer-events: none;
            box-shadow: 0 0 0 999px rgba(0, 0, 0, .18);
        }
body.pg-camera .camera-options {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: .75rem;
        }
body.pg-camera .camera-option {
            border: 1px solid #dee2e6;
            border-radius: 1rem;
            padding: .9rem;
            background: #fff;
            cursor: pointer;
            font-weight: 700;
            text-align: center;
            transition: border-color .15s ease, box-shadow .15s ease;
        }
body.pg-camera .camera-option:hover {
            border-color: #0d6efd;
            box-shadow: 0 .5rem 1.2rem rgba(0, 0, 0, .06);
        }
body.pg-camera .camera-option input {
            margin-right: .35rem;
        }
body.pg-camera .status-box {
            border-radius: 1rem;
            background: rgba(13, 110, 253, .08);
            color: #0d6efd;
            padding: .85rem 1rem;
            font-weight: 700;
        }
@media (max-width: 767.98px) {
body.pg-camera .page-shell {
                align-items: flex-start;
                padding: 1rem;
            }
body.pg-camera .scanner-card .card-body {
                padding: 1.4rem;
            }
body.pg-camera .page-title {
                font-size: 1.65rem;
                text-align: center;
            }
body.pg-camera .intro-text {
                text-align: center;
            }
body.pg-camera .camera-options {
                grid-template-columns: 1fr;
            }
body.pg-camera #preview {
                aspect-ratio: 3 / 4;
            }
}
@media (max-width: 360px) {
body.pg-camera .scanner-card .card-body {
                padding: 1.1rem;
            }
body.pg-camera .page-title {
                font-size: 1.45rem;
            }
}


/* === emailvalidation/test_email_validation.php === */
body.pg-emailvalidation-test_email_validation {
            overflow-y: scroll;
        }
body.pg-emailvalidation-test_email_validation {
            min-height: 100vh;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 32%),
                linear-gradient(135deg, #f8fbff 0%, #eef3f8 100%);
            color: #212529;
        }
body.pg-emailvalidation-test_email_validation .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1rem;
        }
body.pg-emailvalidation-test_email_validation .validation-card {
            width: 100%;
            max-width: 760px;
            border: 0;
            border-radius: 1.35rem;
            box-shadow: 0 1rem 3rem rgba(15, 23, 42, .10);
            overflow: hidden;
            background: #fff;
        }
body.pg-emailvalidation-test_email_validation .card-header-custom {
            padding: 1.25rem;
            border-bottom: 1px solid #e9ecef;
            background: linear-gradient(135deg, #fff 0%, #f6f9ff 100%);
        }
body.pg-emailvalidation-test_email_validation .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            margin: 0;
        }
body.pg-emailvalidation-test_email_validation .intro-text {
            color: #5f6b7a;
            line-height: 1.6;
        }
body.pg-emailvalidation-test_email_validation .form-control, body.pg-emailvalidation-test_email_validation .btn {
            min-height: 48px;
            border-radius: .85rem;
        }
body.pg-emailvalidation-test_email_validation .btn {
            font-weight: 800;
        }
body.pg-emailvalidation-test_email_validation .result-box {
            border-radius: 1rem;
            padding: 1rem;
            overflow-wrap: anywhere;
        }
body.pg-emailvalidation-test_email_validation .debug-box {
            max-height: 360px;
            overflow-y: auto;
            border-radius: 1rem;
            background: #111827;
            color: #f8f9fa;
            padding: 1rem;
            font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
            font-size: .9rem;
            scrollbar-gutter: stable;
        }
body.pg-emailvalidation-test_email_validation code, body.pg-emailvalidation-test_email_validation tt {
            color: inherit;
            overflow-wrap: anywhere;
        }
@media (max-width: 575.98px) {
body.pg-emailvalidation-test_email_validation .page-shell {
                align-items: flex-start;
                padding: .5rem;
            }
body.pg-emailvalidation-test_email_validation .card-header-custom, body.pg-emailvalidation-test_email_validation .card-body {
                padding: 1rem !important;
            }
body.pg-emailvalidation-test_email_validation .page-title {
                font-size: 1.35rem;
                text-align: center;
            }
body.pg-emailvalidation-test_email_validation .intro-text {
                text-align: center;
                font-size: .95rem;
            }
body.pg-emailvalidation-test_email_validation .btn {
                width: 100%;
            }
}


/* === gps/ricerca.php === */
body.pg-gps-ricerca {
            overflow-y: scroll;
        }
body.pg-gps-ricerca {
            min-height: 100vh;
            background:
                radial-gradient(circle at top left, rgba(25, 135, 84, .12), transparent 32%),
                linear-gradient(135deg, #f8fbff 0%, #eef3f8 100%);
            color: #212529;
        }
body.pg-gps-ricerca .page-shell {
            padding: 1rem;
        }
body.pg-gps-ricerca .main-card, body.pg-gps-ricerca .map-card {
            border: 0;
            border-radius: 1.35rem;
            box-shadow: 0 1rem 3rem rgba(15, 23, 42, .10);
            overflow: hidden;
            background: #fff;
        }
body.pg-gps-ricerca .page-header {
            padding: 1.25rem;
            border-bottom: 1px solid #e9ecef;
            background: linear-gradient(135deg, #fff 0%, #f4fff8 100%);
        }
body.pg-gps-ricerca .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            margin: 0;
        }
body.pg-gps-ricerca .form-control, body.pg-gps-ricerca .btn {
            min-height: 46px;
            border-radius: .85rem;
        }
body.pg-gps-ricerca .btn {
            font-weight: 800;
        }
body.pg-gps-ricerca .table-responsive {
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }
body.pg-gps-ricerca .table td, body.pg-gps-ricerca .table th {
            vertical-align: middle;
            white-space: nowrap;
        }
body.pg-gps-ricerca .map-frame {
            width: 100%;
            min-height: 420px;
            height: 60vh;
            border: 0;
            display: block;
            background: #f8f9fa;
        }
body.pg-gps-ricerca .scroll-table {
            max-height: 55vh;
            overflow-y: auto;
            scrollbar-gutter: stable;
        }
@media (max-width: 575.98px) {
body.pg-gps-ricerca .page-shell {
                padding: .5rem;
            }
body.pg-gps-ricerca .page-header, body.pg-gps-ricerca .card-body {
                padding: 1rem !important;
            }
body.pg-gps-ricerca .page-title {
                font-size: 1.25rem;
                text-align: center;
            }
body.pg-gps-ricerca .btn {
                width: 100%;
            }
body.pg-gps-ricerca .map-frame {
                min-height: 320px;
                height: 50vh;
            }
}


/* === gps/ricerca_esercenti.php === */
body.pg-gps-ricerca_esercenti {
            overflow-y: scroll;
        }
body.pg-gps-ricerca_esercenti {
            min-height: 100vh;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .10), transparent 32%),
                linear-gradient(135deg, #f8fbff 0%, #eef3f8 100%);
            color: #212529;
        }
body.pg-gps-ricerca_esercenti .page-shell {
            padding: 1rem;
        }
body.pg-gps-ricerca_esercenti .main-card {
            border: 0;
            border-radius: 1.35rem;
            box-shadow: 0 1rem 3rem rgba(15, 23, 42, .10);
            overflow: hidden;
            background: #fff;
        }
body.pg-gps-ricerca_esercenti .page-header {
            padding: 1.25rem;
            border-bottom: 1px solid #e9ecef;
            background: linear-gradient(135deg, #fff 0%, #f6f9ff 100%);
        }
body.pg-gps-ricerca_esercenti .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            margin: 0;
        }
body.pg-gps-ricerca_esercenti .table-zone {
            padding: 1rem;
        }
body.pg-gps-ricerca_esercenti .table-responsive {
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
        }
body.pg-gps-ricerca_esercenti table.dataTable {
            width: 100% !important;
        }
body.pg-gps-ricerca_esercenti .table td, body.pg-gps-ricerca_esercenti .table th {
            vertical-align: middle;
            white-space: nowrap;
        }
body.pg-gps-ricerca_esercenti .btn {
            border-radius: .75rem;
            font-weight: 700;
        }
body.pg-gps-ricerca_esercenti .modal-content {
            border: 0;
            border-radius: 1.15rem;
            box-shadow: 0 1rem 3rem rgba(15, 23, 42, .18);
        }
body.pg-gps-ricerca_esercenti .modal-header, body.pg-gps-ricerca_esercenti .modal-footer {
            border-color: #edf0f3;
        }
@media (max-width: 575.98px) {
body.pg-gps-ricerca_esercenti .page-shell {
                padding: .5rem;
            }
body.pg-gps-ricerca_esercenti .page-header, body.pg-gps-ricerca_esercenti .table-zone {
                padding: .75rem;
            }
body.pg-gps-ricerca_esercenti .page-title {
                font-size: 1.2rem;
                text-align: center;
            }
body.pg-gps-ricerca_esercenti .btn {
                width: 100%;
            }
}


/* === index.php === */
body.pg-index, body.pg-index {
            min-height: 100%;
        }
body.pg-index {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-index .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1.25rem;
        }
body.pg-index .welcome-card {
            width: 100%;
            max-width: 760px;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-index .welcome-card .card-body {
            padding: 2.5rem;
        }
body.pg-index .welcome-badge {
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            border-radius: 999px;
            padding: .45rem .85rem;
            background: rgba(13, 110, 253, .1);
            color: #0d6efd;
            font-size: .9rem;
            font-weight: 700;
            margin-bottom: 1rem;
        }
body.pg-index .welcome-title {
            font-weight: 800;
            letter-spacing: -.03em;
            line-height: 1.15;
        }
body.pg-index .welcome-title b {
            color: #0d6efd;
        }
body.pg-index .welcome-text {
            max-width: 620px;
            margin: 1rem auto 2rem;
            color: #6c757d;
            font-size: 1.08rem;
        }
body.pg-index .actions {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: .85rem;
            max-width: 520px;
            margin: 0 auto;
        }
body.pg-index .btn {
            min-height: 48px;
            border-radius: .95rem;
            font-weight: 700;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            white-space: normal;
        }
@media (max-width: 575.98px) {
body.pg-index .page-shell {
                align-items: flex-start;
                padding: 1rem;
            }
body.pg-index .welcome-card .card-body {
                padding: 1.5rem;
            }
body.pg-index .welcome-title {
                font-size: 1.75rem;
            }
body.pg-index .welcome-text {
                font-size: 1rem;
                margin-bottom: 1.5rem;
            }
body.pg-index .actions {
                grid-template-columns: 1fr;
            }
body.pg-index .btn {
                width: 100%;
            }
}
@media (max-width: 360px) {
body.pg-index .welcome-card .card-body {
                padding: 1.25rem;
            }
body.pg-index .welcome-title {
                font-size: 1.55rem;
            }
}


/* === menu-tessere-body.php === */
body.pg-menu-tessere-body, body.pg-menu-tessere-body {
            min-height: 100%;
        }
body.pg-menu-tessere-body {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background: #f8fbff;
            color: #212529;
        }
body.pg-menu-tessere-body .page-shell {
            padding: 1rem;
        }
body.pg-menu-tessere-body .member-card, body.pg-menu-tessere-body .action-card {
            border: 0;
            border-radius: 1.15rem;
            box-shadow: 0 .6rem 1.8rem rgba(0, 0, 0, .07);
            background: #fff;
            overflow-y: scroll !important; overflow-x: hidden !important;
        }
body.pg-menu-tessere-body .member-photo {
            width: 92px;
            height: 92px;
            object-fit: cover;
            border-radius: 1rem;
            border: 1px solid #dee2e6;
            background: #fff;
        }
body.pg-menu-tessere-body .member-title {
            font-weight: 800;
            line-height: 1.2;
            margin-bottom: .35rem;
        }
body.pg-menu-tessere-body .member-meta {
            color: #6c757d;
            margin-bottom: 0;
            font-size: .95rem;
        }
body.pg-menu-tessere-body .actions-grid {
            display: grid;
            grid-template-columns: 1fr;
            gap: .85rem;
        }
body.pg-menu-tessere-body .action-card {
            padding: 1rem;
        }
body.pg-menu-tessere-body .action-card:hover {
            background: #fffdf2;
        }
body.pg-menu-tessere-body .action-title {
            font-weight: 800;
            margin-bottom: .25rem;
        }
body.pg-menu-tessere-body .action-desc {
            margin: 0;
            color: #6c757d;
            font-size: .92rem;
            line-height: 1.45;
        }
body.pg-menu-tessere-body .btn {
            min-height: 42px;
            border-radius: .8rem;
            font-weight: 700;
            white-space: normal;
        }
body.pg-menu-tessere-body .form-control, body.pg-menu-tessere-body .form-select {
            min-height: 42px;
            border-radius: .8rem;
        }
body.pg-menu-tessere-body .inline-form {
            display: flex;
            gap: .5rem;
            flex-wrap: wrap;
            align-items: center;
        }
body.pg-menu-tessere-body .inline-form .form-control, body.pg-menu-tessere-body .inline-form .form-select {
            flex: 1 1 190px;
        }
@media (min-width: 768px) {
body.pg-menu-tessere-body .action-card-inner {
                display: grid;
                grid-template-columns: minmax(190px, 260px) 1fr;
                gap: 1rem;
                align-items: center;
            }
}
@media (max-width: 575.98px) {
body.pg-menu-tessere-body .page-shell {
                padding: .75rem;
            }
body.pg-menu-tessere-body .member-card .card-body {
                text-align: center;
            }
body.pg-menu-tessere-body .member-photo {
                margin-bottom: .75rem;
            }
body.pg-menu-tessere-body .btn, body.pg-menu-tessere-body .inline-form .form-control, body.pg-menu-tessere-body .inline-form .form-select {
                width: 100%;
            }
body.pg-menu-tessere-body .inline-form {
                display: grid;
                grid-template-columns: 1fr;
            }
}
/* === Scrollbar verticale forzata e sempre visibile === */
body.pg-menu-tessere-body, body.pg-menu-tessere-body {
    width: 100%;
    height: 100%;
    min-height: 100%;
    margin: 0;
    overflow-y: scroll !important; overflow-x: hidden !important;
}
body.pg-menu-tessere-body .force-scroll-page {
    height: 100vh;
    min-height: 100vh;
    overflow-y: scroll !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-gutter: stable both-edges;
    padding-right: 2px;
}
/* Firefox */
body.pg-menu-tessere-body .force-scroll-page {
    scrollbar-width: auto;
    scrollbar-color: #6c757d #f1f3f5;
}
/* Chrome / Edge / Safari */
body.pg-menu-tessere-body .force-scroll-page::-webkit-scrollbar {
    width: 14px;
}
body.pg-menu-tessere-body .force-scroll-page::-webkit-scrollbar-track {
    background: #f1f3f5;
}
body.pg-menu-tessere-body .force-scroll-page::-webkit-scrollbar-thumb {
    background-color: #6c757d;
    border-radius: 999px;
    border: 3px solid #f1f3f5;
}
body.pg-menu-tessere-body .force-scroll-page::-webkit-scrollbar-thumb:hover {
    background-color: #495057;
}
/* Anche tabelle/liste interne scrollabili */
body.pg-menu-tessere-body .table-responsive, body.pg-menu-tessere-body .scroll-table-container, body.pg-menu-tessere-body .list-scroll-container {
    max-height: 75vh;
    overflow-y: scroll !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}


/* === menu-tessere.php === */
body.pg-menu-tessere, body.pg-menu-tessere {
            min-height: 100%;
        }
body.pg-menu-tessere {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .10), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-menu-tessere .page-shell {
            padding: 1rem;
        }
body.pg-menu-tessere .frame-card {
            border: 0;
            border-radius: 1.25rem;
            box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .08);
            overflow: hidden;
            background: #fff;
            height: 100%;
        }
body.pg-menu-tessere .frame-title {
            padding: .85rem 1rem;
            margin: 0;
            font-size: .95rem;
            font-weight: 800;
            border-bottom: 1px solid #e9ecef;
            background: #fff;
        }
body.pg-menu-tessere .frame-wrap {
            position: relative;
            width: 100%;
            background: #fff;
        }
body.pg-menu-tessere .frame-stage {
            height: 650px;
        }
body.pg-menu-tessere .frame-body {
            height: 710px;
        }
body.pg-menu-tessere .frame-notes {
            height: 685px;
        }
body.pg-menu-tessere iframe {
            width: 100%;
            height: 100%;
            border: 0;
            display: block;
            background: #fff;
        }
@media (min-width: 1200px) {
body.pg-menu-tessere .col-stage {
                flex: 0 0 18%;
                max-width: 18%;
            }
body.pg-menu-tessere .col-body {
                flex: 0 0 39%;
                max-width: 39%;
            }
body.pg-menu-tessere .col-notes {
                flex: 0 0 43%;
                max-width: 43%;
            }
}
@media (max-width: 1199.98px) {
body.pg-menu-tessere .frame-stage, body.pg-menu-tessere .frame-body, body.pg-menu-tessere .frame-notes {
                height: 70vh;
                min-height: 560px;
            }
}
@media (max-width: 575.98px) {
body.pg-menu-tessere .page-shell {
                padding: .75rem;
            }
body.pg-menu-tessere .frame-title {
                font-size: .9rem;
                text-align: center;
            }
body.pg-menu-tessere .frame-stage, body.pg-menu-tessere .frame-body, body.pg-menu-tessere .frame-notes {
                height: 75vh;
                min-height: 520px;
            }
}


/* === menu.php === */
body.pg-menu, body.pg-menu {
            min-height: 100%;
        }
body.pg-menu {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-menu .page-shell {
            min-height: 100vh;
            padding: 1rem;
        }
body.pg-menu .menu-card {
            border: 0;
            border-radius: 1.35rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .08);
            overflow: hidden;
        }
body.pg-menu .menu-header {
            padding: 1.25rem;
            border-bottom: 1px solid #e9ecef;
            background: #fff;
        }
body.pg-menu .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            margin: 0;
        }
body.pg-menu .toolbar {
            padding: 1.25rem;
            background: #fff;
        }
body.pg-menu .toolbar-grid {
            display: grid;
            grid-template-columns: repeat(7, minmax(150px, 1fr));
            gap: .75rem;
            align-items: end;
        }
body.pg-menu .toolbar-label {
            font-size: .85rem;
            font-weight: 700;
            color: #6c757d;
            margin-bottom: .35rem;
        }
body.pg-menu .btn, body.pg-menu .form-select {
            min-height: 46px;
            border-radius: .85rem;
            font-weight: 700;
        }
body.pg-menu .btn-action {
            position: relative;
            border: 0;
            border-radius: .9rem;
            padding: .72rem 1rem;
            letter-spacing: .01em;
            box-shadow: 0 .65rem 1.35rem rgba(15, 23, 42, .12);
            transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
        }
body.pg-menu .btn-action:hover {
            transform: translateY(-2px);
            box-shadow: 0 .85rem 1.8rem rgba(15, 23, 42, .16);
            filter: brightness(1.02);
        }
body.pg-menu .btn-action:active {
            transform: translateY(0);
            box-shadow: 0 .45rem 1rem rgba(15, 23, 42, .14);
        }
body.pg-menu .btn-create {
            background: linear-gradient(135deg, #0d6efd, #0a58ca);
            color: #fff;
        }
body.pg-menu .btn-transactions {
            background: linear-gradient(135deg, #f59f00, #e67700);
            color: #fff;
        }
body.pg-menu .btn-merchants {
            background: linear-gradient(135deg, #198754, #146c43);
            color: #fff;
        }
body.pg-menu .btn-password {
            background: linear-gradient(135deg, #495057, #343a40);
            color: #fff;
        }
body.pg-menu .btn-logout {
            background: linear-gradient(135deg, #dc3545, #b02a37);
            color: #fff;
        }
body.pg-menu .btn-create:hover, body.pg-menu .btn-transactions:hover, body.pg-menu .btn-merchants:hover, body.pg-menu .btn-password:hover, body.pg-menu .btn-logout:hover {
            color: #fff;
        }
body.pg-menu .iframe-panel {
            margin-top: 1rem;
            border: 0;
            border-radius: 1.35rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .08);
            overflow: hidden;
            background: #fff;
        }
body.pg-menu .iframe-container {
            position: relative;
            width: 100%;
            min-height: 70vh;
            height: calc(100vh - 230px);
        }
body.pg-menu .responsive-iframe {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            border: 0;
            background: #fff;
        }
@media (max-width: 1399.98px) {
body.pg-menu .toolbar-grid {
                grid-template-columns: repeat(4, minmax(160px, 1fr));
            }
}
@media (max-width: 991.98px) {
body.pg-menu .toolbar-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
body.pg-menu .iframe-container {
                height: 70vh;
            }
}
@media (max-width: 575.98px) {
body.pg-menu .page-shell {
                padding: .75rem;
            }
body.pg-menu .menu-header, body.pg-menu .toolbar {
                padding: 1rem;
            }
body.pg-menu .page-title {
                font-size: 1.45rem;
                text-align: center;
            }
body.pg-menu .toolbar-grid {
                grid-template-columns: 1fr;
            }
body.pg-menu .btn, body.pg-menu .form-select {
                width: 100%;
            }
body.pg-menu .iframe-container {
                height: 68vh;
                min-height: 520px;
            }
}


/* === moduli/index.php === */
body.pg-moduli-index, body.pg-moduli-index {
        min-height: 100%;
    }
body.pg-moduli-index {
        margin: 0;
        font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        background:
            radial-gradient(circle at top left, rgba(13, 110, 253, .12), transparent 30%),
            linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
        color: #212529;
    }
body.pg-moduli-index p {
        text-transform: uppercase;
        margin-bottom: 0;
    }
body.pg-moduli-index .page-shell {
        padding: 1rem;
    }
body.pg-moduli-index .table-card {
        border: 0;
        border-radius: 1.35rem;
        box-shadow: 0 1rem 3rem rgba(0, 0, 0, .08);
        overflow: hidden;
    }
body.pg-moduli-index .table-card .card-body {
        padding: 1.25rem;
    }
body.pg-moduli-index .page-title {
        font-weight: 800;
        letter-spacing: -.03em;
        margin: 0;
    }
body.pg-moduli-index .page-subtitle {
        color: #6c757d;
        margin: .35rem 0 0;
    }
body.pg-moduli-index .table-responsive {
        border-radius: 1rem;
    }
body.pg-moduli-index table.dataTable {
        width: 100% !important;
    }
body.pg-moduli-index #myTable thead th {
        white-space: nowrap;
        vertical-align: middle;
        font-size: .88rem;
    }
body.pg-moduli-index #myTable tbody td {
        vertical-align: middle;
        font-size: .9rem;
    }
body.pg-moduli-index .action-buttons {
        display: flex;
        gap: .4rem;
        flex-wrap: wrap;
    }
body.pg-moduli-index .btn {
        border-radius: .75rem;
        font-weight: 700;
    }
body.pg-moduli-index .btn-sm {
        padding: .45rem .65rem;
    }
body.pg-moduli-index .height10 {
        height: 10px;
    }
body.pg-moduli-index .mtop10 {
        margin-top: 10px;
    }
body.pg-moduli-index .modal-label {
        position: relative;
        top: 7px;
    }
body.pg-moduli-index [id^="paymentBlink"] {
        animation-name: blink;
        animation-duration: 1s;
        animation-iteration-count: infinite;
    }
body.pg-moduli-index [id^="paymentBlink"]:nth-of-type(2n) {
        animation-delay: 0.1s;
    }
body.pg-moduli-index [id^="paymentBlink"]:nth-of-type(2n+1) {
        animation-delay: 0.2s;
    }
@keyframes blink {
        0% { opacity: 1.0; color: red; font-weight: bold; }
        50% { opacity: 0.0; }
        100% { opacity: 1.0; color: red; font-weight: bold; }
    }
@media (max-width: 575.98px) {
body.pg-moduli-index .page-shell {
            padding: .75rem;
        }
body.pg-moduli-index .table-card .card-body {
            padding: 1rem;
        }
body.pg-moduli-index .page-title {
            font-size: 1.45rem;
            text-align: center;
        }
body.pg-moduli-index .page-subtitle {
            text-align: center;
            font-size: .95rem;
        }
body.pg-moduli-index .action-buttons {
            display: grid;
            grid-template-columns: 1fr;
        }
body.pg-moduli-index .action-buttons .btn {
            width: 100%;
        }
body.pg-moduli-index .dataTables_wrapper .dataTables_filter, body.pg-moduli-index .dataTables_wrapper .dataTables_length {
            text-align: left !important;
        }
}


/* === notes/create.php === */
body.pg-notes-create, body.pg-notes-create {
            min-height: 100%;
        }
body.pg-notes-create {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(255, 193, 7, .18), transparent 30%),
                linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%);
            color: #212529;
        }
body.pg-notes-create .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1rem;
        }
body.pg-notes-create .note-card {
            width: 100%;
            max-width: 620px;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-notes-create .note-card .card-body {
            padding: 2rem;
        }
body.pg-notes-create .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
        }
body.pg-notes-create .form-label {
            font-weight: 700;
        }
body.pg-notes-create .form-control {
            border-radius: .85rem;
        }
body.pg-notes-create textarea.form-control {
            min-height: 170px;
            resize: vertical;
        }
body.pg-notes-create .color-options {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: .85rem;
        }
body.pg-notes-create .color-option {
            border: 1px solid #dee2e6;
            border-radius: 1rem;
            padding: .75rem;
            background: #fff;
            text-align: center;
            cursor: pointer;
            transition: border-color .15s ease, box-shadow .15s ease;
        }
body.pg-notes-create .color-option:hover {
            border-color: #0d6efd;
            box-shadow: 0 .5rem 1.2rem rgba(0, 0, 0, .06);
        }
body.pg-notes-create .color-swatch {
            width: 100%;
            height: 86px;
            border-radius: .85rem;
            margin-top: .5rem;
        }
body.pg-notes-create .color-yellow {
            background: #FDFB8C;
            border: 1px solid #DEDC65;
        }
body.pg-notes-create .color-green {
            background: #A5F88B;
            border: 1px solid #98E775;
        }
body.pg-notes-create .color-blue {
            background: #A6E3FC;
            border: 1px solid #75C5E7;
        }
body.pg-notes-create .btn {
            min-height: 46px;
            border-radius: .85rem;
            font-weight: 800;
        }
@media (max-width: 575.98px) {
body.pg-notes-create .page-shell {
                align-items: flex-start;
                padding: .75rem;
            }
body.pg-notes-create .note-card .card-body {
                padding: 1.25rem;
            }
body.pg-notes-create .page-title {
                font-size: 1.45rem;
                text-align: center;
            }
body.pg-notes-create .color-options {
                grid-template-columns: 1fr;
            }
body.pg-notes-create .color-swatch {
                height: 70px;
            }
body.pg-notes-create .btn {
                width: 100%;
            }
}


/* === notes/dashboard.php === */
body.pg-notes-dashboard, body.pg-notes-dashboard {
            min-height: 100%;
        }
body.pg-notes-dashboard {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(255, 193, 7, .16), transparent 30%),
                linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%) !important;
            color: #212529;
        }
body.pg-notes-dashboard .page-shell {
            min-height: 100vh;
            padding: 1rem;
        }
body.pg-notes-dashboard .dashboard-card {
            border: 0;
            border-radius: 1.25rem;
            box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .08);
            overflow: hidden;
            background: #fff;
            margin-bottom: 1rem;
        }
body.pg-notes-dashboard .dashboard-card .card-body {
            padding: 1rem;
        }
body.pg-notes-dashboard .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            margin: 0;
        }
body.pg-notes-dashboard .page-subtitle {
            margin: .25rem 0 0;
            color: #6c757d;
            font-size: .95rem;
        }
body.pg-notes-dashboard .btn {
            min-height: 42px;
            border-radius: .85rem;
            font-weight: 800;
        }
body.pg-notes-dashboard .refresh-badge {
            border-radius: 999px;
            background: rgba(13, 110, 253, .1);
            color: #0d6efd;
            padding: .55rem .85rem;
            font-weight: 800;
            display: inline-flex;
            align-items: center;
            gap: .35rem;
            line-height: 1.2;
        }
body.pg-notes-dashboard .notes-area-card {
            border: 0;
            border-radius: 1.25rem;
            box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .08);
            background: rgba(255,255,255,.82);
            overflow: hidden;
        }
body.pg-notes-dashboard #containment-wrapper {
            position: relative !important;
            width: 100% !important;
            min-height: 620px;
            height: calc(100vh - 180px) !important;
            left: auto !important;
            right: auto !important;
            overflow: auto;
            background:
                linear-gradient(rgba(13, 110, 253, .035) 1px, transparent 1px),
                linear-gradient(90deg, rgba(13, 110, 253, .035) 1px, transparent 1px);
            background-size: 24px 24px;
        }
body.pg-notes-dashboard .draggable {
            z-index: 2;
            max-width: min(280px, calc(100vw - 2rem));
        }
body.pg-notes-dashboard .pin {
            max-width: 28px;
            height: auto;
            display: block;
            margin: 0 auto -10px;
            position: relative;
            z-index: 3;
        }
body.pg-notes-dashboard .quote-box {
            border: 0;
            border-radius: 1rem;
            padding: 1rem;
            box-shadow: 0 .6rem 1.4rem rgba(0, 0, 0, .12);
            min-width: 220px;
            max-width: 280px;
            margin: 0;
            overflow-wrap: anywhere;
        }
body.pg-notes-dashboard .quote-text {
            min-height: 45px;
            margin: 0;
        }
body.pg-notes-dashboard .quick {
            width: 100%;
            border-radius: .75rem;
            border: 1px solid #dee2e6;
            padding: .65rem;
            resize: vertical;
            background: rgba(255,255,255,.7);
        }
body.pg-notes-dashboard .blog-post-actions img {
            max-width: 28px;
            height: auto;
            margin: .25rem;
        }
body.pg-notes-dashboard .note-1 {
            background: #FDFB8C;
            border: 1px solid #DEDC65;
        }
body.pg-notes-dashboard .note-2 {
            background: #A5F88B;
            border: 1px solid #98E775;
        }
body.pg-notes-dashboard .note-3 {
            background: #A6E3FC;
            border: 1px solid #75C5E7;
        }
body.pg-notes-dashboard .success_msg {
            position: fixed;
            top: 1rem;
            right: 1rem;
            z-index: 1080;
            border-radius: .85rem;
            padding: .85rem 1rem;
            background: #198754;
            color: #fff;
            font-weight: 800;
            box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .12);
        }
@media (max-width: 767.98px) {
body.pg-notes-dashboard .page-shell {
                padding: .75rem;
            }
body.pg-notes-dashboard .dashboard-card .card-body {
                padding: .9rem;
            }
body.pg-notes-dashboard .page-title {
                font-size: 1.35rem;
                text-align: center;
            }
body.pg-notes-dashboard .page-subtitle {
                text-align: center;
            }
body.pg-notes-dashboard .toolbar-actions {
                display: grid !important;
                grid-template-columns: 1fr;
                width: 100%;
            }
body.pg-notes-dashboard .toolbar-actions .btn, body.pg-notes-dashboard .toolbar-actions .refresh-badge {
                width: 100%;
                justify-content: center;
            }
body.pg-notes-dashboard #containment-wrapper {
                min-height: 560px;
                height: 72vh !important;
            }
body.pg-notes-dashboard .draggable {
                position: relative !important;
                left: auto !important;
                top: auto !important;
                margin: .75rem auto;
            }
body.pg-notes-dashboard .quote-box {
                width: 100%;
                max-width: 100%;
            }
}


/* === notes/index.php === */
body.pg-notes-index, body.pg-notes-index {
            min-height: 100%;
        }
body.pg-notes-index {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(255, 193, 7, .15), transparent 30%),
                linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%);
            color: #212529;
        }
body.pg-notes-index .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1.25rem;
        }
body.pg-notes-index .notes-card {
            width: 100%;
            max-width: 980px;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
            background: #fff;
        }
body.pg-notes-index .notes-card .card-body {
            padding: 2rem;
        }
body.pg-notes-index .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            line-height: 1.15;
        }
body.pg-notes-index .page-subtitle {
            color: #6c757d;
            margin-bottom: 0;
        }
body.pg-notes-index .nav-tabs {
            border-bottom: 1px solid #dee2e6;
        }
body.pg-notes-index .nav-tabs .nav-link {
            border-radius: .85rem .85rem 0 0;
            font-weight: 700;
            color: #495057;
        }
body.pg-notes-index .nav-tabs .nav-link.active {
            color: #0d6efd;
            font-weight: 800;
        }
body.pg-notes-index .form-label {
            font-weight: 700;
        }
body.pg-notes-index .form-control, body.pg-notes-index .form-select {
            min-height: 46px;
            border-radius: .85rem;
        }
body.pg-notes-index .btn {
            min-height: 44px;
            border-radius: .85rem;
            font-weight: 700;
        }
body.pg-notes-index .demo-card {
            border: 1px solid #dee2e6;
            border-radius: 1.15rem;
            background: rgba(13, 110, 253, .06);
            padding: 1.25rem;
            height: 100%;
        }
body.pg-notes-index .demo-card-title {
            font-weight: 800;
            margin-bottom: .5rem;
        }
body.pg-notes-index .demo-card p {
            margin-bottom: .35rem;
        }
body.pg-notes-index .success_msg {
            position: fixed;
            top: 1rem;
            right: 1rem;
            z-index: 1080;
            border-radius: .85rem;
            padding: .85rem 1rem;
            background: #198754;
            color: #fff;
            font-weight: 800;
            box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .12);
        }
@media (max-width: 767.98px) {
body.pg-notes-index .page-shell {
                align-items: flex-start;
                padding: 1rem;
            }
body.pg-notes-index .notes-card .card-body {
                padding: 1.4rem;
            }
body.pg-notes-index .page-title {
                font-size: 1.65rem;
                text-align: center;
            }
body.pg-notes-index .page-subtitle {
                text-align: center;
            }
body.pg-notes-index .btn {
                width: 100%;
            }
}
@media (max-width: 360px) {
body.pg-notes-index .notes-card .card-body {
                padding: 1.1rem;
            }
body.pg-notes-index .page-title {
                font-size: 1.45rem;
            }
}


/* === notes/update.php === */
body.pg-notes-update, body.pg-notes-update {
            min-height: 100%;
        }
body.pg-notes-update {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(255, 193, 7, .18), transparent 30%),
                linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%);
            color: #212529;
        }
body.pg-notes-update .page-shell {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 1rem;
        }
body.pg-notes-update .note-card {
            width: 100%;
            max-width: 620px;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-notes-update .note-card .card-body {
            padding: 2rem;
        }
body.pg-notes-update .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
        }
body.pg-notes-update .form-label {
            font-weight: 700;
        }
body.pg-notes-update .form-control {
            border-radius: .85rem;
        }
body.pg-notes-update textarea.form-control {
            min-height: 170px;
            resize: vertical;
        }
body.pg-notes-update .color-options {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: .85rem;
        }
body.pg-notes-update .color-option {
            border: 1px solid #dee2e6;
            border-radius: 1rem;
            padding: .75rem;
            background: #fff;
            text-align: center;
            cursor: pointer;
            transition: border-color .15s ease, box-shadow .15s ease;
        }
body.pg-notes-update .color-option:hover {
            border-color: #0d6efd;
            box-shadow: 0 .5rem 1.2rem rgba(0, 0, 0, .06);
        }
body.pg-notes-update .color-swatch {
            width: 100%;
            height: 86px;
            border-radius: .85rem;
            margin-top: .5rem;
        }
body.pg-notes-update .color-yellow {
            background: #FDFB8C;
            border: 1px solid #DEDC65;
        }
body.pg-notes-update .color-green {
            background: #A5F88B;
            border: 1px solid #98E775;
        }
body.pg-notes-update .color-blue {
            background: #A6E3FC;
            border: 1px solid #75C5E7;
        }
body.pg-notes-update .btn {
            min-height: 46px;
            border-radius: .85rem;
            font-weight: 800;
        }
@media (max-width: 575.98px) {
body.pg-notes-update .page-shell {
                align-items: flex-start;
                padding: .75rem;
            }
body.pg-notes-update .note-card .card-body {
                padding: 1.25rem;
            }
body.pg-notes-update .page-title {
                font-size: 1.45rem;
                text-align: center;
            }
body.pg-notes-update .color-options {
                grid-template-columns: 1fr;
            }
body.pg-notes-update .color-swatch {
                height: 70px;
            }
body.pg-notes-update .btn {
                width: 100%;
            }
}


/* === pagamento.php === */
body.pg-pagamento, body.pg-pagamento {
        min-height: 100%;
    }
body.pg-pagamento {
        margin: 0;
        font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        background:
            radial-gradient(circle at top left, rgba(255, 193, 7, .18), transparent 30%),
            linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%);
        color: #212529;
    }
body.pg-pagamento .page-shell {
        min-height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 1.25rem;
    }
body.pg-pagamento .payment-card {
        width: 100%;
        max-width: 900px;
        border: 0;
        border-radius: 1.5rem;
        box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
        overflow: hidden;
    }
body.pg-pagamento .payment-card .card-body {
        padding: 2rem;
    }
body.pg-pagamento .brand-logo {
        width: 180px;
        max-width: 100%;
        height: auto;
        border-radius: 1rem;
    }
body.pg-pagamento .page-title {
        font-weight: 800;
        letter-spacing: -.03em;
        line-height: 1.15;
    }
body.pg-pagamento .intro-text {
        color: #5f6872;
        line-height: 1.65;
        font-size: 1.05rem;
    }
body.pg-pagamento .payment-option {
        border: 1px solid #dee2e6;
        border-radius: 1rem;
        padding: 1rem;
        background: #fff;
        cursor: pointer;
        transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
    }
body.pg-pagamento .payment-option:hover {
        border-color: #ffc107;
        box-shadow: 0 .5rem 1.2rem rgba(0, 0, 0, .06);
        transform: translateY(-1px);
    }
body.pg-pagamento .payment-option .form-check-input {
        margin-top: .25rem;
    }
body.pg-pagamento .payment-option-title {
        font-weight: 800;
        margin-bottom: .25rem;
    }
body.pg-pagamento .payment-option-text {
        color: #6c757d;
        margin-bottom: 0;
        font-size: .95rem;
    }
body.pg-pagamento .btn {
        min-height: 48px;
        border-radius: .95rem;
        font-weight: 800;
    }
body.pg-pagamento .success-card {
        width: 100%;
        max-width: 820px;
        border: 0;
        border-radius: 1.5rem;
        box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
        overflow: hidden;
    }
body.pg-pagamento .success-card .card-body {
        padding: 2rem;
    }
@media (max-width: 767.98px) {
body.pg-pagamento .page-shell {
            align-items: flex-start;
            padding: 1rem;
        }
body.pg-pagamento .payment-card .card-body, body.pg-pagamento .success-card .card-body {
            padding: 1.4rem;
        }
body.pg-pagamento .brand-logo {
            width: 145px;
            margin-bottom: 1rem;
        }
body.pg-pagamento .page-title {
            font-size: 1.65rem;
            text-align: center;
        }
body.pg-pagamento .intro-text {
            font-size: 1rem;
            text-align: center;
        }
body.pg-pagamento .btn {
            width: 100%;
        }
}
@media (max-width: 360px) {
body.pg-pagamento .payment-card .card-body, body.pg-pagamento .success-card .card-body {
            padding: 1.1rem;
        }
body.pg-pagamento .page-title {
            font-size: 1.45rem;
        }
}


/* === phpcodewizard/index.php === */
body.pg-phpcodewizard-index .img-rounded {
         border:3px solid #fff;
         background: url(animal-king-logo.png) no-repeat;
         box-shadow: 6px 6px 3px #ccc;
         -moz-box-shadow: 6px 6px 3px #ccc;
         -webkit-box-shadow: 6px 6px 3px #ccc;
         -khtml-box-shadow: 6px 6px 3px #ccc;
      }


/* === phpqrcode/phpqrcode.php === */
body.pg-phpqrcode-phpqrcode .m { background-color: white; }
body.pg-phpqrcode-phpqrcode .p { background-color: yellow; }
body.pg-phpqrcode-phpqrcode .m { background-color: #00FF00; }
body.pg-phpqrcode-phpqrcode .s { background-color: #FF0000; }
body.pg-phpqrcode-phpqrcode .c { background-color: aqua; }
body.pg-phpqrcode-phpqrcode .x { background-color: pink; }
body.pg-phpqrcode-phpqrcode .f { background-color: gold; }


/* === phpqrcode/qrspec.php === */
body.pg-phpqrcode-qrspec .m { background-color: white; }
body.pg-phpqrcode-qrspec .p { background-color: yellow; }
body.pg-phpqrcode-qrspec .m { background-color: #00FF00; }
body.pg-phpqrcode-qrspec .s { background-color: #FF0000; }
body.pg-phpqrcode-qrspec .c { background-color: aqua; }
body.pg-phpqrcode-qrspec .x { background-color: pink; }
body.pg-phpqrcode-qrspec .f { background-color: gold; }


/* === registration_success.php === */
body.pg-registration_success, body.pg-registration_success { min-height: 100%; }
body.pg-registration_success {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(255, 193, 7, .18), transparent 30%),
                linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%);
            color: #212529;
        }
body.pg-registration_success .page-shell { min-height: 100vh; padding: 1.25rem; display: flex; align-items: center; justify-content: center; }
body.pg-registration_success .success-card {
            max-width: 720px;
            width: 100%;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-registration_success .success-card .card-body { padding: 2rem; }
body.pg-registration_success .brand-logo { width: 140px; max-width: 100%; height: auto; border-radius: 1rem; }
body.pg-registration_success .success-icon { font-size: 3rem; line-height: 1; }
body.pg-registration_success .page-title { font-weight: 800; letter-spacing: -.03em; line-height: 1.15; }
body.pg-registration_success .intro-text { color: #5f6872; font-size: 1.05rem; line-height: 1.65; }
body.pg-registration_success .countdown-box { border-radius: 1rem; background: #fff8e1; border: 1px solid rgba(255, 193, 7, .45); padding: 1rem; }
@media (max-width: 767.98px) {
body.pg-registration_success .page-shell { padding: 1rem; }
body.pg-registration_success .success-card .card-body { padding: 1.4rem; }
body.pg-registration_success .page-title { font-size: 1.7rem; }
}


/* === registrazione.php === */
body.pg-registrazione, body.pg-registrazione {
            min-height: 100%;
        }
body.pg-registrazione {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(255, 193, 7, .18), transparent 30%),
                linear-gradient(135deg, #fffdf7 0%, #f5f7fb 100%);
            color: #212529;
        }
body.pg-registrazione .page-shell {
            min-height: 100vh;
            padding: 1.25rem;
        }
body.pg-registrazione .registration-card {
            max-width: 980px;
            margin: 0 auto;
            border: 0;
            border-radius: 1.5rem;
            box-shadow: 0 1rem 3rem rgba(0, 0, 0, .09);
            overflow: hidden;
        }
body.pg-registrazione .registration-card .card-body {
            padding: 2rem;
        }
body.pg-registrazione .brand-logo {
            width: 150px;
            max-width: 100%;
            height: auto;
            border-radius: 1rem;
        }
body.pg-registrazione .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            line-height: 1.15;
            margin-bottom: 1rem;
        }
body.pg-registrazione .intro-text {
            color: #5f6872;
            font-size: 1.05rem;
            line-height: 1.65;
        }
body.pg-registrazione .section-title {
            font-weight: 800;
            margin-bottom: .85rem;
        }
body.pg-registrazione .text-panel {
            max-height: 360px;
            overflow-y: auto;
            border: 1px solid #dee2e6;
            border-radius: 1rem;
            background: #fff;
            padding: 1rem;
            font-size: .95rem;
            line-height: 1.55;
        }
body.pg-registrazione .form-label {
            font-weight: 700;
        }
body.pg-registrazione .form-control {
            min-height: 46px;
            border-radius: .85rem;
        }
body.pg-registrazione .input-group-text {
            border-radius: .85rem 0 0 .85rem;
            font-weight: 700;
            min-width: 48px;
            justify-content: center;
        }
body.pg-registrazione .photo-upload-box {
            border: 1px dashed #adb5bd;
            border-radius: 1rem;
            background: #fff;
            padding: 1rem;
        }
body.pg-registrazione .photo-preview-box {
            width: 180px;
            height: 180px;
            background: #e9ecef;
            border: 2px dashed #aaa;
            border-radius: 1rem;
            margin: auto;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
            color: #6c757d;
            font-weight: 700;
        }
body.pg-registrazione .photo-preview-box img {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }
body.pg-registrazione .captcha-box {
            border: 1px solid #dee2e6;
            border-radius: 1rem;
            padding: 1rem;
            background: #fff;
        }
body.pg-registrazione .captcha-image {
            max-width: 100%;
            height: auto;
            border-radius: .75rem;
            border: 1px solid #dee2e6;
        }
body.pg-registrazione .btn {
            min-height: 48px;
            border-radius: .95rem;
            font-weight: 700;
        }
body.pg-registrazione .required-note {
            color: #6c757d;
            font-size: .9rem;
        }
body.pg-registrazione .autosave-status {
            display: inline-flex;
            align-items: center;
            gap: .45rem;
            padding: .45rem .75rem;
            border-radius: 999px;
            background: rgba(25, 135, 84, .08);
            color: #198754;
            font-size: .9rem;
            font-weight: 700;
        }
body.pg-registrazione .autosave-status.is-saving {
            background: rgba(255, 193, 7, .16);
            color: #7a5b00;
        }
body.pg-registrazione .autosave-status.is-error {
            background: rgba(220, 53, 69, .08);
            color: #dc3545;
        }
body.pg-registrazione .autosave-status-dot {
            width: .55rem;
            height: .55rem;
            border-radius: 50%;
            background: currentColor;
        }
body.pg-registrazione .registration-steps {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: .75rem;
            margin-bottom: 1.5rem;
            position: relative;
        }
body.pg-registrazione .registration-step {
            border: 1px solid #dee2e6;
            background: #fff;
            border-radius: 1rem;
            padding: .85rem .7rem;
            text-align: left;
            display: flex;
            align-items: center;
            gap: .65rem;
            color: #6c757d;
            font-weight: 700;
            min-height: 68px;
            transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease, background-color .2s ease;
        }
body.pg-registrazione .registration-step-number {
            width: 34px;
            height: 34px;
            border-radius: 50%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #f1f3f5;
            color: #6c757d;
            flex: 0 0 34px;
            font-weight: 800;
            border: 2px solid transparent;
            transition: background-color .2s ease, color .2s ease, border-color .2s ease;
        }
body.pg-registrazione .registration-step small {
            display: block;
            font-weight: 600;
            color: #8a939b;
            line-height: 1.2;
        }
body.pg-registrazione .registration-step.is-active {
            border-color: #ffc107;
            box-shadow: 0 .5rem 1.5rem rgba(255, 193, 7, .18);
            color: #212529;
            transform: translateY(-1px);
        }
body.pg-registrazione .registration-step.is-active .registration-step-number {
            background: #ffc107;
            color: #212529;
        }
body.pg-registrazione .registration-step.is-complete {
            border-color: rgba(25, 135, 84, .45);
            background: rgba(25, 135, 84, .06);
            color: #198754;
        }
body.pg-registrazione .registration-step.is-complete .registration-step-number {
            background: #198754;
            color: #fff;
            border-color: rgba(25, 135, 84, .2);
            font-size: 0;
        }
body.pg-registrazione .registration-step.is-complete .registration-step-number::before {
            content: "✓";
            font-size: 1.15rem;
            line-height: 1;
            font-weight: 900;
        }
body.pg-registrazione .registration-step.is-complete small {
            color: rgba(25, 135, 84, .75);
        }
body.pg-registrazione .step-pane {
            display: none;
        }
body.pg-registrazione .step-pane.is-active {
            display: block;
        }
body.pg-registrazione .step-actions {
            display: flex;
            justify-content: space-between;
            gap: .75rem;
            margin-top: 1rem;
        }
body.pg-registrazione .step-actions .btn {
            min-width: 150px;
        }
@media (max-width: 767.98px) {
body.pg-registrazione .page-shell {
                padding: 1rem;
            }
body.pg-registrazione .registration-card .card-body {
                padding: 1.4rem;
            }
body.pg-registrazione .brand-logo {
                width: 120px;
                margin-bottom: 1rem;
            }
body.pg-registrazione .page-title {
                font-size: 1.7rem;
                text-align: center;
            }
body.pg-registrazione .intro-text {
                font-size: 1rem;
                text-align: center;
            }
body.pg-registrazione .text-panel {
                max-height: 300px;
                font-size: .92rem;
            }
body.pg-registrazione .btn-submit {
                width: 100%;
            }
body.pg-registrazione .registration-steps {
                grid-template-columns: 1fr;
                gap: .55rem;
            }
body.pg-registrazione .registration-step {
                min-height: auto;
                padding: .65rem .75rem;
            }
body.pg-registrazione .registration-step small {
                display: inline;
                margin-left: .35rem;
            }
body.pg-registrazione .step-actions {
                flex-direction: column-reverse;
            }
body.pg-registrazione .step-actions .btn {
                width: 100%;
            }
}
@media (max-width: 360px) {
body.pg-registrazione .registration-card .card-body {
                padding: 1.1rem;
            }
body.pg-registrazione .page-title {
                font-size: 1.45rem;
            }
}


/* === send-photo.php === */
body.pg-send-photo {background:#f4f7fb}
body.pg-send-photo .upload-card {max-width:600px;margin:auto;margin-top:40px;border-radius:1.5rem;box-shadow:0 1rem 3rem rgba(0,0,0,.1)}
body.pg-send-photo .preview-box {width:180px;height:180px;background:#e9ecef;border:2px dashed #aaa;border-radius:1rem;margin:auto;display:flex;align-items:center;justify-content:center;overflow:hidden}
body.pg-send-photo .preview-box img {width:100%;height:100%;object-fit:cover}
body.pg-send-photo .close-window-btn {border-radius:.75rem}


/* === stage.php === */
body.pg-stage, body.pg-stage {
            min-height: 100%;
        }
body.pg-stage {
            margin: 0;
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
            background:
                radial-gradient(circle at top left, rgba(13, 110, 253, .10), transparent 30%),
                linear-gradient(135deg, #f8fbff 0%, #f4f7fb 100%);
            color: #212529;
        }
body.pg-stage .page-shell {
            min-height: 100vh;
            padding: .9rem;
        }
body.pg-stage .stage-card {
            border: 0;
            border-radius: 1.25rem;
            box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .08);
            overflow: hidden;
            background: #fff;
        }
body.pg-stage .stage-card .card-body {
            padding: 1.25rem;
        }
body.pg-stage .page-title {
            font-weight: 800;
            letter-spacing: -.03em;
            line-height: 1.15;
            margin-bottom: .5rem;
        }
body.pg-stage .intro-text {
            color: #6c757d;
            font-size: .95rem;
            line-height: 1.45;
            margin-bottom: 1rem;
        }
body.pg-stage .step-list {
            display: grid;
            gap: .75rem;
        }
body.pg-stage .step-item {
            display: flex;
            align-items: center;
            gap: .75rem;
            border: 1px solid #dee2e6;
            border-radius: 1rem;
            padding: .75rem;
            background: #fff;
        }
body.pg-stage .step-item.ok {
            border-color: rgba(25, 135, 84, .25);
            background: rgba(25, 135, 84, .06);
        }
body.pg-stage .step-item.ko {
            border-color: rgba(220, 53, 69, .25);
            background: rgba(220, 53, 69, .06);
        }
body.pg-stage .step-icon {
            width: 42px;
            height: 42px;
            object-fit: contain;
            flex: 0 0 42px;
        }
body.pg-stage .step-label {
            font-weight: 800;
            line-height: 1.25;
        }
body.pg-stage .step-status {
            font-size: .85rem;
            font-weight: 800;
        }
body.pg-stage .badge-refresh {
            border-radius: 999px;
            background: rgba(13, 110, 253, .1);
            color: #0d6efd;
            padding: .4rem .7rem;
            font-size: .82rem;
            font-weight: 800;
            display: inline-flex;
            margin-top: .8rem;
        }
@media (max-width: 575.98px) {
body.pg-stage .page-shell {
                padding: .75rem;
            }
body.pg-stage .stage-card .card-body {
                padding: 1rem;
            }
body.pg-stage .page-title {
                font-size: 1.35rem;
                text-align: center;
            }
body.pg-stage .intro-text {
                text-align: center;
            }
body.pg-stage .step-item {
                padding: .7rem;
            }
body.pg-stage .step-icon {
                width: 36px;
                height: 36px;
                flex-basis: 36px;
            }
}


/* === === */
body.pg-verify {
    --page-bg: #f4f7fb;
    --card-bg: #ffffff;
    --border-soft: #d9e2ec;
    --text-main: #1f2937;
    --text-muted: #6b7280;
}
body.pg-verify * { box-sizing: border-box; }
body.pg-verify { min-height: 100%; background: var(--page-bg); }
body.pg-verify {
    min-height: 100vh;
    margin: 0;
    padding: 18px 12px;
    background: radial-gradient(circle at top left, rgba(13,110,253,.13), transparent 34rem), linear-gradient(180deg, #ffffff 0%, var(--page-bg) 100%);
    color: var(--text-main);
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}
body.pg-verify::before {
    content: "Tessera Animal King";
    display: block;
    width: min(100%, 480px);
    padding: 18px 18px 6px;
    color: #0d6efd;
    font-size: clamp(1.35rem, 5vw, 2rem);
    font-weight: 800;
    letter-spacing: -.03em;
    text-align: center;
}
body.pg-verify > img:first-of-type {
    width: clamp(112px, 38vw, 150px) !important;
    height: auto;
    border-radius: 18px;
    padding: 6px;
    background: #fff;
    border: 1px solid var(--border-soft);
    box-shadow: 0 12px 30px rgba(15,23,42,.12);
    object-fit: cover;
}
body.pg-verify #ct {
    display: block;
    width: min(100%, 480px);
    margin: 4px 0 2px;
    padding: 10px 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.82);
    border: 1px solid var(--border-soft);
    color: var(--text-muted);
    font-size: .92rem;
    text-align: center;
    box-shadow: 0 8px 20px rgba(15,23,42,.06);
}
body.pg-verify #demo-container {
    width: min(100%, 480px);
    border: 1px solid var(--border-soft);
    padding: 14px 16px;
    margin: 0;
    border-radius: 16px;
    background: var(--card-bg);
    box-shadow: 0 10px 26px rgba(15,23,42,.08);
    font-size: clamp(.98rem, 3.8vw, 1.08rem);
    line-height: 1.35;
}
body.pg-verify #demo-container img { width: 28px; height: 28px; margin-right: 10px; vertical-align: middle; }
body.pg-verify form {
    width: min(100%, 480px);
    padding: 16px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid var(--border-soft);
    box-shadow: 0 10px 26px rgba(15,23,42,.08);
}
body.pg-verify textarea[name="Note"] {
    width: 100%;
    min-height: 128px;
    resize: vertical;
    border: 1px solid var(--border-soft);
    border-radius: 14px;
    padding: 12px 14px;
    font-size: 1rem;
    outline: none;
}
body.pg-verify textarea[name="Note"]:focus { border-color: #86b7fe; box-shadow: 0 0 0 .25rem rgba(13,110,253,.18); }
body.pg-verify input[type="submit"] {
    width: 100%;
    margin-top: 12px;
    border: 0;
    border-radius: 14px;
    padding: 12px 16px;
    background: #0d6efd;
    color: #fff;
    font-weight: 700;
    letter-spacing: .01em;
    box-shadow: 0 10px 20px rgba(13,110,253,.24);
}
body.pg-verify input[type="submit"]:active { transform: translateY(1px); }
body.pg-verify p {
    width: min(100%, 480px);
    margin: 0;
    border: 2px dashed #198754;
    padding: 14px 16px;
    font-size: clamp(1rem, 4vw, 1.08rem);
    border-radius: 16px;
    color: #d95f4f;
    background: #fff;
    box-shadow: 0 10px 26px rgba(15,23,42,.07);
}
body.pg-verify span.label { font-weight: 800; color: #111827; }
body.pg-verify #install-app-box {
    display: none;
    width: min(100%, 480px);
    padding: 14px 16px;
    border-radius: 16px;
    background: #ffffff;
    border: 1px solid var(--border-soft);
    box-shadow: 0 10px 26px rgba(15,23,42,.10);
}
body.pg-verify #install-app-box strong { display: block; margin-bottom: 4px; color: #111827; }
body.pg-verify #install-app-box span { display: block; color: var(--text-muted); font-size: .94rem; line-height: 1.35; }
body.pg-verify #install-app-box .install-actions { display: flex; gap: 8px; margin-top: 12px; }
body.pg-verify #install-app-box button {
    flex: 1;
    border: 0;
    border-radius: 12px;
    padding: 10px 12px;
    font-weight: 700;
}
body.pg-verify #install-app-button { background: #0d6efd; color: #fff; }
body.pg-verify #install-app-close { background: #eef2f7; color: #374151; }
@media (min-width: 768px) {
body.pg-verify { padding: 34px 18px; }
}
@media (prefers-reduced-motion: no-preference) {
body.pg-verify #demo-container, body.pg-verify form, body.pg-verify p, body.pg-verify #ct, body.pg-verify > img:first-of-type { transition: transform .18s ease, box-shadow .18s ease; }
}

/* ============================================================
   Correzioni responsive post-centralizzazione
   - mantiene la logica invariata
   - evita regressioni quando il CSS viene caricato in iframe
   - ripristina gli stili precedentemente presenti nei CSS locali
   ============================================================ */

/* Fallback essenziale: rende leggibile anche se Bootstrap CDN non risponde. */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    border: 1px solid transparent;
    line-height: 1.2;
}
.card { background: #fff; }
.container-fluid { width: 100%; margin-right: auto; margin-left: auto; }
.text-center { text-align: center !important; }

/* Menu principale: griglia robusta per desktop, tablet e mobile. */
body.pg-menu .menu-card,
body.pg-menu .iframe-panel {
    width: 100%;
}
body.pg-menu .toolbar-grid {
    grid-template-columns: minmax(150px, 1fr) minmax(220px, 1.4fr) repeat(5, minmax(150px, 1fr));
}
body.pg-menu .toolbar-grid > * { min-width: 0; }
body.pg-menu .form-select { width: 100%; }
body.pg-menu .responsive-iframe { display: block; }

@media (max-width: 1199.98px) {
    body.pg-menu .toolbar-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 767.98px) {
    body.pg-menu .toolbar-grid {
        grid-template-columns: 1fr;
    }
    body.pg-menu .btn-action,
    body.pg-menu .form-select {
        min-height: 48px;
    }
    body.pg-menu .iframe-panel {
        border-radius: 1rem;
    }
    body.pg-menu .iframe-container {
        height: 72vh;
        min-height: 560px;
    }
}

/* Transazioni elettroniche / phpcodewizard: stili ripristinati dal CSS locale, ma con scope. */
body.pg-phpcodewizard-index {
    margin: 0;
    min-height: 100vh;
    background: linear-gradient(180deg, #f8fbff 0%, #eef3f8 100%);
    font-family: Roboto, system-ui, -apple-system, "Segoe UI", sans-serif;
}
body.pg-phpcodewizard-index .box,
body.pg-abbfond-phpcodewizard-index .box {
    width: min(100%, 1480px);
    padding: clamp(1rem, 2vw, 1.5rem);
    background-color: #ffffff;
    border: 1px solid #dee2e6;
    border-radius: 1rem;
    box-shadow: 0 .75rem 2rem rgba(15, 23, 42, .08);
    box-sizing: border-box;
}
body.pg-phpcodewizard-index .page-title h1,
body.pg-abbfond-phpcodewizard-index .page-title h1 {
    font-weight: 700;
    letter-spacing: -.02em;
}
body.pg-phpcodewizard-index .toolbar,
body.pg-abbfond-phpcodewizard-index .toolbar {
    padding: .75rem;
    border: 1px solid #dee2e6;
    border-radius: .85rem;
    background: #f8f9fa;
}
body.pg-phpcodewizard-index .column-toggle,
body.pg-abbfond-phpcodewizard-index .column-toggle { min-width: min(100%, 280px); }
body.pg-phpcodewizard-index #multiple-checkboxes,
body.pg-abbfond-phpcodewizard-index #multiple-checkboxes { min-width: 100%; }
body.pg-phpcodewizard-index .table-responsive,
body.pg-abbfond-phpcodewizard-index .table-responsive {
    border-radius: .85rem;
    border: 1px solid #dee2e6;
}
body.pg-phpcodewizard-index #user_data,
body.pg-abbfond-phpcodewizard-index #user_data {
    margin-bottom: 0 !important;
    font-size: .925rem;
}
body.pg-phpcodewizard-index .header-table,
body.pg-phpcodewizard-index table.dataTable thead th,
body.pg-abbfond-phpcodewizard-index .header-table,
body.pg-abbfond-phpcodewizard-index table.dataTable thead th {
    background-color: #0d6efd !important;
    color: #fff !important;
    white-space: nowrap;
}
body.pg-phpcodewizard-index #user_data td,
body.pg-abbfond-phpcodewizard-index #user_data td { vertical-align: middle; }
body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_length,
body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_filter,
body.pg-phpcodewizard-index .dataTables_wrapper .dt-buttons,
body.pg-abbfond-phpcodewizard-index .dataTables_wrapper .dataTables_length,
body.pg-abbfond-phpcodewizard-index .dataTables_wrapper .dataTables_filter,
body.pg-abbfond-phpcodewizard-index .dataTables_wrapper .dt-buttons { margin-bottom: .75rem; }
body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_filter input,
body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_length select,
body.pg-abbfond-phpcodewizard-index .dataTables_wrapper .dataTables_filter input,
body.pg-abbfond-phpcodewizard-index .dataTables_wrapper .dataTables_length select {
    border-radius: .5rem;
    border: 1px solid #dee2e6;
    padding: .35rem .65rem;
}
body.pg-phpcodewizard-index .modal-header,
body.pg-abbfond-phpcodewizard-index .modal-header {
    background-color: #0d6efd;
    color: #fff;
}
body.pg-phpcodewizard-index .modal-title,
body.pg-abbfond-phpcodewizard-index .modal-title { color: #fff; font-weight: 600; }
body.pg-phpcodewizard-index .img-rounded,
body.pg-phpcodewizard-index .img-responsive,
body.pg-abbfond-phpcodewizard-index .img-rounded,
body.pg-abbfond-phpcodewizard-index .img-responsive {
    max-width: 100%;
    height: auto;
    border-radius: .75rem;
}
@media (max-width: 767.98px) {
    body.pg-phpcodewizard-index .box,
    body.pg-abbfond-phpcodewizard-index .box {
        border-radius: 0;
        border-left: 0;
        border-right: 0;
    }
    body.pg-phpcodewizard-index .dt-buttons .btn,
    body.pg-phpcodewizard-index .toolbar .btn,
    body.pg-abbfond-phpcodewizard-index .dt-buttons .btn,
    body.pg-abbfond-phpcodewizard-index .toolbar .btn { width: 100%; }
    body.pg-phpcodewizard-index #user_data,
    body.pg-abbfond-phpcodewizard-index #user_data { font-size: .85rem; }
    body.pg-phpcodewizard-index .modal-dialog,
    body.pg-abbfond-phpcodewizard-index .modal-dialog { margin: .5rem; }
}


/* ============================================================
   Design system uniforme + ottimizzazioni responsive 2026
   ============================================================ */
:root {
    --ak-brand: #0f766e;
    --ak-brand-600: #0d9488;
    --ak-brand-700: #0f766e;
    --ak-accent: #f59e0b;
    --ak-page-bg: #f6f8fb;
    --ak-surface-2: #f8fafc;
    --ak-ink: #0f172a;
    --ak-line: #e2e8f0;
    --ak-focus: rgba(13, 148, 136, .22);
}
body { background-color: var(--ak-page-bg); color: var(--ak-ink); }
main, .page-shell, .container, .container-fluid { overflow-wrap: anywhere; }
.ak-card, .card, .main-card, .registration-card, .subscription-card {
    border-radius: clamp(1rem, 1.7vw, 1.45rem);
    border: 1px solid rgba(15,23,42,.07);
    background: rgba(255,255,255,.97);
}
.btn, button, input[type="submit"], input[type="button"] {
    border-radius: .9rem;
    font-weight: 750;
    letter-spacing: .005em;
}
.btn-primary, button.btn-primary, input[type="submit"].btn-primary {
    --bs-btn-bg: var(--ak-brand);
    --bs-btn-border-color: var(--ak-brand);
    --bs-btn-hover-bg: var(--ak-brand-600);
    --bs-btn-hover-border-color: var(--ak-brand-600);
    --bs-btn-active-bg: var(--ak-brand-700);
    --bs-btn-active-border-color: var(--ak-brand-700);
}
.btn-outline-primary { --bs-btn-color: var(--ak-brand); --bs-btn-border-color: var(--ak-brand); --bs-btn-hover-bg: var(--ak-brand); --bs-btn-hover-border-color: var(--ak-brand); }
.btn:focus-visible, button:focus-visible, a:focus-visible, .form-control:focus, .form-select:focus { outline: 0; box-shadow: 0 0 0 .25rem var(--ak-focus); }
.table:not(.table-borderless) { border-collapse: separate; border-spacing: 0; overflow: hidden; border-radius: 1rem; }
.table-striped > tbody > tr:nth-of-type(odd) > *, .table tbody tr:nth-child(odd) > td { background-color: rgba(15, 118, 110, .035); }
.table tbody tr:hover > * { background-color: rgba(15, 118, 110, .075); }
.table-responsive { border-radius: 1rem; border: 1px solid rgba(15,23,42,.06); }
img[loading="lazy"] { content-visibility: auto; }
.ak-icon, .icon-svg { width: 1.1em; height: 1.1em; display: inline-block; vertical-align: -.15em; fill: currentColor; }
.ak-page-title, h1, .h1 { letter-spacing: -.035em; }
@media (min-width: 992px) { .page-shell, .ak-page, main.container, main.container-fluid { padding-top: 1.25rem; padding-bottom: 1.25rem; } .table-responsive { overflow: visible; } }
@media (max-width: 767.98px) {
    body { font-size: 15px; }
    h1, .h1 { font-size: clamp(1.65rem, 8vw, 2.2rem); }
    h2, .h2 { font-size: clamp(1.35rem, 6vw, 1.75rem); }
    .card, .main-card, .registration-card, .subscription-card { border-radius: 1rem; }
    .card-body { padding: 1rem; }
    .btn, button, input[type="submit"], input[type="button"] { min-height: 46px; }
    .btn-group, .btn-toolbar { flex-wrap: wrap; gap: .5rem; }
    .modal-dialog { margin: .75rem; }
    .table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .table { min-width: 640px; }
    input, select, textarea { font-size: 16px !important; }
}
@media print { .btn, nav, .navbar, .no-print { display: none !important; } body { background: #fff !important; } .card, .main-card, .registration-card { box-shadow: none !important; border-color: #ddd !important; } }


/* ============================================================
   ANIMAL KING — RESTYLING MASSIVO UI 2026
   Solo presentazione: nessuna logica PHP/JS modificata.
   Desktop + mobile, dashboard, form, tabelle, pagamenti, note.
   ============================================================ */
:root{
  --ak-bg:#eef4f8;
  --ak-bg-2:#f8fbfd;
  --ak-surface:#ffffff;
  --ak-surface-soft:rgba(255,255,255,.86);
  --ak-text:#102033;
  --ak-muted:#607086;
  --ak-primary:#0f766e;
  --ak-primary-2:#14b8a6;
  --ak-primary-dark:#115e59;
  --ak-secondary:#f59e0b;
  --ak-danger:#dc2626;
  --ak-success:#16a34a;
  --ak-info:#2563eb;
  --ak-border:rgba(15,32,51,.11);
  --ak-shadow:0 18px 55px rgba(15,32,51,.13);
  --ak-shadow-soft:0 10px 30px rgba(15,32,51,.09);
  --ak-radius:22px;
  --ak-radius-sm:14px;
  --ak-ease:cubic-bezier(.2,.8,.2,1);
}
html{scroll-behavior:smooth;}
body{
  min-height:100vh;
  background:
    radial-gradient(circle at 8% -10%, rgba(20,184,166,.22), transparent 32rem),
    radial-gradient(circle at 92% 4%, rgba(245,158,11,.20), transparent 28rem),
    linear-gradient(135deg,var(--ak-bg),var(--ak-bg-2));
  color:var(--ak-text);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  line-height:1.55;
}
body:before{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background-image:linear-gradient(rgba(15,32,51,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(15,32,51,.035) 1px,transparent 1px);
  background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent 72%);
}
a{color:var(--ak-primary-dark);text-decoration:none;transition:color .2s var(--ak-ease),opacity .2s var(--ak-ease);}a:hover{color:var(--ak-primary-2);}
.page-shell,.ak-page,main.container,main.container-fluid,.container,.container-fluid{max-width:1380px;margin-inline:auto;padding-inline:clamp(14px,2.2vw,32px);}
/* Hero e titoli */
h1,.h1,.page-title,.ak-page-title{font-weight:900;letter-spacing:-.055em;color:var(--ak-text);line-height:1.04;margin-bottom:.9rem;}
h2,.h2,h3,.h3{font-weight:850;letter-spacing:-.035em;color:var(--ak-text);}p,.text-muted,small{color:var(--ak-muted);}hr{border-color:var(--ak-border);opacity:1;}
/* Card moderne */
.card,.ak-card,.main-card,.registration-card,.subscription-card,.menu-card,.iframe-panel,.login-card,.box,.modal-content,fieldset,.well,.panel{
  background:var(--ak-surface-soft)!important;border:1px solid var(--ak-border)!important;border-radius:var(--ak-radius)!important;
  box-shadow:var(--ak-shadow-soft);backdrop-filter:saturate(1.25) blur(10px);overflow:hidden;
}
.card:hover,.ak-card:hover,.main-card:hover,.subscription-card:hover,.menu-card:hover{box-shadow:var(--ak-shadow);transform:translateY(-1px);transition:box-shadow .25s var(--ak-ease),transform .25s var(--ak-ease);}
.card-header,.modal-header,.panel-heading{background:linear-gradient(135deg,rgba(15,118,110,.10),rgba(245,158,11,.08))!important;border-bottom:1px solid var(--ak-border)!important;color:var(--ak-text)!important;font-weight:800;}
.card-body,.modal-body,.panel-body{padding:clamp(1rem,2vw,1.6rem)!important;}
/* Navbar e menu */
nav,.navbar,.menu-header{border-radius:var(--ak-radius);background:rgba(255,255,255,.82)!important;border:1px solid var(--ak-border);box-shadow:var(--ak-shadow-soft);backdrop-filter:blur(12px);}
.navbar .nav-link,nav a,.menu a{font-weight:800;color:var(--ak-text)!important;border-radius:999px;padding:.55rem .85rem;}
.navbar .nav-link:hover,nav a:hover,.menu a:hover{background:rgba(20,184,166,.13);color:var(--ak-primary-dark)!important;}
ul:not(.dropdown-menu):not(.pagination){padding-left:1.1rem;}li::marker{color:var(--ak-primary);}
/* Bottoni moderni + icone SVG leggere */
.btn,button,input[type="submit"],input[type="button"],.button,a.button{
  border-radius:999px!important;font-weight:850!important;letter-spacing:.01em;border:0;min-height:44px;padding:.62rem 1.05rem;
  display:inline-flex;align-items:center;justify-content:center;gap:.48rem;transition:transform .18s var(--ak-ease),box-shadow .18s var(--ak-ease),background .18s var(--ak-ease),filter .18s var(--ak-ease)!important;
}
.btn:hover,button:hover,input[type="submit"]:hover,input[type="button"]:hover,.button:hover,a.button:hover{transform:translateY(-1px);box-shadow:0 12px 22px rgba(15,32,51,.16);filter:saturate(1.05);}
.btn:active,button:active,input[type="submit"]:active{transform:translateY(0);box-shadow:none;}
.btn-primary,.btn-action,input[type="submit"],button[type="submit"]{background:linear-gradient(135deg,var(--ak-primary),var(--ak-primary-2))!important;color:#fff!important;box-shadow:0 10px 24px rgba(15,118,110,.24)!important;}
.btn-secondary{background:linear-gradient(135deg,#64748b,#334155)!important;color:#fff!important;}.btn-success{background:linear-gradient(135deg,#16a34a,#22c55e)!important;color:#fff!important;}.btn-danger,.btn-logout{background:linear-gradient(135deg,#dc2626,#f97316)!important;color:#fff!important;}.btn-warning{background:linear-gradient(135deg,#f59e0b,#fbbf24)!important;color:#1f2937!important;}.btn-info{background:linear-gradient(135deg,#2563eb,#38bdf8)!important;color:#fff!important;}
.btn-outline-primary{border:1px solid rgba(15,118,110,.35)!important;color:var(--ak-primary-dark)!important;background:rgba(255,255,255,.74)!important;}.btn-outline-primary:hover{background:var(--ak-primary)!important;color:#fff!important;}
.btn-create:before,.btn-transactions:before,.btn-merchants:before,.btn-password:before,.btn-logout:before,.btn-primary:before,.btn-success:before,.btn-danger:before{content:"";width:1.05em;height:1.05em;display:inline-block;background:currentColor;mask:center/contain no-repeat;opacity:.92;}
.btn-create:before,.btn-primary:before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11 5h2v14h-2zM5 11h14v2H5z"/></svg>');}.btn-transactions:before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v12H3zm2 3v2h14V9zm0 5v2h5v-2z"/></svg>');}.btn-merchants:before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 4h16l1 5H3zm1 7h14v9H5zm3 2v5h3v-5z"/></svg>');}.btn-password:before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 8V7a5 5 0 0 0-10 0v1H5v13h14V8zm-8 0V7a3 3 0 0 1 6 0v1z"/></svg>');}.btn-logout:before,.btn-danger:before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M10 17v-3H3v-4h7V7l6 5zm2 4v-2h7V5h-7V3h9v18z"/></svg>');}.btn-success:before{mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m9 16.2-3.5-3.5L4 14.2 9 19 20 8l-1.5-1.5z"/></svg>');}
/* Form */
.form-control,.form-select,input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),select,textarea{
  border-radius:16px!important;border:1px solid rgba(15,32,51,.14)!important;background:rgba(255,255,255,.92)!important;min-height:44px;box-shadow:inset 0 1px 0 rgba(255,255,255,.75);transition:border-color .18s var(--ak-ease),box-shadow .18s var(--ak-ease),background .18s var(--ak-ease);
}
.form-control:focus,.form-select:focus,input:focus,select:focus,textarea:focus{border-color:rgba(20,184,166,.8)!important;box-shadow:0 0 0 .25rem rgba(20,184,166,.16)!important;background:#fff!important;outline:none!important;}
label,.form-label{font-weight:800;color:#26394f;margin-bottom:.35rem;}.input-group-text{border-radius:16px!important;background:rgba(20,184,166,.08)!important;border-color:rgba(15,32,51,.11)!important;font-weight:800;color:var(--ak-primary-dark)!important;}
/* Tabelle */
.table-responsive{border:1px solid var(--ak-border)!important;border-radius:var(--ak-radius)!important;background:#fff;box-shadow:var(--ak-shadow-soft);overflow:auto!important;}
table,.table{margin-bottom:0;background:#fff;border-collapse:separate!important;border-spacing:0!important;vertical-align:middle;}
.table thead th,table thead th{background:linear-gradient(135deg,var(--ak-primary-dark),var(--ak-primary))!important;color:#fff!important;border:0!important;font-size:.78rem;text-transform:uppercase;letter-spacing:.055em;white-space:nowrap;padding:.86rem .9rem!important;}
.table tbody td,table tbody td{border-color:rgba(15,32,51,.075)!important;padding:.82rem .9rem!important;color:#203348;}
.table-striped>tbody>tr:nth-of-type(odd)>*,table tbody tr:nth-child(odd)>td{background:rgba(20,184,166,.045)!important;}.table-hover tbody tr:hover>*,table tbody tr:hover>td{background:rgba(245,158,11,.09)!important;}
.dataTables_wrapper .dataTables_filter input,.dt-search input{border-radius:999px!important;margin-left:.5rem;}.pagination .page-link{border-radius:999px!important;margin-inline:.12rem;color:var(--ak-primary-dark);border-color:rgba(15,32,51,.10);}.pagination .active .page-link{background:var(--ak-primary)!important;border-color:var(--ak-primary)!important;}
/* Dashboard/menu principale */
body.pg-menu .page-shell{padding-block:clamp(18px,3vw,42px);}body.pg-menu .menu-card{padding:clamp(1.2rem,3vw,2.4rem);margin-bottom:1.2rem;}body.pg-menu .menu-header{padding:1.1rem;margin-bottom:1.25rem;background:linear-gradient(135deg,rgba(15,118,110,.12),rgba(245,158,11,.10))!important;}body.pg-menu .toolbar-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.85rem;align-items:end;}body.pg-menu .toolbar-grid>div{min-width:0;}body.pg-menu .toolbar-label{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ak-muted);margin-bottom:.35rem;}body.pg-menu .iframe-panel{padding:clamp(.65rem,1.5vw,1rem);}body.pg-menu .iframe-container{height:72vh;min-height:520px;border-radius:calc(var(--ak-radius) - 6px);overflow:hidden;background:#fff;}body.pg-menu .responsive-iframe{width:100%;height:100%;border:0;background:#fff;}
/* Login/registrazione/pagamento */
body[class*="pg-login"],body[class*="pg-registr"],body[class*="pg-paypal"],body[class*="pg-pagamento"],body[class*="pg-verify"]{display:block;}.login-card,.registration-card,.subscription-card{max-width:760px;margin:clamp(18px,5vh,54px) auto;padding:clamp(1rem,2vw,1.5rem);}body.pg-login-login .login-card{max-width:520px;}.alert{border:0!important;border-radius:18px!important;box-shadow:var(--ak-shadow-soft);font-weight:700;}.alert-success{background:rgba(22,163,74,.12)!important;color:#166534!important;}.alert-danger{background:rgba(220,38,38,.10)!important;color:#991b1b!important;}.alert-warning{background:rgba(245,158,11,.14)!important;color:#92400e!important;}
/* Immagini */
img{max-width:100%;height:auto;}img:not(.no-style):not([src*="QRCode"]){border-radius:14px;} .logo,img[src*="logo"],img[src*="Logo"]{border-radius:18px;filter:drop-shadow(0 8px 18px rgba(15,32,51,.14));}
/* Badge/chip */
.badge,.label{border-radius:999px!important;padding:.45em .72em!important;font-weight:850!important;letter-spacing:.02em;}.badge.bg-primary{background:var(--ak-primary)!important;}.badge.bg-success{background:var(--ak-success)!important;}.badge.bg-danger{background:var(--ak-danger)!important;}
/* Mobile */
@media (max-width:991.98px){
  .page-shell,.ak-page,main.container,main.container-fluid,.container,.container-fluid{padding-inline:14px;}
  body.pg-menu .toolbar-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.pg-menu .iframe-container{height:70vh;min-height:460px;}
  .navbar-collapse{background:rgba(255,255,255,.96);border-radius:18px;padding:.8rem;margin-top:.6rem;border:1px solid var(--ak-border);}
}
@media (max-width:575.98px){
  body{font-size:15px;background:linear-gradient(180deg,#f8fbfd,#eef4f8);}body:before{display:none;}
  h1,.h1,.page-title{font-size:clamp(1.7rem,10vw,2.25rem)!important;text-align:center;}
  .card,.ak-card,.main-card,.registration-card,.subscription-card,.menu-card,.iframe-panel,.login-card,.box,.modal-content{border-radius:18px!important;}
  .card-body,.modal-body,.panel-body{padding:1rem!important;}
  body.pg-menu .toolbar-grid{grid-template-columns:1fr;gap:.72rem;}body.pg-menu .menu-card{padding:1rem;}body.pg-menu .iframe-panel{padding:.5rem;margin-inline:-6px;}body.pg-menu .iframe-container{height:68vh;min-height:420px;border-radius:14px;}
  .btn,button,input[type="submit"],input[type="button"]{width:100%;min-height:48px;padding:.72rem .95rem;}
  .btn-group,.btn-toolbar,.d-flex{gap:.5rem;flex-wrap:wrap;}.btn-group>.btn{width:auto;flex:1 1 auto;}
  .table-responsive{margin-inline:-2px;border-radius:16px!important;}.table,table{min-width:680px;font-size:.88rem;}.table thead th,table thead th,.table tbody td,table tbody td{padding:.68rem .7rem!important;}
  .modal-dialog{margin:.65rem!important;}.modal-footer{display:grid;grid-template-columns:1fr;gap:.55rem;}.modal-footer .btn{width:100%;}
  input,select,textarea{font-size:16px!important;}
}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition:none!important;}}


/* ============================================================
   AK UI CLONE 2026 — fix modal, toast, tabelle mobile card
   Bootstrap 5.3.8 friendly. Solo presentazione/UX.
   ============================================================ */
:root{
  --ak-sidebar:#062b3d;
  --ak-sidebar-2:#073f4c;
  --ak-accent:#10b981;
  --ak-accent-2:#059669;
  --ak-red:#ef4444;
  --ak-blue:#0ea5e9;
  --ak-orange:#f59e0b;
}
/* Layout più vicino al mockup: sidebar/card/toasts */
body.pg-phpcodewizard-index,
body.pg-esercenti-index{
  background:
    radial-gradient(circle at 12% 0%, rgba(16,185,129,.18), transparent 28rem),
    radial-gradient(circle at 92% 8%, rgba(14,165,233,.12), transparent 26rem),
    linear-gradient(135deg,#eef5f8 0%,#f8fbfd 100%) !important;
}
body.pg-phpcodewizard-index main.container,
body.pg-phpcodewizard-index main.container-fluid,
body.pg-esercenti-index .page-shell{
  max-width:1360px;
  margin-inline:auto;
}
body.pg-phpcodewizard-index .page-title,
body.pg-esercenti-index .page-title{
  text-align:left!important;
  padding:.35rem 0 1rem;
}
body.pg-phpcodewizard-index .page-title h1,
body.pg-esercenti-index .page-title{
  font-size:clamp(1.65rem,3vw,2.2rem)!important;
  font-weight:900!important;
  letter-spacing:-.045em!important;
}
body.pg-phpcodewizard-index .toolbar,
body.pg-esercenti-index .toolbar{
  background:rgba(255,255,255,.72);
  border:1px solid rgba(15,32,51,.08);
  border-radius:20px;
  padding:.85rem;
  box-shadow:0 14px 36px rgba(15,32,51,.08);
}
/* Modal sempre sopra al backdrop: corregge finestra sbiadita/non cliccabile */
.modal{z-index:1095!important;}
.modal-backdrop{z-index:1080!important;background:#06151f!important;}
.modal-backdrop.show{opacity:.54!important;}
.modal-dialog{position:relative;z-index:1100!important;}
body.modal-open .modal.show{display:block!important;pointer-events:auto!important;}
body.modal-open .modal.show .modal-dialog,
body.modal-open .modal.show .modal-content{pointer-events:auto!important;}
body.pg-phpcodewizard-index .modal-content,
body.pg-esercenti-index .modal-content{
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(255,255,255,.76)!important;
  box-shadow:0 30px 90px rgba(3,15,28,.30)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  color:#102033!important;
}
body.pg-phpcodewizard-index .modal-header,
body.pg-esercenti-index .modal-header{
  background:linear-gradient(135deg,#ffffff,#f5fbfa)!important;
  color:#102033!important;
  border-bottom:1px solid rgba(15,32,51,.08)!important;
}
body.pg-phpcodewizard-index .modal-title,
body.pg-esercenti-index .modal-title{font-weight:900;letter-spacing:-.035em;}
body.pg-phpcodewizard-index .modal-footer,
body.pg-esercenti-index .modal-footer{background:#f8fbfd;border-top:1px solid rgba(15,32,51,.08)!important;}
body.pg-phpcodewizard-index .modal .btn-close,
body.pg-esercenti-index .modal .btn-close{filter:none!important;opacity:.75;}
body.pg-phpcodewizard-index .modal label,
body.pg-esercenti-index .modal label{font-size:.88rem;color:#203348;}
body.pg-phpcodewizard-index .modal input,
body.pg-phpcodewizard-index .modal select,
body.pg-esercenti-index .modal input,
body.pg-esercenti-index .modal select{background:#fff!important;color:#102033!important;}
/* Toast moderni */
#akToastContainer{position:fixed;right:1rem;bottom:1rem;z-index:1200;display:grid;gap:.75rem;max-width:min(390px,calc(100vw - 2rem));}
.ak-toast{display:flex;gap:.75rem;align-items:flex-start;padding:1rem 1.05rem;border-radius:18px;color:#fff;box-shadow:0 18px 38px rgba(15,32,51,.22);animation:akToastIn .28s ease both;overflow:hidden;}
.ak-toast:before{content:"";width:1.6rem;height:1.6rem;flex:0 0 1.6rem;border-radius:999px;background:rgba(255,255,255,.95);mask:center/1.05rem 1.05rem no-repeat;}
.ak-toast-success{background:linear-gradient(135deg,#059669,#10b981);}.ak-toast-success:before{background:#fff;mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="m9 16.2-3.5-3.5L4 14.2 9 19 20 8l-1.5-1.5z"/></svg>');}
.ak-toast-error{background:linear-gradient(135deg,#dc2626,#ef4444);}.ak-toast-error:before{background:#fff;mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M18.3 5.7 12 12l6.3 6.3-1.4 1.4L10.6 13.4 4.3 19.7 2.9 18.3 9.2 12 2.9 5.7 4.3 4.3l6.3 6.3 6.3-6.3z"/></svg>');}
.ak-toast-info{background:linear-gradient(135deg,#0284c7,#38bdf8);}.ak-toast-info:before{background:#fff;mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M11 10h2v7h-2zm0-3h2v2h-2zm1-5a10 10 0 1 0 0 20 10 10 0 0 0 0-20"/></svg>');}
.ak-toast-warning{background:linear-gradient(135deg,#d97706,#fbbf24);}.ak-toast-warning:before{background:#fff;mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M1 21h22L12 2zm12-3h-2v-2h2zm0-4h-2v-4h2z"/></svg>');}
.ak-toast strong{display:block;line-height:1.15;margin-bottom:.15rem}.ak-toast div{font-size:.9rem}.ak-toast-close{margin-left:auto;background:transparent!important;color:#fff!important;min-height:0!important;width:auto!important;padding:0!important;box-shadow:none!important;border:0!important;font-size:1.3rem;line-height:1;}
@keyframes akToastIn{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
/* Tabelle desktop più pulite */
body.pg-phpcodewizard-index .table-responsive,
body.pg-esercenti-index .table-responsive{
  border-radius:24px!important;
  border:1px solid rgba(15,32,51,.08)!important;
  box-shadow:0 20px 55px rgba(15,32,51,.10)!important;
}
body.pg-phpcodewizard-index table.dataTable thead th,
body.pg-esercenti-index table.dataTable thead th,
body.pg-phpcodewizard-index .header-table th{
  background:linear-gradient(135deg,#064e4a,#0f766e)!important;
  color:#fff!important;
}
body.pg-phpcodewizard-index table.dataTable tbody tr,
body.pg-esercenti-index table.dataTable tbody tr{transition:transform .15s ease,box-shadow .15s ease,background .15s ease;}
body.pg-phpcodewizard-index .action-group .btn,
body.pg-esercenti-index .action-group .btn,
body.pg-phpcodewizard-index table .btn,
body.pg-esercenti-index table .btn{min-height:36px;padding:.4rem .65rem;border-radius:12px!important;width:auto;}
/* Mobile: tabelle convertite in schede */
@media (max-width:767.98px){
  body.pg-phpcodewizard-index .toolbar,
  body.pg-esercenti-index .toolbar{padding:.7rem;border-radius:18px;}
  body.pg-phpcodewizard-index .dataTables_wrapper .row,
  body.pg-esercenti-index .dataTables_wrapper .row{gap:.55rem;}
  body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_length,
  body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_filter,
  body.pg-esercenti-index .dataTables_wrapper .dataTables_length,
  body.pg-esercenti-index .dataTables_wrapper .dataTables_filter{text-align:left!important;width:100%;}
  body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_filter input,
  body.pg-esercenti-index .dataTables_wrapper .dataTables_filter input{width:100%!important;margin:.35rem 0 0!important;}
  body.pg-phpcodewizard-index .table-responsive,
  body.pg-esercenti-index .table-responsive{border:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important;margin-inline:0!important;}
  body.pg-phpcodewizard-index table.dataTable,
  body.pg-esercenti-index table.dataTable,
  body.pg-phpcodewizard-index .table,
  body.pg-esercenti-index .table{min-width:0!important;width:100%!important;border-collapse:separate!important;background:transparent!important;}
  body.pg-phpcodewizard-index table.dataTable thead,
  body.pg-esercenti-index table.dataTable thead{display:none!important;}
  body.pg-phpcodewizard-index table.dataTable tbody,
  body.pg-esercenti-index table.dataTable tbody{display:grid!important;gap:1rem!important;}
  body.pg-phpcodewizard-index table.dataTable tbody tr,
  body.pg-esercenti-index table.dataTable tbody tr{
    display:block!important;background:#fff!important;border:1px solid rgba(15,32,51,.08)!important;border-radius:22px!important;
    padding:1rem!important;box-shadow:0 14px 34px rgba(15,32,51,.10)!important;overflow:hidden!important;
  }
  body.pg-phpcodewizard-index table.dataTable tbody td,
  body.pg-esercenti-index table.dataTable tbody td{
    display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:1rem!important;width:100%!important;
    border:0!important;border-bottom:1px solid rgba(15,32,51,.07)!important;background:transparent!important;padding:.62rem 0!important;text-align:right!important;
    white-space:normal!important;word-break:break-word!important;
  }
  body.pg-phpcodewizard-index table.dataTable tbody td:last-child,
  body.pg-esercenti-index table.dataTable tbody td:last-child{border-bottom:0!important;justify-content:flex-end!important;gap:.5rem;}
  body.pg-phpcodewizard-index table.dataTable tbody td:before,
  body.pg-esercenti-index table.dataTable tbody td:before{
    content:attr(data-label);font-weight:900;color:#607086;text-transform:uppercase;letter-spacing:.055em;font-size:.72rem;min-width:38%;text-align:left!important;
  }
  body.pg-phpcodewizard-index table.dataTable tbody td:last-child:before,
  body.pg-esercenti-index table.dataTable tbody td:last-child:before{content:"";display:none;}
  body.pg-phpcodewizard-index table.dataTable tbody td .btn,
  body.pg-esercenti-index table.dataTable tbody td .btn{width:auto!important;min-width:44px;}
  body.pg-phpcodewizard-index .modal-dialog,
  body.pg-esercenti-index .modal-dialog{margin:.65rem!important;max-width:calc(100vw - 1.3rem)!important;}
  body.pg-phpcodewizard-index .modal-content,
  body.pg-esercenti-index .modal-content{border-radius:22px!important;max-height:calc(100vh - 1.3rem)!important;}
  body.pg-phpcodewizard-index .modal-body,
  body.pg-esercenti-index .modal-body{max-height:calc(100vh - 12rem)!important;overflow-y:auto!important;}
  #akToastContainer{left:.75rem;right:.75rem;bottom:.75rem;max-width:none;}
}


/* ==========================================================
   FIX DEFINITIVO MODAL 2026-06-20
   Evita che il backdrop resti sopra alla finestra e blocchi
   input/pulsanti. La velatura è gestita dalla .modal stessa.
   ========================================================== */
body.pg-phpcodewizard-index .modal-backdrop,
body.pg-esercenti-index .modal-backdrop{
  display:none!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.pg-phpcodewizard-index.modal-open,
body.pg-esercenti-index.modal-open{
  overflow:auto!important;
  padding-right:0!important;
}
body.pg-phpcodewizard-index .modal.show,
body.pg-esercenti-index .modal.show{
  z-index:2147483000!important;
  pointer-events:auto!important;
  background:rgba(3,14,24,.42)!important;
  opacity:1!important;
}
body.pg-phpcodewizard-index .modal.show .modal-dialog,
body.pg-esercenti-index .modal.show .modal-dialog{
  z-index:2147483001!important;
  pointer-events:auto!important;
}
body.pg-phpcodewizard-index .modal.show .modal-content,
body.pg-esercenti-index .modal.show .modal-content{
  opacity:1!important;
  filter:none!important;
  pointer-events:auto!important;
  background:#fff!important;
  color:#102033!important;
}
body.pg-phpcodewizard-index .modal.show input,
body.pg-phpcodewizard-index .modal.show textarea,
body.pg-phpcodewizard-index .modal.show select,
body.pg-phpcodewizard-index .modal.show button,
body.pg-esercenti-index .modal.show input,
body.pg-esercenti-index .modal.show textarea,
body.pg-esercenti-index .modal.show select,
body.pg-esercenti-index .modal.show button{
  pointer-events:auto!important;
  opacity:1!important;
}
@media (max-width:767.98px){
  body.pg-phpcodewizard-index table.dataTable tbody tr,
  body.pg-esercenti-index table.dataTable tbody tr{
    cursor:default;
  }
}


/* =========================================================
   FIX DEFINITIVO MODULI: modal cliccabile + mobile card
   ========================================================= */
body.pg-moduli-index .modal{z-index:2147483000!important;pointer-events:auto!important;}
body.pg-moduli-index .modal.show{display:block!important;opacity:1!important;background:rgba(3,14,24,.46)!important;}
body.pg-moduli-index .modal-backdrop{display:none!important;opacity:0!important;pointer-events:none!important;}
body.pg-moduli-index.modal-open{overflow:auto!important;padding-right:0!important;}
body.pg-moduli-index .modal-dialog{position:relative!important;z-index:2147483001!important;pointer-events:auto!important;}
body.pg-moduli-index .modal-content{opacity:1!important;filter:none!important;pointer-events:auto!important;background:#fff!important;color:#102033!important;border:1px solid rgba(255,255,255,.76)!important;box-shadow:0 30px 90px rgba(3,15,28,.30)!important;}
body.pg-moduli-index .modal-header{background:linear-gradient(135deg,#ffffff,#f5fbfa)!important;color:#102033!important;border-bottom:1px solid rgba(15,32,51,.08)!important;}
body.pg-moduli-index .modal-footer{background:#f8fbfd;border-top:1px solid rgba(15,32,51,.08)!important;}
body.pg-moduli-index .modal input,body.pg-moduli-index .modal textarea,body.pg-moduli-index .modal select,body.pg-moduli-index .modal button{pointer-events:auto!important;opacity:1!important;}
body.pg-moduli-index .modal label{font-size:.88rem;color:#203348;}
body.pg-moduli-index .modal .form-control,body.pg-moduli-index .modal .form-select{background:#fff!important;color:#102033!important;border-color:#d9e2ec!important;}
body.pg-moduli-index .table-responsive{border-radius:24px!important;border:1px solid rgba(15,32,51,.08)!important;box-shadow:0 20px 55px rgba(15,32,51,.10)!important;}
body.pg-moduli-index table.dataTable thead th{background:linear-gradient(135deg,#064e4a,#0f766e)!important;color:#fff!important;}
body.pg-moduli-index .action-buttons{display:flex;gap:.45rem;flex-wrap:wrap;}
body.pg-moduli-index table .btn{min-height:36px;padding:.4rem .65rem;border-radius:12px!important;width:auto;}
@media (max-width:767.98px){
  body.pg-moduli-index .page-shell{padding:.85rem!important;}
  body.pg-moduli-index .table-responsive{border:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important;}
  body.pg-moduli-index table.dataTable,body.pg-moduli-index .table{min-width:0!important;width:100%!important;border-collapse:separate!important;background:transparent!important;}
  body.pg-moduli-index table.dataTable thead{display:none!important;}
  body.pg-moduli-index table.dataTable tbody{display:grid!important;gap:1rem!important;}
  body.pg-moduli-index table.dataTable tbody tr{display:block!important;background:#fff!important;border:1px solid rgba(15,32,51,.08)!important;border-radius:22px!important;padding:1rem!important;box-shadow:0 14px 34px rgba(15,32,51,.10)!important;overflow:hidden!important;}
  body.pg-moduli-index table.dataTable tbody td{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:1rem!important;width:100%!important;border:0!important;border-bottom:1px solid rgba(15,32,51,.07)!important;background:transparent!important;padding:.62rem 0!important;text-align:right!important;white-space:normal!important;word-break:break-word!important;}
  body.pg-moduli-index table.dataTable tbody td:last-child{border-bottom:0!important;justify-content:flex-end!important;gap:.5rem;}
  body.pg-moduli-index table.dataTable tbody td:before{content:attr(data-label);font-weight:900;color:#607086;text-transform:uppercase;letter-spacing:.055em;font-size:.72rem;min-width:38%;text-align:left!important;}
  body.pg-moduli-index table.dataTable tbody td:last-child:before{content:"";display:none;}
  body.pg-moduli-index .action-buttons{justify-content:flex-end;width:100%;}
  body.pg-moduli-index .action-buttons .btn{width:auto!important;min-width:44px;}
  body.pg-moduli-index .modal-dialog{margin:.65rem!important;max-width:calc(100vw - 1.3rem)!important;}
  body.pg-moduli-index .modal-content{border-radius:22px!important;max-height:calc(100vh - 1.3rem)!important;}
  body.pg-moduli-index .modal-body{max-height:calc(100vh - 12rem)!important;overflow-y:auto!important;}
}


/* =========================================================
   REAL MOCKUP UI - intervento massivo effettivo
   ========================================================= */
:root{--ak-teal:#008b78;--ak-teal-2:#10b99c;--ak-navy:#082f36;--ak-ink:#102033;--ak-soft:#f5f9fc;--ak-line:#e7eef5;--ak-card:#ffffff;--ak-red:#ef3340;--ak-yellow:#ffbb0a;--ak-blue:#0d6efd;--ak-purple:#8a2be2;--ak-radius:22px;--ak-shadow-xl:0 24px 70px rgba(13,35,55,.14);--ak-shadow-md:0 14px 34px rgba(13,35,55,.10)}
body.pg-menu{margin:0!important;background:linear-gradient(120deg,#f7fbff 0%,#eef5fb 45%,#fbf7ef 100%)!important;color:var(--ak-ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;overflow:hidden}.ak-app-shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.ak-sidebar{position:sticky;top:0;height:100vh;background:radial-gradient(circle at 20% 0%,rgba(28,189,161,.22),transparent 34%),linear-gradient(180deg,#063a3f 0%,#031d28 100%);color:#fff;padding:28px 24px;display:flex;flex-direction:column;gap:22px;box-shadow:18px 0 45px rgba(3,29,40,.18);z-index:30}.ak-brand{display:flex;align-items:center;gap:14px;font-size:18px;line-height:1.15}.ak-brand-mark{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#08a98f,#0fd3a8);font-weight:900;box-shadow:0 14px 30px rgba(16,185,156,.25)}.ak-user-card{display:flex;align-items:center;gap:12px;padding:16px 0;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12)}.ak-avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#08323b;font-weight:900;border:3px solid #14c6a3}.ak-user-card small{display:block;color:rgba(255,255,255,.72)}.ak-nav{display:grid;gap:8px}.ak-nav-link{border:0;background:transparent;color:rgba(255,255,255,.86);text-align:left;padding:13px 14px;border-radius:15px;font-weight:750;display:flex;gap:12px;align-items:center;transition:.18s}.ak-nav-link:hover,.ak-nav-link.active{background:linear-gradient(135deg,#0ea987,#12c99f);color:#fff;transform:translateX(3px);box-shadow:0 16px 30px rgba(9,174,143,.24)}.ak-help,.ak-logout{border:0;border-radius:15px;padding:13px 14px;font-weight:850}.ak-help{margin-top:auto;background:rgba(255,255,255,.1);color:#fff}.ak-logout{background:rgba(255,255,255,.06);color:#fff;text-align:left}.ak-main{height:100vh;overflow:hidden;padding:28px;display:flex;flex-direction:column;gap:20px}.ak-topbar{display:grid;grid-template-columns:auto 1fr minmax(240px,360px) auto;gap:18px;align-items:center}.ak-topbar h1{margin:0;font-size:clamp(28px,3vw,44px);font-weight:950;letter-spacing:-.04em;color:#102033}.ak-eyebrow{margin:0 0 2px;color:#0c9a83;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:900}.ak-mobile-toggle{display:none;border:0;background:#fff;border-radius:14px;width:46px;height:46px;box-shadow:var(--ak-shadow-md)}.ak-search-wrap{height:52px;background:#fff;border:1px solid var(--ak-line);border-radius:999px;display:flex;align-items:center;gap:10px;padding:0 18px;box-shadow:0 10px 30px rgba(16,32,51,.06)}.ak-search-wrap input{border:0;outline:0;background:transparent;width:100%;font-weight:650}.ak-top-actions{display:flex;align-items:center;gap:14px}.ak-bell,.ak-profile{height:46px;border-radius:16px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 14px;font-weight:800;box-shadow:0 10px 30px rgba(16,32,51,.06);position:relative}.ak-bell em{position:absolute;right:6px;top:4px;background:#0aac8e;color:#fff;border-radius:999px;font-size:10px;padding:1px 5px;font-style:normal}.ak-action-panel{background:rgba(255,255,255,.78);backdrop-filter:blur(16px);border:1px solid rgba(231,238,245,.9);border-radius:26px;padding:18px;display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:14px;box-shadow:var(--ak-shadow-xl)}.ak-action-card{min-height:92px;border:1px solid var(--ak-line);border-radius:18px;background:#fff;color:var(--ak-ink);padding:18px;text-align:left;display:grid;grid-template-columns:auto 1fr;grid-template-areas:"icon title" "icon sub";column-gap:13px;align-items:center;text-decoration:none;box-shadow:0 12px 28px rgba(16,32,51,.06);transition:.18s}.ak-action-card:hover{transform:translateY(-3px);box-shadow:0 20px 46px rgba(16,32,51,.12)}.ak-action-card span{grid-area:icon;width:42px;height:42px;border-radius:13px;background:#e9fff8;color:#05977f;display:grid;place-items:center;font-size:20px}.ak-action-card strong{grid-area:title;font-size:15px;line-height:1.15}.ak-action-card small{grid-area:sub;color:#6f7b8a;font-weight:650}.ak-create{background:linear-gradient(135deg,#0a967f,#11c69e);color:#fff}.ak-create span{background:rgba(255,255,255,.18);color:#fff}.ak-create small{color:rgba(255,255,255,.84)}.ak-exit{background:linear-gradient(135deg,#ef3340,#ff7614);color:#fff}.ak-exit span{background:rgba(255,255,255,.16);color:#fff}.ak-exit small{color:rgba(255,255,255,.86)}.ak-select-card select{grid-column:1/-1;margin-top:10px;border-radius:14px;font-weight:750}.ak-iframe-card{flex:1;min-height:0;background:rgba(255,255,255,.66);border:1px solid rgba(231,238,245,.95);border-radius:26px;padding:16px;box-shadow:var(--ak-shadow-xl);overflow:hidden}.ak-iframe-card iframe{width:100%;height:100%;border:0;border-radius:18px;background:#fff}.ak-sidebar-backdrop{display:none}
body.pg-menu-tessere,body.pg-menu-tessere-body{background:transparent!important}.pg-menu-tessere .page-shell{max-width:none!important;padding:0!important}.pg-menu-tessere .row{display:grid!important;grid-template-columns:240px minmax(420px,1fr) minmax(360px,.85fr)!important;gap:16px!important;margin:0!important}.pg-menu-tessere .col-12{width:auto!important;max-width:none!important;padding:0!important}.pg-menu-tessere .frame-card{border:1px solid var(--ak-line)!important;border-radius:22px!important;background:#fff!important;box-shadow:0 16px 40px rgba(16,32,51,.08)!important;overflow:hidden!important;height:calc(100vh - 38px)!important}.pg-menu-tessere .frame-title{height:58px!important;margin:0!important;padding:18px 20px!important;font-size:17px!important;font-weight:950!important;color:#102033!important;border-bottom:1px solid var(--ak-line)!important;background:linear-gradient(180deg,#fff,#fbfdff)!important}.pg-menu-tessere .frame-wrap{height:calc(100% - 58px)!important}.pg-menu-tessere .frame-wrap iframe{width:100%!important;height:100%!important;border:0!important;background:#fff!important}.pg-menu-tessere-body .page-shell{padding:0!important;max-width:100%!important}.pg-menu-tessere-body .member-card{border:0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 12px 34px rgba(16,32,51,.08)!important;margin:0 0 16px!important}.pg-menu-tessere-body .member-photo{width:104px!important;height:104px!important;border-radius:22px!important;object-fit:cover!important;box-shadow:0 14px 28px rgba(16,32,51,.16)!important}.pg-menu-tessere-body .member-title{font-size:clamp(22px,3vw,30px)!important;font-weight:950!important;letter-spacing:-.03em!important;color:#102033!important}.pg-menu-tessere-body .member-meta{font-size:16px!important;color:#697789!important}.pg-menu-tessere-body .actions-grid{display:grid!important;gap:16px!important}.pg-menu-tessere-body .action-card{border:0!important;border-radius:18px!important;background:#fff!important;box-shadow:0 12px 30px rgba(16,32,51,.07)!important;overflow:hidden!important}.pg-menu-tessere-body .action-card-inner{padding:18px!important}.pg-menu-tessere-body .btn{min-height:52px!important;border-radius:14px!important;font-weight:900!important}.ak-blue-btn{background:linear-gradient(135deg,#176fff,#0a58ff)!important;color:#fff!important;border:0!important}.ak-purple-btn{background:linear-gradient(135deg,#9d33f2,#6e2dff)!important;color:#fff!important;border:0!important}.ak-green-btn{background:linear-gradient(135deg,#08a98f,#0ac383)!important;color:#fff!important;border:0!important}.pg-menu-tessere-body .action-desc{margin:8px 0 0!important;color:#667487!important;font-size:15px!important}.pg-menu-tessere-body .inline-form{display:flex!important;gap:10px!important;flex-wrap:wrap!important}.pg-menu-tessere-body .inline-form>*{flex:1 1 160px!important}.pg-menu-tessere-body .form-control,.pg-menu-tessere-body .form-select{min-height:48px!important;border-radius:14px!important}.pg-menu-tessere-body .card-body{padding:22px!important}
/* DataTables/cards dentro iframe */.dataTable,.table{border-radius:18px!important;overflow:hidden!important}.table thead th{background:#073f3d!important;color:#fff!important;border:0!important;padding:16px!important}.table tbody td{padding:15px!important;border-color:#eef3f7!important}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-bg-type:#fbfdff!important}.dt-container .dt-search input,.dt-container .dt-length select{border-radius:14px!important;border:1px solid var(--ak-line)!important;min-height:42px!important}.dt-container .dt-paging .dt-paging-button{border-radius:12px!important;border:1px solid var(--ak-line)!important;background:#fff!important}.dt-container .dt-paging .dt-paging-button.current{background:#0a9d85!important;color:#fff!important;border-color:#0a9d85!important}.modal-backdrop{z-index:1040!important}.modal{z-index:1055!important}.modal.show{display:block!important;pointer-events:auto!important}.modal-dialog{pointer-events:auto!important}.modal-content{pointer-events:auto!important;background:#fff!important;opacity:1!important;border-radius:24px!important;box-shadow:0 30px 80px rgba(16,32,51,.35)!important}.modal *{pointer-events:auto}.modal input,.modal select,.modal textarea,.modal button{opacity:1!important;pointer-events:auto!important}.btn-success,.btn-primary{background:linear-gradient(135deg,#07977f,#12be99)!important;border:0!important}.btn-danger{background:linear-gradient(135deg,#ef3340,#ff6a28)!important;border:0!important}
@media(max-width:1200px){.ak-app-shell{grid-template-columns:1fr}.ak-sidebar{position:fixed;left:-310px;transition:.22s;z-index:1000}.ak-sidebar-open .ak-sidebar{left:0}.ak-sidebar-backdrop{display:none}.ak-sidebar-open .ak-sidebar-backdrop{display:block;position:fixed;inset:0;background:rgba(7,18,28,.45);z-index:999}.ak-mobile-toggle{display:grid;place-items:center}.ak-main{padding:18px}.ak-topbar{grid-template-columns:auto 1fr auto}.ak-search-wrap{grid-column:1/-1;order:5}.ak-action-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.ak-action-card{min-height:82px}.pg-menu-tessere .row{grid-template-columns:1fr!important}.pg-menu-tessere .frame-card{height:auto!important;min-height:360px!important}.pg-menu-tessere .frame-stage{height:620px!important}.pg-menu-tessere .frame-body{height:760px!important}.pg-menu-tessere .frame-notes{height:620px!important}}
@media(max-width:768px){body.pg-menu{overflow:auto}.ak-main{height:auto;min-height:100vh}.ak-topbar h1{font-size:26px}.ak-top-actions{display:none}.ak-action-panel{grid-template-columns:1fr;padding:12px;border-radius:20px}.ak-action-card{min-height:76px}.ak-iframe-card{height:calc(100vh - 230px);min-height:640px;padding:8px;border-radius:18px}.pg-menu-tessere .frame-card{border-radius:18px!important}.pg-menu-tessere .frame-stage{height:560px!important}.pg-menu-tessere .frame-body{height:900px!important}.pg-menu-tessere .frame-notes{height:620px!important}.pg-menu-tessere-body .member-card .d-flex{align-items:flex-start!important;text-align:left!important}.pg-menu-tessere-body .member-photo{width:86px!important;height:86px!important}.pg-menu-tessere-body .member-title{font-size:22px!important}.pg-menu-tessere-body .inline-form{display:grid!important}.dt-container table.dataTable thead{display:none!important}.dt-container table.dataTable tbody tr{display:block!important;background:#fff!important;border:1px solid var(--ak-line)!important;border-radius:18px!important;margin:0 0 14px!important;padding:12px!important;box-shadow:0 12px 26px rgba(16,32,51,.08)!important}.dt-container table.dataTable tbody td{display:flex!important;justify-content:space-between!important;gap:14px!important;border:0!important;border-bottom:1px dashed #e7eef5!important;padding:10px 8px!important;text-align:right!important}.dt-container table.dataTable tbody td:last-child{border-bottom:0!important}.dt-container table.dataTable tbody td::before{content:attr(data-label);font-weight:900;color:#102033;text-align:left}.dt-container table.dataTable tbody td:empty{display:none!important}}


/* === Layout fix reale gestione tesseramento: niente pannelli coperti, card più leggibili === */
body.pg-menu .ak-app-shell{grid-template-columns:280px minmax(0,1fr)!important;overflow:hidden!important}
body.pg-menu .ak-main{min-width:0!important;overflow:hidden!important}
body.pg-menu .ak-iframe-card{position:relative!important;min-width:0!important;overflow:hidden!important}
body.pg-menu .ak-iframe-card iframe{display:block!important;min-width:0!important}

body.pg-menu-tessere.ak-card-workspace{margin:0!important;background:transparent!important;overflow:hidden!important;width:100%!important;height:100vh!important}
.ak-workspace{box-sizing:border-box;width:100%;height:100vh;display:grid;grid-template-columns:minmax(230px,270px) minmax(430px,1fr) minmax(360px,.9fr);gap:18px;padding:0;margin:0;overflow:hidden}
.ak-panel{min-width:0;min-height:0;background:#fff;border:1px solid #e7eef5;border-radius:24px;box-shadow:0 18px 45px rgba(16,32,51,.09);overflow:hidden;display:grid;grid-template-rows:58px minmax(0,1fr)}
.ak-panel-head{height:58px;display:flex;align-items:center;gap:10px;padding:0 20px;font-weight:950;color:#102033;background:linear-gradient(180deg,#fff,#fbfdff);border-bottom:1px solid #e7eef5}
.ak-panel-head i{width:34px;height:34px;border-radius:12px;background:#e9fff8;color:#07977f;display:grid;place-items:center;font-size:18px}
.ak-panel-frame{min-width:0;min-height:0;overflow:hidden;background:#f8fbff}
.ak-panel-frame iframe{display:block;width:100%;height:100%;border:0;background:#fff;overflow:auto!important}
.ak-panel-stage .ak-panel-frame{background:linear-gradient(180deg,#eff8f5,#fff)}
.ak-panel-notes .ak-panel-frame{background:linear-gradient(180deg,#fff6d9,#fff)}

body.pg-stage{background:transparent!important;overflow:auto!important}
body.pg-stage .page-shell{padding:18px!important;max-width:100%!important;min-width:0!important}
body.pg-stage .stage-card{border:0!important;border-radius:22px!important;background:linear-gradient(180deg,#f0fbf7,#ffffff)!important;box-shadow:none!important;overflow:visible!important}
body.pg-stage .stage-card .card-body{padding:24px 18px!important}
body.pg-stage .page-title{font-size:21px!important;line-height:1.15!important;margin-bottom:14px!important;color:#102033!important;text-align:center!important}
body.pg-stage .intro-text{font-size:14px!important;color:#667487!important;text-align:center!important;max-width:190px!important;margin:0 auto 20px!important}
body.pg-stage .step-list{display:grid!important;gap:14px!important}
body.pg-stage .step-item{display:grid!important;grid-template-columns:40px 1fr auto!important;align-items:center!important;gap:12px!important;min-width:0!important;padding:14px!important;border-radius:18px!important;background:#fff!important;border:1px solid #d8efe8!important;box-shadow:0 10px 24px rgba(16,32,51,.06)!important}
body.pg-stage .step-item::after{content:'OK';justify-self:end;background:#dff8eb;color:#07975f;font-weight:950;border-radius:999px;padding:4px 10px;font-size:12px}
body.pg-stage .step-item.ko::after{content:'KO';background:#ffe9e9;color:#d93636}
body.pg-stage .step-icon{width:36px!important;height:36px!important;border-radius:12px!important;object-fit:contain!important;background:#eef8ff!important;padding:4px!important}
body.pg-stage .step-label{font-size:15px!important;line-height:1.25!important;color:#102033!important;font-weight:900!important}
body.pg-stage .step-status{display:none!important}
body.pg-stage .badge-refresh{display:inline-flex!important;margin-top:18px!important;padding:9px 12px!important;border-radius:999px!important;background:#eaf2ff!important;color:#176fff!important;font-weight:850!important;font-size:12px!important}

body.pg-menu-tessere-body{background:transparent!important;overflow:auto!important}
body.pg-menu-tessere-body .page-shell{padding:18px!important;max-width:100%!important;min-width:0!important}
body.pg-menu-tessere-body .member-card{border:0!important;border-radius:24px!important;background:#fff!important;box-shadow:0 14px 34px rgba(16,32,51,.08)!important;margin-bottom:18px!important}
body.pg-menu-tessere-body .member-card .card-body{padding:24px!important}
body.pg-menu-tessere-body .member-photo{width:96px!important;height:96px!important;border-radius:22px!important;object-fit:cover!important;flex:0 0 auto!important;box-shadow:0 14px 28px rgba(16,32,51,.16)!important}
body.pg-menu-tessere-body .member-title{font-size:clamp(22px,2.6vw,32px)!important;line-height:1.12!important;margin:0 0 8px!important;color:#102033!important;font-weight:950!important;letter-spacing:-.035em!important}
body.pg-menu-tessere-body .member-meta{margin:0!important;color:#667487!important;font-size:16px!important}
body.pg-menu-tessere-body .actions-grid.ak-detail-actions{display:grid!important;gap:16px!important;padding-bottom:18px!important}
body.pg-menu-tessere-body .action-card{border:0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 14px 34px rgba(16,32,51,.075)!important;overflow:hidden!important}
body.pg-menu-tessere-body .action-card-inner{padding:18px!important}
body.pg-menu-tessere-body .action-card-modern .action-card-inner{display:grid!important;grid-template-columns:54px minmax(0,1fr) 48px!important;align-items:center!important;gap:16px!important}
body.pg-menu-tessere-body .action-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;color:#fff;font-size:24px;box-shadow:0 14px 26px rgba(16,32,51,.14)}
body.pg-menu-tessere-body .ak-icon-blue{background:linear-gradient(135deg,#176fff,#0b5cff)}
body.pg-menu-tessere-body .ak-icon-purple{background:linear-gradient(135deg,#9d33f2,#7134ff)}
body.pg-menu-tessere-body .ak-icon-green{background:linear-gradient(135deg,#08a98f,#0ac383)}
body.pg-menu-tessere-body .action-copy strong{display:block;color:#102033;font-weight:950;font-size:18px;margin-bottom:3px}
body.pg-menu-tessere-body .action-desc{margin:0!important;color:#667487!important;font-size:15px!important;line-height:1.35!important}
body.pg-menu-tessere-body .ak-round-action{width:48px!important;height:48px!important;border-radius:16px!important;background:#f6f9fc!important;color:#516174!important;border:1px solid #e7eef5!important;display:grid!important;place-items:center!important;padding:0!important}
body.pg-menu-tessere-body .ak-round-action:hover{background:#0a9d85!important;color:#fff!important}
body.pg-menu-tessere-body .inline-form{display:flex!important;gap:10px!important;align-items:center!important;flex-wrap:wrap!important}
body.pg-menu-tessere-body .inline-form .form-control,body.pg-menu-tessere-body .inline-form .form-select{flex:1 1 220px!important;min-width:0!important}
body.pg-menu-tessere-body .form-control,body.pg-menu-tessere-body .form-select{min-height:48px!important;border-radius:15px!important;border:1px solid #dfe8f1!important}

@media(max-width:1500px){.ak-workspace{grid-template-columns:minmax(220px,250px) minmax(390px,1fr) minmax(330px,.85fr);gap:14px}.ak-panel-head{padding:0 16px}.ak-panel-head i{display:none}}
@media(max-width:1200px){body.pg-menu .ak-app-shell{grid-template-columns:1fr!important}.ak-workspace{height:auto;min-height:100vh;grid-template-columns:1fr;overflow:visible;padding:0}.ak-panel{min-height:440px}.ak-panel-stage{min-height:520px}.ak-panel-details{min-height:760px}.ak-panel-notes{min-height:620px}body.pg-menu-tessere.ak-card-workspace{height:auto;overflow:auto!important}}
@media(max-width:768px){.ak-workspace{gap:14px}.ak-panel{border-radius:18px}.ak-panel-head{height:52px;font-size:15px}.ak-panel-stage{min-height:600px}.ak-panel-details{min-height:920px}.ak-panel-notes{min-height:620px}body.pg-stage .page-shell,body.pg-menu-tessere-body .page-shell{padding:12px!important}body.pg-menu-tessere-body .member-card .d-flex{align-items:flex-start!important}body.pg-menu-tessere-body .member-photo{width:82px!important;height:82px!important}body.pg-menu-tessere-body .member-title{font-size:21px!important}body.pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:46px minmax(0,1fr) 42px!important;gap:12px!important}body.pg-menu-tessere-body .action-icon{width:46px;height:46px;font-size:20px}body.pg-menu-tessere-body .action-copy strong{font-size:16px}body.pg-menu-tessere-body .ak-round-action{width:42px!important;height:42px!important}.ak-panel-frame iframe{overflow:auto!important}}

/* =========================================================
   WOW UI GESTIONE TESSERA - v20260620
   Restyling reale pagina tessera: hero, checklist, azioni,
   note/timeline e responsive desktop-mobile.
   ========================================================= */
body.pg-menu-tessere.ak-wow-tessera{
  min-height:100vh!important;
  width:100%!important;
  height:auto!important;
  overflow:auto!important;
  background:
    radial-gradient(circle at top left, rgba(8,169,143,.12), transparent 30%),
    radial-gradient(circle at 85% 10%, rgba(255,187,10,.14), transparent 26%),
    linear-gradient(135deg,#f7fbff 0%,#eef5fb 55%,#fff9eb 100%)!important;
  color:#102033!important;
}
.ak-detail-dashboard{
  min-height:100vh;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:18px;
  padding:18px;
  box-sizing:border-box;
}
.ak-ticket-hero{
  min-width:0;
  border:1px solid rgba(231,238,245,.9);
  border-radius:30px;
  background:rgba(255,255,255,.86);
  box-shadow:0 24px 70px rgba(13,35,55,.12);
  backdrop-filter:blur(14px);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
  padding:20px 24px;
  position:relative;
  overflow:hidden;
}
.ak-ticket-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(8,151,127,.12),transparent 38%,rgba(255,187,10,.12));
  pointer-events:none;
}
.ak-ticket-identity,.ak-ticket-meta{position:relative;z-index:1}
.ak-ticket-identity{display:flex;align-items:center;gap:18px;min-width:0}
.ak-ticket-photo-wrap{width:86px;height:86px;flex:0 0 auto;position:relative}
.ak-ticket-photo,.ak-ticket-photo-placeholder{
  width:86px;height:86px;border-radius:26px;display:grid;place-items:center;object-fit:cover;
  background:linear-gradient(135deg,#0c9b83,#11c69e);color:#fff;font-size:42px;
  box-shadow:0 18px 34px rgba(8,151,127,.22);border:4px solid rgba(255,255,255,.85)
}
.ak-ticket-photo-wrap:after{content:"";position:absolute;right:-3px;bottom:-3px;width:24px;height:24px;border-radius:50%;background:#12b886;border:4px solid #fff;box-shadow:0 8px 18px rgba(18,184,134,.3)}
.ak-ticket-hero h1{font-size:clamp(28px,3.2vw,44px);line-height:1;margin:0;font-weight:1000;letter-spacing:-.055em;color:#07182b}
.ak-ticket-name{margin:.35rem 0 0;color:#607086;font-size:clamp(16px,1.5vw,20px);font-weight:750}
.ak-ticket-meta{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;max-width:52%}
.ak-status-pill,.ak-meta-chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:10px 14px;font-weight:900;font-size:13px;border:1px solid rgba(231,238,245,.9);background:#fff;box-shadow:0 10px 24px rgba(16,32,51,.07);white-space:nowrap}
.ak-status-pill.is-active{background:#e8fff4;color:#03835f;border-color:#c6f6df}.ak-status-pill.is-neutral{background:#fff8db;color:#9a6500;border-color:#ffe49a}.ak-meta-chip{color:#43556b;background:rgba(255,255,255,.78)}
.ak-meta-chip i{color:#0b9d85}

.ak-wow-tessera .ak-workspace.ak-wow-grid{
  height:auto!important;min-height:0!important;width:100%!important;
  display:grid!important;grid-template-columns:minmax(250px,300px) minmax(520px,1.15fr) minmax(420px,.95fr)!important;
  gap:18px!important;padding:0!important;margin:0!important;overflow:visible!important;
}
.ak-wow-tessera .ak-panel{border-radius:28px!important;background:rgba(255,255,255,.92)!important;border:1px solid rgba(231,238,245,.92)!important;box-shadow:0 24px 70px rgba(13,35,55,.10)!important;min-width:0!important;overflow:hidden!important;display:grid!important;grid-template-rows:64px minmax(0,1fr)!important;min-height:720px!important}
.ak-wow-tessera .ak-panel-stage{min-height:720px!important}.ak-wow-tessera .ak-panel-details{min-height:720px!important}.ak-wow-tessera .ak-panel-notes{min-height:720px!important}
.ak-wow-tessera .ak-panel-head{height:64px!important;padding:0 22px!important;display:flex!important;align-items:center!important;gap:12px!important;border-bottom:1px solid rgba(231,238,245,.95)!important;background:linear-gradient(180deg,#fff,#fbfdff)!important;color:#102033!important}
.ak-wow-tessera .ak-panel-head i{display:grid!important;width:38px!important;height:38px!important;border-radius:14px!important;place-items:center!important;background:#e8fff7!important;color:#07977f!important;flex:0 0 auto!important}
.ak-wow-tessera .ak-panel-head span{font-size:16px;font-weight:1000}.ak-wow-tessera .ak-panel-head small{margin-left:auto;color:#8290a3;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}
.ak-wow-tessera .ak-panel-frame{min-height:0!important;overflow:hidden!important;background:linear-gradient(180deg,#f8fbff,#fff)!important}.ak-wow-tessera .ak-panel-frame iframe{width:100%!important;height:100%!important;min-height:720px!important;border:0!important;background:transparent!important;display:block!important}

/* Checklist più elegante */
body.pg-stage{background:transparent!important;overflow:auto!important}.pg-stage .page-shell{padding:18px!important}.pg-stage .stage-card{min-height:calc(100vh - 36px);display:flex;align-items:stretch;background:linear-gradient(180deg,#f0fff9,#ffffff)!important;border:1px solid #dcefe9!important;border-radius:26px!important;box-shadow:none!important}.pg-stage .stage-card .card-body{width:100%;display:flex;flex-direction:column;padding:22px!important}.pg-stage .page-title{font-size:22px!important;font-weight:1000!important;letter-spacing:-.04em!important}.pg-stage .intro-text{color:#667487!important;font-size:14px!important}.pg-stage .step-list{display:grid!important;gap:14px!important;margin-top:8px!important}.pg-stage .step-item{position:relative;grid-template-columns:44px minmax(0,1fr) auto!important;border-radius:20px!important;background:#fff!important;border:1px solid #dbf0e9!important;box-shadow:0 14px 30px rgba(16,32,51,.07)!important;padding:14px!important;transition:.2s ease!important}.pg-stage .step-item:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(16,32,51,.10)!important}.pg-stage .step-item.ok:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:4px;border-radius:0 999px 999px 0;background:#12b886}.pg-stage .step-icon{width:40px!important;height:40px!important;border-radius:14px!important;background:#e9fff7!important;padding:7px!important}.pg-stage .step-label{font-size:15px!important;font-weight:950!important}.pg-stage .badge-refresh{margin-top:auto!important;align-self:center!important;background:#eaf2ff!important;color:#176fff!important;border:1px solid #d7e7ff!important}

/* Corpo azioni tessera */
body.pg-menu-tessere-body{background:transparent!important}.pg-menu-tessere-body .page-shell{padding:18px!important}.pg-menu-tessere-body .ak-member-mini{background:linear-gradient(135deg,#ffffff,#f8fbff)!important;border:1px solid #edf2f7!important}.pg-menu-tessere-body .ak-member-mini .card-body{padding:20px!important}.pg-menu-tessere-body .member-photo{width:80px!important;height:80px!important;border-radius:22px!important}.pg-menu-tessere-body .mini-label{display:inline-flex;margin-bottom:5px;text-transform:uppercase;letter-spacing:.085em;font-size:11px;font-weight:950;color:#0b9d85}.pg-menu-tessere-body .member-title{font-size:clamp(20px,2.2vw,27px)!important}.pg-menu-tessere-body .ak-mini-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.pg-menu-tessere-body .ak-mini-badges span{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#f4f8fb;color:#607086;font-size:12px;font-weight:850}.pg-menu-tessere-body .ak-mini-badges i{color:#0b9d85}
.pg-menu-tessere-body .actions-grid.ak-detail-actions{gap:16px!important}.pg-menu-tessere-body .action-card{border:1px solid #edf2f7!important;border-radius:24px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 14px 36px rgba(16,32,51,.075)!important;transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease!important}.pg-menu-tessere-body .action-card:hover{transform:translateY(-3px);border-color:#cbeee5!important;box-shadow:0 22px 48px rgba(16,32,51,.12)!important}.pg-menu-tessere-body .action-card-inner{padding:20px!important}.pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:58px minmax(0,1fr) 50px!important}.pg-menu-tessere-body .action-icon{width:58px!important;height:58px!important;border-radius:20px!important}.pg-menu-tessere-body .action-copy strong{font-size:19px!important}.pg-menu-tessere-body .ak-round-action{background:#f7fafc!important;border:1px solid #e3ebf2!important}.pg-menu-tessere-body .ak-round-action i{font-size:18px}.pg-menu-tessere-body .action-card-form{background:linear-gradient(180deg,#fff,#fbfdff)!important}.pg-menu-tessere-body .form-action-title{display:flex;align-items:center;gap:12px;margin-bottom:14px}.pg-menu-tessere-body .form-action-title>i{width:42px;height:42px;border-radius:15px;display:grid;place-items:center;background:#e8fff7;color:#07977f;font-size:20px;flex:0 0 auto}.pg-menu-tessere-body .form-action-title strong{display:block;color:#102033;font-weight:1000}.pg-menu-tessere-body .form-action-title p{margin:1px 0 0;color:#667487;font-size:13px}.pg-menu-tessere-body .btn-primary{background:linear-gradient(135deg,#176fff,#0057db)!important;border:0!important;border-radius:14px!important;font-weight:900!important;box-shadow:0 10px 22px rgba(23,111,255,.20)!important}.pg-menu-tessere-body .form-control,.pg-menu-tessere-body .form-select{border-radius:16px!important;background:#fff!important;box-shadow:inset 0 1px 0 rgba(16,32,51,.02)!important}.pg-menu-tessere-body .inline-form{gap:10px!important}

/* Note come area timeline/empty state */
body.pg-notes-dashboard{background:transparent!important;overflow:auto!important}.pg-notes-dashboard .page-shell{padding:18px!important}.pg-notes-dashboard .dashboard-card{border:1px solid #edf2f7!important;border-radius:26px!important;background:rgba(255,255,255,.95)!important;box-shadow:0 14px 34px rgba(16,32,51,.07)!important}.pg-notes-dashboard .page-title{font-weight:1000!important;letter-spacing:-.035em!important}.pg-notes-dashboard .page-subtitle{color:#667487!important}.pg-notes-dashboard .btn-warning{background:linear-gradient(135deg,#ffc107,#ffb000)!important;border:0!important;border-radius:16px!important;color:#111!important;font-weight:950!important;min-height:44px;padding-inline:22px!important}.pg-notes-dashboard .refresh-badge{background:#eaf2ff!important;color:#176fff!important;border-radius:999px!important;padding:10px 14px!important;font-weight:850!important;border:1px solid #dbe9ff!important}.pg-notes-dashboard .notes-area-card{position:relative;min-height:calc(100vh - 170px)!important;border:1px dashed #d7e1ec!important;border-radius:26px!important;background:linear-gradient(rgba(255,255,255,.92),rgba(255,255,255,.92)),linear-gradient(90deg,#eef3f8 1px,transparent 1px),linear-gradient(#eef3f8 1px,transparent 1px)!important;background-size:auto,28px 28px,28px 28px!important;box-shadow:0 14px 34px rgba(16,32,51,.06)!important;overflow:hidden!important}.pg-notes-dashboard #containment-wrapper{min-height:calc(100vh - 170px)!important;position:relative!important}.pg-notes-dashboard .ak-notes-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;color:#6b7788;z-index:1;pointer-events:none}.pg-notes-dashboard .ak-notes-empty i{width:72px;height:72px;border-radius:24px;display:grid;place-items:center;background:#f0f6ff;color:#607086;font-size:34px;border:1px solid #dde8f5}.pg-notes-dashboard .ak-notes-empty strong{font-size:21px;color:#102033}.pg-notes-dashboard .ak-notes-empty span{max-width:310px}.pg-notes-dashboard .ak-note-card{width:270px!important;min-height:150px!important;background:#fff!important;border:1px solid #edf2f7!important;border-radius:22px!important;box-shadow:0 18px 40px rgba(16,32,51,.12)!important;padding:14px!important;z-index:2}.pg-notes-dashboard .ak-note-topline{display:flex;align-items:center;gap:10px;margin-bottom:10px}.pg-notes-dashboard .ak-note-avatar{width:36px;height:36px;border-radius:14px;background:#e8fff7;color:#07977f;display:grid;place-items:center}.pg-notes-dashboard .ak-note-topline strong{display:block;font-size:14px;color:#102033}.pg-notes-dashboard .ak-note-topline small{display:block;color:#8290a3;font-size:12px}.pg-notes-dashboard .quote-box{border-radius:16px!important;border:0!important;background:#fff8db!important;box-shadow:none!important;margin:0!important;padding:12px!important;min-height:70px}.pg-notes-dashboard .quote-text{margin:0;color:#233448}.pg-notes-dashboard .quick{width:100%;border:1px solid #dfe8f1;border-radius:14px;padding:10px;background:#fff;color:#102033}.pg-notes-dashboard .blog-post-actions img{width:24px;height:24px}

@media(max-width:1400px){.ak-wow-tessera .ak-workspace.ak-wow-grid{grid-template-columns:minmax(230px,270px) minmax(480px,1fr) minmax(380px,.9fr)!important;gap:14px!important}.ak-ticket-meta{max-width:58%}.ak-status-pill,.ak-meta-chip{padding:9px 11px}}
@media(max-width:1180px){.ak-detail-dashboard{height:auto;min-height:100vh;overflow:visible}.ak-ticket-hero{align-items:flex-start;flex-direction:column}.ak-ticket-meta{max-width:none;justify-content:flex-start}.ak-wow-tessera .ak-workspace.ak-wow-grid{grid-template-columns:1fr!important}.ak-wow-tessera .ak-panel{min-height:auto!important}.ak-wow-tessera .ak-panel-stage .ak-panel-frame iframe{min-height:560px!important}.ak-wow-tessera .ak-panel-details .ak-panel-frame iframe{min-height:760px!important}.ak-wow-tessera .ak-panel-notes .ak-panel-frame iframe{min-height:650px!important}}
@media(max-width:768px){.ak-detail-dashboard{padding:12px;gap:12px}.ak-ticket-hero{border-radius:22px;padding:16px}.ak-ticket-identity{gap:12px}.ak-ticket-photo-wrap,.ak-ticket-photo,.ak-ticket-photo-placeholder{width:66px;height:66px;border-radius:20px}.ak-ticket-hero h1{font-size:28px}.ak-ticket-name{font-size:15px}.ak-ticket-meta{gap:8px}.ak-status-pill,.ak-meta-chip{font-size:12px;padding:8px 10px}.ak-wow-tessera .ak-panel{border-radius:22px!important;grid-template-rows:58px minmax(0,1fr)!important}.ak-wow-tessera .ak-panel-head{height:58px!important;padding:0 16px!important}.ak-wow-tessera .ak-panel-head small{display:none}.ak-wow-tessera .ak-panel-frame iframe{min-height:unset!important}.ak-wow-tessera .ak-panel-stage .ak-panel-frame iframe{min-height:590px!important}.ak-wow-tessera .ak-panel-details .ak-panel-frame iframe{min-height:900px!important}.ak-wow-tessera .ak-panel-notes .ak-panel-frame iframe{min-height:640px!important}.pg-menu-tessere-body .page-shell,.pg-stage .page-shell,.pg-notes-dashboard .page-shell{padding:12px!important}.pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:48px minmax(0,1fr) 42px!important}.pg-menu-tessere-body .action-icon{width:48px!important;height:48px!important}.pg-menu-tessere-body .inline-form{display:grid!important;grid-template-columns:1fr!important}.pg-menu-tessere-body .inline-form .btn{width:100%}.pg-notes-dashboard .toolbar-actions{width:100%;align-items:stretch!important;flex-direction:column!important}.pg-notes-dashboard .toolbar-actions form,.pg-notes-dashboard .toolbar-actions button{width:100%}.pg-notes-dashboard .notes-area-card,.pg-notes-dashboard #containment-wrapper{min-height:520px!important}.pg-notes-dashboard .ak-note-card{position:relative!important;left:auto!important;top:auto!important;width:100%!important;margin:12px 0!important}.pg-notes-dashboard #containment-wrapper{padding:12px!important}}


/* ==========================================================
   UI REALE GESTIONE TESSERA - VERSIONE 20260620-ui-real-v4
   Modifica effettiva di codice/CSS: layout non coperto,
   dashboard più moderna, iframe leggibili desktop/mobile.
   ========================================================== */
:root{
  --ak-v4-bg:#f4f8fb;
  --ak-v4-panel:#ffffff;
  --ak-v4-ink:#0d1f33;
  --ak-v4-muted:#687789;
  --ak-v4-line:#e5edf5;
  --ak-v4-teal:#07977f;
  --ak-v4-teal-2:#13c7a1;
  --ak-v4-blue:#176fff;
  --ak-v4-yellow:#ffbd14;
  --ak-v4-shadow:0 18px 48px rgba(13,35,55,.10);
  --ak-v4-shadow-strong:0 30px 90px rgba(13,35,55,.16);
}

/* Shell principale: meno ingombrante e nessun contenuto sotto la sidebar */
body.pg-menu.ak-shell-enabled{overflow:hidden!important;background:linear-gradient(135deg,#f6fbff 0%,#eef6f7 48%,#fff8ec 100%)!important;}
body.pg-menu .ak-app-shell{grid-template-columns:238px minmax(0,1fr)!important;width:100vw!important;min-height:100vh!important;overflow:hidden!important;}
body.pg-menu .ak-sidebar{width:238px!important;padding:18px 16px!important;gap:16px!important;box-shadow:14px 0 44px rgba(3,29,40,.17)!important;}
body.pg-menu .ak-brand{font-size:16px!important;gap:11px!important;}
body.pg-menu .ak-brand-mark{width:44px!important;height:44px!important;border-radius:14px!important;}
body.pg-menu .ak-user-card{padding:13px 0!important;}
body.pg-menu .ak-avatar{width:42px!important;height:42px!important;}
body.pg-menu .ak-nav{gap:7px!important;}
body.pg-menu .ak-nav-link{min-height:43px!important;padding:10px 12px!important;border-radius:14px!important;font-size:14px!important;}
body.pg-menu .ak-nav-link:hover,
body.pg-menu .ak-nav-link.active{transform:none!important;}
body.pg-menu .ak-help,
body.pg-menu .ak-logout{padding:11px 12px!important;border-radius:14px!important;}
body.pg-menu .ak-main{height:100vh!important;min-width:0!important;padding:18px!important;gap:14px!important;overflow:hidden!important;}
body.pg-menu .ak-topbar{grid-template-columns:auto minmax(0,1fr) minmax(250px,390px) auto!important;gap:14px!important;flex:0 0 auto!important;}
body.pg-menu .ak-topbar h1{font-size:clamp(25px,2.2vw,36px)!important;line-height:1.05!important;}
body.pg-menu .ak-action-panel{flex:0 0 auto!important;padding:14px!important;border-radius:23px!important;gap:12px!important;grid-template-columns:repeat(6,minmax(118px,1fr))!important;}
body.pg-menu .ak-action-card{min-height:74px!important;padding:12px!important;border-radius:17px!important;}
body.pg-menu .ak-action-card span{width:36px!important;height:36px!important;border-radius:12px!important;}
body.pg-menu .ak-action-card strong{font-size:13.5px!important;}
body.pg-menu .ak-action-card small{font-size:11.5px!important;}
body.pg-menu .ak-select-card select{min-height:38px!important;margin-top:5px!important;font-size:13px!important;}
body.pg-menu .ak-iframe-card{flex:1 1 auto!important;min-height:0!important;padding:12px!important;border-radius:24px!important;overflow:hidden!important;background:rgba(255,255,255,.72)!important;}
body.pg-menu .ak-iframe-card iframe{display:block!important;width:100%!important;height:100%!important;min-width:0!important;border-radius:18px!important;background:#f7fbff!important;}

/* Pagina gestione tessera dentro iframe: vera griglia SaaS, nessun taglio laterale */
body.pg-menu-tessere.ak-wow-tessera,
body.pg-menu-tessere.ak-card-workspace{margin:0!important;min-height:100vh!important;overflow:auto!important;background:linear-gradient(135deg,#f6fbff 0%,#edf6f7 55%,#fff8e9 100%)!important;color:var(--ak-v4-ink)!important;}
.ak-detail-dashboard{height:auto!important;min-height:100vh!important;width:100%!important;max-width:none!important;padding:18px!important;display:flex!important;flex-direction:column!important;gap:18px!important;overflow:visible!important;box-sizing:border-box!important;}
.ak-ticket-hero{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)!important;align-items:center!important;gap:20px!important;margin:0!important;padding:22px!important;border-radius:28px!important;background:linear-gradient(135deg,#ffffff 0%,#f7fffc 58%,#fff4db 100%)!important;border:1px solid rgba(229,237,245,.95)!important;box-shadow:var(--ak-v4-shadow)!important;overflow:hidden!important;}
.ak-ticket-identity{display:flex!important;align-items:center!important;gap:18px!important;min-width:0!important;}
.ak-ticket-photo-wrap,
.ak-ticket-photo,
.ak-ticket-photo-placeholder{width:86px!important;height:86px!important;border-radius:24px!important;flex:0 0 86px!important;}
.ak-ticket-photo{object-fit:cover!important;box-shadow:0 16px 32px rgba(13,35,55,.18)!important;}
.ak-ticket-hero h1{font-size:clamp(30px,3vw,46px)!important;line-height:1!important;margin:0!important;color:#07182b!important;letter-spacing:-.06em!important;}
.ak-ticket-name{font-size:18px!important;margin:.35rem 0 0!important;color:var(--ak-v4-muted)!important;font-weight:800!important;}
.ak-ticket-meta{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;max-width:none!important;}
.ak-status-pill,.ak-meta-chip{min-height:38px!important;display:inline-flex!important;align-items:center!important;gap:7px!important;border-radius:999px!important;padding:9px 12px!important;background:#fff!important;border:1px solid var(--ak-v4-line)!important;box-shadow:0 10px 24px rgba(13,35,55,.06)!important;font-size:13px!important;font-weight:900!important;color:#21344a!important;}
.ak-status-pill.is-active{background:#e8fff6!important;color:#057e6b!important;border-color:#c7f0e4!important;}

.ak-wow-tessera .ak-workspace.ak-wow-grid{display:grid!important;width:100%!important;height:auto!important;min-height:0!important;grid-template-columns:minmax(286px,320px) minmax(430px,1.05fr) minmax(390px,.95fr)!important;gap:18px!important;align-items:stretch!important;overflow:visible!important;padding:0!important;margin:0!important;box-sizing:border-box!important;}
.ak-wow-tessera .ak-panel{display:grid!important;grid-template-rows:58px minmax(0,1fr)!important;min-width:0!important;min-height:620px!important;border:1px solid rgba(229,237,245,.95)!important;border-radius:26px!important;background:rgba(255,255,255,.92)!important;box-shadow:var(--ak-v4-shadow)!important;overflow:hidden!important;}
.ak-wow-tessera .ak-panel-stage{min-height:640px!important;}
.ak-wow-tessera .ak-panel-details{min-height:760px!important;}
.ak-wow-tessera .ak-panel-notes{min-height:760px!important;}
.ak-wow-tessera .ak-panel-head{height:58px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:0 18px!important;border-bottom:1px solid var(--ak-v4-line)!important;background:linear-gradient(180deg,#fff,#fbfdff)!important;color:var(--ak-v4-ink)!important;font-weight:1000!important;}
.ak-wow-tessera .ak-panel-head i{display:grid!important;place-items:center!important;width:32px!important;height:32px!important;border-radius:12px!important;background:#e9fff8!important;color:var(--ak-v4-teal)!important;font-size:16px!important;}
.ak-wow-tessera .ak-panel-head small{margin-left:auto!important;color:#8190a2!important;text-transform:uppercase!important;letter-spacing:.07em!important;font-size:10px!important;font-weight:950!important;}
.ak-wow-tessera .ak-panel-frame{min-height:0!important;height:100%!important;overflow:hidden!important;background:#f8fbfd!important;}
.ak-wow-tessera .ak-panel-frame iframe{display:block!important;width:100%!important;height:100%!important;min-height:100%!important;border:0!important;background:transparent!important;}
.ak-wow-tessera .ak-panel-stage .ak-panel-frame iframe{min-height:640px!important;}
.ak-wow-tessera .ak-panel-details .ak-panel-frame iframe{min-height:760px!important;}
.ak-wow-tessera .ak-panel-notes .ak-panel-frame iframe{min-height:760px!important;}

/* Checklist: più compatta, non tagliata */
body.pg-stage{margin:0!important;background:transparent!important;overflow:auto!important;}
.pg-stage .page-shell{padding:14px!important;width:100%!important;max-width:none!important;box-sizing:border-box!important;}
.pg-stage .stage-card{border:0!important;border-radius:22px!important;background:linear-gradient(180deg,#ffffff,#f3fff9)!important;box-shadow:none!important;min-height:0!important;}
.pg-stage .stage-card .card-body{padding:18px!important;}
.pg-stage .page-title{font-size:20px!important;line-height:1.15!important;margin-bottom:10px!important;font-weight:1000!important;letter-spacing:-.03em!important;color:#0f263b!important;text-align:center!important;}
.pg-stage .intro-text{font-size:13.5px!important;line-height:1.45!important;color:#657386!important;text-align:center!important;margin-bottom:16px!important;}
.pg-stage .step-list{display:grid!important;gap:12px!important;margin:0!important;}
.pg-stage .step-item{display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;border-radius:18px!important;background:#fff!important;border:1px solid #d9f2e9!important;box-shadow:0 12px 26px rgba(13,35,55,.07)!important;padding:12px!important;min-width:0!important;}
.pg-stage .step-icon{width:36px!important;height:36px!important;border-radius:13px!important;object-fit:contain!important;background:#eafff8!important;padding:6px!important;}
.pg-stage .step-label{font-size:14px!important;line-height:1.2!important;font-weight:950!important;color:#102033!important;word-break:normal!important;}
.pg-stage .step-status{font-size:12px!important;font-weight:1000!important;}
.pg-stage .badge-refresh{display:block!important;margin:14px auto 0!important;background:#eaf2ff!important;color:#176fff!important;border-radius:999px!important;padding:9px 12px!important;font-weight:900!important;font-size:12px!important;}

/* Dettagli tessera: azioni card con icone, più wow e leggibili */
body.pg-menu-tessere-body{margin:0!important;background:transparent!important;overflow:auto!important;}
.pg-menu-tessere-body .page-shell{padding:14px!important;max-width:none!important;width:100%!important;box-sizing:border-box!important;}
.pg-menu-tessere-body .ak-member-mini{border-radius:24px!important;border:1px solid var(--ak-v4-line)!important;background:linear-gradient(135deg,#fff,#f8fbff)!important;box-shadow:0 12px 30px rgba(13,35,55,.07)!important;overflow:hidden!important;}
.pg-menu-tessere-body .ak-member-mini .card-body{padding:18px!important;}
.pg-menu-tessere-body .member-photo{width:84px!important;height:84px!important;border-radius:22px!important;object-fit:cover!important;}
.pg-menu-tessere-body .member-title{font-size:clamp(22px,2.2vw,30px)!important;line-height:1.15!important;font-weight:1000!important;color:#0d1f33!important;letter-spacing:-.035em!important;}
.pg-menu-tessere-body .mini-label{font-size:10.5px!important;color:var(--ak-v4-teal)!important;font-weight:1000!important;letter-spacing:.09em!important;}
.pg-menu-tessere-body .ak-mini-badges span{background:#f3f7fb!important;border:1px solid #e7eef5!important;border-radius:999px!important;padding:7px 10px!important;font-size:12px!important;font-weight:850!important;}
.pg-menu-tessere-body .actions-grid.ak-detail-actions{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;}
.pg-menu-tessere-body .action-card{border:1px solid var(--ak-v4-line)!important;border-radius:22px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 12px 30px rgba(13,35,55,.07)!important;overflow:hidden!important;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;}
.pg-menu-tessere-body .action-card:hover{transform:translateY(-2px)!important;border-color:#c9f1e8!important;box-shadow:0 20px 48px rgba(13,35,55,.12)!important;}
.pg-menu-tessere-body .action-card-inner{padding:17px!important;}
.pg-menu-tessere-body .action-card-modern .action-card-inner{display:grid!important;grid-template-columns:54px minmax(0,1fr) 46px!important;align-items:center!important;gap:13px!important;}
.pg-menu-tessere-body .action-icon{width:54px!important;height:54px!important;border-radius:18px!important;display:grid!important;place-items:center!important;color:#fff!important;font-size:24px!important;}
.pg-menu-tessere-body .ak-icon-blue{background:linear-gradient(135deg,#176fff,#004ee8)!important;}
.pg-menu-tessere-body .ak-icon-purple{background:linear-gradient(135deg,#9d33f2,#6e2dff)!important;}
.pg-menu-tessere-body .ak-icon-green{background:linear-gradient(135deg,#08a98f,#0ac383)!important;}
.pg-menu-tessere-body .action-copy strong{display:block!important;font-size:18px!important;line-height:1.15!important;color:#102033!important;font-weight:1000!important;}
.pg-menu-tessere-body .action-desc{margin:5px 0 0!important;color:#647386!important;font-size:13.5px!important;line-height:1.35!important;}
.pg-menu-tessere-body .ak-round-action{width:46px!important;height:46px!important;min-height:46px!important;border-radius:16px!important;background:#f7fafc!important;border:1px solid var(--ak-v4-line)!important;color:#102033!important;box-shadow:none!important;}
.pg-menu-tessere-body .action-card-form .action-card-inner{display:block!important;}
.pg-menu-tessere-body .form-action-title{display:flex!important;align-items:center!important;gap:12px!important;margin-bottom:12px!important;}
.pg-menu-tessere-body .form-action-title>i{width:42px!important;height:42px!important;border-radius:15px!important;display:grid!important;place-items:center!important;background:#e9fff8!important;color:var(--ak-v4-teal)!important;font-size:20px!important;}
.pg-menu-tessere-body .form-action-title strong{font-weight:1000!important;color:#102033!important;}
.pg-menu-tessere-body .form-action-title p{margin:2px 0 0!important;color:#667487!important;font-size:12.5px!important;}
.pg-menu-tessere-body .inline-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;align-items:center!important;}
.pg-menu-tessere-body .inline-form .form-control,
.pg-menu-tessere-body .inline-form .form-select{min-width:0!important;min-height:44px!important;border-radius:15px!important;}
.pg-menu-tessere-body .btn-primary{min-height:44px!important;border-radius:15px!important;padding-inline:16px!important;font-weight:1000!important;background:linear-gradient(135deg,#176fff,#0057db)!important;border:0!important;}

/* Note: timeline/empty state pulito e più gestibile */
body.pg-notes-dashboard{margin:0!important;background:transparent!important;overflow:auto!important;}
.pg-notes-dashboard .page-shell{padding:14px!important;max-width:none!important;width:100%!important;box-sizing:border-box!important;}
.pg-notes-dashboard .dashboard-card{border-radius:24px!important;border:1px solid var(--ak-v4-line)!important;background:linear-gradient(135deg,#ffffff,#fff9e7)!important;box-shadow:0 12px 30px rgba(13,35,55,.07)!important;}
.pg-notes-dashboard .dashboard-card .card-body{padding:18px!important;}
.pg-notes-dashboard .page-title{font-size:22px!important;font-weight:1000!important;letter-spacing:-.035em!important;color:#102033!important;}
.pg-notes-dashboard .page-subtitle{font-size:13.5px!important;color:#667487!important;margin:0!important;}
.pg-notes-dashboard .btn-warning{min-height:42px!important;border-radius:15px!important;background:linear-gradient(135deg,#ffcc25,#ffb000)!important;border:0!important;font-weight:1000!important;color:#111827!important;}
.pg-notes-dashboard .refresh-badge{min-height:42px!important;display:inline-flex!important;align-items:center!important;gap:4px!important;border-radius:999px!important;background:#eaf2ff!important;color:#176fff!important;border:1px solid #d9e8ff!important;padding:8px 13px!important;font-size:13px!important;font-weight:900!important;}
.pg-notes-dashboard .notes-area-card{margin-top:14px!important;min-height:560px!important;border-radius:24px!important;border:1px dashed #d6e2ee!important;background:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.9)),linear-gradient(90deg,#eef4f9 1px,transparent 1px),linear-gradient(#eef4f9 1px,transparent 1px)!important;background-size:auto,26px 26px,26px 26px!important;box-shadow:0 12px 30px rgba(13,35,55,.06)!important;}
.pg-notes-dashboard #containment-wrapper{min-height:560px!important;}
.pg-notes-dashboard .ak-notes-empty i{background:#f0f6ff!important;border-color:#dce9f6!important;color:#708092!important;}
.pg-notes-dashboard .ak-note-card{border-radius:22px!important;border:1px solid var(--ak-v4-line)!important;background:#fff!important;box-shadow:0 18px 42px rgba(13,35,55,.13)!important;}

@media(max-width:1600px){
  .ak-wow-tessera .ak-workspace.ak-wow-grid{grid-template-columns:minmax(270px,300px) minmax(420px,1fr) minmax(350px,.92fr)!important;gap:15px!important;}
  .ak-ticket-hero{grid-template-columns:1fr!important;}
  .ak-ticket-meta{justify-content:flex-start!important;}
}
@media(max-width:1320px){
  body.pg-menu .ak-action-panel{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .ak-wow-tessera .ak-workspace.ak-wow-grid{grid-template-columns:minmax(280px,.36fr) minmax(0,.64fr)!important;}
  .ak-wow-tessera .ak-panel-notes{grid-column:1 / -1!important;}
}
@media(max-width:1200px){
  body.pg-menu .ak-app-shell{grid-template-columns:1fr!important;}
  body.pg-menu .ak-sidebar{position:fixed!important;left:-270px!important;width:250px!important;z-index:1000!important;transition:left .22s ease!important;}
  body.pg-menu.ak-sidebar-open .ak-sidebar{left:0!important;}
  body.pg-menu .ak-main{padding:14px!important;}
  body.pg-menu .ak-topbar{grid-template-columns:auto minmax(0,1fr) auto!important;}
  body.pg-menu .ak-search-wrap{grid-column:1/-1!important;order:5!important;}
  body.pg-menu .ak-mobile-toggle{display:grid!important;place-items:center!important;}
  .ak-wow-tessera .ak-workspace.ak-wow-grid{grid-template-columns:1fr!important;}
  .ak-wow-tessera .ak-panel{min-height:auto!important;}
  .ak-wow-tessera .ak-panel-stage .ak-panel-frame iframe{min-height:570px!important;}
  .ak-wow-tessera .ak-panel-details .ak-panel-frame iframe{min-height:850px!important;}
  .ak-wow-tessera .ak-panel-notes .ak-panel-frame iframe{min-height:680px!important;}
}
@media(max-width:768px){
  body.pg-menu.ak-shell-enabled{overflow:auto!important;}
  body.pg-menu .ak-main{height:auto!important;min-height:100vh!important;overflow:visible!important;}
  body.pg-menu .ak-top-actions{display:none!important;}
  body.pg-menu .ak-action-panel{grid-template-columns:1fr!important;}
  body.pg-menu .ak-iframe-card{height:auto!important;min-height:720px!important;}
  body.pg-menu .ak-iframe-card iframe{min-height:720px!important;height:720px!important;}
  .ak-detail-dashboard{padding:12px!important;gap:12px!important;}
  .ak-ticket-hero{padding:16px!important;border-radius:22px!important;}
  .ak-ticket-identity{align-items:flex-start!important;}
  .ak-ticket-photo-wrap,.ak-ticket-photo,.ak-ticket-photo-placeholder{width:66px!important;height:66px!important;border-radius:18px!important;flex-basis:66px!important;}
  .ak-ticket-hero h1{font-size:28px!important;}
  .ak-status-pill,.ak-meta-chip{font-size:12px!important;padding:8px 10px!important;}
  .ak-wow-tessera .ak-panel{border-radius:20px!important;}
  .ak-wow-tessera .ak-panel-head small{display:none!important;}
  .pg-menu-tessere-body .inline-form{grid-template-columns:1fr!important;}
  .pg-menu-tessere-body .inline-form .btn{width:100%!important;}
  .pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:48px minmax(0,1fr) 40px!important;gap:11px!important;}
  .pg-menu-tessere-body .action-icon{width:48px!important;height:48px!important;border-radius:16px!important;font-size:21px!important;}
  .pg-menu-tessere-body .member-photo{width:72px!important;height:72px!important;}
  .pg-notes-dashboard .toolbar-actions{width:100%!important;flex-direction:column!important;align-items:stretch!important;}
  .pg-notes-dashboard .toolbar-actions form,
  .pg-notes-dashboard .toolbar-actions button,
  .pg-notes-dashboard .refresh-badge{width:100%!important;justify-content:center!important;}
  .pg-notes-dashboard .notes-area-card,
  .pg-notes-dashboard #containment-wrapper{min-height:520px!important;}
}

/* ============================================================
   Animal King Gold Premium v5 - tema caldo proporzionato
   Applicato sopra la UI reale senza rompere layout/logica.
   ============================================================ */
:root{
  --ak-gold:#f5c542;
  --ak-gold-2:#ffd86a;
  --ak-gold-3:#b87a12;
  --ak-ink:#111111;
  --ak-ink-2:#1f1a12;
  --ak-cream:#fff8e3;
  --ak-panel:#ffffff;
  --ak-line:rgba(27,23,14,.10);
  --ak-gold-shadow:rgba(184,122,18,.28);
}
body.pg-menu,
body.pg-menu-tessere,
body.pg-menu-tessere-body,
body.pg-stage,
body.pg-notes-dashboard{
  background:
    radial-gradient(circle at 18% 8%, rgba(245,197,66,.18), transparent 32rem),
    radial-gradient(circle at 90% 0%, rgba(255,216,106,.18), transparent 28rem),
    linear-gradient(135deg,#fffaf0 0%,#f6f1e4 42%,#eef3f8 100%) !important;
  color:#171717 !important;
}

/* Sidebar premium: logo piccolo, proporzionato e mai invasivo */
body.pg-menu .ak-app-shell{background:transparent!important;}
body.pg-menu .ak-sidebar{
  background:
    radial-gradient(circle at 30% 0%, rgba(255,216,106,.18), transparent 11rem),
    linear-gradient(180deg,#100f0c 0%,#1c1710 52%,#090807 100%) !important;
  border-right:1px solid rgba(245,197,66,.20)!important;
  box-shadow:18px 0 45px rgba(0,0,0,.20)!important;
}
body.pg-menu .ak-brand{gap:12px!important;padding-bottom:18px!important;border-bottom-color:rgba(245,197,66,.18)!important;}
body.pg-menu .ak-brand strong{color:#fff!important;text-shadow:0 2px 16px rgba(245,197,66,.18)!important;}
body.pg-menu .ak-brand span:not(.ak-brand-mark){color:#f8eac0!important;line-height:1.12!important;}
body.pg-menu .ak-brand-mark{
  width:54px!important;height:54px!important;min-width:54px!important;
  border-radius:18px!important;overflow:hidden!important;padding:0!important;
  background:linear-gradient(145deg,#ffd86a,#b87a12)!important;
  border:1px solid rgba(255,216,106,.55)!important;
  box-shadow:0 14px 28px rgba(0,0,0,.32), inset 0 2px 0 rgba(255,255,255,.45)!important;
}
body.pg-menu .ak-logo-mark img{
  width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;
  transform:scale(1.14); filter:drop-shadow(0 1px 0 rgba(0,0,0,.55));
}
body.pg-menu .ak-avatar{
  background:linear-gradient(145deg,#ffd86a,#f5c542 55%,#b87a12)!important;
  color:#111!important;border:2px solid rgba(255,255,255,.72)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.25), inset 0 2px 0 rgba(255,255,255,.5)!important;
}
body.pg-menu .ak-user-card{background:rgba(255,255,255,.055)!important;border-color:rgba(245,197,66,.17)!important;}
body.pg-menu .ak-user-card strong{color:#fff!important;}
body.pg-menu .ak-user-card small{color:#f2d88c!important;}
body.pg-menu .ak-nav-link{
  color:#f7ecd2!important;border:1px solid transparent!important;border-radius:18px!important;
  background:rgba(255,255,255,.025)!important;
}
body.pg-menu .ak-nav-link i{color:#f5c542!important;}
body.pg-menu .ak-nav-link:hover,
body.pg-menu .ak-nav-link.active{
  background:linear-gradient(145deg,#ffd86a,#f5c542 55%,#b87a12)!important;
  color:#12100b!important;border-color:rgba(255,216,106,.8)!important;
  box-shadow:0 14px 28px rgba(184,122,18,.32), inset 0 2px 0 rgba(255,255,255,.55)!important;
  transform:translateY(-1px)!important;
}
body.pg-menu .ak-nav-link:hover i,
body.pg-menu .ak-nav-link.active i{color:#12100b!important;}
body.pg-menu .ak-help,
body.pg-menu .ak-logout{
  border:1px solid rgba(245,197,66,.18)!important;background:rgba(255,255,255,.065)!important;color:#fff8e3!important;
}
body.pg-menu .ak-logout:hover,
body.pg-menu .ak-help:hover{background:rgba(245,197,66,.14)!important;}

/* Topbar e action cards con bottoni 3D eleganti */
body.pg-menu .ak-main{background:transparent!important;}
body.pg-menu .ak-topbar{
  background:rgba(255,255,255,.82)!important;border:1px solid rgba(184,122,18,.16)!important;
  box-shadow:0 18px 55px rgba(55,40,10,.10)!important;backdrop-filter:blur(16px)!important;
}
body.pg-menu .ak-eyebrow{color:#b87a12!important;font-weight:1000!important;letter-spacing:.12em!important;}
body.pg-menu .ak-topbar h1{color:#12100b!important;text-shadow:0 1px 0 rgba(255,255,255,.8)!important;}
body.pg-menu .ak-mobile-toggle,
body.pg-menu .ak-bell,
body.pg-menu .ak-profile{
  background:#fff!important;border:1px solid rgba(184,122,18,.16)!important;color:#15120d!important;
  box-shadow:0 10px 24px rgba(55,40,10,.08)!important;
}
body.pg-menu .ak-bell em{background:linear-gradient(145deg,#ffd86a,#f5c542)!important;color:#111!important;}
body.pg-menu .ak-search-wrap{
  background:#fff!important;border:1px solid rgba(184,122,18,.17)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8), 0 10px 24px rgba(55,40,10,.06)!important;
}
body.pg-menu .ak-search-wrap i{color:#b87a12!important;}
body.pg-menu .ak-action-panel{
  background:rgba(255,255,255,.74)!important;border:1px solid rgba(184,122,18,.14)!important;
  box-shadow:0 22px 60px rgba(55,40,10,.10)!important;
}
body.pg-menu .ak-action-card,
body.pg-menu .ak-action-card.btn,
.btn-ak-gold,
body.pg-menu-tessere-body .btn-primary,
body.pg-notes-dashboard .btn-warning{
  border-radius:20px!important;
  background:linear-gradient(145deg,#fff2b3 0%,#ffd86a 22%,#f5c542 58%,#b87a12 100%)!important;
  color:#15120d!important;border:1px solid rgba(130,82,10,.28)!important;
  box-shadow:0 12px 0 rgba(126,77,8,.18), 0 18px 34px rgba(184,122,18,.26), inset 0 2px 0 rgba(255,255,255,.58)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.55)!important;
}
body.pg-menu .ak-action-card:hover,
.btn-ak-gold:hover,
body.pg-menu-tessere-body .btn-primary:hover,
body.pg-notes-dashboard .btn-warning:hover{
  transform:translateY(-3px)!important;filter:saturate(1.05)!important;
  box-shadow:0 15px 0 rgba(126,77,8,.15), 0 24px 42px rgba(184,122,18,.32), inset 0 2px 0 rgba(255,255,255,.62)!important;
}
body.pg-menu .ak-action-card:active,
.btn-ak-gold:active{transform:translateY(3px)!important;box-shadow:0 5px 0 rgba(126,77,8,.20), 0 12px 24px rgba(184,122,18,.22), inset 0 2px 0 rgba(255,255,255,.45)!important;}
body.pg-menu .ak-action-card span{
  background:rgba(18,16,11,.12)!important;color:#111!important;border:1px solid rgba(18,16,11,.08)!important;
}
body.pg-menu .ak-action-card small{color:#3c311c!important;}
body.pg-menu .ak-action-card.ak-exit{
  background:linear-gradient(145deg,#3a2b18,#111 58%,#000)!important;color:#ffd86a!important;border-color:rgba(245,197,66,.35)!important;text-shadow:none!important;
}
body.pg-menu .ak-action-card.ak-exit small{color:#f5d989!important;}
body.pg-menu .ak-action-card.ak-exit span{background:rgba(245,197,66,.16)!important;color:#ffd86a!important;}
body.pg-menu .ak-select-card select{border-radius:16px!important;border-color:rgba(184,122,18,.22)!important;background:#fffaf0!important;}
body.pg-menu .ak-iframe-card{border:1px solid rgba(184,122,18,.16)!important;box-shadow:0 22px 70px rgba(55,40,10,.12)!important;background:rgba(255,255,255,.82)!important;}

/* Gestione tessera: hero e pannelli premium */
.ak-detail-dashboard{background:transparent!important;}
.ak-ticket-hero{
  background:
    radial-gradient(circle at 7% 0%, rgba(255,216,106,.36), transparent 22rem),
    linear-gradient(135deg,#17120a,#2a2113 45%,#fff6d2 46%,#ffffff 100%)!important;
  border:1px solid rgba(184,122,18,.22)!important;
  box-shadow:0 22px 65px rgba(55,40,10,.14)!important;
}
.ak-ticket-hero .ak-eyebrow{color:#ffd86a!important;}
.ak-ticket-hero h1{color:#fff!important;text-shadow:0 2px 18px rgba(0,0,0,.38)!important;}
.ak-ticket-name{color:#ffe8a6!important;}
.ak-ticket-photo-wrap,.ak-ticket-photo-placeholder{
  background:linear-gradient(145deg,#ffd86a,#b87a12)!important;border:2px solid rgba(255,255,255,.82)!important;
  box-shadow:0 18px 36px rgba(0,0,0,.30), inset 0 2px 0 rgba(255,255,255,.55)!important;
}
.ak-ticket-photo{border:0!important;box-shadow:none!important;}
.ak-status-pill,.ak-meta-chip{
  background:rgba(255,255,255,.92)!important;border:1px solid rgba(184,122,18,.18)!important;color:#1d1609!important;
  box-shadow:0 12px 24px rgba(55,40,10,.08)!important;
}
.ak-status-pill.is-active{background:#fff7d4!important;color:#5f3b00!important;border-color:rgba(245,197,66,.55)!important;}
.ak-status-pill i,.ak-meta-chip i{color:#b87a12!important;}
.ak-wow-tessera .ak-panel,
body.pg-menu-tessere .ak-panel{
  background:rgba(255,255,255,.92)!important;border:1px solid rgba(184,122,18,.16)!important;
  box-shadow:0 20px 58px rgba(55,40,10,.10)!important;
}
.ak-wow-tessera .ak-panel-head,
body.pg-menu-tessere .ak-panel-head{
  background:linear-gradient(180deg,#fffaf0,#ffffff)!important;border-bottom-color:rgba(184,122,18,.14)!important;color:#15120d!important;
}
.ak-wow-tessera .ak-panel-head i,
body.pg-menu-tessere .ak-panel-head i{
  background:linear-gradient(145deg,#ffd86a,#f5c542)!important;color:#111!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.55), 0 10px 20px rgba(184,122,18,.20)!important;
}
.ak-wow-tessera .ak-panel-head small{color:#a06f16!important;}

/* Frame interni: azioni/timeline coerenti */
.pg-menu-tessere-body .ak-member-mini,
.pg-menu-tessere-body .action-card,
.pg-stage .step-item,
.pg-notes-dashboard .dashboard-card,
.pg-notes-dashboard .notes-area-card{
  border-color:rgba(184,122,18,.16)!important;
  box-shadow:0 16px 38px rgba(55,40,10,.10)!important;
}
.pg-menu-tessere-body .member-title,
.pg-stage .page-title,
.pg-notes-dashboard .page-title{color:#15120d!important;}
.pg-menu-tessere-body .mini-label,
.pg-stage .step-label strong{color:#b87a12!important;}
.pg-menu-tessere-body .ak-mini-badges span{background:#fff8e3!important;border-color:rgba(184,122,18,.16)!important;color:#3b2b12!important;}
.pg-menu-tessere-body .action-icon,
.pg-menu-tessere-body .ak-icon-blue,
.pg-menu-tessere-body .ak-icon-purple,
.pg-menu-tessere-body .ak-icon-green{
  background:linear-gradient(145deg,#111,#2b2112)!important;color:#ffd86a!important;
  border:1px solid rgba(245,197,66,.28)!important;box-shadow:0 12px 24px rgba(0,0,0,.16), inset 0 2px 0 rgba(255,255,255,.08)!important;
}
.pg-menu-tessere-body .action-copy strong{color:#15120d!important;}
.pg-menu-tessere-body .action-card:hover{border-color:rgba(245,197,66,.50)!important;box-shadow:0 22px 52px rgba(184,122,18,.18)!important;}
.pg-menu-tessere-body .ak-round-action{background:#fff8e3!important;border-color:rgba(184,122,18,.22)!important;color:#15120d!important;}
.pg-menu-tessere-body .form-action-title>i,
.pg-stage .step-icon{
  background:#fff3c4!important;color:#8a5800!important;border:1px solid rgba(184,122,18,.14)!important;
}
.pg-stage .stage-card{background:linear-gradient(180deg,#fffaf0,#fff)!important;border-color:rgba(184,122,18,.16)!important;}
.pg-stage .step-item.ok:before{background:#f5c542!important;}
.pg-stage .badge-refresh,
.pg-notes-dashboard .refresh-badge{background:#fff1bd!important;color:#7a4b00!important;border-color:rgba(184,122,18,.18)!important;}
.pg-notes-dashboard .notes-area-card{
  background:linear-gradient(rgba(255,255,255,.88),rgba(255,255,255,.88)),linear-gradient(90deg,rgba(184,122,18,.08) 1px,transparent 1px),linear-gradient(rgba(184,122,18,.08) 1px,transparent 1px)!important;
  background-size:auto,26px 26px,26px 26px!important;
}

/* Tabelle e DataTables: nero/oro leggibile */
.table thead th,
table.dataTable thead th{
  background:linear-gradient(180deg,#17120a,#2a2113)!important;color:#ffd86a!important;border-color:#3a2b18!important;
  text-shadow:none!important;
}
.table tbody tr:nth-child(even), table.dataTable tbody tr:nth-child(even){background-color:rgba(255,248,227,.55)!important;}
.table tbody tr:hover, table.dataTable tbody tr:hover{background-color:rgba(245,197,66,.16)!important;}
.page-link{color:#7a4b00!important;border-color:rgba(184,122,18,.18)!important;}
.page-item.active .page-link{background:#15120d!important;border-color:#15120d!important;color:#ffd86a!important;}

/* Modal e toast premium ma funzionali */
.modal-content{border:1px solid rgba(184,122,18,.20)!important;border-radius:24px!important;box-shadow:0 26px 80px rgba(0,0,0,.28)!important;}
.modal-header{background:linear-gradient(180deg,#fffaf0,#fff)!important;border-bottom-color:rgba(184,122,18,.13)!important;}
.modal-title{color:#15120d!important;font-weight:1000!important;}
.toast{border:1px solid rgba(184,122,18,.18)!important;box-shadow:0 18px 44px rgba(55,40,10,.18)!important;}

/* Mobile: niente logo enorme, menu stabile e card leggibili */
@media(max-width:1200px){
  body.pg-menu .ak-sidebar{width:250px!important;left:-270px!important;}
  body.pg-menu.ak-sidebar-open .ak-sidebar{left:0!important;}
  body.pg-menu .ak-brand-mark{width:48px!important;height:48px!important;min-width:48px!important;border-radius:16px!important;}
}
@media(max-width:768px){
  body.pg-menu .ak-action-card{box-shadow:0 8px 0 rgba(126,77,8,.14), 0 16px 30px rgba(184,122,18,.20), inset 0 2px 0 rgba(255,255,255,.55)!important;}
  .ak-ticket-hero{background:linear-gradient(160deg,#17120a 0%,#2a2113 55%,#fff8df 56%,#fff 100%)!important;}
  .ak-ticket-meta{max-width:100%!important;}
}

/* ============================================================
   ANIMAL KING GOLD PREMIUM - ESTENSIONE TUTTO PORTALE v6
   Applicata a tutte le pagine PHP con stylesheet centrale.
   ============================================================ */
:root{
  --ak-primary:#f5c542!important;
  --ak-warning:#f5c542!important;
  --ak-dark:#14100a!important;
  --ak-muted:#74664a!important;
  --ak-border:rgba(184,122,18,.18)!important;
  --ak-surface:#ffffff!important;
  --ak-gold:#f5c542;
  --ak-gold-light:#ffe28a;
  --ak-gold-dark:#9b650e;
  --ak-coffee:#2a2113;
  --ak-ink:#15120d;
  --ak-cream:#fff8df;
  --ak-cream-2:#fffdf6;
  --ak-shadow:0 22px 70px rgba(55,40,10,.13);
  --ak-shadow-soft:0 14px 34px rgba(55,40,10,.10);
}
html{background:#f7f1e3;}
body:not(.pg-menu){
  color:var(--ak-ink);
  background:
    radial-gradient(circle at 8% -8%, rgba(255,226,138,.48), transparent 30rem),
    radial-gradient(circle at 92% 5%, rgba(184,122,18,.12), transparent 26rem),
    linear-gradient(180deg,#fffdf6 0%,#f7f1e3 100%)!important;
}
body:not(.pg-menu)::selection{background:#f5c542;color:#111;}
body:not(.pg-menu) a{color:#8a5800;font-weight:700;}
body:not(.pg-menu) a:hover{color:#15120d;}
body:not(.pg-menu) h1,
body:not(.pg-menu) h2,
body:not(.pg-menu) h3,
body:not(.pg-menu) h4,
body:not(.pg-menu) h5,
body:not(.pg-menu) h6,
.page-title,.section-title,.modal-title{
  color:#15120d;
  letter-spacing:-.035em;
}
body:not(.pg-menu) .container,
body:not(.pg-menu) .container-fluid{position:relative;}
body:not(.pg-menu) .card,
body:not(.pg-menu) .main-card,
body:not(.pg-menu) .registration-card,
body:not(.pg-menu) .subscription-card,
body:not(.pg-menu) .dashboard-card,
body:not(.pg-menu) .notes-area-card,
body:not(.pg-menu) .stage-card,
body:not(.pg-menu) .page-shell > .card{
  border:1px solid rgba(184,122,18,.16)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.91)!important;
  box-shadow:var(--ak-shadow-soft)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
body:not(.pg-menu) .card-header,
body:not(.pg-menu) .modal-header,
body:not(.pg-menu) .page-header,
body:not(.pg-menu) .panel-heading{
  border-color:rgba(184,122,18,.13)!important;
  background:linear-gradient(180deg,#fff8df,#fff)!important;
}
body:not(.pg-menu) .btn,
body:not(.pg-menu) button,
body:not(.pg-menu) input[type="submit"],
body:not(.pg-menu) input[type="button"]{
  border-radius:16px;
  font-weight:900;
  letter-spacing:.01em;
}
body:not(.pg-menu) .btn-primary,
body:not(.pg-menu) .btn-success,
body:not(.pg-menu) .btn-warning,
body:not(.pg-menu) button.btn-primary,
body:not(.pg-menu) input[type="submit"],
body:not(.pg-menu) input[type="button"]{
  background:linear-gradient(145deg,#fff0ac 0%,#ffe28a 20%,#f5c542 58%,#b87a12 100%)!important;
  color:#15120d!important;
  border:1px solid rgba(130,82,10,.28)!important;
  box-shadow:0 9px 0 rgba(126,77,8,.18),0 16px 28px rgba(184,122,18,.25),inset 0 2px 0 rgba(255,255,255,.62)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.55)!important;
}
body:not(.pg-menu) .btn-primary:hover,
body:not(.pg-menu) .btn-success:hover,
body:not(.pg-menu) .btn-warning:hover,
body:not(.pg-menu) input[type="submit"]:hover,
body:not(.pg-menu) input[type="button"]:hover{
  transform:translateY(-2px);
  filter:saturate(1.05);
  box-shadow:0 12px 0 rgba(126,77,8,.14),0 22px 38px rgba(184,122,18,.31),inset 0 2px 0 rgba(255,255,255,.62)!important;
}
body:not(.pg-menu) .btn-primary:active,
body:not(.pg-menu) .btn-success:active,
body:not(.pg-menu) .btn-warning:active,
body:not(.pg-menu) input[type="submit"]:active,
body:not(.pg-menu) input[type="button"]:active{
  transform:translateY(4px)!important;
  box-shadow:0 4px 0 rgba(126,77,8,.20),0 10px 20px rgba(184,122,18,.20),inset 0 2px 0 rgba(255,255,255,.45)!important;
}
body:not(.pg-menu) .btn-secondary,
body:not(.pg-menu) .btn-dark,
body:not(.pg-menu) .btn-outline-secondary{
  background:linear-gradient(145deg,#2a2113,#15120d)!important;
  color:#ffe28a!important;
  border:1px solid rgba(245,197,66,.28)!important;
  box-shadow:0 10px 22px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
body:not(.pg-menu) .btn-danger{
  background:linear-gradient(145deg,#ff6b4a,#b71d10)!important;
  border:1px solid rgba(116,16,10,.30)!important;
  color:#fff!important;
  box-shadow:0 9px 0 rgba(116,16,10,.18),0 15px 28px rgba(183,29,16,.24),inset 0 2px 0 rgba(255,255,255,.28)!important;
}
body:not(.pg-menu) .form-control,
body:not(.pg-menu) .form-select,
body:not(.pg-menu) textarea,
body:not(.pg-menu) input:not([type="submit"]):not([type="button"]):not([type="checkbox"]):not([type="radio"]){
  border-radius:16px!important;
  border:1px solid rgba(184,122,18,.18)!important;
  background:#fffdf6!important;
  color:#15120d!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 20px rgba(55,40,10,.04)!important;
}
body:not(.pg-menu) .form-control:focus,
body:not(.pg-menu) .form-select:focus,
body:not(.pg-menu) textarea:focus,
body:not(.pg-menu) input:not([type="submit"]):not([type="button"]):focus{
  border-color:#f5c542!important;
  box-shadow:0 0 0 .25rem rgba(245,197,66,.22),0 12px 26px rgba(55,40,10,.08)!important;
}
body:not(.pg-menu) label,
body:not(.pg-menu) .form-label{font-weight:900;color:#2a2113;}
body:not(.pg-menu) .table,
body:not(.pg-menu) table.dataTable{
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 14px 34px rgba(55,40,10,.08);
}
body:not(.pg-menu) .table thead th,
body:not(.pg-menu) table.dataTable thead th{
  background:linear-gradient(180deg,#15120d,#2a2113)!important;
  color:#ffe28a!important;
  border-color:#3a2b18!important;
  letter-spacing:.045em;
}
body:not(.pg-menu) .table tbody td,
body:not(.pg-menu) table.dataTable tbody td{border-color:rgba(184,122,18,.10)!important;}
body:not(.pg-menu) .table tbody tr:nth-child(even),
body:not(.pg-menu) table.dataTable tbody tr:nth-child(even){background:rgba(255,248,223,.60)!important;}
body:not(.pg-menu) .table tbody tr:hover,
body:not(.pg-menu) table.dataTable tbody tr:hover{background:rgba(245,197,66,.18)!important;}
body:not(.pg-menu) .badge,
body:not(.pg-menu) .label,
body:not(.pg-menu) .pill{
  border-radius:999px;
  background:#fff2bd!important;
  color:#6b4300!important;
  border:1px solid rgba(184,122,18,.18);
}
body:not(.pg-menu) .alert{
  border-radius:20px!important;
  border:1px solid rgba(184,122,18,.14)!important;
  box-shadow:0 14px 34px rgba(55,40,10,.08)!important;
}
body:not(.pg-menu) .alert-success{background:#fff8df!important;color:#4d3500!important;}
body:not(.pg-menu) .alert-danger{background:#fff0ec!important;color:#8e1d12!important;}
body:not(.pg-menu) .modal-backdrop{z-index:1040!important;}
body:not(.pg-menu) .modal{z-index:1055!important;}
body:not(.pg-menu) .modal-content{
  background:#fffdf6!important;
  border:1px solid rgba(184,122,18,.22)!important;
  border-radius:26px!important;
  box-shadow:0 28px 90px rgba(0,0,0,.30)!important;
}
body:not(.pg-menu) img[src*="logo"],
body:not(.pg-menu) img[src*="AnimalKing"],
body:not(.pg-menu) img[src*="animal-king"]{
  max-width:clamp(78px,14vw,150px)!important;
  height:auto!important;
  object-fit:contain!important;
}
body.pg-menu .ak-logo-mark img{max-width:100%!important;}
/* Pagine legacy senza Bootstrap: veste premium non invasiva */
body.pg-lightform-index,
body.pg-email,
body.pg-notes-header,
body.pg-abbfond-cancel,
body.pg-abbfond-success{
  padding:clamp(16px,3vw,36px);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.pg-lightform-index form,
body.pg-email > table,
body.pg-email .content,
body.pg-abbfond-cancel main,
body.pg-abbfond-success main{
  max-width:920px;
  margin-inline:auto;
}
/* DataTables controls coerenti */
.dt-container .dt-search input,
.dt-container .dt-length select,
.dataTables_filter input,
.dataTables_length select{
  border-radius:14px!important;
  border:1px solid rgba(184,122,18,.18)!important;
  background:#fffdf6!important;
}
.dt-container .dt-paging .dt-paging-button,
.pagination .page-link{
  border-radius:12px!important;
  color:#6b4300!important;
  border-color:rgba(184,122,18,.16)!important;
  margin:0 2px;
}
.dt-container .dt-paging .dt-paging-button.current,
.pagination .page-item.active .page-link{
  background:linear-gradient(145deg,#2a2113,#15120d)!important;
  color:#ffe28a!important;
  border-color:#15120d!important;
}
/* Mobile: tabelle in card anche sulle pagine non ancora specializzate */
@media(max-width:767.98px){
  body:not(.pg-menu) .page-shell,
  body:not(.pg-menu) main{padding-left:12px!important;padding-right:12px!important;}
  body:not(.pg-menu) .card,
  body:not(.pg-menu) .main-card{border-radius:20px!important;}
  body:not(.pg-menu) .table-responsive table,
  body:not(.pg-menu) table.dataTable{box-shadow:none!important;}
  body:not(.pg-menu) .table-responsive table thead{display:none;}
  body:not(.pg-menu) .table-responsive table tbody,
  body:not(.pg-menu) .table-responsive table tr,
  body:not(.pg-menu) .table-responsive table td{display:block;width:100%;}
  body:not(.pg-menu) .table-responsive table tr{
    margin:0 0 14px;
    padding:14px;
    border:1px solid rgba(184,122,18,.16);
    border-radius:20px;
    background:rgba(255,255,255,.92)!important;
    box-shadow:0 14px 34px rgba(55,40,10,.10);
  }
  body:not(.pg-menu) .table-responsive table td{
    border:0!important;
    padding:8px 0!important;
  }
  body:not(.pg-menu) .table-responsive table td::before{
    content:attr(data-label);
    display:block;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.08em;
    color:#9b650e;
    font-weight:1000;
    margin-bottom:2px;
  }
}

/* ============================================================
   FIX v7 - Gestione tessera interna: tema Animal King completo
   Correzione iframe tagliati + azioni non tematizzate + note.
   ============================================================ */
body.pg-menu-tessere.ak-wow-tessera{
  background:
    radial-gradient(circle at 10% 0%, rgba(255,216,106,.26), transparent 28rem),
    radial-gradient(circle at 100% 18%, rgba(184,122,18,.12), transparent 24rem),
    linear-gradient(135deg,#fffdf6 0%,#f4efe2 44%,#f8fafc 100%)!important;
  color:#17120a!important;
  overflow:auto!important;
}
body.pg-menu-tessere .ak-detail-dashboard{
  padding:clamp(14px,1.5vw,24px)!important;
  gap:clamp(14px,1.4vw,22px)!important;
  min-height:100vh!important;
}
body.pg-menu-tessere .ak-ticket-hero{
  min-height:132px!important;
  background:
    radial-gradient(circle at 16% 10%, rgba(255,216,106,.42), transparent 21rem),
    linear-gradient(135deg,#15100a 0%,#2a2113 42%,#fff3c7 43%,#ffffff 100%)!important;
  border:1px solid rgba(184,122,18,.28)!important;
  box-shadow:0 18px 52px rgba(55,40,10,.16)!important;
}
body.pg-menu-tessere .ak-ticket-photo-wrap,
body.pg-menu-tessere .ak-ticket-photo,
body.pg-menu-tessere .ak-ticket-photo-placeholder{
  width:74px!important;height:74px!important;flex-basis:74px!important;border-radius:22px!important;
}
body.pg-menu-tessere .ak-ticket-photo{object-fit:cover!important;border:3px solid rgba(255,216,106,.82)!important;box-shadow:0 14px 28px rgba(0,0,0,.24)!important;}
body.pg-menu-tessere .ak-ticket-hero h1{font-size:clamp(28px,3vw,42px)!important;color:#fff!important;}
body.pg-menu-tessere .ak-ticket-name{color:#ffe8a6!important;}
body.pg-menu-tessere .ak-workspace.ak-wow-grid{
  grid-template-columns:minmax(270px,315px) minmax(500px,1fr) minmax(440px,1.08fr)!important;
  gap:18px!important;
  align-items:start!important;
}
body.pg-menu-tessere .ak-panel{
  min-height:0!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(184,122,18,.18)!important;
  box-shadow:0 22px 60px rgba(55,40,10,.12)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
body.pg-menu-tessere .ak-panel-head{
  flex:0 0 60px!important;height:60px!important;
  background:linear-gradient(180deg,#fff8df,#ffffff)!important;
  border-bottom:1px solid rgba(184,122,18,.14)!important;
}
body.pg-menu-tessere .ak-panel-frame{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#fffdf6,#fff)!important;
}
body.pg-menu-tessere .ak-panel-stage .ak-panel-frame{height:680px!important;}
body.pg-menu-tessere .ak-panel-details .ak-panel-frame{height:760px!important;}
body.pg-menu-tessere .ak-panel-notes .ak-panel-frame{height:760px!important;}
body.pg-menu-tessere .ak-panel-frame iframe{height:100%!important;min-height:100%!important;background:transparent!important;}

/* stage.php dentro iframe: niente tagli in alto, stile oro/nero */
body.pg-stage{
  background:transparent!important;
  overflow:auto!important;
}
body.pg-stage .page-shell{
  padding:14px!important;
  min-height:100%!important;
}
body.pg-stage .stage-card{
  min-height:auto!important;
  height:auto!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fffaf0 0%,#fff 100%)!important;
  border:1px solid rgba(184,122,18,.18)!important;
  box-shadow:0 16px 36px rgba(55,40,10,.09)!important;
  overflow:visible!important;
}
body.pg-stage .stage-card .card-body{padding:20px 16px!important;}
body.pg-stage .page-title{
  margin:0 0 10px!important;
  font-size:21px!important;
  line-height:1.05!important;
  text-align:center!important;
  color:#17120a!important;
  letter-spacing:-.04em!important;
}
body.pg-stage .intro-text{text-align:center!important;color:#6b5a35!important;margin-bottom:18px!important;}
body.pg-stage .step-list{gap:12px!important;}
body.pg-stage .step-item{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  align-items:center!important;
  min-height:84px!important;
  border-radius:18px!important;
  padding:12px!important;
  background:linear-gradient(180deg,#ffffff,#fffaf0)!important;
  border:1px solid rgba(184,122,18,.18)!important;
  box-shadow:0 10px 24px rgba(55,40,10,.08)!important;
}
body.pg-stage .step-item.ok:before{background:linear-gradient(180deg,#ffe28a,#b87a12)!important;}
body.pg-stage .step-icon{width:38px!important;height:38px!important;border-radius:14px!important;background:#fff1bd!important;object-fit:contain!important;}
body.pg-stage .step-label{font-size:14.5px!important;line-height:1.18!important;color:#17120a!important;}
body.pg-stage .step-status{font-size:13px!important;font-weight:1000!important;color:#8a5800!important;}
body.pg-stage .badge-refresh{
  display:inline-flex!important;margin-top:16px!important;padding:10px 14px!important;
  border-radius:999px!important;background:#17120a!important;color:#ffd86a!important;border:1px solid rgba(245,197,66,.34)!important;
}

/* Dettagli tessera: sostituisce i vecchi bottoni blu con card 3D oro/nero */
body.pg-menu-tessere-body{background:transparent!important;overflow:auto!important;}
body.pg-menu-tessere-body .page-shell{padding:14px!important;}
body.pg-menu-tessere-body .member-card,
body.pg-menu-tessere-body .action-card{
  overflow:visible!important;
  border:1px solid rgba(184,122,18,.18)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#ffffff,#fffaf0)!important;
  box-shadow:0 16px 36px rgba(55,40,10,.09)!important;
}
body.pg-menu-tessere-body .member-card .card-body{padding:18px!important;}
body.pg-menu-tessere-body .member-photo{width:76px!important;height:76px!important;border-radius:22px!important;border:3px solid #ffe28a!important;box-shadow:0 14px 28px rgba(55,40,10,.18)!important;}
body.pg-menu-tessere-body .mini-label{color:#9b650e!important;}
body.pg-menu-tessere-body .member-title{font-size:clamp(19px,2vw,25px)!important;color:#17120a!important;}
body.pg-menu-tessere-body .ak-mini-badges span{background:#17120a!important;color:#ffe28a!important;border:1px solid rgba(245,197,66,.28)!important;}
body.pg-menu-tessere-body .actions-grid.ak-detail-actions{display:grid!important;gap:14px!important;}
body.pg-menu-tessere-body .action-card{padding:0!important;transition:transform .2s ease, box-shadow .2s ease!important;}
body.pg-menu-tessere-body .action-card:hover{transform:translateY(-3px)!important;box-shadow:0 24px 54px rgba(184,122,18,.18)!important;}
body.pg-menu-tessere-body .action-card-modern .action-card-inner,
body.pg-menu-tessere-body .action-card-inner{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) 48px!important;
  gap:14px!important;
  align-items:center!important;
  padding:18px!important;
}
body.pg-menu-tessere-body .action-icon,
body.pg-menu-tessere-body .ak-icon-blue,
body.pg-menu-tessere-body .ak-icon-purple,
body.pg-menu-tessere-body .ak-icon-green{
  width:58px!important;height:58px!important;border-radius:20px!important;
  display:grid!important;place-items:center!important;
  background:linear-gradient(145deg,#2a2113,#050403)!important;
  color:#ffd86a!important;font-size:24px!important;
  border:1px solid rgba(245,197,66,.34)!important;
  box-shadow:0 10px 0 rgba(126,77,8,.14),0 18px 30px rgba(0,0,0,.18),inset 0 2px 0 rgba(255,255,255,.10)!important;
}
body.pg-menu-tessere-body .action-copy strong{display:block!important;font-size:18px!important;color:#17120a!important;}
body.pg-menu-tessere-body .action-desc{color:#6b5a35!important;font-size:13.5px!important;}
body.pg-menu-tessere-body .ak-round-action,
body.pg-menu-tessere-body .btn-primary,
body.pg-menu-tessere-body input[type="submit"]{
  min-height:42px!important;border-radius:16px!important;
  background:linear-gradient(145deg,#fff0ac 0%,#ffe28a 20%,#f5c542 58%,#b87a12 100%)!important;
  color:#17120a!important;border:1px solid rgba(130,82,10,.25)!important;
  box-shadow:0 7px 0 rgba(126,77,8,.18),0 14px 26px rgba(184,122,18,.23),inset 0 2px 0 rgba(255,255,255,.6)!important;
  font-weight:1000!important;
}
body.pg-menu-tessere-body .ak-round-action:hover,
body.pg-menu-tessere-body .btn-primary:hover,
body.pg-menu-tessere-body input[type="submit"]:hover{transform:translateY(-2px)!important;}
body.pg-menu-tessere-body .action-card-form .action-card-inner{grid-template-columns:1fr!important;}
body.pg-menu-tessere-body .inline-form{display:grid!important;grid-template-columns:minmax(170px,.75fr) minmax(220px,1fr) auto!important;gap:10px!important;}
body.pg-menu-tessere-body .form-control,
body.pg-menu-tessere-body .form-select{border-radius:15px!important;border-color:rgba(184,122,18,.22)!important;background:#fffdf6!important;}

/* Note dashboard: timeline gold e post-it più raffinati */
body.pg-notes-dashboard{background:transparent!important;overflow:auto!important;}
body.pg-notes-dashboard .page-shell{padding:14px!important;}
body.pg-notes-dashboard .dashboard-card,
body.pg-notes-dashboard .notes-area-card{
  border:1px solid rgba(184,122,18,.18)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#ffffff,#fffaf0)!important;
  box-shadow:0 16px 36px rgba(55,40,10,.09)!important;
}
body.pg-notes-dashboard .dashboard-card .card-body{padding:20px!important;}
body.pg-notes-dashboard .page-title{color:#17120a!important;font-size:24px!important;}
body.pg-notes-dashboard .page-subtitle{color:#6b5a35!important;}
body.pg-notes-dashboard .btn-warning{
  background:linear-gradient(145deg,#fff0ac,#f5c542 60%,#b87a12)!important;
  color:#17120a!important;border:1px solid rgba(130,82,10,.25)!important;
  box-shadow:0 7px 0 rgba(126,77,8,.18),0 14px 26px rgba(184,122,18,.23),inset 0 2px 0 rgba(255,255,255,.6)!important;
}
body.pg-notes-dashboard .refresh-badge{background:#17120a!important;color:#ffd86a!important;border:1px solid rgba(245,197,66,.34)!important;}
body.pg-notes-dashboard .refresh-badge a{color:#fff1bd!important;}
body.pg-notes-dashboard #containment-wrapper{
  min-height:560px!important;
  height:calc(100vh - 190px)!important;
  background:
    linear-gradient(rgba(184,122,18,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(184,122,18,.07) 1px, transparent 1px),
    #fffdf6!important;
  background-size:28px 28px!important;
  padding:18px!important;
}
body.pg-notes-dashboard .ak-note-card{filter:drop-shadow(0 18px 24px rgba(55,40,10,.16));}
body.pg-notes-dashboard .quote-box{
  border-radius:20px!important;
  background:linear-gradient(180deg,#fff6a4,#f8df58)!important;
  border:1px solid rgba(184,122,18,.32)!important;
  color:#17120a!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
}
body.pg-notes-dashboard .quick{background:#fffde4!important;border-color:rgba(184,122,18,.24)!important;}
body.pg-notes-dashboard .ak-notes-empty{color:#7a5a12!important;}
body.pg-notes-dashboard .ak-notes-empty i{color:#b87a12!important;}

@media(max-width:1320px){
  body.pg-menu-tessere .ak-workspace.ak-wow-grid{grid-template-columns:minmax(250px,300px) minmax(0,1fr)!important;}
  body.pg-menu-tessere .ak-panel-notes{grid-column:1 / -1!important;}
  body.pg-menu-tessere .ak-panel-notes .ak-panel-frame{height:620px!important;}
}
@media(max-width:900px){
  body.pg-menu-tessere .ak-ticket-hero{background:linear-gradient(160deg,#15100a 0%,#2a2113 55%,#fff6d2 56%,#fff 100%)!important;}
  body.pg-menu-tessere .ak-workspace.ak-wow-grid{grid-template-columns:1fr!important;}
  body.pg-menu-tessere .ak-panel-stage .ak-panel-frame{height:640px!important;}
  body.pg-menu-tessere .ak-panel-details .ak-panel-frame{height:850px!important;}
  body.pg-menu-tessere .ak-panel-notes .ak-panel-frame{height:680px!important;}
  body.pg-menu-tessere-body .inline-form{grid-template-columns:1fr!important;}
  body.pg-menu-tessere-body .inline-form .btn{width:100%!important;}
}
@media(max-width:575.98px){
  body.pg-menu-tessere .ak-detail-dashboard{padding:10px!important;}
  body.pg-menu-tessere .ak-ticket-photo-wrap,
  body.pg-menu-tessere .ak-ticket-photo,
  body.pg-menu-tessere .ak-ticket-photo-placeholder{width:60px!important;height:60px!important;flex-basis:60px!important;}
  body.pg-menu-tessere .ak-ticket-hero h1{font-size:24px!important;}
  body.pg-menu-tessere .ak-panel-head{height:54px!important;flex-basis:54px!important;padding-inline:14px!important;}
  body.pg-menu-tessere .ak-panel-stage .ak-panel-frame{height:620px!important;}
  body.pg-menu-tessere .ak-panel-details .ak-panel-frame{height:940px!important;}
  body.pg-menu-tessere .ak-panel-notes .ak-panel-frame{height:660px!important;}
  body.pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:48px minmax(0,1fr) 42px!important;padding:14px!important;}
  body.pg-menu-tessere-body .action-icon{width:48px!important;height:48px!important;font-size:20px!important;}
}


/* =========================================================
   ANIMAL KING GOLD - SCHEDA INTERNA REALE V8
   Intervento mirato su menu-tessere.php + iframe interni
   Cache version: 20260620-ak-gold-v8-scheda-reale
   ========================================================= */
:root{
  --ak-v8-black:#100b03;
  --ak-v8-ink:#1a1408;
  --ak-v8-ink2:#3d2b08;
  --ak-v8-gold:#f6bd16;
  --ak-v8-gold2:#ffd86b;
  --ak-v8-gold3:#c88905;
  --ak-v8-cream:#fff8e5;
  --ak-v8-soft:#fffdf6;
  --ak-v8-border:rgba(195,137,5,.25);
  --ak-v8-shadow:0 18px 45px rgba(63,42,4,.12);
}
body.ak-detail-v8{
  background:
    radial-gradient(circle at 7% 0%, rgba(255,216,107,.24), transparent 30%),
    linear-gradient(135deg,#fffdf7 0%,#f7f0dd 48%,#fff8e5 100%) !important;
  color:var(--ak-v8-ink) !important;
  overflow:auto !important;
}
body.ak-detail-v8 .ak-detail-dashboard{
  padding:18px !important;
  max-width:1740px !important;
  margin:0 auto !important;
}
body.ak-detail-v8 .ak-ticket-hero{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:18px !important;
  padding:18px 22px !important;
  border-radius:28px !important;
  border:1px solid rgba(246,189,22,.36) !important;
  background:
    linear-gradient(135deg,rgba(16,11,3,.98),rgba(59,39,3,.95) 55%,rgba(198,137,5,.92)) !important;
  box-shadow:0 22px 55px rgba(16,11,3,.22), inset 0 1px 0 rgba(255,255,255,.18) !important;
  color:#fff8dc !important;
  margin-bottom:18px !important;
}
body.ak-detail-v8 .ak-ticket-hero h1,
body.ak-detail-v8 .ak-ticket-name,
body.ak-detail-v8 .ak-eyebrow{color:#fff8dc !important; text-shadow:0 2px 0 rgba(0,0,0,.25) !important;}
body.ak-detail-v8 .ak-ticket-hero h1{font-size:clamp(2rem,3vw,3.7rem) !important; letter-spacing:.02em !important; font-weight:950 !important; line-height:.95 !important;}
body.ak-detail-v8 .ak-ticket-name{font-size:1.1rem !important; opacity:.94 !important; margin:0 !important;}
body.ak-detail-v8 .ak-eyebrow{font-size:.78rem !important; font-weight:900 !important; text-transform:uppercase !important; letter-spacing:.18em !important; color:var(--ak-v8-gold2) !important;}
body.ak-detail-v8 .ak-ticket-photo{width:86px !important;height:86px !important;border-radius:24px !important;object-fit:cover !important;border:3px solid var(--ak-v8-gold2) !important;box-shadow:0 14px 28px rgba(0,0,0,.32) !important;}
body.ak-detail-v8 .ak-ticket-meta{display:flex !important;flex-wrap:wrap !important;gap:10px !important;justify-content:flex-end !important;}
body.ak-detail-v8 .ak-status-pill,
body.ak-detail-v8 .ak-meta-chip{
  display:inline-flex !important;align-items:center !important;gap:7px !important;
  border-radius:999px !important;padding:10px 13px !important;
  background:rgba(255,248,229,.12) !important;border:1px solid rgba(255,216,107,.35) !important;
  color:#fff8dc !important;font-weight:850 !important;backdrop-filter:blur(8px) !important;
}
body.ak-detail-v8 .ak-status-pill.is-active{background:linear-gradient(180deg,#39d98a,#129757) !important;color:#062014 !important;border-color:rgba(255,255,255,.28) !important;}
body.ak-detail-v8 .ak-workspace.ak-wow-grid{
  display:grid !important;grid-template-columns:minmax(245px,.82fr) minmax(430px,1.65fr) minmax(430px,1.65fr) !important;
  gap:18px !important;align-items:stretch !important;
}
body.ak-detail-v8 .ak-panel{
  border-radius:28px !important;overflow:hidden !important;background:rgba(255,255,255,.82) !important;
  border:1px solid rgba(198,137,5,.20) !important;box-shadow:var(--ak-v8-shadow) !important;min-height:620px !important;
}
body.ak-detail-v8 .ak-panel-head{
  min-height:58px !important;display:flex !important;align-items:center !important;gap:10px !important;
  padding:13px 16px !important;background:linear-gradient(180deg,#171006,#2a1b04) !important;color:#fff5ce !important;
  border-bottom:3px solid var(--ak-v8-gold) !important;font-weight:950 !important;
}
body.ak-detail-v8 .ak-panel-head i{color:var(--ak-v8-gold2) !important;font-size:1.15rem !important;}
body.ak-detail-v8 .ak-panel-head small{margin-left:auto !important;color:#f7d878 !important;font-weight:800 !important;opacity:.9 !important;text-transform:uppercase !important;font-size:.68rem !important;letter-spacing:.08em !important;}
body.ak-detail-v8 .ak-panel-frame{height:calc(100% - 58px) !important;min-height:560px !important;background:linear-gradient(180deg,#fffdf6,#fff7df) !important;}
body.ak-detail-v8 iframe.ak-frame{width:100% !important;height:100% !important;min-height:560px !important;border:0 !important;display:block !important;background:transparent !important;}
body.ak-detail-v8 .ak-panel-stage iframe{min-height:630px !important;}
body.ak-detail-v8 .ak-panel-details iframe{min-height:720px !important;}
body.ak-detail-v8 .ak-panel-notes iframe{min-height:720px !important;}

/* IFRAME: fasi registrazione */
body.ak-stage-v8,
body.pg-stage.ak-stage-v8{
  background:linear-gradient(180deg,#fffdf4,#fff5d9) !important;margin:0 !important;color:var(--ak-v8-ink) !important;overflow:auto !important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif !important;
}
body.ak-stage-v8 .page-shell{padding:16px !important;min-height:100vh !important;display:block !important;}
body.ak-stage-v8 .stage-card{border:0 !important;border-radius:26px !important;background:linear-gradient(180deg,#fff,#fff8e4) !important;box-shadow:none !important;overflow:visible !important;}
body.ak-stage-v8 .stage-card .card-body{padding:18px !important;}
body.ak-stage-v8 .page-title{font-size:1.28rem !important;text-align:center !important;font-weight:950 !important;line-height:1.14 !important;color:#191006 !important;margin-bottom:12px !important;}
body.ak-stage-v8 .intro-text{text-align:center !important;color:#6e5a2b !important;line-height:1.5 !important;margin:0 auto 18px !important;max-width:260px !important;}
body.ak-stage-v8 .step-list{display:grid !important;gap:12px !important;}
body.ak-stage-v8 .step-item{
  display:grid !important;grid-template-columns:46px 1fr !important;align-items:center !important;gap:12px !important;
  padding:14px !important;border-radius:20px !important;background:#fff !important;border:1px solid rgba(198,137,5,.22) !important;
  box-shadow:0 10px 25px rgba(66,42,3,.08) !important;position:relative !important;overflow:hidden !important;
}
body.ak-stage-v8 .step-item:before{content:"" !important;position:absolute !important;left:0 !important;top:0 !important;bottom:0 !important;width:5px !important;background:linear-gradient(180deg,var(--ak-v8-gold2),var(--ak-v8-gold3)) !important;}
body.ak-stage-v8 .step-item.ok{background:linear-gradient(135deg,#fff,#fff8df) !important;border-color:rgba(246,189,22,.38) !important;}
body.ak-stage-v8 .step-icon{width:42px !important;height:42px !important;object-fit:contain !important;border-radius:12px !important;background:#fff6d8 !important;padding:6px !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.8) !important;}
body.ak-stage-v8 .step-label{font-weight:950 !important;color:#211505 !important;line-height:1.2 !important;}
body.ak-stage-v8 .step-status{display:inline-flex !important;margin-top:4px !important;border-radius:999px !important;padding:2px 9px !important;background:#10200e !important;color:var(--ak-v8-gold2) !important;font-size:.78rem !important;font-weight:950 !important;}
body.ak-stage-v8 .badge-refresh{display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;margin-top:16px !important;border-radius:18px !important;padding:12px !important;background:linear-gradient(180deg,#ffdf79,#f5b914) !important;color:#1b1204 !important;box-shadow:0 10px 22px rgba(246,189,22,.28), inset 0 2px 0 rgba(255,255,255,.42) !important;font-weight:950 !important;}

/* IFRAME: azioni/dettagli tessera */
body.ak-actions-v8,
body.pg-menu-tessere-body.ak-actions-v8{
  background:linear-gradient(180deg,#fffdf6,#fff5dc) !important;margin:0 !important;color:var(--ak-v8-ink) !important;overflow:auto !important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif !important;
}
body.ak-actions-v8 .page-shell{padding:16px !important;max-width:none !important;}
body.ak-actions-v8 .member-card{border:0 !important;border-radius:26px !important;background:linear-gradient(135deg,#fff,#fff3c7) !important;box-shadow:0 14px 32px rgba(66,42,3,.10) !important;border:1px solid rgba(198,137,5,.22) !important;overflow:hidden !important;}
body.ak-actions-v8 .member-card .card-body{padding:18px !important;}
body.ak-actions-v8 .member-photo{width:92px !important;height:92px !important;border-radius:24px !important;object-fit:cover !important;border:3px solid var(--ak-v8-gold) !important;box-shadow:0 12px 25px rgba(66,42,3,.18) !important;}
body.ak-actions-v8 .mini-label{display:inline-flex !important;align-items:center !important;border-radius:999px !important;padding:5px 10px !important;background:#1a1206 !important;color:var(--ak-v8-gold2) !important;font-size:.7rem !important;font-weight:950 !important;text-transform:uppercase !important;letter-spacing:.08em !important;margin-bottom:6px !important;}
body.ak-actions-v8 .member-title{font-size:1.35rem !important;font-weight:950 !important;color:#180f04 !important;margin:0 0 8px !important;line-height:1.12 !important;}
body.ak-actions-v8 .ak-mini-badges{display:flex !important;flex-wrap:wrap !important;gap:8px !important;}
body.ak-actions-v8 .ak-mini-badges span{display:inline-flex !important;align-items:center !important;gap:6px !important;border-radius:999px !important;background:#fff !important;border:1px solid rgba(198,137,5,.2) !important;color:#5b4513 !important;font-weight:800 !important;padding:6px 10px !important;}
body.ak-actions-v8 .ak-detail-actions{display:grid !important;grid-template-columns:1fr !important;gap:14px !important;}
body.ak-actions-v8 .action-card{border:1px solid rgba(198,137,5,.20) !important;border-radius:22px !important;background:#fff !important;box-shadow:0 12px 28px rgba(66,42,3,.08) !important;padding:0 !important;overflow:hidden !important;transition:.18s ease !important;}
body.ak-actions-v8 .action-card:hover{transform:translateY(-2px) !important;box-shadow:0 18px 35px rgba(66,42,3,.13) !important;background:#fffaf0 !important;}
body.ak-actions-v8 .action-card-inner{display:grid !important;grid-template-columns:56px 1fr auto !important;gap:14px !important;align-items:center !important;padding:16px !important;}
body.ak-actions-v8 .action-icon{width:52px !important;height:52px !important;border-radius:18px !important;display:flex !important;align-items:center !important;justify-content:center !important;background:linear-gradient(180deg,#2a1b04,#100b03) !important;color:var(--ak-v8-gold2) !important;font-size:1.35rem !important;box-shadow:0 10px 20px rgba(16,11,3,.16), inset 0 1px 0 rgba(255,255,255,.18) !important;}
body.ak-actions-v8 .action-copy strong,
body.ak-actions-v8 .form-action-title{font-size:1.02rem !important;font-weight:950 !important;color:#1a1004 !important;}
body.ak-actions-v8 .action-desc{margin:.2rem 0 0 !important;color:#745e2c !important;line-height:1.38 !important;}
body.ak-actions-v8 .ak-round-action{width:46px !important;height:46px !important;border-radius:16px !important;background:linear-gradient(180deg,#ffdc65,#f2b30a) !important;border:0 !important;color:#1b1204 !important;font-weight:950 !important;box-shadow:0 10px 20px rgba(246,189,22,.28), inset 0 2px 0 rgba(255,255,255,.45) !important;}
body.ak-actions-v8 .btn,
body.ak-actions-v8 input[type=submit]{border-radius:15px !important;font-weight:950 !important;border:0 !important;box-shadow:0 10px 18px rgba(246,189,22,.22), inset 0 2px 0 rgba(255,255,255,.35) !important;}
body.ak-actions-v8 .btn-primary,
body.ak-actions-v8 input[type=submit],
body.ak-actions-v8 .btn.btn-primary{background:linear-gradient(180deg,#ffd766,#f3b008) !important;color:#1b1204 !important;}
body.ak-actions-v8 .form-control,
body.ak-actions-v8 .form-select{border-radius:16px !important;border:1px solid rgba(198,137,5,.25) !important;min-height:46px !important;background:#fffef9 !important;}
body.ak-actions-v8 .inline-form{display:flex !important;gap:8px !important;align-items:center !important;flex-wrap:wrap !important;}
body.ak-actions-v8 .action-card-form .action-card-inner{display:block !important;}

/* IFRAME: note/timeline */
body.ak-notes-v8,
body.pg-notes-dashboard.ak-notes-v8{
  background:linear-gradient(180deg,#fffdf5,#fff2cd) !important;margin:0 !important;color:var(--ak-v8-ink) !important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif !important;overflow:auto !important;
}
body.ak-notes-v8 .page-shell{padding:16px !important;max-width:none !important;}
body.ak-notes-v8 .dashboard-card{border:1px solid rgba(198,137,5,.22) !important;border-radius:26px !important;background:linear-gradient(135deg,#fff,#fff3c4) !important;box-shadow:0 14px 32px rgba(66,42,3,.10) !important;overflow:hidden !important;}
body.ak-notes-v8 .dashboard-card .card-body{padding:18px !important;}
body.ak-notes-v8 .page-title{font-size:1.45rem !important;font-weight:950 !important;color:#1a1004 !important;margin:0 !important;}
body.ak-notes-v8 .page-subtitle{color:#71591c !important;margin:.2rem 0 0 !important;}
body.ak-notes-v8 .toolbar-actions{display:flex !important;flex-wrap:wrap !important;gap:10px !important;}
body.ak-notes-v8 .btn-warning{border:0 !important;border-radius:16px !important;background:linear-gradient(180deg,#ffd96b,#f3b006) !important;color:#1b1204 !important;font-weight:950 !important;box-shadow:0 11px 22px rgba(246,189,22,.30), inset 0 2px 0 rgba(255,255,255,.45) !important;padding:11px 18px !important;}
body.ak-notes-v8 .refresh-badge{border-radius:16px !important;background:#1a1206 !important;color:#ffe7a2 !important;border:1px solid rgba(255,216,107,.30) !important;padding:11px 16px !important;font-weight:850 !important;}
body.ak-notes-v8 .refresh-badge a{color:var(--ak-v8-gold2) !important;font-weight:950 !important;}
body.ak-notes-v8 .notes-area-card{margin-top:16px !important;border-radius:26px !important;border:1px dashed rgba(198,137,5,.35) !important;background:linear-gradient(135deg,rgba(255,255,255,.86),rgba(255,248,223,.86)),linear-gradient(90deg,rgba(198,137,5,.06) 1px,transparent 1px),linear-gradient(rgba(198,137,5,.06) 1px,transparent 1px) !important;background-size:auto,26px 26px,26px 26px !important;min-height:430px !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75) !important;overflow:auto !important;padding:18px !important;}
body.ak-notes-v8 #containment-wrapper{position:relative !important;min-height:380px !important;width:100% !important;display:grid !important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) !important;gap:16px !important;align-content:start !important;}
body.ak-notes-v8 .draggable,
body.ak-notes-v8 .ak-note-card{position:relative !important;left:auto !important;top:auto !important;width:auto !important;max-width:none !important;min-height:0 !important;}
body.ak-notes-v8 .ak-note-card{background:#fff !important;border:1px solid rgba(198,137,5,.25) !important;border-radius:22px !important;box-shadow:0 15px 32px rgba(66,42,3,.11) !important;padding:14px !important;}
body.ak-notes-v8 .ak-note-topline{display:flex !important;align-items:center !important;gap:10px !important;margin-bottom:10px !important;color:#1a1004 !important;}
body.ak-notes-v8 .ak-note-avatar{width:38px !important;height:38px !important;border-radius:14px !important;background:linear-gradient(180deg,#2a1b04,#100b03) !important;color:var(--ak-v8-gold2) !important;display:flex !important;align-items:center !important;justify-content:center !important;}
body.ak-notes-v8 .ak-note-topline strong{font-weight:950 !important;display:block !important;}
body.ak-notes-v8 .ak-note-topline small{color:#7b6425 !important;font-weight:800 !important;}
body.ak-notes-v8 .quote-box{margin:0 !important;background:linear-gradient(180deg,#fff8cc,#fff2a0) !important;border:1px solid rgba(198,137,5,.33) !important;border-radius:18px !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75) !important;padding:14px !important;min-height:130px !important;}
body.ak-notes-v8 .quick{width:100% !important;min-height:110px !important;border-radius:16px !important;border:1px solid rgba(198,137,5,.28) !important;background:#fffde5 !important;padding:12px !important;resize:vertical !important;}
body.ak-notes-v8 .blog-post-actions img{width:22px !important;height:22px !important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.15)) !important;}
body.ak-notes-v8 .ak-notes-empty{min-height:350px !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;text-align:center !important;color:#806427 !important;}
body.ak-notes-v8 .ak-notes-empty i{font-size:3rem !important;color:var(--ak-v8-gold3) !important;margin-bottom:10px !important;}
body.ak-notes-v8 .ak-notes-empty strong{font-size:1.25rem !important;color:#1a1004 !important;}

@media(max-width:1199.98px){
  body.ak-detail-v8 .ak-workspace.ak-wow-grid{grid-template-columns:1fr !important;}
  body.ak-detail-v8 .ak-panel{min-height:auto !important;}
  body.ak-detail-v8 iframe.ak-frame{min-height:520px !important;}
}
@media(max-width:767.98px){
  body.ak-detail-v8 .ak-detail-dashboard{padding:10px !important;}
  body.ak-detail-v8 .ak-ticket-hero{border-radius:22px !important;align-items:flex-start !important;flex-direction:column !important;padding:16px !important;}
  body.ak-detail-v8 .ak-ticket-meta{justify-content:flex-start !important;}
  body.ak-detail-v8 .ak-panel-head{border-radius:0 !important;}
  body.ak-actions-v8 .action-card-inner{grid-template-columns:46px 1fr !important;}
  body.ak-actions-v8 .ak-round-action{grid-column:1 / -1 !important;width:100% !important;}
  body.ak-actions-v8 .inline-form{display:grid !important;grid-template-columns:1fr !important;}
  body.ak-notes-v8 .toolbar-actions{width:100% !important;}
  body.ak-notes-v8 .toolbar-actions .btn,
  body.ak-notes-v8 .refresh-badge{width:100% !important;text-align:center !important;justify-content:center !important;}
}

/* =========================================================
   ANIMAL KING SCHEDA INTERNA - FIX REALE v9
   Applicato in coda per sovrascrivere CSS legacy anche se la
   pagina usa markup vecchio (.frame-card) o nuovo (.ak-panel).
   ========================================================= */
:root{
  --ak-gold:#f4c542;
  --ak-gold-light:#ffe28a;
  --ak-gold-dark:#b87a12;
  --ak-black:#12100b;
  --ak-black-soft:#211a10;
  --ak-cream:#fff7df;
  --ak-paper:#fffdfa;
  --ak-line-gold:rgba(184,122,18,.20);
  --ak-shadow-gold:0 18px 46px rgba(65,45,10,.13);
}

/* contenitore pagina scheda / iframe */
body.pg-menu-tessere,
body.pg-menu-tessere.ak-card-workspace,
body.pg-menu-tessere.ak-wow-tessera{
  background:linear-gradient(135deg,#fbf7eb 0%,#fffdf6 48%,#f1e3bf 100%)!important;
  min-height:100vh!important;
  overflow:auto!important;
  color:var(--ak-black)!important;
}
body.pg-menu-tessere .ak-detail-dashboard{
  min-height:100vh!important;
  padding:clamp(14px,1.6vw,24px)!important;
  gap:clamp(14px,1.6vw,22px)!important;
  background:transparent!important;
  overflow:visible!important;
}
body.pg-menu-tessere .ak-ticket-hero{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:clamp(16px,2vw,24px)!important;
  border-radius:28px!important;
  background:linear-gradient(135deg,var(--ak-black) 0%,#2d210f 58%,#7d5510 100%)!important;
  border:1px solid rgba(244,197,66,.35)!important;
  box-shadow:var(--ak-shadow-gold)!important;
  color:#fff!important;
}
body.pg-menu-tessere .ak-ticket-hero h1,
body.pg-menu-tessere .ak-ticket-name,
body.pg-menu-tessere .ak-eyebrow{color:#fff!important;}
body.pg-menu-tessere .ak-eyebrow{color:var(--ak-gold-light)!important;letter-spacing:.12em!important;}
body.pg-menu-tessere .ak-ticket-hero h1{font-size:clamp(30px,4vw,54px)!important;font-weight:1000!important;line-height:.9!important;}
body.pg-menu-tessere .ak-ticket-name{font-size:clamp(16px,1.6vw,23px)!important;opacity:.92!important;}
body.pg-menu-tessere .ak-ticket-photo,
body.pg-menu-tessere .ak-ticket-photo-placeholder{
  width:86px!important;height:86px!important;border-radius:24px!important;
  border:3px solid var(--ak-gold)!important;box-shadow:0 16px 34px rgba(0,0,0,.32)!important;
}
body.pg-menu-tessere .ak-status-pill,
body.pg-menu-tessere .ak-meta-chip{
  background:rgba(255,255,255,.12)!important;color:#fff!important;
  border:1px solid rgba(255,226,138,.28)!important;border-radius:999px!important;
  padding:10px 13px!important;font-weight:900!important;backdrop-filter:blur(8px)!important;
}
body.pg-menu-tessere .ak-status-pill.is-active{background:linear-gradient(135deg,#15803d,#22c55e)!important;color:#fff!important;}

/* Supporto sia nuovo markup ak-panel sia vecchio frame-card/row */
body.pg-menu-tessere .ak-workspace,
body.pg-menu-tessere .ak-wow-grid,
body.pg-menu-tessere .row.g-3,
body.pg-menu-tessere .row{
  display:grid!important;
  grid-template-columns:minmax(250px,.65fr) minmax(480px,1.35fr) minmax(420px,1.15fr)!important;
  gap:18px!important;
  align-items:stretch!important;
  margin:0!important;
  height:auto!important;
  min-height:calc(100vh - 168px)!important;
  overflow:visible!important;
}
body.pg-menu-tessere .col-12,
body.pg-menu-tessere .col-lg,
body.pg-menu-tessere [class*="col-"]{width:auto!important;max-width:none!important;flex:none!important;padding:0!important;}
body.pg-menu-tessere .ak-panel,
body.pg-menu-tessere .frame-card{
  display:grid!important;
  grid-template-rows:64px minmax(0,1fr)!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.90)!important;
  border:1px solid var(--ak-line-gold)!important;
  box-shadow:var(--ak-shadow-gold)!important;
  overflow:hidden!important;
  min-height:690px!important;
  height:auto!important;
}
body.pg-menu-tessere .ak-panel-head,
body.pg-menu-tessere .frame-title{
  margin:0!important;height:64px!important;padding:0 20px!important;
  display:flex!important;align-items:center!important;gap:10px!important;
  background:linear-gradient(180deg,#fff7dc,#ffffff)!important;
  border-bottom:1px solid var(--ak-line-gold)!important;
  color:var(--ak-black)!important;font-size:17px!important;font-weight:1000!important;letter-spacing:-.02em!important;
}
body.pg-menu-tessere .ak-panel-head i,
body.pg-menu-tessere .frame-title:before{color:var(--ak-gold-dark)!important;}
body.pg-menu-tessere .frame-title:before{content:'◆';font-size:13px;}
body.pg-menu-tessere .ak-panel-head small{margin-left:auto;color:#806019!important;font-size:12px!important;font-weight:850!important;}
body.pg-menu-tessere .ak-panel-frame,
body.pg-menu-tessere .frame-wrap{height:100%!important;min-height:0!important;background:linear-gradient(180deg,#fffefa,#fff8e6)!important;padding:14px!important;overflow:hidden!important;}
body.pg-menu-tessere .ak-panel-frame iframe,
body.pg-menu-tessere .frame-wrap iframe,
body.pg-menu-tessere iframe.ak-frame{
  display:block!important;width:100%!important;height:100%!important;min-height:650px!important;border:0!important;
  border-radius:22px!important;background:transparent!important;overflow:auto!important;
}
body.pg-menu-tessere .ak-panel-stage iframe,
body.pg-menu-tessere .col-stage iframe{min-height:640px!important;}
body.pg-menu-tessere .ak-panel-details iframe,
body.pg-menu-tessere .col-auth iframe{min-height:780px!important;}
body.pg-menu-tessere .ak-panel-notes iframe{min-height:780px!important;}

/* stage.php */
body.pg-stage{background:transparent!important;overflow:auto!important;color:var(--ak-black)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;}
body.pg-stage .page-shell{padding:0!important;width:100%!important;max-width:none!important;min-height:100%!important;}
body.pg-stage .stage-card{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;min-height:0!important;}
body.pg-stage .stage-card .card-body{padding:14px!important;}
body.pg-stage .page-title{
  margin:0 0 12px!important;padding:18px 12px 6px!important;text-align:center!important;
  font-size:clamp(22px,2.4vw,30px)!important;line-height:1.05!important;color:var(--ak-black)!important;font-weight:1000!important;letter-spacing:-.05em!important;
}
body.pg-stage .intro-text{max-width:230px!important;text-align:center!important;margin:0 auto 18px!important;color:#786037!important;font-size:14px!important;line-height:1.45!important;}
body.pg-stage .step-list{display:grid!important;gap:14px!important;}
body.pg-stage .step-item{
  position:relative!important;display:grid!important;grid-template-columns:50px minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;
  min-height:86px!important;padding:15px!important;border-radius:22px!important;
  background:linear-gradient(180deg,#ffffff,#fff8df)!important;border:1px solid rgba(184,122,18,.22)!important;
  box-shadow:0 14px 30px rgba(65,45,10,.10)!important;overflow:hidden!important;
}
body.pg-stage .step-item:before{content:""!important;position:absolute!important;left:0!important;top:14px!important;bottom:14px!important;width:5px!important;border-radius:0 99px 99px 0!important;background:linear-gradient(180deg,var(--ak-gold),var(--ak-gold-dark))!important;}
body.pg-stage .step-item::after{content:'OK'!important;justify-self:end!important;padding:6px 10px!important;border-radius:999px!important;background:linear-gradient(135deg,#15110a,#30240f)!important;color:var(--ak-gold-light)!important;font-size:12px!important;font-weight:1000!important;border:1px solid rgba(244,197,66,.35)!important;}
body.pg-stage .step-item.ko::after{content:'KO'!important;background:linear-gradient(135deg,#7f1d1d,#dc2626)!important;color:#fff!important;}
body.pg-stage .step-icon{width:44px!important;height:44px!important;border-radius:16px!important;background:#fff1bd!important;padding:6px!important;object-fit:contain!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.6)!important;}
body.pg-stage .step-label{font-size:15px!important;line-height:1.22!important;color:var(--ak-black)!important;font-weight:950!important;}
body.pg-stage .step-status{display:none!important;}
body.pg-stage .badge-refresh{display:flex!important;justify-content:center!important;width:100%!important;margin-top:18px!important;padding:12px 14px!important;border-radius:18px!important;background:linear-gradient(135deg,var(--ak-black),#2a1f10)!important;color:var(--ak-gold-light)!important;border:1px solid rgba(244,197,66,.35)!important;font-weight:950!important;box-shadow:0 12px 26px rgba(65,45,10,.18)!important;}

/* menu-tessere-body.php */
body.pg-menu-tessere-body{background:transparent!important;overflow:auto!important;color:var(--ak-black)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;}
body.pg-menu-tessere-body .page-shell{padding:0!important;max-width:none!important;width:100%!important;}
body.pg-menu-tessere-body .member-card{border:1px solid var(--ak-line-gold)!important;border-radius:26px!important;background:linear-gradient(135deg,#fff 0%,#fff6d8 100%)!important;box-shadow:0 16px 38px rgba(65,45,10,.10)!important;margin-bottom:16px!important;}
body.pg-menu-tessere-body .member-card .card-body{padding:20px!important;}
body.pg-menu-tessere-body .member-photo{width:86px!important;height:86px!important;border-radius:22px!important;object-fit:cover!important;border:3px solid var(--ak-gold)!important;box-shadow:0 12px 26px rgba(65,45,10,.22)!important;}
body.pg-menu-tessere-body .mini-label{display:inline-flex!important;color:var(--ak-gold-dark)!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-size:11px!important;font-weight:1000!important;margin-bottom:5px!important;}
body.pg-menu-tessere-body .member-title{font-size:clamp(22px,2.4vw,32px)!important;line-height:1.08!important;color:var(--ak-black)!important;font-weight:1000!important;letter-spacing:-.045em!important;margin:0!important;}
body.pg-menu-tessere-body .ak-mini-badges{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-top:10px!important;}
body.pg-menu-tessere-body .ak-mini-badges span{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:7px 10px!important;border-radius:999px!important;background:#17120a!important;color:var(--ak-gold-light)!important;border:1px solid rgba(244,197,66,.30)!important;font-size:12px!important;font-weight:850!important;}
body.pg-menu-tessere-body .actions-grid{display:grid!important;gap:14px!important;padding-bottom:16px!important;}
body.pg-menu-tessere-body .action-card{border:1px solid var(--ak-line-gold)!important;border-radius:24px!important;background:#fff!important;box-shadow:0 12px 30px rgba(65,45,10,.09)!important;overflow:hidden!important;transition:.2s ease!important;}
body.pg-menu-tessere-body .action-card:hover{transform:translateY(-2px)!important;box-shadow:0 18px 42px rgba(65,45,10,.15)!important;}
body.pg-menu-tessere-body .action-card-modern .action-card-inner{display:grid!important;grid-template-columns:54px minmax(0,1fr) 48px!important;align-items:center!important;gap:14px!important;padding:18px!important;}
body.pg-menu-tessere-body .action-icon{width:52px!important;height:52px!important;border-radius:18px!important;display:grid!important;place-items:center!important;color:#17120a!important;font-size:23px!important;background:linear-gradient(180deg,var(--ak-gold-light),var(--ak-gold))!important;box-shadow:0 10px 22px rgba(184,122,18,.28), inset 0 2px 0 rgba(255,255,255,.65)!important;}
body.pg-menu-tessere-body .action-copy strong{display:block!important;color:var(--ak-black)!important;font-weight:1000!important;font-size:18px!important;margin-bottom:4px!important;}
body.pg-menu-tessere-body .action-desc{margin:0!important;color:#755d34!important;font-size:15px!important;line-height:1.38!important;}
body.pg-menu-tessere-body .ak-round-action,
body.pg-menu-tessere-body .btn-primary,
body.pg-menu-tessere-body input[type="submit"]{
  background:linear-gradient(180deg,var(--ak-gold-light),var(--ak-gold))!important;color:#17120a!important;border:1px solid rgba(184,122,18,.32)!important;
  border-radius:16px!important;font-weight:1000!important;box-shadow:0 10px 20px rgba(184,122,18,.26), inset 0 2px 0 rgba(255,255,255,.55)!important;
}
body.pg-menu-tessere-body .ak-round-action{width:48px!important;height:48px!important;display:grid!important;place-items:center!important;padding:0!important;}
body.pg-menu-tessere-body .form-control,body.pg-menu-tessere-body .form-select{min-height:48px!important;border-radius:16px!important;border:1px solid rgba(184,122,18,.24)!important;background:#fffdf6!important;}
body.pg-menu-tessere-body .inline-form{display:flex!important;gap:10px!important;align-items:center!important;flex-wrap:wrap!important;}
body.pg-menu-tessere-body .inline-form .form-control,body.pg-menu-tessere-body .inline-form .form-select{flex:1 1 220px!important;}

/* notes/dashboard.php */
body.pg-notes-dashboard{background:transparent!important;overflow:auto!important;color:var(--ak-black)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;}
body.pg-notes-dashboard .page-shell{padding:0!important;max-width:none!important;width:100%!important;}
body.pg-notes-dashboard .dashboard-card{border:1px solid var(--ak-line-gold)!important;border-radius:26px!important;background:linear-gradient(135deg,#fff 0%,#fff4cf 100%)!important;box-shadow:0 16px 38px rgba(65,45,10,.10)!important;margin-bottom:14px!important;}
body.pg-notes-dashboard .dashboard-card .card-body{padding:22px!important;}
body.pg-notes-dashboard .page-title{font-size:clamp(24px,2.5vw,34px)!important;font-weight:1000!important;letter-spacing:-.045em!important;color:var(--ak-black)!important;}
body.pg-notes-dashboard .page-subtitle{color:#755d34!important;}
body.pg-notes-dashboard .btn-warning{background:linear-gradient(180deg,var(--ak-gold-light),var(--ak-gold))!important;color:#17120a!important;border:1px solid rgba(184,122,18,.32)!important;border-radius:16px!important;font-weight:1000!important;min-height:46px!important;box-shadow:0 10px 20px rgba(184,122,18,.24), inset 0 2px 0 rgba(255,255,255,.55)!important;}
body.pg-notes-dashboard .refresh-badge{background:#17120a!important;color:var(--ak-gold-light)!important;border:1px solid rgba(244,197,66,.35)!important;border-radius:999px!important;padding:10px 14px!important;font-weight:900!important;}
body.pg-notes-dashboard .refresh-badge a{color:#fff!important;font-weight:1000!important;}
body.pg-notes-dashboard .notes-area-card{position:relative!important;min-height:520px!important;border-radius:26px!important;border:1px solid rgba(184,122,18,.22)!important;background:linear-gradient(rgba(255,253,246,.86),rgba(255,253,246,.86)),linear-gradient(90deg,rgba(184,122,18,.09) 1px,transparent 1px),linear-gradient(rgba(184,122,18,.09) 1px,transparent 1px)!important;background-size:auto,30px 30px,30px 30px!important;box-shadow:0 16px 38px rgba(65,45,10,.08)!important;overflow:hidden!important;}
body.pg-notes-dashboard #containment-wrapper{position:relative!important;min-height:520px!important;}
body.pg-notes-dashboard .ak-note-card,
body.pg-notes-dashboard .draggable{width:280px!important;border-radius:24px!important;background:#fffdf4!important;border:1px solid rgba(184,122,18,.28)!important;box-shadow:0 20px 44px rgba(65,45,10,.16)!important;padding:14px!important;}
body.pg-notes-dashboard .quote-box{background:linear-gradient(180deg,#fff9b8,#fff7dd)!important;border:0!important;border-radius:18px!important;box-shadow:none!important;}
body.pg-notes-dashboard .quick{border-radius:16px!important;border:1px solid rgba(184,122,18,.26)!important;background:#fffdf2!important;}

@media(max-width:1200px){
  body.pg-menu-tessere .ak-workspace,body.pg-menu-tessere .ak-wow-grid,body.pg-menu-tessere .row{grid-template-columns:1fr!important;min-height:0!important;}
  body.pg-menu-tessere .ak-panel,body.pg-menu-tessere .frame-card{min-height:560px!important;}
  body.pg-menu-tessere .ak-ticket-hero{align-items:flex-start!important;flex-direction:column!important;}
}
@media(max-width:768px){
  body.pg-menu-tessere .ak-detail-dashboard{padding:12px!important;}
  body.pg-menu-tessere .ak-ticket-photo,body.pg-menu-tessere .ak-ticket-photo-placeholder{width:72px!important;height:72px!important;}
  body.pg-menu-tessere .ak-ticket-hero h1{font-size:34px!important;}
  body.pg-menu-tessere .ak-panel,body.pg-menu-tessere .frame-card{border-radius:22px!important;min-height:520px!important;}
  body.pg-menu-tessere .ak-panel-head,body.pg-menu-tessere .frame-title{height:58px!important;font-size:15px!important;}
  body.pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:48px minmax(0,1fr)!important;}
  body.pg-menu-tessere-body .ak-round-action{grid-column:1/-1!important;width:100%!important;}
  body.pg-notes-dashboard .toolbar-actions{width:100%!important;flex-direction:column!important;align-items:stretch!important;}
  body.pg-notes-dashboard .toolbar-actions form,body.pg-notes-dashboard .toolbar-actions button{width:100%!important;}
  body.pg-notes-dashboard .ak-note-card,body.pg-notes-dashboard .draggable{position:relative!important;left:auto!important;top:auto!important;width:100%!important;margin:12px 0!important;}
  body.pg-notes-dashboard #containment-wrapper{padding:12px!important;}
}



/* =========================================================
   OVERRIDE SCHEDA INTERNA / IFRAME
========================================================= */

/* Animal King scheda interna FORCE v10 - caricato per ultimo */
:root{
  --ak10-black:#100d08;
  --ak10-black-2:#21180b;
  --ak10-gold:#f4c542;
  --ak10-gold-2:#ffe28a;
  --ak10-gold-3:#b87a12;
  --ak10-cream:#fff8e4;
  --ak10-paper:#fffdf7;
  --ak10-line:rgba(184,122,18,.24);
  --ak10-shadow:0 22px 55px rgba(45,31,8,.16);
}
html,body{scrollbar-color:var(--ak10-gold-3) #f7edd0;}
body.pg-menu-tessere,
body.pg-menu-tessere-body,
body.pg-stage,
body.pg-notes-dashboard{
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;
  color:var(--ak10-black)!important;
}
/* PAGINA CONTENITORE SCHEDA */
body.pg-menu-tessere{
  background:radial-gradient(circle at 15% 0%,rgba(255,226,138,.45),transparent 32%),linear-gradient(135deg,#f9f1dc 0%,#fffdf6 45%,#ead7a7 100%)!important;
  padding:16px!important;
  overflow:auto!important;
}
body.pg-menu-tessere .ak-detail-dashboard,
body.pg-menu-tessere main,
body.pg-menu-tessere .container-fluid{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important;overflow:visible!important;
}
body.pg-menu-tessere .ak-ticket-hero{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important;
  padding:22px!important;margin-bottom:18px!important;border-radius:30px!important;
  background:linear-gradient(135deg,var(--ak10-black),#30210a 58%,#5a3a07)!important;
  border:1px solid rgba(244,197,66,.34)!important;box-shadow:var(--ak10-shadow)!important;color:#fff7d6!important;
}
body.pg-menu-tessere .ak-ticket-hero h1{font-size:clamp(34px,4vw,62px)!important;line-height:.95!important;font-weight:1000!important;letter-spacing:-.06em!important;color:var(--ak10-gold-2)!important;margin:0!important;text-shadow:0 3px 0 rgba(0,0,0,.22)!important;}
body.pg-menu-tessere .ak-ticket-name,body.pg-menu-tessere .ak-eyebrow{color:#fff4c1!important;}
body.pg-menu-tessere .ak-ticket-photo,body.pg-menu-tessere .ak-ticket-photo-placeholder{width:88px!important;height:88px!important;border-radius:25px!important;object-fit:cover!important;border:3px solid var(--ak10-gold)!important;box-shadow:0 16px 30px rgba(0,0,0,.35)!important;}
body.pg-menu-tessere .ak-workspace,
body.pg-menu-tessere .ak-wow-grid,
body.pg-menu-tessere .row{
  display:grid!important;grid-template-columns:280px minmax(460px,1fr) minmax(440px,1.05fr)!important;gap:18px!important;align-items:start!important;
}
body.pg-menu-tessere .ak-panel,
body.pg-menu-tessere .frame-card,
body.pg-menu-tessere .card{
  border:1px solid var(--ak10-line)!important;border-radius:28px!important;background:linear-gradient(180deg,#fffdf8,#fff7df)!important;box-shadow:var(--ak10-shadow)!important;overflow:hidden!important;
}
body.pg-menu-tessere .ak-panel-head,
body.pg-menu-tessere .frame-title,
body.pg-menu-tessere .card-header{
  height:62px!important;display:flex!important;align-items:center!important;gap:10px!important;padding:0 18px!important;
  background:linear-gradient(135deg,var(--ak10-black),#2e210d)!important;color:var(--ak10-gold-2)!important;
  font-weight:1000!important;border-bottom:1px solid rgba(244,197,66,.30)!important;letter-spacing:-.02em!important;
}
body.pg-menu-tessere iframe{width:100%!important;min-height:720px!important;border:0!important;background:transparent!important;display:block!important;}
body.pg-menu-tessere .ak-panel-stage iframe{min-height:700px!important;}
body.pg-menu-tessere .ak-panel-details iframe{min-height:840px!important;}
body.pg-menu-tessere .ak-panel-notes iframe{min-height:840px!important;}
/* IFRAME FASI */
body.pg-stage{background:transparent!important;padding:0!important;overflow:auto!important;}
body.pg-stage .page-shell{padding:16px!important;margin:0!important;width:100%!important;max-width:none!important;}
body.pg-stage .stage-card{border:0!important;border-radius:26px!important;background:linear-gradient(180deg,#fffdf7,#fff4ce)!important;box-shadow:none!important;}
body.pg-stage .stage-card .card-body{padding:22px 16px!important;}
body.pg-stage .page-title{font-size:24px!important;line-height:1.05!important;text-align:center!important;font-weight:1000!important;color:var(--ak10-black)!important;letter-spacing:-.035em!important;margin-bottom:12px!important;}
body.pg-stage .intro-text{text-align:center!important;color:#735b2c!important;max-width:250px!important;margin:0 auto 20px!important;line-height:1.45!important;}
body.pg-stage .step-list{display:grid!important;gap:13px!important;}
body.pg-stage .step-item{position:relative!important;display:grid!important;grid-template-columns:46px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;padding:15px 14px!important;border-radius:22px!important;background:#fffdfa!important;border:1px solid rgba(184,122,18,.28)!important;box-shadow:0 12px 28px rgba(65,45,10,.10)!important;overflow:hidden!important;}
body.pg-stage .step-item:before{content:""!important;position:absolute!important;left:0!important;top:12px!important;bottom:12px!important;width:5px!important;border-radius:0 99px 99px 0!important;background:linear-gradient(180deg,var(--ak10-gold-2),var(--ak10-gold-3))!important;}
body.pg-stage .step-item:after{content:"OK"!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:5px 10px!important;border-radius:999px!important;background:linear-gradient(135deg,var(--ak10-black),#30210a)!important;color:var(--ak10-gold-2)!important;font-size:12px!important;font-weight:1000!important;}
body.pg-stage .step-item.ko:after{content:"KO"!important;background:linear-gradient(135deg,#7f1d1d,#dc2626)!important;color:#fff!important;}
body.pg-stage .step-icon{width:42px!important;height:42px!important;border-radius:16px!important;background:linear-gradient(180deg,var(--ak10-gold-2),var(--ak10-gold))!important;padding:8px!important;object-fit:contain!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.7),0 10px 18px rgba(184,122,18,.24)!important;}
body.pg-stage .step-label{font-size:16px!important;line-height:1.2!important;font-weight:1000!important;color:var(--ak10-black)!important;}
body.pg-stage .step-status{display:none!important;}
body.pg-stage .badge-refresh{display:flex!important;justify-content:center!important;margin-top:18px!important;width:100%!important;padding:12px 14px!important;border-radius:18px!important;background:linear-gradient(135deg,var(--ak10-black),#2e210d)!important;color:var(--ak10-gold-2)!important;border:1px solid rgba(244,197,66,.34)!important;font-weight:1000!important;box-shadow:0 12px 28px rgba(45,31,8,.16)!important;}
/* IFRAME DETTAGLI */
body.pg-menu-tessere-body{background:transparent!important;padding:0!important;overflow:auto!important;}
body.pg-menu-tessere-body .page-shell{padding:16px!important;max-width:none!important;margin:0!important;width:100%!important;}
body.pg-menu-tessere-body .member-card{border:1px solid rgba(184,122,18,.28)!important;border-radius:28px!important;background:linear-gradient(135deg,#fffdf8,#fff2c6)!important;box-shadow:0 18px 44px rgba(65,45,10,.13)!important;}
body.pg-menu-tessere-body .member-card .card-body{padding:22px!important;}
body.pg-menu-tessere-body .member-photo{width:92px!important;height:92px!important;border-radius:26px!important;object-fit:cover!important;border:3px solid var(--ak10-gold)!important;box-shadow:0 14px 28px rgba(65,45,10,.22)!important;}
body.pg-menu-tessere-body .mini-label{display:inline-flex!important;text-transform:uppercase!important;letter-spacing:.14em!important;color:var(--ak10-gold-3)!important;font-size:11px!important;font-weight:1000!important;}
body.pg-menu-tessere-body .member-title{font-size:clamp(24px,2.8vw,38px)!important;line-height:1.04!important;font-weight:1000!important;letter-spacing:-.055em!important;color:var(--ak10-black)!important;margin:4px 0 0!important;}
body.pg-menu-tessere-body .ak-mini-badges{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:10px!important;}
body.pg-menu-tessere-body .ak-mini-badges span{display:inline-flex!important;gap:6px!important;align-items:center!important;border-radius:999px!important;padding:7px 10px!important;background:var(--ak10-black)!important;color:var(--ak10-gold-2)!important;border:1px solid rgba(244,197,66,.30)!important;font-size:12px!important;font-weight:850!important;}
body.pg-menu-tessere-body .actions-grid{display:grid!important;gap:15px!important;}
body.pg-menu-tessere-body .action-card{border:1px solid rgba(184,122,18,.24)!important;border-radius:24px!important;background:#fffdf8!important;box-shadow:0 14px 34px rgba(65,45,10,.10)!important;overflow:hidden!important;transition:transform .2s ease, box-shadow .2s ease!important;}
body.pg-menu-tessere-body .action-card:hover{transform:translateY(-2px)!important;box-shadow:0 22px 46px rgba(65,45,10,.16)!important;}
body.pg-menu-tessere-body .action-card-modern .action-card-inner{display:grid!important;grid-template-columns:58px minmax(0,1fr) 52px!important;align-items:center!important;gap:14px!important;padding:18px!important;}
body.pg-menu-tessere-body .action-card-form .action-card-inner{padding:18px!important;}
body.pg-menu-tessere-body .action-icon,.ak-icon-blue,.ak-icon-purple,.ak-icon-green{width:56px!important;height:56px!important;border-radius:20px!important;display:grid!important;place-items:center!important;background:linear-gradient(180deg,var(--ak10-gold-2),var(--ak10-gold))!important;color:var(--ak10-black)!important;font-size:24px!important;box-shadow:0 12px 22px rgba(184,122,18,.28),inset 0 2px 0 rgba(255,255,255,.65)!important;}
body.pg-menu-tessere-body .action-copy strong,body.pg-menu-tessere-body .form-action-title strong{font-size:19px!important;font-weight:1000!important;color:var(--ak10-black)!important;}
body.pg-menu-tessere-body .action-desc,body.pg-menu-tessere-body .form-action-title p{color:#765f33!important;font-size:15px!important;line-height:1.38!important;margin:2px 0 0!important;}
body.pg-menu-tessere-body .ak-round-action,body.pg-menu-tessere-body .btn-primary,body.pg-menu-tessere-body input[type=submit],body.pg-menu-tessere-body button{background:linear-gradient(180deg,var(--ak10-gold-2),var(--ak10-gold))!important;color:var(--ak10-black)!important;border:1px solid rgba(184,122,18,.32)!important;border-radius:16px!important;font-weight:1000!important;box-shadow:0 10px 20px rgba(184,122,18,.24),inset 0 2px 0 rgba(255,255,255,.58)!important;}
body.pg-menu-tessere-body .ak-round-action{width:52px!important;height:52px!important;padding:0!important;display:grid!important;place-items:center!important;}
body.pg-menu-tessere-body .form-control,body.pg-menu-tessere-body .form-select{min-height:48px!important;border-radius:16px!important;border:1px solid rgba(184,122,18,.25)!important;background:#fffef8!important;}
body.pg-menu-tessere-body .inline-form{display:flex!important;gap:10px!important;align-items:center!important;flex-wrap:wrap!important;}
body.pg-menu-tessere-body .inline-form .form-control,body.pg-menu-tessere-body .inline-form .form-select{flex:1 1 220px!important;}
/* IFRAME NOTE */
body.pg-notes-dashboard{background:transparent!important;padding:0!important;overflow:auto!important;}
body.pg-notes-dashboard .page-shell{padding:16px!important;max-width:none!important;margin:0!important;width:100%!important;}
body.pg-notes-dashboard .dashboard-card{border:1px solid rgba(184,122,18,.28)!important;border-radius:28px!important;background:linear-gradient(135deg,#fffdf8,#fff2c6)!important;box-shadow:0 18px 44px rgba(65,45,10,.13)!important;margin-bottom:16px!important;}
body.pg-notes-dashboard .dashboard-card .card-body{padding:22px!important;}
body.pg-notes-dashboard .page-title{font-size:clamp(26px,3vw,38px)!important;font-weight:1000!important;letter-spacing:-.055em!important;color:var(--ak10-black)!important;}
body.pg-notes-dashboard .page-subtitle{color:#765f33!important;}
body.pg-notes-dashboard .btn-warning{background:linear-gradient(180deg,var(--ak10-gold-2),var(--ak10-gold))!important;color:var(--ak10-black)!important;border:1px solid rgba(184,122,18,.32)!important;border-radius:16px!important;font-weight:1000!important;min-height:48px!important;box-shadow:0 12px 22px rgba(184,122,18,.24),inset 0 2px 0 rgba(255,255,255,.58)!important;}
body.pg-notes-dashboard .refresh-badge{background:linear-gradient(135deg,var(--ak10-black),#30210a)!important;color:var(--ak10-gold-2)!important;border:1px solid rgba(244,197,66,.34)!important;border-radius:999px!important;padding:11px 15px!important;font-weight:1000!important;}
body.pg-notes-dashboard .refresh-badge a{color:#fff8dc!important;font-weight:1000!important;}
body.pg-notes-dashboard .notes-area-card{position:relative!important;min-height:560px!important;border-radius:28px!important;border:1px solid rgba(184,122,18,.25)!important;background:linear-gradient(rgba(255,253,247,.88),rgba(255,253,247,.88)),linear-gradient(90deg,rgba(184,122,18,.08) 1px,transparent 1px),linear-gradient(rgba(184,122,18,.08) 1px,transparent 1px)!important;background-size:auto,30px 30px,30px 30px!important;box-shadow:0 18px 44px rgba(65,45,10,.10)!important;overflow:auto!important;}
body.pg-notes-dashboard #containment-wrapper{position:relative!important;min-height:560px!important;padding:18px!important;}
body.pg-notes-dashboard .ak-notes-empty{position:absolute!important;inset:24px!important;border:2px dashed rgba(184,122,18,.28)!important;border-radius:24px!important;display:grid!important;place-items:center!important;text-align:center!important;color:#765f33!important;background:rgba(255,253,247,.58)!important;}
body.pg-notes-dashboard .ak-notes-empty i{font-size:48px!important;color:var(--ak10-gold-3)!important;}
body.pg-notes-dashboard .ak-note-card,body.pg-notes-dashboard .draggable{width:300px!important;border-radius:24px!important;background:linear-gradient(180deg,#fffdf8,#fff3ca)!important;border:1px solid rgba(184,122,18,.35)!important;box-shadow:0 22px 48px rgba(65,45,10,.18)!important;padding:14px!important;}
body.pg-notes-dashboard .quote-box,body.pg-notes-dashboard blockquote{background:transparent!important;border:0!important;border-radius:18px!important;box-shadow:none!important;margin:0!important;}
body.pg-notes-dashboard textarea.quick,body.pg-notes-dashboard .quick{width:100%!important;border-radius:16px!important;border:1px solid rgba(184,122,18,.28)!important;background:#fffdf2!important;color:var(--ak10-black)!important;padding:12px!important;}
body.pg-notes-dashboard .blog-post-actions img{width:20px!important;height:20px!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))!important;}
@media(max-width:1200px){body.pg-menu-tessere .ak-workspace,body.pg-menu-tessere .ak-wow-grid,body.pg-menu-tessere .row{grid-template-columns:1fr!important;}body.pg-menu-tessere iframe{min-height:650px!important;}body.pg-menu-tessere .ak-ticket-hero{grid-template-columns:1fr!important;}}
@media(max-width:768px){body.pg-menu-tessere{padding:10px!important;}body.pg-menu-tessere .ak-ticket-hero{border-radius:24px!important;padding:16px!important;}body.pg-menu-tessere .ak-ticket-hero h1{font-size:34px!important;}body.pg-menu-tessere .ak-panel,body.pg-menu-tessere .frame-card,body.pg-menu-tessere .card{border-radius:24px!important;}body.pg-menu-tessere iframe{min-height:700px!important;}body.pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:52px minmax(0,1fr)!important;}body.pg-menu-tessere-body .ak-round-action{grid-column:1/-1!important;width:100%!important;}body.pg-menu-tessere-body .inline-form{display:grid!important;grid-template-columns:1fr!important;}body.pg-notes-dashboard .toolbar-actions{width:100%!important;flex-direction:column!important;align-items:stretch!important;}body.pg-notes-dashboard .toolbar-actions form,body.pg-notes-dashboard .toolbar-actions button{width:100%!important;}body.pg-notes-dashboard .ak-note-card,body.pg-notes-dashboard .draggable{position:relative!important;left:auto!important;top:auto!important;width:100%!important;margin:0 0 14px!important;}}

/* =========================================================
   ANIMAL KING FINAL V11 - stile reale scheda interna
   File centralizzato: applicato a menu-tessere.php, stage.php,
   menu-tessere-body.php e notes/dashboard.php.
   ========================================================= */
:root{
  --ak-gold:#f4c542;
  --ak-gold-light:#ffe28a;
  --ak-gold-dark:#b77a12;
  --ak-black:#12100b;
  --ak-ink:#17120a;
  --ak-cream:#fff7df;
  --ak-paper:#fffdf7;
  --ak-line:rgba(183,122,18,.25);
  --ak-shadow:0 18px 45px rgba(54,38,10,.16);
  --ak-radius:26px;
}

/* pagina contenitore scheda */
body.pg-menu-tessere.ak-detail-v8,
body.pg-menu-tessere{
  background:
    radial-gradient(circle at 20% 0%, rgba(244,197,66,.28), transparent 36rem),
    linear-gradient(135deg,#fff9e7 0%,#f6f0df 42%,#efe5c9 100%) !important;
  color:var(--ak-ink)!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;
  padding:18px!important;
}
body.pg-menu-tessere .ak-detail-dashboard{max-width:1760px!important;margin:0 auto!important;}
body.pg-menu-tessere .ak-ticket-hero{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important;
  margin-bottom:18px!important;padding:22px!important;border-radius:30px!important;
  background:linear-gradient(135deg,#15110a 0%,#2d210c 52%,#70500f 100%)!important;
  border:1px solid rgba(255,226,138,.35)!important;box-shadow:var(--ak-shadow)!important;color:#fff8dc!important;
}
body.pg-menu-tessere .ak-ticket-identity{display:flex!important;align-items:center!important;gap:18px!important;min-width:0!important;}
body.pg-menu-tessere .ak-ticket-photo{width:84px!important;height:84px!important;border-radius:24px!important;object-fit:cover!important;border:3px solid var(--ak-gold)!important;box-shadow:0 12px 28px rgba(0,0,0,.28)!important;}
body.pg-menu-tessere .ak-eyebrow{color:var(--ak-gold-light)!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-size:12px!important;font-weight:900!important;}
body.pg-menu-tessere .ak-ticket-hero h1{margin:0!important;color:#fff!important;font-size:clamp(34px,4vw,64px)!important;font-weight:1000!important;letter-spacing:-.07em!important;line-height:.96!important;}
body.pg-menu-tessere .ak-ticket-name{margin:4px 0 0!important;color:#ffeec1!important;font-size:clamp(18px,1.6vw,26px)!important;font-weight:800!important;}
body.pg-menu-tessere .ak-ticket-meta{display:flex!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
body.pg-menu-tessere .ak-ticket-meta span{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:9px 12px!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,226,138,.30)!important;color:#fff7d8!important;font-weight:850!important;}
body.pg-menu-tessere .ak-workspace,
body.pg-menu-tessere .ak-wow-grid{
  display:grid!important;grid-template-columns:280px minmax(470px,1fr) minmax(420px,1.05fr)!important;gap:18px!important;align-items:stretch!important;
}
body.pg-menu-tessere .ak-panel{
  overflow:hidden!important;border-radius:30px!important;background:rgba(255,253,247,.94)!important;
  border:1px solid var(--ak-line)!important;box-shadow:var(--ak-shadow)!important;
}
body.pg-menu-tessere .ak-panel-head{
  display:flex!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:15px 18px!important;
  background:linear-gradient(135deg,#17120a,#35260d)!important;color:var(--ak-gold-light)!important;border-bottom:1px solid rgba(244,197,66,.22)!important;
  font-weight:1000!important;
}
body.pg-menu-tessere .ak-panel-head small{margin-left:auto!important;color:#f7e0a3!important;text-transform:uppercase!important;font-size:10px!important;letter-spacing:.12em!important;}
body.pg-menu-tessere .ak-panel-frame{padding:14px!important;background:linear-gradient(180deg,#fff9e8,#fffdf7)!important;min-height:100%!important;}
body.pg-menu-tessere iframe.ak-frame{width:100%!important;border:0!important;border-radius:24px!important;background:transparent!important;display:block!important;}
body.pg-menu-tessere .ak-frame-stage{min-height:620px!important;}
body.pg-menu-tessere .ak-frame-actions{min-height:820px!important;}
body.pg-menu-tessere .ak-frame-notes{min-height:820px!important;}

/* iframe FASI */
body.pg-stage.ak-stage-v8,
body.pg-stage{
  margin:0!important;background:transparent!important;color:var(--ak-ink)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;overflow:auto!important;
}
body.pg-stage .page-shell{padding:0!important;margin:0!important;max-width:none!important;width:100%!important;}
body.pg-stage .stage-card{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;}
body.pg-stage .stage-card .card-body{padding:8px!important;}
body.pg-stage .page-title{
  margin:0 0 12px!important;padding:18px 10px 8px!important;text-align:center!important;
  font-size:clamp(22px,2.3vw,31px)!important;line-height:1.04!important;font-weight:1000!important;letter-spacing:-.055em!important;color:var(--ak-black)!important;
}
body.pg-stage .intro-text{max-width:230px!important;margin:0 auto 18px!important;text-align:center!important;color:#6f592e!important;font-size:14px!important;line-height:1.45!important;}
body.pg-stage .step-list{display:grid!important;gap:14px!important;}
body.pg-stage .step-item{
  position:relative!important;display:grid!important;grid-template-columns:52px minmax(0,1fr) auto!important;align-items:center!important;gap:12px!important;min-height:86px!important;
  padding:15px!important;border-radius:23px!important;background:linear-gradient(180deg,#fffef9,#fff0bd)!important;border:1px solid rgba(183,122,18,.28)!important;
  box-shadow:0 12px 28px rgba(54,38,10,.11), inset 0 1px 0 rgba(255,255,255,.8)!important;overflow:hidden!important;
}
body.pg-stage .step-item:before{content:""!important;position:absolute!important;inset:14px auto 14px 0!important;width:5px!important;border-radius:0 99px 99px 0!important;background:linear-gradient(180deg,var(--ak-gold-light),var(--ak-gold-dark))!important;}
body.pg-stage .step-item:after{content:"OK"!important;justify-self:end!important;padding:7px 10px!important;border-radius:999px!important;background:linear-gradient(135deg,#12100b,#3a2a0e)!important;color:var(--ak-gold-light)!important;border:1px solid rgba(244,197,66,.35)!important;font-size:12px!important;font-weight:1000!important;}
body.pg-stage .step-item.ko:after{content:"KO"!important;background:linear-gradient(135deg,#6e1717,#d63a2f)!important;color:#fff!important;}
body.pg-stage .step-icon{width:44px!important;height:44px!important;border-radius:15px!important;object-fit:contain!important;padding:6px!important;background:linear-gradient(180deg,#fff7d8,#f1c54d)!important;box-shadow:inset 0 2px 0 rgba(255,255,255,.75),0 8px 16px rgba(183,122,18,.18)!important;}
body.pg-stage .step-label{font-size:15.5px!important;line-height:1.18!important;font-weight:1000!important;color:var(--ak-black)!important;}
body.pg-stage .step-status{display:none!important;}
body.pg-stage .badge-refresh{display:flex!important;justify-content:center!important;width:100%!important;margin-top:18px!important;padding:12px 14px!important;border-radius:18px!important;background:linear-gradient(135deg,#12100b,#3b2a0d)!important;color:var(--ak-gold-light)!important;border:1px solid rgba(244,197,66,.35)!important;font-weight:1000!important;box-shadow:0 12px 26px rgba(54,38,10,.16)!important;}

/* iframe DETTAGLI TESSERA */
body.pg-menu-tessere-body.ak-actions-v8,
body.pg-menu-tessere-body{
  margin:0!important;background:transparent!important;color:var(--ak-ink)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;overflow:auto!important;
}
body.pg-menu-tessere-body .page-shell{padding:0!important;max-width:none!important;width:100%!important;margin:0!important;}
body.pg-menu-tessere-body .member-card{border:1px solid rgba(183,122,18,.28)!important;border-radius:26px!important;background:linear-gradient(135deg,#fffef9,#fff1c5)!important;box-shadow:0 16px 34px rgba(54,38,10,.12)!important;margin-bottom:15px!important;}
body.pg-menu-tessere-body .member-card .card-body{padding:20px!important;}
body.pg-menu-tessere-body .member-photo{width:88px!important;height:88px!important;border-radius:24px!important;object-fit:cover!important;border:3px solid var(--ak-gold)!important;box-shadow:0 12px 25px rgba(54,38,10,.22)!important;}
body.pg-menu-tessere-body .mini-label{display:inline-flex!important;margin-bottom:4px!important;color:var(--ak-gold-dark)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.13em!important;font-weight:1000!important;}
body.pg-menu-tessere-body .member-title{font-size:clamp(24px,2.4vw,35px)!important;line-height:1.06!important;font-weight:1000!important;letter-spacing:-.055em!important;color:var(--ak-black)!important;margin:0!important;}
body.pg-menu-tessere-body .ak-mini-badges{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:10px!important;}
body.pg-menu-tessere-body .ak-mini-badges span{display:inline-flex!important;align-items:center!important;gap:6px!important;border-radius:999px!important;padding:7px 10px!important;background:#17120a!important;color:var(--ak-gold-light)!important;border:1px solid rgba(244,197,66,.30)!important;font-size:12px!important;font-weight:850!important;}
body.pg-menu-tessere-body .actions-grid{display:grid!important;gap:14px!important;padding-bottom:16px!important;}
body.pg-menu-tessere-body .action-card{border:1px solid rgba(183,122,18,.23)!important;border-radius:24px!important;background:#fffef9!important;box-shadow:0 12px 29px rgba(54,38,10,.10)!important;overflow:hidden!important;transition:transform .2s ease,box-shadow .2s ease!important;}
body.pg-menu-tessere-body .action-card:hover{transform:translateY(-2px)!important;box-shadow:0 20px 42px rgba(54,38,10,.15)!important;}
body.pg-menu-tessere-body .action-card-modern .action-card-inner{display:grid!important;grid-template-columns:56px minmax(0,1fr) 50px!important;align-items:center!important;gap:14px!important;padding:18px!important;}
body.pg-menu-tessere-body .action-card-form .action-card-inner{padding:18px!important;}
body.pg-menu-tessere-body .action-icon{width:54px!important;height:54px!important;border-radius:19px!important;display:grid!important;place-items:center!important;background:linear-gradient(180deg,var(--ak-gold-light),var(--ak-gold))!important;color:#17120a!important;font-size:24px!important;box-shadow:0 11px 22px rgba(183,122,18,.28),inset 0 2px 0 rgba(255,255,255,.65)!important;}
body.pg-menu-tessere-body .action-copy strong,
body.pg-menu-tessere-body .form-action-title strong{font-size:18px!important;font-weight:1000!important;color:var(--ak-black)!important;}
body.pg-menu-tessere-body .action-desc,
body.pg-menu-tessere-body .form-action-title p{color:#735b31!important;font-size:14.5px!important;line-height:1.38!important;margin:2px 0 0!important;}
body.pg-menu-tessere-body .ak-round-action,
body.pg-menu-tessere-body .btn-primary,
body.pg-menu-tessere-body input[type=submit],
body.pg-menu-tessere-body button{
  background:linear-gradient(180deg,var(--ak-gold-light),var(--ak-gold))!important;color:#17120a!important;border:1px solid rgba(183,122,18,.32)!important;border-radius:16px!important;font-weight:1000!important;box-shadow:0 10px 20px rgba(183,122,18,.25),inset 0 2px 0 rgba(255,255,255,.6)!important;
}
body.pg-menu-tessere-body .ak-round-action{width:50px!important;height:50px!important;padding:0!important;display:grid!important;place-items:center!important;}
body.pg-menu-tessere-body .form-control,
body.pg-menu-tessere-body .form-select{min-height:48px!important;border-radius:16px!important;border:1px solid rgba(183,122,18,.25)!important;background:#fffdf5!important;}
body.pg-menu-tessere-body .inline-form{display:flex!important;gap:10px!important;align-items:center!important;flex-wrap:wrap!important;}
body.pg-menu-tessere-body .inline-form .form-control,
body.pg-menu-tessere-body .inline-form .form-select{flex:1 1 220px!important;}

/* iframe NOTE */
body.pg-notes-dashboard.ak-notes-v8,
body.pg-notes-dashboard{
  margin:0!important;background:transparent!important;color:var(--ak-ink)!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;overflow:auto!important;
}
body.pg-notes-dashboard .page-shell{padding:0!important;max-width:none!important;width:100%!important;margin:0!important;}
body.pg-notes-dashboard .dashboard-card{border:1px solid rgba(183,122,18,.28)!important;border-radius:26px!important;background:linear-gradient(135deg,#fffef9,#fff1c5)!important;box-shadow:0 16px 34px rgba(54,38,10,.12)!important;margin-bottom:15px!important;}
body.pg-notes-dashboard .dashboard-card .card-body{padding:22px!important;}
body.pg-notes-dashboard .page-title{font-size:clamp(25px,2.5vw,36px)!important;font-weight:1000!important;letter-spacing:-.055em!important;color:var(--ak-black)!important;margin:0!important;}
body.pg-notes-dashboard .page-subtitle{color:#735b31!important;}
body.pg-notes-dashboard .btn-warning{background:linear-gradient(180deg,var(--ak-gold-light),var(--ak-gold))!important;color:#17120a!important;border:1px solid rgba(183,122,18,.32)!important;border-radius:16px!important;font-weight:1000!important;min-height:48px!important;box-shadow:0 11px 22px rgba(183,122,18,.25),inset 0 2px 0 rgba(255,255,255,.6)!important;}
body.pg-notes-dashboard .refresh-badge{background:linear-gradient(135deg,#12100b,#3b2a0d)!important;color:var(--ak-gold-light)!important;border:1px solid rgba(244,197,66,.35)!important;border-radius:999px!important;padding:11px 15px!important;font-weight:1000!important;}
body.pg-notes-dashboard .refresh-badge a{color:#fff8df!important;font-weight:1000!important;}
body.pg-notes-dashboard .notes-area-card{position:relative!important;min-height:560px!important;border-radius:26px!important;border:1px solid rgba(183,122,18,.23)!important;background:linear-gradient(rgba(255,253,247,.88),rgba(255,253,247,.88)),linear-gradient(90deg,rgba(183,122,18,.08) 1px,transparent 1px),linear-gradient(rgba(183,122,18,.08) 1px,transparent 1px)!important;background-size:auto,30px 30px,30px 30px!important;box-shadow:0 16px 34px rgba(54,38,10,.10)!important;overflow:auto!important;}
body.pg-notes-dashboard #containment-wrapper{position:relative!important;min-height:560px!important;padding:18px!important;}
body.pg-notes-dashboard .ak-note-card,
body.pg-notes-dashboard .draggable{width:300px!important;border-radius:24px!important;background:linear-gradient(180deg,#fffef6,#fff0a8)!important;border:1px solid rgba(183,122,18,.36)!important;box-shadow:0 22px 48px rgba(54,38,10,.20)!important;padding:14px!important;}
body.pg-notes-dashboard .quote-box,
body.pg-notes-dashboard blockquote{background:transparent!important;border:0!important;border-radius:18px!important;box-shadow:none!important;margin:0!important;}
body.pg-notes-dashboard textarea.quick,
body.pg-notes-dashboard .quick{width:100%!important;border-radius:16px!important;border:1px solid rgba(183,122,18,.28)!important;background:#fffdf2!important;color:var(--ak-black)!important;padding:12px!important;}
body.pg-notes-dashboard .blog-post-actions img{width:20px!important;height:20px!important;filter:drop-shadow(0 2px 2px rgba(0,0,0,.18))!important;}

@media(max-width:1200px){
  body.pg-menu-tessere .ak-workspace,body.pg-menu-tessere .ak-wow-grid{grid-template-columns:1fr!important;}
  body.pg-menu-tessere .ak-frame-stage,body.pg-menu-tessere .ak-frame-actions,body.pg-menu-tessere .ak-frame-notes{min-height:680px!important;}
  body.pg-menu-tessere .ak-ticket-hero{grid-template-columns:1fr!important;}
  body.pg-menu-tessere .ak-ticket-meta{justify-content:flex-start!important;}
}
@media(max-width:768px){
  body.pg-menu-tessere{padding:10px!important;}
  body.pg-menu-tessere .ak-ticket-hero{padding:16px!important;border-radius:24px!important;}
  body.pg-menu-tessere .ak-ticket-identity{align-items:flex-start!important;}
  body.pg-menu-tessere .ak-ticket-photo{width:70px!important;height:70px!important;border-radius:20px!important;}
  body.pg-menu-tessere .ak-ticket-hero h1{font-size:34px!important;}
  body.pg-menu-tessere .ak-panel{border-radius:24px!important;}
  body.pg-menu-tessere .ak-panel-frame{padding:10px!important;}
  body.pg-menu-tessere-body .action-card-modern .action-card-inner{grid-template-columns:52px minmax(0,1fr)!important;}
  body.pg-menu-tessere-body .ak-round-action{grid-column:1/-1!important;width:100%!important;}
  body.pg-menu-tessere-body .inline-form{display:grid!important;grid-template-columns:1fr!important;}
  body.pg-notes-dashboard .toolbar-actions{width:100%!important;flex-direction:column!important;align-items:stretch!important;}
  body.pg-notes-dashboard .toolbar-actions form,body.pg-notes-dashboard .toolbar-actions button{width:100%!important;}
  body.pg-notes-dashboard .ak-note-card,body.pg-notes-dashboard .draggable{position:relative!important;left:auto!important;top:auto!important;width:100%!important;margin:0 0 14px!important;}
}

/* Fix leggibilità menu laterale + campanella cliccabile (20260621) */
body.pg-menu .ak-sidebar{
  background:linear-gradient(180deg,#19150d 0%,#0d0b07 100%)!important;
}
body.pg-menu .ak-nav-link{
  color:#fff7dc!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(245,197,66,.12)!important;
  font-weight:900!important;
  text-shadow:0 1px 2px rgba(0,0,0,.55)!important;
  opacity:1!important;
}
body.pg-menu .ak-nav-link i{
  color:#f5c542!important;
  opacity:1!important;
}
body.pg-menu .ak-nav-link:hover,
body.pg-menu .ak-nav-link.active{
  background:linear-gradient(145deg,#fff2b3 0%,#ffd86a 36%,#b87a12 100%)!important;
  color:#15120d!important;
  text-shadow:0 1px 0 rgba(255,255,255,.55)!important;
  border-color:rgba(130,82,10,.32)!important;
}
body.pg-menu .ak-nav-link:hover i,
body.pg-menu .ak-nav-link.active i{color:#15120d!important;}
body.pg-menu .ak-user-card strong,
body.pg-menu .ak-brand strong{color:#fff!important;}
body.pg-menu .ak-user-card small,
body.pg-menu .ak-brand span{color:#fff4cf!important;}
body.pg-menu .ak-bell{cursor:pointer;border:0!important;justify-content:center;min-width:46px;}
body.pg-menu .ak-bell:hover{transform:translateY(-1px);filter:brightness(1.03);}


/* Fix visibilità tabella tessere desktop (20260621) */
@media (min-width: 769px){
  body.pg-moduli-index{overflow-x:hidden!important;}
  body.pg-moduli-index .page-shell{padding:.65rem!important;max-width:100%!important;width:100%!important;}
  body.pg-moduli-index .table-card{width:100%!important;max-width:100%!important;}
  body.pg-moduli-index .table-card .card-body{padding:1rem!important;}
  body.pg-moduli-index .table-responsive{overflow-x:hidden!important;width:100%!important;}
  body.pg-moduli-index .dt-container,
  body.pg-moduli-index .dataTables_wrapper{width:100%!important;max-width:100%!important;overflow:visible!important;}
  body.pg-moduli-index #myTable,
  body.pg-moduli-index table.dataTable{width:100%!important;max-width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse!important;}
  body.pg-moduli-index #myTable thead th,
  body.pg-moduli-index #myTable tbody td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;line-height:1.25!important;padding:.55rem .45rem!important;font-size:clamp(.68rem,.72vw,.82rem)!important;vertical-align:middle!important;}
  body.pg-moduli-index #myTable thead th{font-size:clamp(.62rem,.68vw,.76rem)!important;letter-spacing:.01em!important;}
  body.pg-moduli-index #myTable th:nth-child(1),body.pg-moduli-index #myTable td:nth-child(1){width:4%!important;text-align:center!important;}
  body.pg-moduli-index #myTable th:nth-child(2),body.pg-moduli-index #myTable td:nth-child(2){width:7%!important;}
  body.pg-moduli-index #myTable th:nth-child(3),body.pg-moduli-index #myTable td:nth-child(3){width:8%!important;}
  body.pg-moduli-index #myTable th:nth-child(4),body.pg-moduli-index #myTable td:nth-child(4){width:8%!important;}
  body.pg-moduli-index #myTable th:nth-child(5),body.pg-moduli-index #myTable td:nth-child(5){width:17%!important;}
  body.pg-moduli-index #myTable th:nth-child(6),body.pg-moduli-index #myTable td:nth-child(6){width:8%!important;}
  body.pg-moduli-index #myTable th:nth-child(7),body.pg-moduli-index #myTable td:nth-child(7){width:7%!important;}
  body.pg-moduli-index #myTable th:nth-child(8),body.pg-moduli-index #myTable td:nth-child(8),
  body.pg-moduli-index #myTable th:nth-child(9),body.pg-moduli-index #myTable td:nth-child(9),
  body.pg-moduli-index #myTable th:nth-child(10),body.pg-moduli-index #myTable td:nth-child(10){width:9%!important;text-align:center!important;}
  body.pg-moduli-index #myTable th:nth-child(11),body.pg-moduli-index #myTable td:nth-child(11){width:14%!important;}
  body.pg-moduli-index .action-buttons{display:grid!important;grid-template-columns:1fr!important;gap:.3rem!important;}
  body.pg-moduli-index table .btn,
  body.pg-moduli-index .btn-sm{width:100%!important;min-height:30px!important;padding:.28rem .35rem!important;border-radius:10px!important;font-size:clamp(.66rem,.7vw,.78rem)!important;white-space:normal!important;}
  body.pg-moduli-index .dt-length,
  body.pg-moduli-index .dt-search,
  body.pg-moduli-index .dataTables_length,
  body.pg-moduli-index .dataTables_filter{font-size:.88rem!important;}
}
@media (min-width: 769px) and (max-width: 1180px){
  body.pg-moduli-index #myTable thead th,
  body.pg-moduli-index #myTable tbody td{padding:.42rem .28rem!important;font-size:.66rem!important;}
  body.pg-moduli-index #myTable thead th{font-size:.6rem!important;}
  body.pg-moduli-index table .btn,body.pg-moduli-index .btn-sm{font-size:.62rem!important;padding:.24rem .25rem!important;}
}


/* Uniforma tabelle Esercenti + PayPal allo stile "Modifica & Cancella Tessere" (20260621) */
body.pg-esercenti-index .main-card,
body.pg-phpcodewizard-index .box,
body.pg-abbfond-phpcodewizard-index .box{
  border:0!important;border-radius:1.35rem!important;box-shadow:0 1rem 3rem rgba(0,0,0,.08)!important;overflow:hidden!important;background:#fff!important;
}
body.pg-esercenti-index .page-shell,
body.pg-phpcodewizard-index main.container-fluid,
body.pg-abbfond-phpcodewizard-index main.container-fluid{padding:.65rem!important;max-width:100%!important;width:100%!important;}
body.pg-esercenti-index .page-title,
body.pg-phpcodewizard-index .page-title h1,
body.pg-abbfond-phpcodewizard-index .page-title h1{font-weight:800!important;letter-spacing:-.03em!important;color:#111!important;}
body.pg-phpcodewizard-index .page-title p,
body.pg-abbfond-phpcodewizard-index .page-title p,
body.pg-esercenti-index .page-header p{color:#6c757d!important;text-transform:uppercase!important;}
body.pg-esercenti-index .table-zone,
body.pg-phpcodewizard-index .table-responsive,
body.pg-abbfond-phpcodewizard-index .table-responsive{border-radius:1rem!important;border:0!important;background:transparent!important;box-shadow:none!important;}
body.pg-esercenti-index table.dataTable thead th,
body.pg-phpcodewizard-index table.dataTable thead th,
body.pg-abbfond-phpcodewizard-index table.dataTable thead th,
body.pg-phpcodewizard-index .header-table th,
body.pg-abbfond-phpcodewizard-index .header-table th{
  background:#19150f!important;color:#ffe38a!important;text-transform:uppercase!important;font-weight:800!important;border-color:#2b2113!important;vertical-align:middle!important;
}
body.pg-esercenti-index table.dataTable tbody td,
body.pg-phpcodewizard-index table.dataTable tbody td,
body.pg-abbfond-phpcodewizard-index table.dataTable tbody td{vertical-align:middle!important;color:#233142!important;}
body.pg-esercenti-index table.dataTable tbody tr:hover,
body.pg-phpcodewizard-index table.dataTable tbody tr:hover,
body.pg-abbfond-phpcodewizard-index table.dataTable tbody tr:hover{background-color:rgba(255,227,138,.18)!important;}
body.pg-esercenti-index .dataTables_wrapper .dataTables_filter input,
body.pg-esercenti-index .dataTables_wrapper .dataTables_length select,
body.pg-esercenti-index .dt-search input,
body.pg-esercenti-index .dt-length select,
body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_filter input,
body.pg-phpcodewizard-index .dataTables_wrapper .dataTables_length select,
body.pg-phpcodewizard-index .dt-search input,
body.pg-phpcodewizard-index .dt-length select,
body.pg-abbfond-phpcodewizard-index .dataTables_wrapper .dataTables_filter input,
body.pg-abbfond-phpcodewizard-index .dataTables_wrapper .dataTables_length select,
body.pg-abbfond-phpcodewizard-index .dt-search input,
body.pg-abbfond-phpcodewizard-index .dt-length select{border-radius:14px!important;border:1px solid #eadfca!important;background:#fffdf8!important;padding:.45rem .7rem!important;}
@media (min-width:769px){
  body.pg-esercenti-index,body.pg-phpcodewizard-index,body.pg-abbfond-phpcodewizard-index{overflow-x:hidden!important;}
  body.pg-esercenti-index .table-responsive,body.pg-phpcodewizard-index .table-responsive,body.pg-abbfond-phpcodewizard-index .table-responsive{overflow-x:hidden!important;width:100%!important;}
  body.pg-esercenti-index .dt-container,body.pg-esercenti-index .dataTables_wrapper,
  body.pg-phpcodewizard-index .dt-container,body.pg-phpcodewizard-index .dataTables_wrapper,
  body.pg-abbfond-phpcodewizard-index .dt-container,body.pg-abbfond-phpcodewizard-index .dataTables_wrapper{width:100%!important;max-width:100%!important;overflow:visible!important;}
  body.pg-esercenti-index #empTable,body.pg-esercenti-index table.dataTable,
  body.pg-phpcodewizard-index #user_data,body.pg-phpcodewizard-index table.dataTable,
  body.pg-abbfond-phpcodewizard-index #user_data,body.pg-abbfond-phpcodewizard-index table.dataTable{width:100%!important;max-width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse!important;margin-bottom:0!important;}
  body.pg-esercenti-index #empTable thead th,body.pg-esercenti-index #empTable tbody td,
  body.pg-phpcodewizard-index #user_data thead th,body.pg-phpcodewizard-index #user_data tbody td,
  body.pg-abbfond-phpcodewizard-index #user_data thead th,body.pg-abbfond-phpcodewizard-index #user_data tbody td{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;line-height:1.25!important;padding:.55rem .45rem!important;font-size:clamp(.68rem,.72vw,.82rem)!important;vertical-align:middle!important;}
  body.pg-esercenti-index #empTable thead th,body.pg-phpcodewizard-index #user_data thead th,body.pg-abbfond-phpcodewizard-index #user_data thead th{font-size:clamp(.62rem,.68vw,.76rem)!important;letter-spacing:.01em!important;}
  body.pg-esercenti-index #empTable th:nth-child(1),body.pg-esercenti-index #empTable td:nth-child(1){width:6%!important;text-align:center!important;}
  body.pg-esercenti-index #empTable th:nth-child(2),body.pg-esercenti-index #empTable td:nth-child(2){width:10%!important;}
  body.pg-esercenti-index #empTable th:nth-child(3),body.pg-esercenti-index #empTable td:nth-child(3){width:13%!important;}
  body.pg-esercenti-index #empTable th:nth-child(4),body.pg-esercenti-index #empTable td:nth-child(4){width:5%!important;text-align:center!important;}
  body.pg-esercenti-index #empTable th:nth-child(5),body.pg-esercenti-index #empTable td:nth-child(5){width:8%!important;}
  body.pg-esercenti-index #empTable th:nth-child(6),body.pg-esercenti-index #empTable td:nth-child(6),body.pg-esercenti-index #empTable th:nth-child(7),body.pg-esercenti-index #empTable td:nth-child(7){width:8%!important;}
  body.pg-esercenti-index #empTable th:nth-child(8),body.pg-esercenti-index #empTable td:nth-child(8){width:8%!important;}
  body.pg-esercenti-index #empTable th:nth-child(9),body.pg-esercenti-index #empTable td:nth-child(9){width:5%!important;text-align:center!important;}
  body.pg-esercenti-index #empTable th:nth-child(10),body.pg-esercenti-index #empTable td:nth-child(10){width:13%!important;}
  body.pg-esercenti-index #empTable th:nth-child(11),body.pg-esercenti-index #empTable td:nth-child(11){width:11%!important;}
  body.pg-esercenti-index #empTable th:nth-child(12),body.pg-esercenti-index #empTable td:nth-child(12){width:11%!important;}
  body.pg-phpcodewizard-index #user_data th,body.pg-phpcodewizard-index #user_data td,
  body.pg-abbfond-phpcodewizard-index #user_data th,body.pg-abbfond-phpcodewizard-index #user_data td{width:auto!important;}
  body.pg-esercenti-index .action-group,body.pg-phpcodewizard-index .action-buttons,body.pg-abbfond-phpcodewizard-index .action-buttons{display:grid!important;grid-template-columns:1fr!important;gap:.3rem!important;}
  body.pg-esercenti-index table .btn,body.pg-esercenti-index .btn-sm,
  body.pg-phpcodewizard-index table .btn,body.pg-phpcodewizard-index .btn-sm,
  body.pg-abbfond-phpcodewizard-index table .btn,body.pg-abbfond-phpcodewizard-index .btn-sm{width:100%!important;min-height:30px!important;padding:.28rem .35rem!important;border-radius:10px!important;font-size:clamp(.66rem,.7vw,.78rem)!important;white-space:normal!important;}
}
@media (min-width:769px) and (max-width:1180px){
  body.pg-esercenti-index #empTable thead th,body.pg-esercenti-index #empTable tbody td,
  body.pg-phpcodewizard-index #user_data thead th,body.pg-phpcodewizard-index #user_data tbody td,
  body.pg-abbfond-phpcodewizard-index #user_data thead th,body.pg-abbfond-phpcodewizard-index #user_data tbody td{padding:.42rem .28rem!important;font-size:.66rem!important;}
  body.pg-esercenti-index #empTable thead th,body.pg-phpcodewizard-index #user_data thead th,body.pg-abbfond-phpcodewizard-index #user_data thead th{font-size:.6rem!important;}
}

/* AK native detail modals */
body.ak-native-detail-modals .ak-detail-native-modal .modal-dialog{max-width:min(980px,calc(100vw - 34px))!important;}
body.ak-native-detail-modals .ak-detail-native-modal .modal-content{border:1px solid rgba(184,122,18,.28)!important;border-radius:28px!important;overflow:hidden!important;background:#fffdf6!important;box-shadow:0 30px 90px rgba(20,16,8,.42)!important;}
body.ak-native-detail-modals .ak-detail-native-modal .modal-header{background:linear-gradient(180deg,#fffaf0,#ffffff)!important;border-bottom:1px solid rgba(184,122,18,.18)!important;padding:18px 22px!important;}
body.ak-native-detail-modals .ak-detail-native-modal .modal-title{font-weight:1000!important;color:#15120d!important;display:flex!important;gap:10px!important;align-items:center!important;}
body.ak-native-detail-modals .ak-detail-native-modal .modal-title i{color:#d89d09!important;}
body.ak-native-detail-modals .ak-detail-native-modal .modal-body{padding:14px!important;background:linear-gradient(135deg,#fff4bf 0,#fffdf8 44%,#f8fbff 100%)!important;}
body.ak-native-detail-modals .ak-detail-native-modal iframe{width:100%!important;height:min(72vh,760px)!important;min-height:520px!important;border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:inset 0 0 0 1px rgba(184,122,18,.13)!important;}
body.ak-native-detail-modals .ak-detail-native-modal .modal-footer{background:#fff!important;border-top:1px solid rgba(184,122,18,.16)!important;padding:14px 20px!important;}
body.ak-native-detail-modals .ak-btn-animal,body.ak-native-detail-modals .ak-btn-dark-animal{min-height:46px!important;border-radius:18px!important;padding:0 22px!important;font-weight:1000!important;border:0!important;display:inline-flex!important;align-items:center!important;gap:8px!important;}
body.ak-native-detail-modals .ak-btn-animal{background:linear-gradient(180deg,#ffdc65,#f2b30a)!important;color:#1b1204!important;box-shadow:0 12px 24px rgba(184,122,18,.26),inset 0 2px 0 rgba(255,255,255,.58)!important;}
body.ak-native-detail-modals .ak-btn-dark-animal{background:linear-gradient(180deg,#2b2113,#100c07)!important;color:#ffe08a!important;box-shadow:0 12px 24px rgba(0,0,0,.22)!important;}
body.ak-native-detail-modals .btn-primary,body.ak-native-detail-modals input[type=submit],body.ak-native-detail-modals button.btn-primary{background:linear-gradient(180deg,#ffdc65,#f2b30a)!important;color:#1b1204!important;border:0!important;border-radius:16px!important;font-weight:1000!important;box-shadow:0 10px 20px rgba(184,122,18,.24),inset 0 2px 0 rgba(255,255,255,.58)!important;}
body.ak-native-detail-modals .action-card .btn-primary i{font-size:16px!important;}
@media(max-width:768px){body.ak-native-detail-modals .ak-detail-native-modal .modal-dialog{max-width:calc(100vw - 18px)!important;margin:9px auto!important;}body.ak-native-detail-modals .ak-detail-native-modal iframe{height:76vh!important;min-height:460px!important;}body.ak-native-detail-modals .ak-detail-native-modal .modal-footer{display:grid!important;grid-template-columns:1fr!important;}body.ak-native-detail-modals .ak-btn-animal,body.ak-native-detail-modals .ak-btn-dark-animal{width:100%!important;justify-content:center!important;}}


/* Fix GPS modal v3: layout largo reale anche quando il modal viene adottato dalla pagina principale */
.ak-native-function-modal.ak-gps-modal-active.ak-modal-promoted-to-parent .modal-dialog,
.ak-native-function-modal.ak-gps-modal-active.ak-modal-root-owned .modal-dialog,
.ak-native-function-modal.ak-gps-modal-active .modal-dialog{
  width:min(1380px, calc(100vw - 42px))!important;
  max-width:min(1380px, calc(100vw - 42px))!important;
  margin:clamp(12px,2vh,28px) auto!important;
}
.ak-native-function-modal.ak-gps-modal-active .modal-content{max-height:calc(100vh - 28px)!important;}
.ak-native-function-modal.ak-gps-modal-active .modal-body{overflow:hidden!important;padding:18px!important;}
.ak-native-function-modal.ak-gps-modal-active .row.g-3{display:grid!important;grid-template-columns:minmax(260px,330px) minmax(0,1fr)!important;gap:16px!important;align-items:stretch!important;}
.ak-native-function-modal.ak-gps-modal-active .row.g-3>[class*="col-"]{width:auto!important;max-width:none!important;flex:none!important;padding:0!important;}
.ak-native-function-modal.ak-gps-modal-active .ak-native-card{height:100%!important;max-height:min(70vh,640px)!important;overflow:auto!important;}
.ak-native-function-modal.ak-gps-modal-active .table-responsive{max-height:calc(min(70vh,640px) - 70px)!important;overflow:auto!important;}
.ak-native-function-modal.ak-gps-modal-active .ak-gps-map{height:min(70vh,640px)!important;min-height:520px!important;width:100%!important;}
.ak-native-function-modal.ak-gps-modal-active .modal-footer{padding:12px 20px!important;}
@media(max-width:900px){
  .ak-native-function-modal.ak-gps-modal-active .modal-dialog{width:calc(100vw - 18px)!important;max-width:calc(100vw - 18px)!important;margin:9px auto!important;}
  .ak-native-function-modal.ak-gps-modal-active .modal-body{overflow:auto!important;}
  .ak-native-function-modal.ak-gps-modal-active .row.g-3{grid-template-columns:1fr!important;}
  .ak-native-function-modal.ak-gps-modal-active .ak-native-card{max-height:240px!important;}
  .ak-native-function-modal.ak-gps-modal-active .ak-gps-map{height:52vh!important;min-height:360px!important;}
}

/* Toast centrale Animal King */
.ak-center-toast-wrap{position:fixed!important;inset:0!important;z-index:2147483600!important;display:none!important;align-items:center!important;justify-content:center!important;pointer-events:none!important;padding:18px!important;}
.ak-center-toast-wrap.is-visible{display:flex!important;}
.ak-center-toast{min-width:min(440px,calc(100vw - 34px))!important;max-width:min(560px,calc(100vw - 34px))!important;border-radius:28px!important;padding:22px 24px!important;background:linear-gradient(135deg,#fffaf0 0,#fffdf8 56%,#fff4bf 100%)!important;border:1px solid rgba(184,122,18,.28)!important;box-shadow:0 30px 90px rgba(20,16,8,.42)!important;color:#15120d!important;font-weight:900!important;text-align:center!important;pointer-events:auto!important;}
.ak-center-toast i{display:inline-grid!important;place-items:center!important;width:54px!important;height:54px!important;border-radius:999px!important;margin:0 auto 12px!important;font-size:28px!important;}
.ak-center-toast.is-success i{background:#eaf8ef!important;color:#166534!important;border:1px solid rgba(22,101,52,.18)!important;}
.ak-center-toast.is-error i{background:#fff1f2!important;color:#be123c!important;border:1px solid rgba(190,18,60,.18)!important;}
.ak-center-toast strong{display:block!important;font-size:1.18rem!important;margin-bottom:5px!important;}
.ak-center-toast span{display:block!important;color:#6b6256!important;font-weight:800!important;line-height:1.35!important;}


/* Animal King - fix captcha e conferma privacy registrazione esercenti */
body.pg-esercenti-signup-user .captcha-image,
body.pg-registrazione .captcha-image {
    display: block;
    max-width: 180px;
    width: auto;
    height: auto;
    border-radius: 14px;
    border: 1px solid rgba(212,160,23,.28);
    background: #fffaf0;
    padding: 6px;
    box-shadow: 0 10px 26px rgba(0,0,0,.08);
}

body.pg-esercenti-signup-user .form-check {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .9rem 1rem;
    border: 1px solid rgba(212,160,23,.24);
    border-radius: 18px;
    background: linear-gradient(135deg,#fffdf7,#fff8df);
}

body.pg-esercenti-signup-user #cb1.form-check-input {
    width: 1.45rem;
    height: 1.45rem;
    margin: 0;
    border: 2px solid #d4a017;
    cursor: pointer;
    box-shadow: none;
}

body.pg-esercenti-signup-user #cb1.form-check-input:checked {
    background-color: #d4a017;
    border-color: #1b1308;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%231b1308' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-7'/%3e%3c/svg%3e");
}

body.pg-esercenti-signup-user #cb1.form-check-input:checked + .form-check-label::after {
    content: ' ✓';
    color: #14844b;
    font-weight: 900;
}

/* Animal King - registrazione utente: consenso privacy/regolamento e captcha step */
body.pg-registrazione .ak-consent-check {
    display: flex;
    align-items: center;
    gap: .8rem;
    flex-wrap: wrap;
    padding: .95rem 1.05rem;
    border: 1px solid rgba(212,160,23,.32);
    border-radius: 18px;
    background: linear-gradient(135deg,#fffdf7,#fff8df);
    box-shadow: 0 10px 26px rgba(30,20,8,.06);
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
body.pg-registrazione .ak-consent-check.is-accepted {
    border-color: rgba(20,132,75,.55);
    background: linear-gradient(135deg,#f4fff8,#fff9df);
    box-shadow: 0 12px 28px rgba(20,132,75,.10);
}
body.pg-registrazione .ak-consent-input.form-check-input {
    width: 1.7rem;
    height: 1.7rem;
    margin: 0;
    border: 2px solid #d4a017;
    border-radius: .55rem;
    cursor: pointer;
    background-color: #fffaf0;
    box-shadow: inset 0 0 0 2px rgba(255,255,255,.75), 0 4px 12px rgba(212,160,23,.18);
}
body.pg-registrazione .ak-consent-input.form-check-input:checked {
    background-color: #f4c430;
    border-color: #1b1308;
    background-size: 1.3rem 1.3rem;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%231b1308' stroke-linecap='round' stroke-linejoin='round' stroke-width='3.4' d='m5 10 3 3 7-8'/%3e%3c/svg%3e");
}
body.pg-registrazione .ak-consent-check .form-check-label {
    color: #1b1308;
    cursor: pointer;
}
body.pg-registrazione .ak-consent-state {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 118px;
    padding: .35rem .7rem;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(120,120,120,.16);
    color: #8a6a12;
    font-weight: 900;
    font-size: .86rem;
}
body.pg-registrazione .ak-consent-state.is-accepted {
    background: #eafaf1;
    border-color: rgba(20,132,75,.30);
    color: #14844b;
}
body.pg-registrazione .ak-captcha-error {
    border-radius: 18px;
    border: 1px solid rgba(180,35,35,.20);
    background: #fff0ee;
    color: #8a1f17;
    font-weight: 900;
    text-align: center;
}
@media (max-width: 576px) {
    body.pg-registrazione .ak-consent-state { margin-left: 0; width: 100%; }
}


/* Animal King - consenso privacy/regolamento utente: visuale conferma chiara */
body.pg-registrazione .ak-consent-check {
    position: relative;
    display: grid !important;
    grid-template-columns: 56px 1fr auto;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.15rem !important;
    border: 2px solid rgba(212,160,23,.32) !important;
    border-radius: 22px !important;
    background: linear-gradient(135deg,#fffef9 0%,#fff7dc 100%) !important;
    cursor: pointer;
}
body.pg-registrazione .ak-consent-check:hover {
    border-color: rgba(212,160,23,.65) !important;
    box-shadow: 0 14px 34px rgba(30,20,8,.10) !important;
}
body.pg-registrazione .ak-consent-check.is-accepted {
    border-color: #19a25f !important;
    background: linear-gradient(135deg,#f0fff7 0%,#fff8d9 100%) !important;
    box-shadow: 0 14px 34px rgba(25,162,95,.18) !important;
}
body.pg-registrazione .ak-consent-input.form-check-input {
    appearance: none;
    -webkit-appearance: none;
    grid-column: 1;
    width: 52px !important;
    height: 52px !important;
    margin: 0 !important;
    border: 3px solid #d4a017 !important;
    border-radius: 16px !important;
    background: #fffaf0 !important;
    cursor: pointer;
    position: relative;
    box-shadow: inset 0 0 0 4px rgba(255,255,255,.85), 0 8px 20px rgba(212,160,23,.20) !important;
}
body.pg-registrazione .ak-consent-input.form-check-input::after {
    content: '';
    position: absolute;
    left: 15px;
    top: 8px;
    width: 16px;
    height: 28px;
    border: solid #1b1308;
    border-width: 0 5px 5px 0;
    transform: rotate(45deg) scale(.35);
    opacity: 0;
    transition: transform .18s ease, opacity .18s ease;
}
body.pg-registrazione .ak-consent-input.form-check-input:checked {
    background: linear-gradient(135deg,#ffe875,#d4a017) !important;
    border-color: #1b1308 !important;
}
body.pg-registrazione .ak-consent-input.form-check-input:checked::after {
    opacity: 1;
    transform: rotate(45deg) scale(1);
}
body.pg-registrazione .ak-consent-check .form-check-label {
    grid-column: 2;
    margin: 0;
    font-size: 1.05rem;
    font-weight: 900 !important;
    line-height: 1.2;
}
body.pg-registrazione .ak-consent-state {
    grid-column: 3;
    margin-left: 0 !important;
    min-width: 140px !important;
    padding: .55rem .9rem !important;
    border-radius: 999px !important;
    background: #fff !important;
    border: 2px solid rgba(138,106,18,.22) !important;
    color: #8a6a12 !important;
    font-weight: 900 !important;
    text-align: center;
}
body.pg-registrazione .ak-consent-state.is-accepted {
    background: #14844b !important;
    border-color: #14844b !important;
    color: #fff !important;
}
body.pg-registrazione .ak-consent-check.is-accepted .form-check-label::after {
    content: ' confermato';
    color: #14844b;
    font-size: .9rem;
    font-weight: 900;
}
@media (max-width: 576px) {
    body.pg-registrazione .ak-consent-check {
        grid-template-columns: 52px 1fr;
    }
    body.pg-registrazione .ak-consent-state {
        grid-column: 1 / -1;
        width: 100% !important;
    }
}


/* AK notification dropdown above dashboard cards */
body.pg-menu .ak-topbar{position:relative!important;z-index:200000!important;}
body.pg-menu .ak-action-panel{position:relative!important;z-index:1!important;}
body.pg-menu .ak-top-actions{position:relative!important;z-index:200001!important;}
body.pg-menu .ak-bell-dropdown{position:fixed!important;top:76px!important;right:28px!important;z-index:2147483000!important;width:min(440px,calc(100vw - 36px))!important;max-height:calc(100vh - 110px)!important;overflow:auto!important;background:#fffdf6!important;border:1px solid #ead8a1!important;border-radius:20px!important;box-shadow:0 28px 70px rgba(0,0,0,.30)!important;padding:12px!important;}
body.pg-menu .ak-bell-dropdown.show{display:block!important;}
body.pg-menu .ak-bell-dropdown::before{content:"";position:absolute;top:-9px;right:36px;width:18px;height:18px;background:#fffdf6;border-left:1px solid #ead8a1;border-top:1px solid #ead8a1;transform:rotate(45deg);}
body.pg-menu .ak-bell-item{border-radius:14px!important;}
body.pg-menu .ak-bell-item:hover{background:#fff8e6!important;}
@media(max-width:768px){body.pg-menu .ak-bell-dropdown{top:66px!important;right:14px!important;left:14px!important;width:auto!important}}

/* === Mobile/auth refinements 2026-07-04 === */
body.pg-login-login .ak-logo,
body.pg-login-nuovo-utente .ak-logo,
body.pg-login-reset-password .ak-logo{max-width:min(190px,70vw);height:auto;display:block;margin:0 auto 1rem;}
body.pg-login-login .password-container,
body.pg-login-nuovo-utente .password-container,
body.pg-login-reset-password .password-container{position:relative;}
body.pg-login-login .password-container .form-control,
body.pg-login-nuovo-utente .password-container .form-control,
body.pg-login-reset-password .password-container .form-control{padding-right:3.15rem;}
body.pg-login-login .password-toggle,
body.pg-login-nuovo-utente .password-toggle,
body.pg-login-reset-password .password-toggle{position:absolute;top:50%;right:.8rem;transform:translateY(-50%);width:2.15rem;height:2.15rem;border:0;border-radius:999px;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#6b5a22;z-index:3;}
body.pg-login-login .password-toggle:hover,
body.pg-login-nuovo-utente .password-toggle:hover,
body.pg-login-reset-password .password-toggle:hover{background:rgba(255,211,75,.24);color:#201a0b;}
body.pg-login-login .password-toggle i,
body.pg-login-nuovo-utente .password-toggle i,
body.pg-login-reset-password .password-toggle i{font-size:1.15rem;line-height:1;}
@media (max-width:575.98px){
  body.pg-login-login,
  body.pg-login-nuovo-utente,
  body.pg-login-reset-password{background:#fffaf0;}
  body.pg-login-login .login-shell,
  body.pg-login-nuovo-utente .auth-shell,
  body.pg-login-reset-password .page-shell{min-height:100dvh;padding:.75rem;align-items:stretch;}
  body.pg-login-login .login-card,
  body.pg-login-nuovo-utente .auth-card,
  body.pg-login-reset-password .reset-card{max-width:none;border-radius:1.1rem;box-shadow:0 .75rem 2rem rgba(0,0,0,.10);margin:auto 0;}
  body.pg-login-login .login-card .card-body,
  body.pg-login-nuovo-utente .auth-card .card-body,
  body.pg-login-reset-password .reset-card .card-body{padding:1.15rem;}
  body.pg-login-login .form-control,
  body.pg-login-nuovo-utente .form-control,
  body.pg-login-reset-password .form-control,
  body.pg-login-login .btn,
  body.pg-login-nuovo-utente .btn,
  body.pg-login-reset-password .btn{min-height:50px;font-size:1rem;border-radius:.95rem;}
  body.pg-login-login .login-title,
  body.pg-login-nuovo-utente .auth-title,
  body.pg-login-reset-password .page-title{text-align:center;font-size:1.55rem;}
  body.pg-login-login .login-subtitle,
  body.pg-login-nuovo-utente .auth-subtitle,
  body.pg-login-reset-password .intro-text{text-align:center;font-size:.95rem;}
  body.pg-login-login .policy-links{font-size:.82rem;gap:.45rem;margin-top:.75rem;}
  body.pg-login-login .actions-stack{gap:.6rem;}
}
@media (max-width:360px){
  body.pg-login-login .login-card .card-body,
  body.pg-login-nuovo-utente .auth-card .card-body,
  body.pg-login-reset-password .reset-card .card-body{padding:1rem;}
  body.pg-login-login .ak-logo,
  body.pg-login-nuovo-utente .ak-logo,
  body.pg-login-reset-password .ak-logo{max-width:155px;}
}


/* =========================================================
   FIX MODAL MODIFICA UTENTE - visibile e scrollabile
   ========================================================= */
body.pg-moduli-index .ak-user-edit-modal.show{
  padding:0!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
body.pg-moduli-index .ak-user-edit-modal .modal-dialog{
  width:min(920px, calc(100vw - 28px))!important;
  max-width:min(920px, calc(100vw - 28px))!important;
  margin:14px auto!important;
  align-items:flex-start!important;
  min-height:0!important;
  height:auto!important;
  max-height:calc(100dvh - 28px)!important;
}
body.pg-moduli-index .ak-user-edit-modal .modal-content{
  display:flex!important;
  flex-direction:column!important;
  max-height:calc(100dvh - 28px)!important;
  overflow:hidden!important;
  border-radius:24px!important;
}
body.pg-moduli-index .ak-user-edit-modal form{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  max-height:inherit!important;
}
body.pg-moduli-index .ak-user-edit-modal .modal-header,
body.pg-moduli-index .ak-user-edit-modal .modal-footer{
  flex:0 0 auto!important;
}
body.pg-moduli-index .ak-user-edit-modal .modal-body{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  padding:22px 28px!important;
}
body.pg-moduli-index .ak-user-edit-modal .row.g-3{
  row-gap:18px!important;
}
body.pg-moduli-index .ak-user-edit-modal .form-text{
  line-height:1.35!important;
  margin-top:.45rem!important;
}
@media (max-width:767.98px){
  body.pg-moduli-index .ak-user-edit-modal .modal-dialog{
    width:calc(100vw - 16px)!important;
    max-width:calc(100vw - 16px)!important;
    margin:8px auto!important;
    max-height:calc(100dvh - 16px)!important;
  }
  body.pg-moduli-index .ak-user-edit-modal .modal-content{
    max-height:calc(100dvh - 16px)!important;
    border-radius:20px!important;
  }
  body.pg-moduli-index .ak-user-edit-modal .modal-body{
    padding:16px!important;
  }
  body.pg-moduli-index .ak-user-edit-modal .row.g-3 > [class*="col-"]{
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
  }
}

/* Fix: modal modifica utente sempre fuori dalla finestra tabella/iframe */
.ak-user-edit-modal.ak-modal-root-owned{position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;max-width:none!important;max-height:none!important;z-index:2147483000!important;overflow-x:hidden!important;overflow-y:auto!important;padding:0!important;background:rgba(15,18,25,.52)!important;-webkit-overflow-scrolling:touch!important;}
.ak-user-edit-modal.ak-modal-root-owned .modal-dialog{width:min(920px,calc(100vw - 28px))!important;max-width:min(920px,calc(100vw - 28px))!important;margin:clamp(12px,3vh,32px) auto!important;align-items:flex-start!important;min-height:0!important;height:auto!important;max-height:calc(100dvh - 28px)!important;transform:none!important;}
.ak-user-edit-modal.ak-modal-root-owned .modal-content{display:flex!important;flex-direction:column!important;max-height:calc(100dvh - 28px)!important;overflow:hidden!important;border-radius:24px!important;box-shadow:0 28px 90px rgba(0,0,0,.35)!important;}
.ak-user-edit-modal.ak-modal-root-owned form{display:flex!important;flex-direction:column!important;min-height:0!important;max-height:inherit!important;}
.ak-user-edit-modal.ak-modal-root-owned .modal-header,.ak-user-edit-modal.ak-modal-root-owned .modal-footer{flex:0 0 auto!important;background:#fffdf8!important;position:relative!important;z-index:2!important;}
.ak-user-edit-modal.ak-modal-root-owned .modal-body{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding:22px 28px!important;background:#fffdf8!important;}
.ak-user-edit-modal.ak-modal-root-owned .form-control,.ak-user-edit-modal.ak-modal-root-owned .form-select{min-height:48px!important;border-radius:16px!important;}
@media(max-width:767.98px){.ak-user-edit-modal.ak-modal-root-owned .modal-dialog{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;margin:8px auto!important;max-height:calc(100dvh - 16px)!important}.ak-user-edit-modal.ak-modal-root-owned .modal-content{max-height:calc(100dvh - 16px)!important;border-radius:20px!important}.ak-user-edit-modal.ak-modal-root-owned .modal-body{padding:16px!important}.ak-user-edit-modal.ak-modal-root-owned .row.g-3>[class*="col-"]{width:100%!important;max-width:100%!important;flex:0 0 100%!important}}

/* Fix modal modifica utente promosso fuori iframe: evita backdrop sopra il form */
.ak-user-edit-modal.ak-modal-root-owned{pointer-events:auto!important;}
.ak-user-edit-modal.ak-modal-root-owned .modal-dialog{position:relative!important;z-index:2147483002!important;pointer-events:auto!important;}
.ak-user-edit-modal.ak-modal-root-owned .modal-content{position:relative!important;z-index:2147483003!important;pointer-events:auto!important;opacity:1!important;filter:none!important;background:#fffdf8!important;}
body.ak-user-edit-open .modal-backdrop{display:none!important;pointer-events:none!important;}

/* === FIX reset password campi password mobile/web 2026-07-04 === */
body.pg-login-reset-password .password-container{
  position:relative!important;
  display:block!important;
  width:100%!important;
}
body.pg-login-reset-password .password-container input.form-control{
  display:block!important;
  width:100%!important;
  height:54px!important;
  min-height:54px!important;
  line-height:1.35!important;
  padding:0.9rem 3.35rem 0.9rem 1rem!important;
  font-size:1rem!important;
  color:#201a0b!important;
  background:#fffdf7!important;
  border:1px solid rgba(125,93,19,.22)!important;
  border-radius:1rem!important;
  box-sizing:border-box!important;
  -webkit-text-security:disc;
}
body.pg-login-reset-password .password-container input.form-control[type="text"]{
  -webkit-text-security:none;
}
body.pg-login-reset-password .password-container .password-toggle{
  position:absolute!important;
  top:50%!important;
  right:.7rem!important;
  left:auto!important;
  transform:translateY(-50%)!important;
  width:2.35rem!important;
  height:2.35rem!important;
  min-width:2.35rem!important;
  min-height:2.35rem!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#6b5a22!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:5!important;
  box-shadow:none!important;
}
body.pg-login-reset-password .password-container .password-toggle i{
  pointer-events:none!important;
  font-size:1.15rem!important;
  line-height:1!important;
}
body.pg-login-reset-password .reset-card{
  max-width:520px!important;
}
body.pg-login-reset-password .actions{
  width:100%!important;
}
@media (max-width:575.98px){
  body.pg-login-reset-password .page-shell{
    padding:1rem!important;
    align-items:flex-start!important;
  }
  body.pg-login-reset-password .reset-card{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto!important;
    border-radius:1.25rem!important;
  }
  body.pg-login-reset-password .reset-card .card-body{
    padding:1rem!important;
  }
  body.pg-login-reset-password .password-container input.form-control{
    height:52px!important;
    min-height:52px!important;
    font-size:16px!important;
    padding-right:3.25rem!important;
  }
  body.pg-login-reset-password .actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:.65rem!important;
  }
  body.pg-login-reset-password .actions .btn{
    width:100%!important;
    min-height:50px!important;
  }
}

/* === Mobile UX migliorata dashboard + area esercente === */
@media (max-width: 767.98px){
  html, body.pg-menu { width:100%!important; max-width:100%!important; overflow-x:hidden!important; }
  body.pg-menu .ak-app-shell{ display:block!important; min-height:100dvh!important; overflow-x:hidden!important; }
  body.pg-menu .ak-main{ padding:10px!important; min-height:100dvh!important; height:auto!important; overflow:visible!important; }
  body.pg-menu .ak-topbar{ position:sticky!important; top:0!important; z-index:50!important; display:grid!important; grid-template-columns:44px minmax(0,1fr) auto!important; gap:8px!important; padding:10px!important; border-radius:0 0 18px 18px!important; background:rgba(255,255,255,.96)!important; backdrop-filter:blur(10px)!important; }
  body.pg-menu .ak-topbar h1{ font-size:21px!important; line-height:1.05!important; white-space:normal!important; }
  body.pg-menu .ak-eyebrow{ font-size:10px!important; margin-bottom:1px!important; }
  body.pg-menu .ak-mobile-toggle{ width:42px!important; height:42px!important; border-radius:14px!important; }
  body.pg-menu .ak-search-wrap{ grid-column:1/-1!important; order:5!important; height:44px!important; border-radius:16px!important; }
  body.pg-menu .ak-search-wrap input{ font-size:16px!important; }
  body.pg-menu .ak-action-panel{ display:flex!important; gap:10px!important; overflow-x:auto!important; overscroll-behavior-x:contain!important; scroll-snap-type:x mandatory!important; padding:10px 2px 12px!important; border-radius:0!important; background:transparent!important; box-shadow:none!important; }
  body.pg-menu .ak-action-panel::-webkit-scrollbar{ display:none!important; }
  body.pg-menu .ak-action-card{ flex:0 0 78vw!important; min-height:74px!important; scroll-snap-align:start!important; border-radius:18px!important; padding:12px!important; grid-template-columns:42px minmax(0,1fr)!important; align-content:center!important; }
  body.pg-menu .ak-action-card span{ width:42px!important; height:42px!important; border-radius:14px!important; }
  body.pg-menu .ak-action-card strong{ font-size:14px!important; line-height:1.15!important; }
  body.pg-menu .ak-action-card small{ font-size:12px!important; line-height:1.2!important; }
  body.pg-menu .ak-iframe-card{ height:calc(100dvh - 205px)!important; min-height:520px!important; padding:0!important; border-radius:20px!important; overflow:hidden!important; }
  body.pg-menu .ak-iframe-card iframe{ height:100%!important; width:100%!important; border-radius:20px!important; }
  body.pg-menu .ak-sidebar{ width:min(86vw,300px)!important; left:-92vw!important; height:100dvh!important; overflow-y:auto!important; padding:14px!important; }
  body.pg-menu.ak-sidebar-open .ak-sidebar{ left:0!important; }
  body.pg-menu .ak-nav{ gap:8px!important; }
  body.pg-menu .ak-nav-link{ min-height:48px!important; border-radius:16px!important; font-size:14px!important; }
  body.pg-menu .ak-help, body.pg-menu .ak-logout{ min-height:48px!important; border-radius:16px!important; }
}
@media (max-width: 380px){
  body.pg-menu .ak-topbar h1{ font-size:18px!important; }
  body.pg-menu .ak-action-card{ flex-basis:84vw!important; }
  body.pg-menu .ak-iframe-card{ height:calc(100dvh - 195px)!important; min-height:500px!important; }
}
body.pg-merchant-area{ background:#f6f7fb!important; overflow-x:hidden!important; }
body.pg-merchant-area .ak-card{ border:0!important; border-radius:20px!important; box-shadow:0 14px 35px rgba(15,23,42,.08)!important; }
@media (max-width: 575.98px){
  body.pg-merchant-area main.container-fluid{ padding:.75rem!important; }
  body.pg-merchant-area h1.h3{ font-size:1.45rem!important; line-height:1.15!important; }
  body.pg-merchant-area .text-secondary{ font-size:.92rem!important; }
  body.pg-merchant-area .row.g-3.mb-4{ --bs-gutter-x:.65rem!important; --bs-gutter-y:.65rem!important; }
  body.pg-merchant-area .row.g-4{ --bs-gutter-y:.85rem!important; }
  body.pg-merchant-area .ak-card{ border-radius:18px!important; }
  body.pg-merchant-area .ak-card .card-body{ padding:1rem!important; }
  body.pg-merchant-area .stat{ font-size:1.55rem!important; }
  body.pg-merchant-area .verify-manual .input-group{ display:grid!important; grid-template-columns:1fr!important; gap:.55rem!important; }
  body.pg-merchant-area .verify-manual .form-control, body.pg-merchant-area .verify-manual .btn{ width:100%!important; border-radius:16px!important; min-height:50px!important; font-size:16px!important; }
  body.pg-merchant-area .merchant-scanner{ min-height:230px!important; border-radius:18px!important; }
  body.pg-merchant-area .merchant-scanner video{ height:min(58vh,320px)!important; min-height:250px!important; }
  body.pg-merchant-area .merchant-scanner .scan-frame{ inset:13%!important; border-radius:18px!important; }
  body.pg-merchant-area #startCameraBtn, body.pg-merchant-area #stopCameraBtn, body.pg-merchant-area .camera-select{ width:100%!important; max-width:100%!important; min-height:48px!important; border-radius:16px!important; }
  body.pg-merchant-area .table-responsive{ border-radius:16px!important; overflow:auto!important; }
  body.pg-merchant-area .table{ font-size:.88rem!important; min-width:520px!important; }
}

/* Fix mobile tabella tessera: card compatte senza scroll orizzontale (20260704) */
@media (max-width: 768px){
  html, body.pg-moduli-index{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  body.pg-moduli-index .page-shell{padding:.55rem!important;width:100%!important;max-width:100%!important;}
  body.pg-moduli-index .table-card{border-radius:22px!important;overflow:visible!important;box-shadow:0 12px 34px rgba(20,16,8,.08)!important;}
  body.pg-moduli-index .table-card .card-body{padding:.85rem!important;overflow:visible!important;}
  body.pg-moduli-index .page-title{font-size:1.45rem!important;line-height:1.1!important;margin-bottom:.25rem!important;}
  body.pg-moduli-index .page-subtitle{font-size:.78rem!important;line-height:1.35!important;}
  body.pg-moduli-index .table-responsive{overflow:visible!important;width:100%!important;max-width:100%!important;padding:0!important;}
  body.pg-moduli-index .dt-container,
  body.pg-moduli-index .dataTables_wrapper{width:100%!important;max-width:100%!important;overflow:visible!important;}
  body.pg-moduli-index .dt-layout-row,
  body.pg-moduli-index .dt-layout-cell{display:block!important;width:100%!important;margin:0!important;text-align:center!important;}
  body.pg-moduli-index .dt-length,
  body.pg-moduli-index .dt-search{display:flex!important;align-items:center!important;justify-content:center!important;gap:.45rem!important;margin:.35rem 0 .75rem!important;width:100%!important;}
  body.pg-moduli-index .dt-search label,
  body.pg-moduli-index .dt-length label{display:flex!important;align-items:center!important;justify-content:center!important;gap:.45rem!important;flex-wrap:wrap!important;width:100%!important;}
  body.pg-moduli-index .dt-search input{width:min(100%,240px)!important;max-width:240px!important;margin:0!important;}
  body.pg-moduli-index .dt-length select{width:76px!important;margin:0!important;}
  body.pg-moduli-index #myTable,
  body.pg-moduli-index #myTable.dataTable,
  body.pg-moduli-index table.dataTable{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;border:0!important;background:transparent!important;table-layout:auto!important;}
  body.pg-moduli-index #myTable thead{display:none!important;}
  body.pg-moduli-index #myTable tbody{display:block!important;width:100%!important;max-width:100%!important;}
  body.pg-moduli-index #myTable tbody tr{display:block!important;width:100%!important;max-width:100%!important;margin:0 0 1rem!important;padding:.85rem!important;border:1px solid rgba(184,122,18,.16)!important;border-radius:22px!important;background:#fffdf8!important;box-shadow:0 12px 26px rgba(20,16,8,.08)!important;overflow:hidden!important;}
  body.pg-moduli-index #myTable tbody td{display:grid!important;grid-template-columns:minmax(96px,40%) minmax(0,1fr)!important;align-items:center!important;gap:.75rem!important;width:100%!important;max-width:100%!important;padding:.58rem 0!important;border:0!important;border-bottom:1px dashed rgba(184,122,18,.18)!important;background:transparent!important;text-align:right!important;color:#1f2937!important;font-size:.88rem!important;line-height:1.28!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
  body.pg-moduli-index #myTable tbody td::before{content:attr(data-label)!important;display:block!important;text-align:left!important;font-size:.75rem!important;line-height:1.15!important;font-weight:1000!important;letter-spacing:.02em!important;text-transform:uppercase!important;color:#5d6a7a!important;}
  body.pg-moduli-index #myTable tbody td:last-child{border-bottom:0!important;padding-top:.8rem!important;display:block!important;text-align:stretch!important;}
  body.pg-moduli-index #myTable tbody td:last-child::before{display:none!important;content:""!important;}
  body.pg-moduli-index #myTable .action-buttons{display:grid!important;grid-template-columns:1fr!important;gap:.55rem!important;width:100%!important;}
  body.pg-moduli-index #myTable .btn,
  body.pg-moduli-index #myTable .btn-sm{width:100%!important;min-height:44px!important;border-radius:14px!important;font-size:.95rem!important;font-weight:1000!important;padding:.55rem .75rem!important;white-space:normal!important;}
  body.pg-moduli-index .user-tessera-code{display:inline-block!important;font-size:.95rem!important;}
  body.pg-moduli-index .dt-info,
  body.pg-moduli-index .dataTables_info{text-align:center!important;font-size:.84rem!important;margin:.6rem 0!important;}
  body.pg-moduli-index .dt-paging,
  body.pg-moduli-index .dataTables_paginate{display:flex!important;justify-content:center!important;flex-wrap:wrap!important;gap:.25rem!important;width:100%!important;}
  body.pg-moduli-index .dt-paging .dt-paging-button,
  body.pg-moduli-index .paginate_button{min-width:38px!important;min-height:38px!important;margin:.12rem!important;border-radius:12px!important;}
}
@media (max-width: 420px){
  body.pg-moduli-index .table-card .card-body{padding:.65rem!important;}
  body.pg-moduli-index #myTable tbody tr{padding:.72rem!important;border-radius:20px!important;}
  body.pg-moduli-index #myTable tbody td{grid-template-columns:minmax(88px,38%) minmax(0,1fr)!important;font-size:.82rem!important;gap:.55rem!important;}
  body.pg-moduli-index #myTable tbody td::before{font-size:.70rem!important;}
}

/* === AK mobile: solo menu laterale + nessuna ricerca tessera per utenti === */
body.pg-menu.ak-role-user .ak-search-wrap,
body.pg-menu.ak-role-merchant .ak-search-wrap{
  display:none!important;
}
@media (max-width: 767.98px){
  body.pg-menu .ak-topbar{
    grid-template-columns:44px minmax(0,1fr)!important;
    align-items:center!important;
  }
  body.pg-menu .ak-top-actions{ display:none!important; }
  body.pg-menu .ak-action-panel{
    display:none!important;
  }
  body.pg-menu .ak-iframe-card{
    height:calc(100dvh - 92px)!important;
    min-height:calc(100dvh - 92px)!important;
    margin-top:10px!important;
  }
  body.pg-menu .ak-iframe-card iframe{
    height:100%!important;
    min-height:calc(100dvh - 92px)!important;
  }
  body.pg-menu.ak-role-admin .ak-search-wrap{
    display:flex!important;
    grid-column:1/-1!important;
    order:5!important;
  }
  body.pg-menu.ak-role-user .ak-search-wrap,
  body.pg-menu.ak-role-merchant .ak-search-wrap{
    display:none!important;
  }
  body.pg-menu .ak-sidebar-backdrop{
    backdrop-filter:blur(2px)!important;
  }
}
@media (max-width: 380px){
  body.pg-menu .ak-iframe-card{
    height:calc(100dvh - 86px)!important;
    min-height:calc(100dvh - 86px)!important;
  }
  body.pg-menu .ak-iframe-card iframe{
    min-height:calc(100dvh - 86px)!important;
  }
}

/* =========================================================
   FIX MOBILE DATATABLE UTENTE - controlli su una riga + card pulite
   ========================================================= */
@media (max-width: 767.98px){
  body.pg-moduli-index .table-card,
  body.pg-moduli-index .card,
  body.pg-moduli-index .page-shell{
    overflow-x:hidden!important;
  }

  body.pg-moduli-index .dt-container .dt-layout-row:first-child,
  body.pg-moduli-index .dataTables_wrapper > .row:first-child{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:.55rem!important;
    flex-wrap:nowrap!important;
    width:100%!important;
    margin:0 0 1rem!important;
  }

  body.pg-moduli-index .dt-container .dt-layout-cell,
  body.pg-moduli-index .dataTables_wrapper > .row:first-child > [class*="col"]{
    width:auto!important;
    flex:1 1 0!important;
    min-width:0!important;
    padding:0!important;
  }

  body.pg-moduli-index .dt-length,
  body.pg-moduli-index .dt-search,
  body.pg-moduli-index .dataTables_length,
  body.pg-moduli-index .dataTables_filter{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:.35rem!important;
    width:100%!important;
    margin:0!important;
    white-space:nowrap!important;
    font-size:.78rem!important;
    text-align:center!important;
  }

  body.pg-moduli-index .dt-length label,
  body.pg-moduli-index .dt-search label,
  body.pg-moduli-index .dataTables_length label,
  body.pg-moduli-index .dataTables_filter label{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:.35rem!important;
    width:100%!important;
    margin:0!important;
    white-space:nowrap!important;
    font-size:.78rem!important;
  }

  body.pg-moduli-index .dt-length select,
  body.pg-moduli-index .dataTables_length select{
    width:58px!important;
    min-width:58px!important;
    height:40px!important;
    padding:.25rem .45rem!important;
    border-radius:14px!important;
    text-align:center!important;
    margin:0!important;
  }

  body.pg-moduli-index .dt-search input,
  body.pg-moduli-index .dataTables_filter input{
    width:min(128px,38vw)!important;
    min-width:92px!important;
    height:40px!important;
    margin:0!important;
    border-radius:14px!important;
    padding:.35rem .65rem!important;
  }

  body.pg-moduli-index table.dataTable tbody{
    gap:.85rem!important;
  }

  body.pg-moduli-index table.dataTable tbody tr{
    position:relative!important;
    padding:0!important;
    border-radius:24px!important;
    background:linear-gradient(180deg,#ffffff 0%,#fbfcff 100%)!important;
    border:1px solid rgba(214,164,22,.25)!important;
    box-shadow:0 16px 34px rgba(23,22,12,.10)!important;
  }

  body.pg-moduli-index table.dataTable tbody tr:before{
    content:'Tessera Animal King';
    display:block;
    padding:.78rem 1rem;
    border-radius:24px 24px 0 0;
    background:linear-gradient(135deg,#20170b,#0d0b08);
    color:#ffe48a;
    font-weight:950;
    letter-spacing:.02em;
    font-size:.82rem;
  }

  body.pg-moduli-index table.dataTable tbody td{
    margin:0 .95rem!important;
    padding:.66rem 0!important;
    border-bottom:1px dashed rgba(26,22,12,.13)!important;
    font-size:.92rem!important;
    color:#263545!important;
  }

  body.pg-moduli-index table.dataTable tbody td:before{
    color:#6d7482!important;
    font-size:.68rem!important;
    letter-spacing:.075em!important;
    min-width:40%!important;
  }

  body.pg-moduli-index table.dataTable tbody td:last-child{
    margin:.25rem .95rem .95rem!important;
    padding:.2rem 0 0!important;
    justify-content:flex-end!important;
  }

  body.pg-moduli-index table.dataTable tbody td[data-label="Nr. Tessera"],
  body.pg-moduli-index table.dataTable tbody td[data-label="NR. TESSERA"]{
    font-weight:950!important;
    color:#17120a!important;
  }

  body.pg-moduli-index table.dataTable tbody td .btn,
  body.pg-moduli-index .action-buttons .btn{
    min-height:42px!important;
    padding:.5rem .9rem!important;
    border-radius:14px!important;
    box-shadow:0 10px 18px rgba(214,164,22,.20)!important;
  }

  body.pg-moduli-index .dataTables_info,
  body.pg-moduli-index .dt-info{
    text-align:center!important;
    font-size:.86rem!important;
    color:#5f6875!important;
    padding-top:.8rem!important;
  }

  body.pg-moduli-index .dataTables_paginate,
  body.pg-moduli-index .dt-paging{
    display:flex!important;
    justify-content:center!important;
    padding-top:.6rem!important;
  }
}

@media (max-width: 390px){
  body.pg-moduli-index .dt-length,
  body.pg-moduli-index .dt-search,
  body.pg-moduli-index .dataTables_length,
  body.pg-moduli-index .dataTables_filter,
  body.pg-moduli-index .dt-length label,
  body.pg-moduli-index .dt-search label,
  body.pg-moduli-index .dataTables_length label,
  body.pg-moduli-index .dataTables_filter label{
    font-size:.72rem!important;
    gap:.25rem!important;
  }
  body.pg-moduli-index .dt-search input,
  body.pg-moduli-index .dataTables_filter input{width:min(105px,34vw)!important;}
  body.pg-moduli-index .dt-length select,
  body.pg-moduli-index .dataTables_length select{width:52px!important;min-width:52px!important;}
}

/* === FIX MOBILE: nasconde le barre di scorrimento duplicate mantenendo lo scroll === */
@media (max-width: 767.98px){
  html,
  body,
  body.pg-menu,
  body.pg-moduli-index,
  body.pg-menu-tessere-body,
  body.pg-stage,
  body.pg-merchant-area,
  .ak-main,
  .ak-app-shell,
  .ak-iframe-card,
  .ak-iframe-card iframe,
  .page-shell,
  .table-card,
  .card,
  .modal,
  .modal-dialog,
  .modal-content,
  .modal-body,
  .ak-user-edit-modal,
  .ak-user-edit-modal.ak-modal-root-owned,
  .ak-user-edit-modal.ak-modal-root-owned .modal-body,
  .table-responsive,
  .dataTables_wrapper,
  .dt-container{
    -ms-overflow-style:none!important;
    scrollbar-width:none!important;
  }
  html::-webkit-scrollbar,
  body::-webkit-scrollbar,
  body.pg-menu::-webkit-scrollbar,
  body.pg-moduli-index::-webkit-scrollbar,
  body.pg-menu-tessere-body::-webkit-scrollbar,
  body.pg-stage::-webkit-scrollbar,
  body.pg-merchant-area::-webkit-scrollbar,
  .ak-main::-webkit-scrollbar,
  .ak-app-shell::-webkit-scrollbar,
  .ak-iframe-card::-webkit-scrollbar,
  .ak-iframe-card iframe::-webkit-scrollbar,
  .page-shell::-webkit-scrollbar,
  .table-card::-webkit-scrollbar,
  .card::-webkit-scrollbar,
  .modal::-webkit-scrollbar,
  .modal-dialog::-webkit-scrollbar,
  .modal-content::-webkit-scrollbar,
  .modal-body::-webkit-scrollbar,
  .ak-user-edit-modal::-webkit-scrollbar,
  .ak-user-edit-modal.ak-modal-root-owned::-webkit-scrollbar,
  .ak-user-edit-modal.ak-modal-root-owned .modal-body::-webkit-scrollbar,
  .table-responsive::-webkit-scrollbar,
  .dataTables_wrapper::-webkit-scrollbar,
  .dt-container::-webkit-scrollbar{
    width:0!important;
    height:0!important;
    display:none!important;
    background:transparent!important;
  }

  /* Una sola area di scroll: il contenuto scorre, ma senza barre visibili */
  body.pg-menu{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  body.pg-menu .ak-main{
    overflow:visible!important;
  }
  body.pg-menu .ak-iframe-card{
    overflow:hidden!important;
  }
  body.pg-menu .ak-iframe-card iframe{
    overflow:auto!important;
  }

  /* Modal mobile: scroll interno morbido senza barra laterale visibile */
  .ak-user-edit-modal.ak-modal-root-owned{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .ak-user-edit-modal.ak-modal-root-owned .modal-content{
    overflow:hidden!important;
  }
  .ak-user-edit-modal.ak-modal-root-owned .modal-body{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
  }
}

/* ==========================================================
   Animal King - revisione mobile globale v3
   Obiettivo: una sola area di scroll, niente barre laterali
   duplicate, menu mobile pulito e tabelle leggibili a card.
   ========================================================== */
@media (max-width: 767.98px){
  html{width:100%;max-width:100%;overflow-x:hidden!important;}
  body{width:100%;max-width:100%;overflow-x:hidden!important;-webkit-text-size-adjust:100%;}
  *{box-sizing:border-box;}
  img,svg,video,canvas,iframe{max-width:100%;}

  /* Nasconde scrollbar estetiche su mobile, ma lascia lo scroll attivo. */
  html,body,.ak-main,.ak-app-shell,.ak-iframe-card,.page-shell,.card,.table-card,.table-responsive,.dataTables_wrapper,.dt-container,.modal,.modal-dialog,.modal-content,.modal-body{
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  html::-webkit-scrollbar,body::-webkit-scrollbar,.ak-main::-webkit-scrollbar,.ak-app-shell::-webkit-scrollbar,.ak-iframe-card::-webkit-scrollbar,.page-shell::-webkit-scrollbar,.card::-webkit-scrollbar,.table-card::-webkit-scrollbar,.table-responsive::-webkit-scrollbar,.dataTables_wrapper::-webkit-scrollbar,.dt-container::-webkit-scrollbar,.modal::-webkit-scrollbar,.modal-dialog::-webkit-scrollbar,.modal-content::-webkit-scrollbar,.modal-body::-webkit-scrollbar{
    width:0!important;height:0!important;display:none!important;background:transparent!important;
  }

  /* Layout principale: su mobile scorre il body, non un contenitore dentro l'altro. */
  body.pg-menu{overflow-y:auto!important;overflow-x:hidden!important;background:#f7f1df!important;}
  body.pg-menu .ak-app-shell{display:block!important;width:100%!important;min-height:100dvh!important;overflow:visible!important;}
  body.pg-menu .ak-main{height:auto!important;min-height:100dvh!important;overflow:visible!important;padding:8px!important;gap:10px!important;}
  body.pg-menu .ak-topbar{display:grid!important;grid-template-columns:48px 1fr!important;gap:8px!important;align-items:center!important;background:#fff!important;border-radius:0 0 18px 18px!important;padding:10px 10px 12px!important;box-shadow:0 8px 22px rgba(0,0,0,.06)!important;position:sticky!important;top:0!important;z-index:30!important;}
  body.pg-menu .ak-mobile-toggle{display:grid!important;width:42px!important;height:42px!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 18px rgba(0,0,0,.09)!important;}
  body.pg-menu .ak-topbar > div:first-of-type{min-width:0!important;text-align:center!important;}
  body.pg-menu .ak-eyebrow{font-size:10px!important;letter-spacing:.16em!important;margin:0!important;color:#c28b00!important;text-align:left!important;padding-left:2px!important;}
  body.pg-menu .ak-topbar h1{font-size:20px!important;line-height:1.1!important;margin:2px 0 0!important;letter-spacing:-.03em!important;text-align:center!important;white-space:normal!important;}
  body.pg-menu .ak-search-wrap{display:none!important;}
  body.pg-menu .ak-top-actions{display:none!important;}

  /* Le card rapide restano solo desktop/tablet. Su mobile c'è il pulsante menu in alto a sinistra. */
  body.pg-menu .ak-action-panel{display:none!important;}

  body.pg-menu .ak-sidebar{position:fixed!important;top:0!important;left:-92vw!important;width:min(86vw,310px)!important;height:100dvh!important;overflow-y:auto!important;z-index:1050!important;padding:14px!important;border-radius:0 22px 22px 0!important;transition:left .24s ease!important;}
  body.pg-menu.ak-sidebar-open .ak-sidebar{left:0!important;}
  body.pg-menu .ak-sidebar-backdrop{display:none!important;}
  body.pg-menu.ak-sidebar-open .ak-sidebar-backdrop{display:block!important;position:fixed!important;inset:0!important;background:rgba(10,10,10,.45)!important;z-index:1040!important;}
  body.pg-menu .ak-nav-link,body.pg-menu .ak-help,body.pg-menu .ak-logout{min-height:48px!important;border-radius:16px!important;font-size:14px!important;}

  /* Iframe dashboard: altezza gestita da JS, niente scroll orizzontale. */
  body.pg-menu .ak-iframe-card{height:auto!important;min-height:calc(100dvh - 86px)!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;}
  body.pg-menu .ak-iframe-card iframe{display:block!important;width:100%!important;min-height:calc(100dvh - 86px)!important;height:auto;border:0!important;border-radius:0!important;background:transparent!important;overflow:hidden!important;}

  /* Pagine interne dentro iframe: card più strette e niente overflow laterale. */
  .page-shell,.ak-admin-page,main.container-fluid{padding:10px!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  .card,.table-card,.ak-panel,.ak-card{border-radius:22px!important;max-width:100%!important;overflow:hidden!important;}
  .card-body,.ak-panel,.table-card{padding:14px!important;}
  h1,.h1{font-size:clamp(24px,8vw,34px)!important;line-height:1.05!important;text-align:center;}
  h2,.h2{font-size:clamp(20px,6vw,28px)!important;line-height:1.1!important;}
  p.lead,.text-muted{text-align:center;}
  .row{--bs-gutter-x:.75rem!important;--bs-gutter-y:.75rem!important;}
  .btn{min-height:44px;border-radius:16px!important;}
  input,select,textarea,.form-control,.form-select{font-size:16px!important;min-height:46px;border-radius:15px!important;max-width:100%!important;}

  /* Modali full-screen eleganti, con un solo scroll interno invisibile. */
  .modal{overflow:hidden!important;padding:0!important;}
  .modal-dialog{width:100%!important;max-width:100%!important;margin:0!important;min-height:100dvh!important;display:flex!important;align-items:stretch!important;}
  .modal-content{width:100%!important;min-height:100dvh!important;max-height:100dvh!important;border-radius:0!important;border:0!important;overflow:hidden!important;}
  .modal-header{position:sticky!important;top:0!important;z-index:3!important;background:#fffdf6!important;padding:16px!important;}
  .modal-body{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;padding:16px!important;}
  .modal-footer{position:sticky!important;bottom:0!important;z-index:3!important;background:#fffdf6!important;padding:12px!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
  .modal-footer .btn,.modal-footer button{width:100%!important;}

  /* DataTables: controlli sulla stessa riga e risultati come card pulite. */
  .dt-container .dt-layout-row:first-child,.dataTables_wrapper > .row:first-child{display:grid!important;grid-template-columns:minmax(118px,.9fr) minmax(150px,1.1fr)!important;gap:8px!important;align-items:center!important;margin:0 0 14px!important;width:100%!important;}
  .dt-container .dt-layout-cell,.dataTables_wrapper > .row:first-child > [class*="col"]{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important;}
  .dt-length,.dt-search,.dataTables_length,.dataTables_filter{display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;margin:0!important;width:100%!important;white-space:nowrap!important;font-size:12px!important;}
  .dt-length label,.dt-search label,.dataTables_length label,.dataTables_filter label{display:flex!important;align-items:center!important;gap:5px!important;margin:0!important;width:100%!important;white-space:nowrap!important;font-size:12px!important;}
  .dt-length select,.dataTables_length select{width:54px!important;min-width:54px!important;height:40px!important;padding:4px 8px!important;text-align:center!important;}
  .dt-search input,.dataTables_filter input{width:100%!important;min-width:0!important;height:40px!important;margin:0!important;padding:6px 10px!important;}
  .table-responsive{overflow:visible!important;}
  table.dataTable,table.table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;}
  table.dataTable thead,.dt-container table.dataTable thead{display:none!important;}
  table.dataTable tbody{display:grid!important;gap:12px!important;width:100%!important;}
  table.dataTable tbody tr{display:block!important;width:100%!important;background:#fff!important;border:1px solid rgba(214,164,22,.22)!important;border-radius:22px!important;margin:0!important;padding:0!important;box-shadow:0 12px 28px rgba(31,22,13,.08)!important;overflow:hidden!important;}
  table.dataTable tbody tr:before{content:'Tessera Animal King';display:block;background:linear-gradient(135deg,#1c1407,#070604)!important;color:#ffe69a!important;font-weight:900!important;padding:12px 14px!important;font-size:14px!important;}
  table.dataTable tbody td{display:grid!important;grid-template-columns:minmax(95px,42%) minmax(0,58%)!important;align-items:center!important;gap:8px!important;padding:10px 14px!important;margin:0!important;border:0!important;border-bottom:1px solid rgba(31,22,13,.08)!important;background:#fff!important;text-align:right!important;min-height:42px!important;word-break:break-word!important;}
  table.dataTable tbody td:last-child{border-bottom:0!important;padding:12px 14px 14px!important;display:block!important;text-align:center!important;}
  table.dataTable tbody td:before{content:attr(data-label)!important;text-align:left!important;color:#6f7480!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:11px!important;min-width:0!important;}
  table.dataTable tbody td .btn,table.dataTable tbody td button{width:100%!important;min-height:44px!important;}
  .dt-info,.dataTables_info{text-align:center!important;font-size:13px!important;margin-top:8px!important;}
  .dt-paging,.dataTables_paginate{display:flex!important;justify-content:center!important;gap:4px!important;flex-wrap:wrap!important;margin-top:8px!important;}

  /* Liste/mappa esercenti su mobile. */
  .ak-map-layout,.nearby-layout,.merchant-map-layout{display:block!important;}
  #akMerchantMap,#map,.leaflet-container{height:min(56dvh,420px)!important;min-height:300px!important;border-radius:18px!important;}
  .merchant-list,.nearby-list,.ak-map-list{max-height:none!important;overflow:visible!important;margin-top:12px!important;}
}

@media (max-width: 380px){
  .dt-container .dt-layout-row:first-child,.dataTables_wrapper > .row:first-child{grid-template-columns:1fr!important;}
  .dt-length,.dt-search,.dataTables_length,.dataTables_filter{justify-content:flex-start!important;}
  table.dataTable tbody td{grid-template-columns:1fr!important;text-align:left!important;gap:3px!important;}
}

/* FIX 20260706 - Menu laterale Animal King: maggiore leggibilità mantenendo stile oro/nero */
body.pg-menu .ak-sidebar{
  background:radial-gradient(circle at 18% 8%,rgba(255,227,109,.20),transparent 32%),linear-gradient(180deg,#171109 0%,#0d0905 58%,#060403 100%)!important;
  border-right:1px solid rgba(255,211,91,.28)!important;
}
body.pg-menu .ak-nav{
  background:linear-gradient(180deg,rgba(255,250,238,.96),rgba(242,238,226,.94))!important;
  border:1px solid rgba(214,164,22,.42)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75),0 14px 34px rgba(0,0,0,.22)!important;
  padding:8px!important;
  border-radius:24px!important;
}
body.pg-menu .ak-nav-link{
  background:rgba(255,255,255,.42)!important;
  color:#2a1b09!important;
  text-shadow:none!important;
  font-weight:950!important;
  letter-spacing:-.01em!important;
  border:1px solid rgba(120,80,10,.08)!important;
  box-shadow:none!important;
}
body.pg-menu .ak-nav-link i{
  color:#c99110!important;
  text-shadow:none!important;
  opacity:1!important;
}
body.pg-menu .ak-nav-link:hover,
body.pg-menu .ak-nav-link.active{
  background:linear-gradient(135deg,#ffe36d 0%,#d99a00 100%)!important;
  color:#1f160d!important;
  border-color:rgba(82,51,0,.22)!important;
  box-shadow:0 10px 20px rgba(120,80,10,.18),inset 0 1px 0 rgba(255,255,255,.55)!important;
  transform:translateX(2px)!important;
}
body.pg-menu .ak-nav-link:hover i,
body.pg-menu .ak-nav-link.active i{
  color:#5b3600!important;
}
body.pg-menu .ak-help,
body.pg-menu .ak-logout{
  color:#fff7d6!important;
  background:rgba(255,227,109,.12)!important;
  border:1px solid rgba(255,227,109,.26)!important;
  text-shadow:0 1px 3px rgba(0,0,0,.55)!important;
}
body.pg-menu .ak-help:hover,
body.pg-menu .ak-logout:hover{
  background:linear-gradient(135deg,#ffe36d,#d99a00)!important;
  color:#1f160d!important;
  text-shadow:none!important;
}

/* FIX 20260706 - Rifiniture menu Animal King: attivo, glow, separatori, badge, scrollbar */
body.pg-menu .ak-sidebar{
  scrollbar-width:thin!important;
  scrollbar-color:#d99a00 #070604!important;
}
body.pg-menu .ak-sidebar::-webkit-scrollbar{width:10px!important;}
body.pg-menu .ak-sidebar::-webkit-scrollbar-track{background:#070604!important;border-radius:999px!important;}
body.pg-menu .ak-sidebar::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#ffe36d,#d99a00,#8a5b06)!important;border:2px solid #070604!important;border-radius:999px!important;}
body.pg-menu .ak-sidebar::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#fff1a8,#f2b51b,#b87908)!important;}

body.pg-menu .ak-nav-link{
  position:relative!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  transition:background .22s ease,box-shadow .22s ease,transform .22s ease,border-color .22s ease!important;
}
body.pg-menu .ak-nav-link .ak-nav-text{flex:1 1 auto!important;min-width:0!important;text-align:left!important;}
body.pg-menu .ak-nav-link::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:9px!important;
  bottom:9px!important;
  width:0!important;
  border-radius:0 999px 999px 0!important;
  background:linear-gradient(180deg,#fff4ad,#ffd23c,#d99a00)!important;
  box-shadow:0 0 0 rgba(255,210,60,0)!important;
  transition:width .22s ease,box-shadow .22s ease!important;
}
body.pg-menu .ak-nav-link.active::before{
  width:6px!important;
  box-shadow:0 0 14px rgba(255,210,60,.95)!important;
}
body.pg-menu .ak-nav-link:hover{
  box-shadow:0 0 0 1px rgba(255,211,91,.35),0 0 18px rgba(217,154,0,.34),0 10px 22px rgba(120,80,10,.16),inset 0 1px 0 rgba(255,255,255,.58)!important;
  transform:translateX(2px)!important;
}
body.pg-menu .ak-nav-link.active{
  box-shadow:0 0 0 1px rgba(255,211,91,.45),0 0 20px rgba(217,154,0,.42),0 12px 24px rgba(120,80,10,.18),inset 0 1px 0 rgba(255,255,255,.62)!important;
  padding-left:18px!important;
}

body.pg-menu .ak-nav-link:nth-of-type(5),
body.pg-menu .ak-nav-link:nth-of-type(8),
body.pg-menu .ak-nav-link:nth-of-type(11),
body.pg-menu .ak-nav-link:last-of-type{
  margin-top:9px!important;
}
body.pg-menu .ak-nav-link:nth-of-type(5)::after,
body.pg-menu .ak-nav-link:nth-of-type(8)::after,
body.pg-menu .ak-nav-link:nth-of-type(11)::after,
body.pg-menu .ak-nav-link:last-of-type::after{
  content:""!important;
  position:absolute!important;
  left:12px!important;
  right:12px!important;
  top:-6px!important;
  height:1px!important;
  background:linear-gradient(90deg,transparent,rgba(169,120,23,.52),transparent)!important;
  pointer-events:none!important;
}

body.pg-menu .ak-menu-badge{
  margin-left:auto!important;
  min-width:24px!important;
  height:22px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  display:inline-grid!important;
  place-items:center!important;
  font-style:normal!important;
  font-size:11px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
  border:1px solid rgba(255,215,87,.75)!important;
  box-shadow:0 2px 8px rgba(80,0,0,.25),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
body.pg-menu .ak-menu-badge-ticket{
  background:linear-gradient(135deg,#7d0b0b,#b01616 55%,#4d0505)!important;
  color:#ffe68a!important;
}
body.pg-menu .ak-menu-badge-renewal{
  background:linear-gradient(135deg,#3b0707,#8f1111 55%,#d99a00)!important;
  color:#fff1ad!important;
}
body.pg-menu .ak-nav-link:hover .ak-menu-badge,
body.pg-menu .ak-nav-link.active .ak-menu-badge{
  border-color:rgba(80,45,0,.38)!important;
  box-shadow:0 0 12px rgba(135,14,14,.34),inset 0 1px 0 rgba(255,255,255,.28)!important;
}


/* =========================================================
   Animal King Premium UI — dashboard, tabelle, bottoni, modali,
   grafici, dark mode, micro-interazioni e toast
   ========================================================= */
:root{
  --ak-gold:#f5c542;
  --ak-gold-2:#d8a21b;
  --ak-bronze:#9a6415;
  --ak-dark:#100d08;
  --ak-dark-2:#1a140b;
  --ak-cream:#fff7df;
  --ak-glass:rgba(255,250,235,.78);
  --ak-glow:0 0 0 1px rgba(245,197,66,.28),0 18px 42px rgba(154,100,21,.25);
  --ak-fast:140ms cubic-bezier(.2,.8,.2,1);
}
html{scrollbar-color:var(--ak-gold-2) #080604;scrollbar-width:thin;}
::-webkit-scrollbar{width:11px;height:11px;background:#080604;}
::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--ak-gold),var(--ak-bronze));border:2px solid #080604;border-radius:999px;}
::-webkit-scrollbar-track{background:#080604;}
body.pg-menu,.ak-admin-page{background:radial-gradient(circle at 10% 0%,rgba(245,197,66,.16),transparent 28%),linear-gradient(135deg,#080604 0%,#15100a 42%,#241805 100%)!important;color:#f8efd8!important;}
.ak-main,.page-shell,main.container-fluid{background:transparent!important;color:#f8efd8!important;}
.ak-sidebar{background:radial-gradient(circle at 18% 0%,rgba(245,197,66,.26),transparent 32%),linear-gradient(180deg,#1a1207 0%,#080604 100%)!important;border-right:1px solid rgba(245,197,66,.24)!important;}
.ak-brand,.ak-user-card strong{color:#fff8df!important;}
.ak-user-card{border-color:rgba(245,197,66,.20)!important;}
.ak-user-card small{color:#d8c698!important;}
.ak-nav{gap:7px!important;}
.ak-nav-link{position:relative!important;color:#fff3c9!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(245,197,66,.08)!important;text-shadow:none!important;transition:background var(--ak-fast),box-shadow var(--ak-fast),transform var(--ak-fast),border-color var(--ak-fast)!important;}
.ak-nav-link::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:0;border-radius:0 999px 999px 0;background:linear-gradient(180deg,#fff1a6,var(--ak-gold));box-shadow:0 0 16px rgba(245,197,66,.72);transition:width var(--ak-fast);}
.ak-nav-link:hover{background:linear-gradient(135deg,rgba(245,197,66,.18),rgba(255,255,255,.07))!important;border-color:rgba(245,197,66,.34)!important;box-shadow:0 0 22px rgba(245,197,66,.18)!important;transform:translateX(2px)!important;color:#fff8df!important;}
.ak-nav-link.active{background:linear-gradient(135deg,#ffe28a 0%,#d8a21b 58%,#8a5a12 100%)!important;color:#15100a!important;border-color:#ffe49a!important;box-shadow:0 14px 34px rgba(245,197,66,.34)!important;}
.ak-nav-link.active::before{width:5px;}
.ak-nav-link i{color:var(--ak-gold)!important;transition:transform var(--ak-fast),color var(--ak-fast)!important;}
.ak-nav-link:hover i{transform:scale(1.08);}
.ak-nav-link.active i{color:#15100a!important;}
.ak-nav-link:nth-child(3),.ak-nav-link:nth-child(6),.ak-nav-link:nth-child(9){margin-top:9px!important;padding-top:13px!important;border-top:1px solid rgba(245,197,66,.22)!important;}
.ak-bell em,.ak-badge-count,.badge-notify,.ak-notify-badge{background:linear-gradient(135deg,#7f1d1d,#b91c1c)!important;color:#ffe49a!important;border:1px solid rgba(245,197,66,.54)!important;box-shadow:0 0 0 2px rgba(127,29,29,.18),0 0 18px rgba(245,197,66,.30)!important;}
.ak-action-panel,.ak-iframe-card,.ak-panel,.card,.table-card,.ak-box,.ak-toolbar{background:linear-gradient(135deg,rgba(255,248,223,.10),rgba(255,255,255,.04))!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;border:1px solid rgba(245,197,66,.22)!important;box-shadow:0 24px 60px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.09)!important;color:#f8efd8!important;}
.ak-stat-card,.ak-action-card,.ak-notification-card,.ak-category-stat{background:linear-gradient(145deg,rgba(18,13,7,.94) 0%,rgba(55,36,8,.88) 62%,rgba(216,162,27,.42) 100%)!important;border:1px solid rgba(245,197,66,.28)!important;box-shadow:0 18px 46px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08)!important;color:#fff6d8!important;transition:transform var(--ak-fast),box-shadow var(--ak-fast),border-color var(--ak-fast)!important;}
.ak-stat-card:hover,.ak-action-card:hover,.ak-notification-card:hover,.ak-category-stat:hover{transform:translateY(-3px)!important;box-shadow:var(--ak-glow),0 26px 58px rgba(0,0,0,.42)!important;border-color:rgba(255,226,138,.56)!important;}
.ak-stat-card:before{background:linear-gradient(90deg,#080604,var(--ak-gold),#7a4b09)!important;height:4px!important;}
.ak-stat-card i,.ak-action-card span,.ak-notification-card i{color:var(--ak-gold)!important;background:rgba(245,197,66,.12)!important;border:1px solid rgba(245,197,66,.22)!important;}
.ak-stat-card span,.ak-action-card small,.ak-notification-card span,.text-muted,small.text-muted{color:#d8c698!important;}
.ak-stat-card strong,.ak-panel h2,.ak-admin-title h1,.ak-topbar h1,.card-title,.h1,.h2,h1,h2,h3{color:#fff4ca!important;}
.table,.ak-table,table.dataTable{--bs-table-bg:transparent!important;--bs-table-color:#f8efd8!important;--bs-table-border-color:rgba(245,197,66,.18)!important;color:#f8efd8!important;}
.table thead th,.ak-table thead th,table.dataTable thead th{background:linear-gradient(180deg,#f7d56a 0%,#d8a21b 52%,#8f5b10 100%)!important;color:#140f08!important;border-color:rgba(255,232,160,.34)!important;text-transform:uppercase;letter-spacing:.045em;font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.46)!important;}
.table tbody td,.ak-table tbody td,table.dataTable tbody td{background:rgba(255,255,255,.035)!important;color:#f8efd8!important;border-color:rgba(245,197,66,.12)!important;transition:background var(--ak-fast),box-shadow var(--ak-fast),color var(--ak-fast)!important;}
.table tbody tr:hover td,.ak-table tbody tr:hover td,table.dataTable tbody tr:hover td{background:rgba(245,197,66,.13)!important;box-shadow:inset 0 0 0 999px rgba(245,197,66,.025)!important;color:#fff8df!important;}
.btn,.button,button,.btn-ak{transition:transform var(--ak-fast),box-shadow var(--ak-fast),filter var(--ak-fast),background var(--ak-fast)!important;}
.btn-warning,.btn-ak,.btn-primary,.ak-create{background:linear-gradient(135deg,#fff0a6,#f5c542 52%,#b87912)!important;border:1px solid rgba(255,232,160,.68)!important;color:#15100a!important;font-weight:900!important;box-shadow:0 10px 0 rgba(92,58,9,.55),0 18px 36px rgba(0,0,0,.24)!important;}
.btn-dark,.btn-outline-dark,.ak-help,.ak-logout{background:linear-gradient(135deg,#211608,#080604)!important;border:1px solid rgba(245,197,66,.30)!important;color:#ffe28a!important;font-weight:900!important;box-shadow:0 8px 0 rgba(0,0,0,.35),0 16px 32px rgba(0,0,0,.24)!important;}
.btn:hover,button:hover,.btn-ak:hover{transform:translateY(-2px)!important;filter:saturate(1.08) brightness(1.03)!important;box-shadow:0 0 22px rgba(245,197,66,.30),0 18px 38px rgba(0,0,0,.30)!important;}
.btn:active,button:active{transform:translateY(1px)!important;box-shadow:0 4px 0 rgba(92,58,9,.45),0 10px 20px rgba(0,0,0,.22)!important;}
.form-control,.form-select,input,select,textarea{background:#141009!important;color:#fff4ca!important;border:1px solid rgba(245,197,66,.24)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;}
.form-control:focus,.form-select:focus,input:focus,select:focus,textarea:focus{border-color:#ffe28a!important;box-shadow:0 0 0 .22rem rgba(245,197,66,.18)!important;}
.modal-content{background:linear-gradient(145deg,#120d07,#211608 58%,#332005)!important;color:#fff4ca!important;border:1px solid rgba(255,226,138,.50)!important;border-radius:26px!important;box-shadow:0 0 0 1px rgba(245,197,66,.20),0 34px 90px rgba(0,0,0,.62),0 0 36px rgba(245,197,66,.20)!important;overflow:hidden!important;}
.modal-header,.modal-footer{background:rgba(8,6,4,.72)!important;border-color:rgba(245,197,66,.20)!important;}
.modal-title{color:#ffe28a!important;font-weight:950!important;}
.toast,.ak-toast,.ak-center-toast{background:linear-gradient(135deg,#190f05,#2a1605 55%,#7f1d1d)!important;color:#fff4ca!important;border:1px solid rgba(245,197,66,.42)!important;box-shadow:0 28px 70px rgba(0,0,0,.46),0 0 24px rgba(245,197,66,.20)!important;}
.toast i,.ak-toast:before,.ak-center-toast i{color:#f5c542!important;filter:drop-shadow(0 0 8px rgba(245,197,66,.5));animation:akGoldPulse 1.6s ease-in-out infinite;}
@keyframes akGoldPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.86}}
@keyframes akPremiumIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.ak-stat-card,.ak-panel,.card,.ak-action-card,.modal-content,.toast,.ak-toast{animation:akPremiumIn 150ms ease both;}
canvas,svg,.chartjs-render-monitor,.apexcharts-canvas{filter:drop-shadow(0 10px 22px rgba(0,0,0,.24));}
.ak-chart-grid canvas,.ak-chart-grid svg,.ak-panel canvas,.ak-panel svg{border-radius:18px;background:radial-gradient(circle at 20% 0%,rgba(245,197,66,.10),transparent 34%),rgba(8,6,4,.25);}
.apexcharts-text,.chart-label{fill:#ffe28a!important;color:#ffe28a!important;}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{transition:none!important;animation:none!important;}}
@media(max-width:768px){.ak-nav-link:hover{transform:none!important}.ak-action-panel,.ak-iframe-card,.ak-panel,.card{border-radius:20px!important}.modal-content{border-radius:0!important}}

/* =========================================================
   Animal King readability fix — contenuti chiari e leggibili
   Mantiene nero/oro per menu e controlli, ma riporta dashboard,
   statistiche, card e tabelle su sfondi caldi con testo scuro.
   ========================================================= */
:root{
  --ak-readable-bg:#f7f1df;
  --ak-readable-card:#fffdf8;
  --ak-readable-card-2:#fffaf0;
  --ak-readable-text:#241b10;
  --ak-readable-muted:#6f6250;
  --ak-readable-gold:#b7790c;
  --ak-readable-border:#ead8a9;
  --ak-readable-hover:#fff3cf;
}
body:not(.pg-menu):not(.ak-login-page){
  background:radial-gradient(circle at 15% 0%,rgba(245,197,66,.20),transparent 30%),linear-gradient(180deg,#fbf6e8 0%,#f4ecd9 100%)!important;
  color:var(--ak-readable-text)!important;
}
body:not(.pg-menu) .ak-main,
body:not(.pg-menu) .page-shell,
body:not(.pg-menu) main.container-fluid,
body.ak-admin-page{
  color:var(--ak-readable-text)!important;
}
body:not(.pg-menu) .ak-action-panel,
body:not(.pg-menu) .ak-iframe-card,
body:not(.pg-menu) .ak-panel,
body:not(.pg-menu) .card,
body:not(.pg-menu) .ak-card,
body:not(.pg-menu) .table-card,
body:not(.pg-menu) .ak-box,
body:not(.pg-menu) .ak-toolbar{
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(255,250,238,.92))!important;
  color:var(--ak-readable-text)!important;
  border:1px solid var(--ak-readable-border)!important;
  box-shadow:0 18px 44px rgba(82,55,8,.12),inset 0 1px 0 rgba(255,255,255,.72)!important;
  backdrop-filter:blur(8px)!important;
  -webkit-backdrop-filter:blur(8px)!important;
}
body:not(.pg-menu) .ak-stat-card,
body:not(.pg-menu) .ak-action-card,
body:not(.pg-menu) .ak-notification-card,
body:not(.pg-menu) .ak-category-stat{
  background:linear-gradient(145deg,#fffdf8 0%,#fff7e3 68%,#f7dfa1 100%)!important;
  color:var(--ak-readable-text)!important;
  border:1px solid var(--ak-readable-border)!important;
  box-shadow:0 14px 34px rgba(82,55,8,.13),inset 0 1px 0 rgba(255,255,255,.78)!important;
}
body:not(.pg-menu) .ak-stat-card:hover,
body:not(.pg-menu) .ak-action-card:hover,
body:not(.pg-menu) .ak-notification-card:hover,
body:not(.pg-menu) .ak-category-stat:hover,
body:not(.pg-menu) .card:hover,
body:not(.pg-menu) .ak-card:hover{
  box-shadow:0 0 0 1px rgba(245,197,66,.32),0 20px 48px rgba(154,100,21,.20)!important;
}
body:not(.pg-menu) .ak-stat-card span,
body:not(.pg-menu) .ak-action-card small,
body:not(.pg-menu) .ak-notification-card span,
body:not(.pg-menu) .text-muted,
body:not(.pg-menu) .text-secondary,
body:not(.pg-menu) small,
body:not(.pg-menu) small.text-muted{
  color:var(--ak-readable-muted)!important;
}
body:not(.pg-menu) .ak-stat-card strong,
body:not(.pg-menu) .num,
body:not(.pg-menu) .ak-category-stat strong{
  color:var(--ak-readable-gold)!important;
  text-shadow:0 1px 0 rgba(255,255,255,.75)!important;
}
body:not(.pg-menu) .ak-panel h2,
body:not(.pg-menu) .ak-admin-title h1,
body:not(.pg-menu) .ak-topbar h1,
body:not(.pg-menu) .card-title,
body:not(.pg-menu) .h1,
body:not(.pg-menu) .h2,
body:not(.pg-menu) .h3,
body:not(.pg-menu) .h4,
body:not(.pg-menu) .h5,
body:not(.pg-menu) h1,
body:not(.pg-menu) h2,
body:not(.pg-menu) h3,
body:not(.pg-menu) h4,
body:not(.pg-menu) h5{
  color:var(--ak-readable-text)!important;
  text-shadow:none!important;
}
body:not(.pg-menu) .card-body,
body:not(.pg-menu) .ak-card .card-body,
body:not(.pg-menu) .ak-panel p,
body:not(.pg-menu) .ak-panel div,
body:not(.pg-menu) .ak-panel span,
body:not(.pg-menu) .card div,
body:not(.pg-menu) .card span{
  color:inherit;
}
body:not(.pg-menu) .bar,
body:not(.pg-menu) .progress-bar{
  background:linear-gradient(90deg,#f5c542,#b7790c)!important;
  box-shadow:0 0 12px rgba(245,197,66,.32)!important;
}
body:not(.pg-menu) .table,
body:not(.pg-menu) .ak-table,
body:not(.pg-menu) table.dataTable{
  --bs-table-bg:#fffdf8!important;
  --bs-table-color:var(--ak-readable-text)!important;
  --bs-table-border-color:var(--ak-readable-border)!important;
  color:var(--ak-readable-text)!important;
}
body:not(.pg-menu) .table tbody td,
body:not(.pg-menu) .ak-table tbody td,
body:not(.pg-menu) table.dataTable tbody td{
  background:#fffdf8!important;
  color:var(--ak-readable-text)!important;
  border-color:var(--ak-readable-border)!important;
}
body:not(.pg-menu) .table tbody tr:hover td,
body:not(.pg-menu) .ak-table tbody tr:hover td,
body:not(.pg-menu) table.dataTable tbody tr:hover td{
  background:var(--ak-readable-hover)!important;
  color:#16100a!important;
}
body:not(.pg-menu) .table tbody td strong,
body:not(.pg-menu) .ak-table tbody td strong,
body:not(.pg-menu) table.dataTable tbody td strong{
  color:#8a5a12!important;
}
body:not(.pg-menu) .form-control,
body:not(.pg-menu) .form-select,
body:not(.pg-menu) input,
body:not(.pg-menu) select,
body:not(.pg-menu) textarea{
  background:#fffdf8!important;
  color:var(--ak-readable-text)!important;
  border-color:var(--ak-readable-border)!important;
}
body:not(.pg-menu) canvas,
body:not(.pg-menu) svg,
body:not(.pg-menu) .chartjs-render-monitor,
body:not(.pg-menu) .apexcharts-canvas{
  filter:drop-shadow(0 8px 18px rgba(82,55,8,.16));
}
body:not(.pg-menu) .ak-chart-grid canvas,
body:not(.pg-menu) .ak-chart-grid svg,
body:not(.pg-menu) .ak-panel canvas,
body:not(.pg-menu) .ak-panel svg{
  background:linear-gradient(145deg,#fffdf8,#fff6df)!important;
}


/* =========================================================
   Animal King Admin Cards — correzione leggibilità card rapide
   Risolve testi chiari su box bianchi dentro le card admin.
   ========================================================= */
body.pg-menu .ak-action-panel .ak-action-card,
body.pg-menu .ak-action-card,
body.pg-menu label.ak-action-card,
body.pg-menu button.ak-action-card{
  background:linear-gradient(145deg,#ffdf58 0%,#f4c331 48%,#c88710 100%)!important;
  color:#171007!important;
  border:1px solid rgba(106,65,0,.34)!important;
  text-shadow:none!important;
  box-shadow:0 14px 26px rgba(92,58,9,.24), inset 0 1px 0 rgba(255,255,255,.58)!important;
}
body.pg-menu .ak-action-card strong,
body.pg-menu .ak-action-card .card-title,
body.pg-menu .ak-action-card h3{
  color:#120d06!important;
  font-weight:950!important;
  text-shadow:none!important;
}
body.pg-menu .ak-action-card small,
body.pg-menu .ak-action-card .card-subtitle,
body.pg-menu .ak-action-card .text-muted{
  color:#4d3511!important;
  font-weight:750!important;
  opacity:1!important;
  text-shadow:none!important;
}
body.pg-menu .ak-action-card span,
body.pg-menu .ak-action-card .ak-icon,
body.pg-menu .ak-action-card > span{
  background:rgba(255,246,210,.34)!important;
  border:1px solid rgba(79,49,0,.22)!important;
  color:#1b140a!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55)!important;
}
body.pg-menu .ak-action-card i{
  color:#1b140a!important;
  text-shadow:none!important;
}
body.pg-menu .ak-action-card select,
body.pg-menu .ak-action-card .form-select,
body.pg-menu .ak-select-card select,
body.pg-menu .ak-select-card .form-select{
  background:#fffdf7!important;
  color:#24170a!important;
  border:1px solid rgba(117,75,5,.36)!important;
  font-weight:850!important;
  text-shadow:none!important;
  opacity:1!important;
  box-shadow:inset 0 2px 4px rgba(120,74,5,.08), 0 8px 18px rgba(88,54,6,.14)!important;
}
body.pg-menu .ak-action-card select option,
body.pg-menu .ak-select-card select option{
  background:#fffdf7!important;
  color:#24170a!important;
}
body.pg-menu .ak-action-card:hover{
  background:linear-gradient(145deg,#ffe77b 0%,#ffd13a 48%,#d99612 100%)!important;
  color:#120d06!important;
  transform:translateY(-2px)!important;
  box-shadow:0 0 18px rgba(245,197,66,.30), 0 18px 34px rgba(92,58,9,.28), inset 0 1px 0 rgba(255,255,255,.65)!important;
}
body.pg-menu .ak-action-card.ak-create{
  background:linear-gradient(145deg,#fff0a7 0%,#f5c542 50%,#b87912 100%)!important;
  color:#120d06!important;
}

/* =========================================================
   Animal King — fix Gestione Esercenti mobile + desktop 100%
   Mantiene desktop full-width e su mobile trasforma la tabella
   in schede leggibili, senza min-width che nascondono i dati.
   ========================================================= */
@media (min-width:769px){
  body.pg-esercenti-index .page-shell,
  body.pg-esercenti-index .container-fluid,
  body.pg-esercenti-index .main-card,
  body.pg-esercenti-index .table-zone,
  body.pg-esercenti-index .table-responsive,
  body.pg-esercenti-index .dataTables_wrapper,
  body.pg-esercenti-index .dt-container{width:100%!important;max-width:100%!important;}
  body.pg-esercenti-index #empTable,
  body.pg-esercenti-index table.dataTable{width:100%!important;min-width:0!important;table-layout:fixed!important;}
}
@media (max-width:768px){
  body.pg-esercenti-index{overflow-x:hidden!important;background:#f7f1df!important;}
  body.pg-esercenti-index .page-shell,
  body.pg-esercenti-index .container-fluid,
  body.pg-esercenti-index .main-card,
  body.pg-esercenti-index .table-zone,
  body.pg-esercenti-index .table-responsive,
  body.pg-esercenti-index .dataTables_wrapper,
  body.pg-esercenti-index .dt-container{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;overflow:visible!important;}
  body.pg-esercenti-index .page-shell{padding:8px!important;}
  body.pg-esercenti-index .main-card{border-radius:22px!important;background:#fffdf7!important;color:#171007!important;}
  body.pg-esercenti-index .toolbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:14px!important;text-align:center!important;}
  body.pg-esercenti-index .page-title{font-size:clamp(22px,7vw,30px)!important;line-height:1.08!important;color:#111!important;text-align:center!important;margin:0!important;}
  body.pg-esercenti-index .toolbar .btn{width:100%!important;}
  body.pg-esercenti-index .dt-container .dt-layout-row:first-child,
  body.pg-esercenti-index .dataTables_wrapper > .row:first-child{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;}
  body.pg-esercenti-index .dt-length,
  body.pg-esercenti-index .dt-search,
  body.pg-esercenti-index .dataTables_length,
  body.pg-esercenti-index .dataTables_filter{width:100%!important;justify-content:flex-start!important;color:#171007!important;}
  body.pg-esercenti-index .dt-search input,
  body.pg-esercenti-index .dataTables_filter input{width:100%!important;margin:4px 0 0!important;background:#fff!important;color:#171007!important;}
  body.pg-esercenti-index #empTable,
  body.pg-esercenti-index table.dataTable{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;border:0!important;background:transparent!important;}
  body.pg-esercenti-index #empTable colgroup,
  body.pg-esercenti-index table.dataTable colgroup,
  body.pg-esercenti-index #empTable thead,
  body.pg-esercenti-index table.dataTable thead{display:none!important;}
  body.pg-esercenti-index #empTable tbody,
  body.pg-esercenti-index table.dataTable tbody{display:grid!important;width:100%!important;gap:12px!important;background:transparent!important;}
  body.pg-esercenti-index #empTable tbody tr,
  body.pg-esercenti-index table.dataTable tbody tr{display:block!important;width:100%!important;max-width:100%!important;background:#fffdf7!important;border:1px solid rgba(184,122,18,.26)!important;border-radius:22px!important;box-shadow:0 14px 30px rgba(31,22,13,.10)!important;overflow:hidden!important;margin:0!important;color:#171007!important;}
  body.pg-esercenti-index #empTable tbody tr:before,
  body.pg-esercenti-index table.dataTable tbody tr:before{content:'Esercente Animal King';display:block!important;background:linear-gradient(135deg,#1c1407,#070604)!important;color:#ffe69a!important;font-weight:950!important;padding:12px 14px!important;font-size:14px!important;letter-spacing:.02em!important;}
  body.pg-esercenti-index #empTable tbody td,
  body.pg-esercenti-index table.dataTable tbody td{display:grid!important;grid-template-columns:minmax(92px,40%) minmax(0,60%)!important;align-items:center!important;gap:8px!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:10px 14px!important;margin:0!important;border:0!important;border-bottom:1px solid rgba(31,22,13,.09)!important;background:#fffdf7!important;color:#171007!important;text-align:right!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important;line-height:1.25!important;}
  body.pg-esercenti-index #empTable tbody td:before,
  body.pg-esercenti-index table.dataTable tbody td:before{content:attr(data-label)!important;text-align:left!important;color:#7a5613!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:11px!important;}
  body.pg-esercenti-index #empTable tbody td:first-child,
  body.pg-esercenti-index table.dataTable tbody td:first-child{text-align:right!important;}
  body.pg-esercenti-index #empTable tbody td:last-child,
  body.pg-esercenti-index table.dataTable tbody td:last-child{display:grid!important;grid-template-columns:1fr!important;text-align:center!important;border-bottom:0!important;gap:8px!important;}
  body.pg-esercenti-index #empTable tbody td:last-child:before,
  body.pg-esercenti-index table.dataTable tbody td:last-child:before{content:'Azioni'!important;margin-bottom:2px!important;}
  body.pg-esercenti-index #empTable img,
  body.pg-esercenti-index table.dataTable img{max-width:64px!important;height:auto!important;border-radius:14px!important;justify-self:end!important;}
  body.pg-esercenti-index #empTable .btn,
  body.pg-esercenti-index table.dataTable .btn,
  body.pg-esercenti-index #empTable button,
  body.pg-esercenti-index table.dataTable button{width:100%!important;min-height:42px!important;margin:0 0 6px!important;border-radius:14px!important;white-space:normal!important;}
  body.pg-esercenti-index .dt-info,
  body.pg-esercenti-index .dataTables_info,
  body.pg-esercenti-index .dt-paging,
  body.pg-esercenti-index .dataTables_paginate{text-align:center!important;justify-content:center!important;color:#171007!important;}
}


/* Animal King - responsive & performance polish 20260706 */
:root{--ak-mobile-pad:.85rem;--ak-table-min:980px;--ak-ultra-max:1920px;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{overflow-x:hidden;}
img,svg,video,canvas{max-width:100%;height:auto;}
.ak-page-shell,.ak-admin-page main,.ak-admin-page .container-fluid,main.container-fluid{width:100%;}
.table-responsive{width:100%;max-width:100%;-webkit-overflow-scrolling:touch;}
.table-responsive>.table{margin-bottom:0;}
@media (min-width:1200px){
  .ak-page-shell,.ak-wide,.ak-admin-page main.container-fluid,main.container-fluid{padding-left:32px!important;padding-right:32px!important;}
  .ak-panel,.ak-card,.card{max-width:none;}
  .table{width:100%!important;}
}
@media (min-width:1921px){
  .ak-page-shell,.ak-admin-page main.container-fluid,main.container-fluid{max-width:var(--ak-ultra-max);margin-left:auto!important;margin-right:auto!important;}
}
@media (min-width:769px) and (max-width:1199px){
  .ak-page-shell,.ak-admin-page main.container-fluid,main.container-fluid{padding-left:20px!important;padding-right:20px!important;}
  .table{font-size:.94rem;}
}
@media (max-width:768px){
  body{font-size:15px;}
  .ak-page-shell,.ak-admin-page main.container-fluid,main.container-fluid,.container-fluid{padding-left:var(--ak-mobile-pad)!important;padding-right:var(--ak-mobile-pad)!important;}
  .ak-admin-head,.ak-page-head,.d-flex.justify-content-between{gap:.75rem;flex-wrap:wrap;}
  .ak-admin-actions,.ak-page-actions,.d-flex.gap-2{width:100%;}
  .ak-admin-actions .btn,.ak-page-actions .btn,.d-flex.gap-2>.btn,.d-flex.gap-2>a.btn{min-height:44px;}
  .ak-panel,.ak-card,.card{border-radius:18px!important;}
  .ak-panel,.ak-card .card-body,.card .card-body{padding:1rem!important;}
  .table-responsive{border-radius:16px;overflow:auto;}
  .table{font-size:.9rem;}
  input,select,textarea{font-size:16px!important;}
  .btn{white-space:normal;}
}
@media (max-width:430px){
  body{font-size:14px;}
  h1,.h1{font-size:1.45rem!important;}
  h2,.h2{font-size:1.25rem!important;}
  .btn{width:100%;justify-content:center;}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important;}
}
/* Lazy rendering for heavy panels where supported */
.ak-panel,.ak-card,.card,.table-responsive{content-visibility:auto;contain-intrinsic-size:1px 420px;}

/* AK FIX 2026-07-08: admin tessere desktop scroll/paginazione */
@media (min-width: 768px){
  body.pg-menu .ak-main{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;}
  body.pg-menu .ak-iframe-card{flex:1 1 auto!important;min-height:0!important;height:auto!important;overflow:hidden!important;padding:12px!important;}
  body.pg-menu .ak-iframe-card iframe{height:100%!important;min-height:0!important;overflow:auto!important;}
}


/* ChatGPT modal close fix */
.modal-header .btn-close,
.btn-close{
    width:42px!important;
    height:42px!important;
    border-radius:50%!important;
    background-color:rgba(255,255,255,.35)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    filter:invert(1) brightness(0)!important;
    border:1px solid rgba(0,0,0,.12)!important;
    box-shadow:0 4px 14px rgba(0,0,0,.18), inset 0 1px 1px rgba(255,255,255,.5)!important;
    opacity:1!important;
}
.modal-header .btn-close:hover,
.btn-close:hover{
    background-color:rgba(255,255,255,.55)!important;
    transform:scale(1.05);
}
.modal-header .close,
.close{
    width:42px!important;
    height:42px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.35)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    color:#111!important;
    font-size:28px!important;
    font-weight:700!important;
    text-shadow:none!important;
    opacity:1!important;
    border:1px solid rgba(0,0,0,.12)!important;
    display:flex!important;
    align-items:center;
    justify-content:center;
}


/* Improved menu subtitle contrast */
.menu-card .subtitle,
.menu-card small,
.menu-card p,
.menu-text p,
.card-subtitle{
  color:#5b5345 !important;
  opacity:1 !important;
  font-weight:500;
}
