/* =========================================================
   SAFE CITY - Portale Sanzioni Amministrative
   CSS consolidato
   Layout comune: Views/Shared/_Layout.cshtml
   ========================================================= */

/* ---------- Variabili e base ---------- */
:root {
    --sc-navy: #082f57;
    --sc-blue: #0864d9;
    --sc-green: #11a564;
    --sc-text: #0a2d54;
    --sc-muted: #60758b;
    --sc-bg: #f2f7fc;
    --sc-line: #dce7f1;
}

* {
    box-sizing: border-box;
}

html {
    height: 100%;
    min-height: 100%;
    margin: 0;
}

body {
    min-height: 100vh;
    margin: 0;
    display: flex;
    flex-direction: column;
    font-family: Arial, Helvetica, sans-serif;
    background: var(--sc-bg);
    color: var(--sc-text);
}

/* ---------- Layout comune ---------- */
.sc-header {
    min-height: 68px;
    padding: 8px 28px;
    background: #fff;
    border-bottom: 1px solid #edf2f7;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    flex-wrap: wrap;
}

.sc-brand {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 340px;
    flex: 1 1 430px;
}

.sc-brand-logo {
    width: 118px;
    height: auto;
    display: block;
}

.sc-sep {
    width: 1px;
    height: 38px;
    background: #d4dde7;
    flex: 0 0 auto;
}

.sc-title-small {
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
}

.sc-title-big {
    margin-top: 4px;
    font-size: 17px;
    font-weight: 900;
    line-height: 1.05;
}

.sc-title-sub {
    margin-top: 5px;
    font-size: 10px;
    color: #597089;
}

.sc-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    min-width: 0;
    flex: 0 1 auto;
    flex-wrap: wrap;
}

.sc-header-action {
    min-height: 44px;
    padding: 5px 10px 5px 7px;
    border: 1px solid #dfe8f1;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 3px 10px rgba(28, 67, 101, .04);
    color: #0a3159;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 10px;
    font-weight: 900;
    line-height: 1.15;
    white-space: normal;
    transition: .15s ease;
}

.sc-header-action:hover {
    color: #0a3159;
    border-color: #bfd3e6;
    box-shadow: 0 5px 14px rgba(28, 67, 101, .08);
}

.sc-action-round {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
}

.sc-header-action.access .sc-action-round {
    background: #edf5ff;
    color: #0962cc;
}

.sc-header-action.pay .sc-action-round {
    background: #e9f8f0;
    color: #159d63;
}

.sc-action-round .sc-login-key {
    font-size: 17px;
    line-height: 1;
}

.sc-action-round svg {
    width: 23px;
    height: 23px;
}

.sc-action-text {
    display: block;
    max-width: 165px;
}

.sc-secure {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 10px;
    white-space: nowrap;
}

.sc-secure b {
    display: block;
    font-size: 12px;
}

.sc-secure span {
    color: #65798f;
}

.sc-header-menu {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sc-menu-btn {
    width: 38px;
    height: 38px;
    border: 1px solid #dbe6ef;
    border-radius: 50%;
    background: #fff;
    color: var(--sc-navy);
    display: grid;
    place-items: center;
    cursor: pointer;
}

.sc-menu-btn:hover {
    background: #f5f9fd;
}

.dropdown-menu.sc-dropdown {
    border: 1px solid #e2ebf3;
    border-radius: 12px;
    box-shadow: 0 12px 30px rgba(24, 57, 90, .12);
}

.sc-main {
    flex: 1 0 auto;
    width: 100%;
    padding: 26px 46px 30px;
    background:
        radial-gradient(circle at 20% 8%, rgba(37, 157, 222, .06), transparent 24%),
        linear-gradient(110deg, #f9fcff 0%, #f2f8fd 55%, #eef6fc 100%);
}

.sc-footer {
    min-height: 54px;
    padding: 6px 26px;
    background: #062f56;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 15px;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
}

.sc-footer::after {
    content: "";
    position: absolute;
    right: -20px;
    bottom: -32px;
    width: 430px;
    height: 110px;
    background-image: radial-gradient(rgba(22, 132, 205, .5) 1.2px, transparent 1.2px);
    background-size: 9px 9px;
    transform: skewX(-18deg);
}

.sc-footer img {
    width: 108px;
    position: relative;
    z-index: 1;
}

.sc-footer-sep {
    width: 1px;
    height: 28px;
    background: rgba(255, 255, 255, .22);
    position: relative;
    z-index: 1;
}

.sc-footer-text,
.sc-footer-copy {
    font-size: 9px;
    line-height: 1.3;
    position: relative;
    z-index: 1;
}

/* ---------- Login / Accesso ---------- */
.sc-login-page {
    width: 100%;
}

.sc-login-intro {
    max-width: 920px;
    margin: 8px auto 28px;
    text-align: center;
}

.sc-login-intro h1 {
    margin: 0;
    font-size: 38px;
    line-height: 1.05;
    font-weight: 900;
    color: var(--sc-navy);
    letter-spacing: -.7px;
}

.sc-login-accent {
    width: 88px;
    height: 5px;
    margin: 14px auto 16px;
    border-radius: 5px;
    background: linear-gradient(90deg, var(--sc-green) 0 49%, var(--sc-blue) 49% 100%);
}

.sc-login-intro > p {
    max-width: 760px;
    margin: 0 auto;
    color: #597087;
    font-size: 15px;
    line-height: 1.5;
}

.sc-login-benefits {
    margin-top: 18px;
    display: flex;
    justify-content: center;
    gap: 28px;
    flex-wrap: wrap;
}

.sc-login-benefit {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #39566f;
    font-size: 12px;
    font-weight: 700;
}

.sc-login-dot {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #e9f3ff;
    color: var(--sc-blue);
    display: grid;
    place-items: center;
    font-weight: 900;
}

.sc-login-benefit:nth-child(2) .sc-login-dot {
    background: #e9f8f0;
    color: var(--sc-green);
}

.sc-login-panels {
    max-width: 1120px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    align-items: stretch;
}

.sc-login-panel {
    padding: 25px 26px 23px;
    background: #fff;
    border: 1px solid #e2ebf3;
    border-radius: 17px;
    box-shadow: 0 12px 30px rgba(28, 68, 102, .10);
}

.sc-login-panel-head {
    margin-bottom: 18px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.sc-login-panel-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #eaf4ff;
    color: #0962cc;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
}

.sc-login-pay .sc-login-panel-icon {
    background: #e9f8f0;
    color: #159d63;
}

.sc-login-panel-title {
    margin: 0;
    color: #092f56;
    font-size: 21px;
    font-weight: 900;
}

.sc-login-panel-sub {
    margin-top: 4px;
    color: #708297;
    font-size: 12px;
    line-height: 1.4;
}

.sc-login-access-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.sc-login-access-card {
    min-height: 225px;
    padding: 17px 15px;
    border: 1px solid #dfe8f1;
    border-radius: 12px;
    background: #fff;
    display: flex;
    flex-direction: column;
}

.sc-login-access-card h3 {
    margin: 7px 0 5px;
    text-align: center;
    font-size: 15px;
}

.sc-login-access-card p {
    min-height: 31px;
    margin: 0 0 12px;
    text-align: center;
    color: #708297;
    font-size: 10px;
    line-height: 1.4;
}

.sc-login-option-icon {
    width: 46px;
    height: 38px;
    margin: 0 auto;
    border-radius: 50%;
    background: #eef5ff;
    color: #0962cc;
    display: grid;
    place-items: center;
}

.sc-login-option-icon img {
    max-width: 32px;
    max-height: 32px;
}

.sc-login-field {
    width: 100%;
    height: 41px;
    padding: 0 11px;
    border: 1px solid #ccd9e5;
    border-radius: 7px;
    background: #fff;
    color: #153956;
    font-size: 12px;
    outline: none;
}

.sc-login-field:focus {
    border-color: #0866d6;
    box-shadow: 0 0 0 3px rgba(8, 102, 214, .08);
}

.sc-login-btn {
    width: 100%;
    height: 41px;
    margin-top: 8px;
    border: 0;
    border-radius: 7px;
    color: #fff;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .1px;
    cursor: pointer;
}

.sc-login-btn.blue {
    background: #0a62c9;
}

.sc-login-btn.green {
    background: #16a163;
}

.sc-login-access-card .sc-login-btn.green {
    margin-top: auto;
}

.sc-login-pay-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 14px;
}

.sc-login-form-group label {
    display: block;
    margin: 0 0 5px;
    color: #4e687f;
    font-size: 10px;
    font-weight: 800;
}

.sc-login-form-group.full {
    grid-column: 1 / -1;
}

.sc-login-pay > .sc-login-btn {
    height: 44px;
    margin-top: 15px;
    font-size: 12px;
}

.sc-login-validation {
    display: block;
    margin: 4px 0;
    color: #c93434;
    font-size: 10px;
    line-height: 1.3;
}

/* ---------- Dettaglio verbale ---------- */
.sc-page-title {
    margin: 0 0 10px;
    color: var(--sc-navy);
    font-size: 38px;
    line-height: 1;
    font-weight: 900;
}

.sc-accent {
    width: 64px;
    height: 4px;
    margin-bottom: 22px;
    border-radius: 3px;
    background: linear-gradient(90deg, var(--sc-green) 0 50%, var(--sc-blue) 50%);
}

.sc-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(420px, 1.02fr);
    gap: 22px;
    align-items: start;
}

.sc-stack {
    min-width: 0;
    display: grid;
    gap: 16px;
}

.sc-card {
    background: #fff;
    border: 1px solid #e4edf5;
    border-radius: 14px;
    box-shadow: 0 8px 22px rgba(20, 54, 90, .06);
    overflow: hidden;
}

.sc-card-pad {
    padding: 20px 22px;
}

.sc-card-title {
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 11px;
    color: var(--sc-navy);
    font-size: 16px;
    font-weight: 900;
}

.sc-round-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #e9f3ff;
    color: var(--sc-blue);
    display: grid;
    place-items: center;
    flex: 0 0 auto;
}

.sc-round-icon.green {
    background: #e8f8f0;
    color: #12965e;
}

.sc-command-card {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.sc-command-item {
    min-width: 0;
    padding: 18px 22px;
    display: flex;
    align-items: center;
    gap: 13px;
}

.sc-command-item:first-child {
    border-right: 1px solid #e5edf5;
}

.sc-label {
    color: #667b91;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .2px;
}

.sc-value {
    margin-top: 4px;
    color: #0b2d54;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.sc-data-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px 24px;
}

.sc-data-item {
    min-width: 0;
    color: #64798f;
    font-size: 12px;
}

.sc-data-item strong {
    display: block;
    margin-top: 4px;
    color: #0b2d54;
    font-size: 15px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.sc-data-item-spaced {
    margin-bottom: 16px;
}

.sc-person,
.sc-article {
    padding: 14px 0;
    border-top: 1px solid #edf2f6;
}

.sc-person:first-of-type,
.sc-article:first-of-type {
    padding-top: 0;
    border-top: 0;
}

.sc-person-title {
    margin-bottom: 10px;
    color: var(--sc-blue);
    font-size: 12px;
    font-weight: 800;
}

.sc-article-head {
    color: var(--sc-navy);
    font-size: 15px;
    font-weight: 900;
}

.sc-article-desc {
    margin-top: 5px;
    color: #284760;
    font-size: 14px;
    line-height: 1.45;
}

.sc-points {
    margin-top: 6px;
    color: #64798f;
    font-size: 12px;
}

.sc-service-box {
    margin-top: 16px;
    padding: 14px 16px;
    border: 1px solid #e0ebf4;
    border-radius: 10px;
    background: #f4f9fd;
}

.sc-service-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
}

.sc-empty {
    padding: 24px;
    color: #778b9e;
    font-size: 14px;
    text-align: center;
}

/* ---------- Generazione avviso PagoPA ---------- */
.sc-pay-page {
    max-width: 900px;
    margin: 0 auto;
}

.sc-pay-intro {
    max-width: 840px;
    margin: 2px auto 28px;
    text-align: center;
}

.sc-pay-intro h1 {
    margin: 0;
    color: var(--sc-navy);
    font-size: 36px;
    line-height: 1.08;
    font-weight: 900;
    letter-spacing: -.6px;
}

.sc-pay-accent {
    width: 88px;
    height: 5px;
    margin: 14px auto 16px;
    border-radius: 5px;
    background: linear-gradient(90deg, #13a464 0 49%, #0967d8 49% 100%);
}

.sc-pay-intro p {
    max-width: 690px;
    margin: 0 auto;
    color: #5d7388;
    font-size: 14px;
    line-height: 1.5;
}

.sc-pay-card {
    padding: 28px 30px 26px;
    background: #fff;
    border: 1px solid #e2ebf3;
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(28, 68, 102, .10);
}

.sc-pay-head {
    margin-bottom: 24px;
    display: flex;
    align-items: center;
    gap: 13px;
}

.sc-pay-icon {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #e9f8f0;
    color: #159d63;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
}

.sc-pay-icon svg {
    width: 29px;
    height: 29px;
}

.sc-pay-head h2 {
    margin: 0;
    color: #092f56;
    font-size: 22px;
    font-weight: 900;
}

.sc-pay-subtitle {
    margin-top: 4px;
    color: #718396;
    font-size: 12px;
}

.sc-pay-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.sc-pay-group.full {
    grid-column: 1 / -1;
}

.sc-pay-label {
    display: block;
    margin-bottom: 6px;
    color: #4d677f;
    font-size: 12px;
    font-weight: 800;
}

.sc-pay-field {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border: 1px solid #ccd9e5;
    border-radius: 8px;
    background: #fff;
    color: #153956;
    font-size: 12px;
    outline: none;
}

.sc-pay-field:focus {
    border-color: #0866d6;
    box-shadow: 0 0 0 3px rgba(8, 102, 214, .08);
}

.sc-pay-validation {
    display: block;
    margin-top: 5px;
    color: #c73838;
    font-size: 10px;
}

.sc-pay-help {
    margin-top: 18px;
    padding: 12px 13px;
    border-radius: 10px;
    background: #f4f8fc;
    color: #5b7085;
    display: flex;
    align-items: flex-start;
    gap: 9px;
    font-size: 10px;
    line-height: 1.45;
}

.sc-pay-help svg {
    width: 17px;
    height: 17px;
    margin-top: 1px;
    flex: 0 0 auto;
}

.sc-pay-submit {
    width: 100%;
    height: 38px;
    margin-top: 18px;
    border: 0;
    border-radius: 8px;
    background: #16a163;
    color: #fff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .15px;
    cursor: pointer;
}

.sc-pay-submit:hover {
    background: #118653;
}

.sc-pay-message {
    margin-bottom: 18px;
    padding: 12px 14px;
    border: 1px solid #f0d39f;
    border-radius: 10px;
    background: #fff4e5;
    color: #7a5316;
    font-size: 12px;
}

/* ---------- Fotogrammi / media ---------- */
.sc-media-card {
    padding: 18px;
    background: #fff;
    border: 1px solid #e4edf5;
    border-radius: 14px;
    box-shadow: 0 8px 22px rgba(20, 54, 90, .06);
    overflow: hidden;
}

.sc-media-title {
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--sc-navy);
    font-size: 18px;
    font-weight: 900;
}

.sc-media-icon {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #e9f3ff;
    color: var(--sc-blue);
    display: grid;
    place-items: center;
}

.sc-media-stage {
    min-height: 430px;
    border: 1px solid #d9e5ef;
    border-radius: 10px;
    background: #eaf1f7;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sc-media-stage #boxImage,
.sc-media-stage #boxVideo {
    width: 100%;
}

.sc-media-stage #boxImage > div {
    background: transparent !important;
}

.sc-media-stage #image {
    max-width: 100%;
    max-height: 620px;
    margin: 0 auto;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    display: block;
}

.sc-media-stage video {
    width: 100%;
    max-height: 620px;
    background: #000;
}

.sc-tools {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
}

.sc-tools li {
    margin: 0 !important;
}

.sc-tool {
    min-height: 54px;
    border: 1px solid #d5e2ee;
    border-radius: 9px;
    background: #fff;
    color: #244663 !important;
    text-decoration: none !important;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    font-size: 10px;
    font-weight: 700;
    cursor: pointer;
}

.sc-tool i {
    color: var(--sc-blue);
    font-size: 18px;
}

.sc-tool:hover {
    border-color: #abc7e4;
    background: #f3f8fd;
    color: #244663 !important;
}

.sc-thumbs-wrap {
    margin-top: 14px;
}

.sc-thumbnails {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sc-thumbnails li {
    width: 72px;
    height: 56px;
    border: 2px solid var(--sc-line);
    border-radius: 8px;
    background: #f5f8fb;
    overflow: hidden;
    display: grid;
    place-items: center;
    cursor: pointer;
}

.sc-thumbnails img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    cursor: pointer;
}

.sc-thumbnails i {
    color: var(--sc-blue);
    font-size: 24px;
}

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
    .sc-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1050px) {
    .sc-header {
        align-items: flex-start;
        padding: 8px 18px;
    }

    .sc-brand {
        min-width: 0;
        flex-basis: 100%;
    }

    .sc-actions {
        width: 100%;
        justify-content: flex-start;
    }

    .sc-secure {
        margin-left: auto;
    }

    .sc-main {
        padding: 22px;
    }
}

@media (max-width: 900px) {
    .sc-login-panels {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .sc-header {
        padding: 8px 14px;
    }

    .sc-brand {
        gap: 10px;
    }

    .sc-brand-logo {
        width: 98px;
    }

    .sc-sep {
        height: 28px;
    }

    .sc-title-small {
        font-size: 10px;
    }

    .sc-title-big {
        font-size: 14px;
    }

    .sc-title-sub,
    .sc-secure {
        display: none;
    }

    .sc-actions {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    .sc-header-action {
        width: 100%;
        padding: 7px 9px;
        font-size: 10px;
    }

    .sc-action-text {
        max-width: none;
    }

    .sc-header-menu {
        grid-column: 1 / -1;
        justify-content: flex-end;
    }

    .sc-main {
        padding: 26px 16px;
    }

    .sc-footer {
        min-height: 50px;
        padding: 6px 14px;
        gap: 10px;
        flex-wrap: wrap;
    }

    .sc-footer img {
        width: 96px;
    }

    .sc-footer-sep {
        display: none;
    }

    .sc-login-intro h1,
    .sc-page-title,
    .sc-pay-intro h1 {
        font-size: 30px;
    }

    .sc-login-access-grid,
    .sc-login-pay-grid,
    .sc-data-grid,
    .sc-service-grid,
    .sc-command-card,
    .sc-pay-grid {
        grid-template-columns: 1fr;
    }

    .sc-login-form-group.full,
    .sc-pay-group.full {
        grid-column: auto;
    }

    .sc-command-item:first-child {
        border-right: 0;
        border-bottom: 1px solid #e5edf5;
    }

    .sc-pay-card {
        padding: 22px 18px;
    }

    .sc-tools {
        grid-template-columns: repeat(2, 1fr);
    }

    .sc-media-stage {
        min-height: 290px;
    }
}

/* =========================================================
   SAFE CITY - INTERFACCE APPROVATE CONSOLIDATE
   Regole isolate per pagina tramite classe sul <body>.
   ========================================================= */


/* ===== 01_Accesso.html ===== */

body.sc-approved-accesso{
  --navy:#082f57;
  --blue:#0967d8;
  --green:#13a464;
  --text:#0a2f56;
  --muted:#62778c;
  --bg:#f3f8fc;
  --line:#dce7f1;
}
body.sc-approved-accesso, body.sc-approved-accesso *{box-sizing:border-box}
body.sc-approved-accesso{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#fff;color:var(--text)}

body.sc-approved-accesso{min-height:100vh;display:flex;flex-direction:column}
body.sc-approved-accesso main{flex:1 0 auto}
body.sc-approved-accesso footer{flex-shrink:0}

body.sc-approved-accesso header{
  min-height:82px;
  padding:10px 34px;
  background:#fff;
  border-bottom:1px solid #edf2f7;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
body.sc-approved-accesso .brand{display:flex;align-items:center;gap:16px;min-width:0}
body.sc-approved-accesso .brand img{width:138px;height:auto;display:block}
body.sc-approved-accesso .brand-sep{width:1px;height:46px;background:#d5dee7}
body.sc-approved-accesso .brand-title-small{font-size:13px;font-weight:800;line-height:1}
body.sc-approved-accesso .brand-title-big{font-size:20px;font-weight:900;line-height:1.05;margin-top:4px;letter-spacing:-.25px}
body.sc-approved-accesso .brand-sub{font-size:11px;color:#687c90;margin-top:5px}
body.sc-approved-accesso .secure{display:flex;align-items:center;gap:9px;white-space:nowrap}
body.sc-approved-accesso .secure strong{display:block;font-size:13px}
body.sc-approved-accesso .secure span{display:block;font-size:11px;color:#718396;margin-top:2px}

body.sc-approved-accesso main{
  
  padding:34px 42px 40px;
  background:
    radial-gradient(circle at 20% 8%, rgba(37,157,222,.06), transparent 24%),
    linear-gradient(110deg,#f9fcff 0%,#f2f8fd 55%,#eef6fc 100%);
}
body.sc-approved-accesso .intro{
  max-width:920px;
  margin:0 auto 28px;
  text-align:center;
}
body.sc-approved-accesso .intro h1{
  margin:0;
  font-size:38px;
  line-height:1.05;
  font-weight:900;
  color:#082f57;
  letter-spacing:-.7px;
}
body.sc-approved-accesso .accent{
  width:88px;height:5px;border-radius:5px;margin:14px auto 16px;
  background:linear-gradient(90deg,var(--green) 0 49%,var(--blue) 49% 100%);
}
body.sc-approved-accesso .intro p{
  margin:0 auto;
  max-width:760px;
  color:#597087;
  font-size:15px;
  line-height:1.5;
}
body.sc-approved-accesso .benefits{
  display:flex;
  justify-content:center;
  gap:28px;
  flex-wrap:wrap;
  margin-top:18px;
}
body.sc-approved-accesso .benefit{
  display:flex;align-items:center;gap:8px;color:#39566f;font-size:12px;font-weight:700;
}
body.sc-approved-accesso .dot{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:#e9f3ff;color:var(--blue);font-weight:900;
}
body.sc-approved-accesso .benefit:nth-child(2) .dot{background:#e9f8f0;color:var(--green)}

body.sc-approved-accesso .panels{
  max-width:1120px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:stretch;
}
body.sc-approved-accesso .panel{
  background:#fff;
  border:1px solid #e2ebf3;
  border-radius:17px;
  box-shadow:0 12px 30px rgba(28,68,102,.10);
  padding:25px 26px 23px;
}
body.sc-approved-accesso .panel-head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}
body.sc-approved-accesso .panel-icon{
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  background:#eaf4ff;color:#0962cc;flex:0 0 auto;
}
body.sc-approved-accesso .panel.pay .panel-icon{background:#e9f8f0;color:#159d63}
body.sc-approved-accesso .panel-title{font-size:21px;font-weight:900;margin:0;color:#092f56}
body.sc-approved-accesso .panel-sub{font-size:12px;color:#708297;margin-top:4px;line-height:1.4}

body.sc-approved-accesso .access-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
body.sc-approved-accesso .access-card{
  border:1px solid #dfe8f1;border-radius:12px;padding:17px 15px;
  display:flex;flex-direction:column;min-height:225px;background:#fff;
}
body.sc-approved-accesso .access-card h3{margin:7px 0 5px;text-align:center;font-size:15px}
body.sc-approved-accesso .access-card p{margin:0 0 12px;text-align:center;color:#708297;font-size:11px;line-height:1.4;min-height:31px}
body.sc-approved-accesso .option-icon{
  width:46px;height:46px;border-radius:50%;background:#eef5ff;display:grid;place-items:center;margin:0 auto;color:#0962cc;
}
body.sc-approved-accesso .option-icon img{max-width:37px;max-height:37px}
body.sc-approved-accesso .field{
  width:100%;height:41px;border:1px solid #ccd9e5;border-radius:7px;
  padding:0 11px;font-size:12px;color:#153956;outline:none;background:#fff;
}
body.sc-approved-accesso .field:focus{border-color:#0866d6;box-shadow:0 0 0 3px rgba(8,102,214,.08)}
body.sc-approved-accesso .btn{
  width:100%;height:41px;border:0;border-radius:7px;color:#fff;
  font-size:11px;font-weight:900;letter-spacing:.1px;cursor:pointer;margin-top:8px;
}
body.sc-approved-accesso .btn.blue{background:#0a62c9}
body.sc-approved-accesso .btn.green{background:#16a163}
body.sc-approved-accesso .access-card .btn.green{margin-top:auto}

body.sc-approved-accesso .pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
body.sc-approved-accesso .form-group label{
  display:block;margin:0 0 5px;color:#4e687f;font-size:11px;font-weight:800;
}
body.sc-approved-accesso .form-group.full{grid-column:1/-1}
body.sc-approved-accesso .pay-note{
  margin:16px 0 2px;padding:11px 12px;border-radius:9px;background:#f3f8fd;
  color:#536e85;font-size:11px;line-height:1.45;
}
body.sc-approved-accesso .pay .btn{margin-top:15px;height:44px;font-size:12px}

body.sc-approved-accesso footer{
  min-height:94px;background:#062f56;color:#fff;display:flex;align-items:center;
  gap:22px;padding:16px 40px;position:relative;overflow:hidden;
}
body.sc-approved-accesso footer:after{
  content:"";position:absolute;right:-20px;bottom:-32px;width:430px;height:110px;
  background-image:radial-gradient(rgba(37,142,206,.46) 1.2px,transparent 1.2px);
  background-size:9px 9px;transform:skewX(-17deg)
}
body.sc-approved-accesso footer img{width:154px;position:relative;z-index:1}
body.sc-approved-accesso .footer-sep{width:1px;height:43px;background:rgba(255,255,255,.22);position:relative;z-index:1}
body.sc-approved-accesso .footer-text, body.sc-approved-accesso .footer-copy{font-size:11px;color:#dce7f0;position:relative;z-index:1;line-height:1.45}

@media (max-width:900px){
  body.sc-approved-accesso .panels{grid-template-columns:1fr}
}
@media (max-width:640px){
  body.sc-approved-accesso header{padding:10px 16px}
  body.sc-approved-accesso .brand img{width:104px}
  body.sc-approved-accesso .brand-sep{height:38px}
  body.sc-approved-accesso .brand-title-small{font-size:10px}
  body.sc-approved-accesso .brand-title-big{font-size:14px}
  body.sc-approved-accesso .brand-sub, body.sc-approved-accesso .secure{display:none}
  body.sc-approved-accesso main{padding:26px 16px}
  body.sc-approved-accesso .intro h1{font-size:30px}
  body.sc-approved-accesso .access-grid, body.sc-approved-accesso .pay-grid{grid-template-columns:1fr}
  body.sc-approved-accesso .form-group.full{grid-column:auto}
  body.sc-approved-accesso footer{padding:18px;flex-wrap:wrap}
  body.sc-approved-accesso .footer-sep{display:none}
}

body.sc-approved-accesso .access-common-code{max-width:520px;margin:0 auto 18px;text-align:center;background:#fff;border:1px solid #e3ebf3;border-radius:12px;padding:16px 18px;box-sizing:border-box}
body.sc-approved-accesso .access-common-code h3{margin:0 0 6px;color:#0b3156;font-size:15px}
body.sc-approved-accesso .access-common-code p{margin:0 0 10px;color:#6c7f91;font-size:11px;line-height:1.45}
body.sc-approved-accesso .access-common-code .field, body.sc-approved-accesso .access-common-code .sc-login-field{width:100%;max-width:420px;margin:0 auto;display:block}

body.sc-approved-accesso .access-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
@media (max-width:760px){body.sc-approved-accesso .access-grid{grid-template-columns:1fr!important}}

/* SAFE CITY - header actions */
body.sc-approved-accesso .actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex-wrap:wrap}
body.sc-approved-accesso .header-action{
  min-height:52px;padding:7px 13px 7px 9px;border-radius:10px;text-decoration:none;
  display:flex;align-items:center;gap:9px;font-size:11px;font-weight:900;line-height:1.15;
  border:1px solid #dfe8f1;background:#fff;color:#0a3159;box-shadow:0 3px 10px rgba(28,67,101,.04)
}
body.sc-approved-accesso .round-icon{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}
body.sc-approved-accesso .header-action.access .round-icon{background:#edf5ff;color:#0962cc}
body.sc-approved-accesso .header-action.pay .round-icon{background:#e9f8f0;color:#159d63}
body.sc-approved-accesso .header-action svg{width:27px;height:27px}
body.sc-approved-accesso .login-key{font-size:20px;line-height:1}
body.sc-approved-accesso .action-text{display:block;max-width:165px}
body.sc-approved-accesso .secure{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:11px}
body.sc-approved-accesso .secure b{display:block;font-size:13px}
body.sc-approved-accesso .secure span{display:block;color:#65798f;margin-top:2px}
@media (max-width:1050px){
  body.sc-approved-accesso header{align-items:flex-start}
  body.sc-approved-accesso .actions{width:100%;justify-content:flex-start}
  body.sc-approved-accesso .secure{margin-left:auto}
}
@media (max-width:680px){
  body.sc-approved-accesso .secure{display:none}
  body.sc-approved-accesso .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  body.sc-approved-accesso .header-action{width:100%;padding:7px 9px;font-size:10px}
  body.sc-approved-accesso .action-text{max-width:none}
}

body.sc-approved-accesso .sc-help{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}
body.sc-approved-accesso .sc-help-i{width:17px;height:17px;border:1px solid #b8cad8;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:#0b5fa5;background:#fff;cursor:help}
body.sc-approved-accesso .sc-help-t{visibility:hidden;opacity:0;position:absolute;z-index:100;left:50%;bottom:25px;transform:translateX(-50%);width:240px;padding:8px 10px;border-radius:7px;background:#0b3156;color:#fff;font-size:11px;font-weight:500;line-height:1.35;box-shadow:0 6px 18px rgba(0,0,0,.15)}
body.sc-approved-accesso .sc-help:hover .sc-help-t, body.sc-approved-accesso .sc-help:focus-within .sc-help-t{visibility:visible;opacity:1}

/* Tipografia originale titolo portale */
body.sc-approved-accesso .sc-portal-title{display:flex;flex-direction:column;justify-content:center}
body.sc-approved-accesso .sc-portal-kicker{
  color:#0b3156;font-size:12px;font-weight:900;line-height:1;
  letter-spacing:.01em;margin:0 0 4px 0;
}
body.sc-approved-accesso .sc-portal-main{
  color:#0b3156;font-size:18px;font-weight:900;line-height:1;
  letter-spacing:.005em;margin:0;
}
body.sc-approved-accesso .sc-portal-sub{
  color:#60758a;font-size:9px;font-weight:400;line-height:1.25;
  margin-top:7px;
}

/* Header responsive: evita sovrapposizioni tra titolo e azioni */
body.sc-approved-accesso header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:nowrap;
}
body.sc-approved-accesso header .brand, body.sc-approved-accesso header .sc-brand, body.sc-approved-accesso header .brand-wrap{
  min-width:0;
  flex:1 1 auto;
}
body.sc-approved-accesso .actions, body.sc-approved-accesso .sc-actions{
  flex:0 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
body.sc-approved-accesso .header-action{
  flex:0 1 auto;
  min-width:0;
}
body.sc-approved-accesso .header-action .action-text{
  white-space:normal;
}

/* Tablet: titolo sopra, azioni sotto */
@media (max-width: 1180px){
  body.sc-approved-accesso header{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  body.sc-approved-accesso header .brand, body.sc-approved-accesso header .sc-brand, body.sc-approved-accesso header .brand-wrap{
    flex:1 1 100%;
    width:100%;
  }
  body.sc-approved-accesso .actions, body.sc-approved-accesso .sc-actions{
    width:100%;
    justify-content:flex-start;
  }
}

/* Smartphone: pulsanti su griglia, niente sovrapposizioni */
@media (max-width: 760px){
  body.sc-approved-accesso .actions, body.sc-approved-accesso .sc-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
  }
  body.sc-approved-accesso .header-action{
    width:100%;
  }
  body.sc-approved-accesso .secure, body.sc-approved-accesso .sc-secure{
    width:100%;
    justify-content:flex-start;
    margin-left:0 !important;
  }
  body.sc-approved-accesso .sc-portal-main{
    font-size:16px;
  }
  body.sc-approved-accesso .sc-portal-sub{
    font-size:9px;
  }
}

/* Tooltip SAFE CITY */
body.sc-approved-accesso .sc-help{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}
body.sc-approved-accesso .sc-help-i{
  width:17px;height:17px;border:1px solid #b8cad8;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:800;color:#0b5fa5;background:#fff;cursor:help
}
body.sc-approved-accesso .sc-help-t{
  visibility:hidden;opacity:0;position:absolute;z-index:200;
  left:50%;bottom:25px;transform:translateX(-50%);
  width:250px;padding:8px 10px;border-radius:7px;background:#0b3156;color:#fff;
  font-size:11px;font-weight:500;line-height:1.35;
  box-shadow:0 6px 18px rgba(0,0,0,.15);transition:opacity .15s ease
}
body.sc-approved-accesso .sc-help:hover .sc-help-t, body.sc-approved-accesso .sc-help:focus-within .sc-help-t{visibility:visible;opacity:1}
@media (max-width:760px){
  body.sc-approved-accesso .sc-help-t{left:0;transform:none;width:min(250px,75vw)}
}


/* ===== 02_Richiesta_Accesso.html ===== */

body.sc-approved-richiesta{
  --navy:#082f57;
  --blue:#0967d8;
  --green:#13a464;
  --text:#0a2f56;
  --muted:#62778c;
  --bg:#f3f8fc;
  --line:#dce7f1;
}
body.sc-approved-richiesta, body.sc-approved-richiesta *{box-sizing:border-box}
body.sc-approved-richiesta{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#fff;color:var(--text)}

body.sc-approved-richiesta{min-height:100vh;display:flex;flex-direction:column}
body.sc-approved-richiesta main{flex:1 0 auto}
body.sc-approved-richiesta footer{flex-shrink:0}

body.sc-approved-richiesta header{
  min-height:82px;
  padding:10px 34px;
  background:#fff;
  border-bottom:1px solid #edf2f7;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
body.sc-approved-richiesta .brand{display:flex;align-items:center;gap:16px;min-width:0}
body.sc-approved-richiesta .brand img{width:138px;height:auto;display:block}
body.sc-approved-richiesta .brand-sep{width:1px;height:46px;background:#d5dee7}
body.sc-approved-richiesta .brand-title-small{font-size:13px;font-weight:800;line-height:1}
body.sc-approved-richiesta .brand-title-big{font-size:20px;font-weight:900;line-height:1.05;margin-top:4px;letter-spacing:-.25px}
body.sc-approved-richiesta .brand-sub{font-size:11px;color:#687c90;margin-top:5px}
body.sc-approved-richiesta .secure{display:flex;align-items:center;gap:9px;white-space:nowrap}
body.sc-approved-richiesta .secure strong{display:block;font-size:13px}
body.sc-approved-richiesta .secure span{display:block;font-size:11px;color:#718396;margin-top:2px}

body.sc-approved-richiesta main{
  
  padding:34px 42px 40px;
  background:
    radial-gradient(circle at 20% 8%, rgba(37,157,222,.06), transparent 24%),
    linear-gradient(110deg,#f9fcff 0%,#f2f8fd 55%,#eef6fc 100%);
}
body.sc-approved-richiesta .intro{
  max-width:920px;
  margin:0 auto 28px;
  text-align:center;
}
body.sc-approved-richiesta .intro h1{
  margin:0;
  font-size:38px;
  line-height:1.05;
  font-weight:900;
  color:#082f57;
  letter-spacing:-.7px;
}
body.sc-approved-richiesta .accent{
  width:88px;height:5px;border-radius:5px;margin:14px auto 16px;
  background:linear-gradient(90deg,var(--green) 0 49%,var(--blue) 49% 100%);
}
body.sc-approved-richiesta .intro p{
  margin:0 auto;
  max-width:760px;
  color:#597087;
  font-size:15px;
  line-height:1.5;
}
body.sc-approved-richiesta .benefits{
  display:flex;
  justify-content:center;
  gap:28px;
  flex-wrap:wrap;
  margin-top:18px;
}
body.sc-approved-richiesta .benefit{
  display:flex;align-items:center;gap:8px;color:#39566f;font-size:12px;font-weight:700;
}
body.sc-approved-richiesta .dot{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:#e9f3ff;color:var(--blue);font-weight:900;
}
body.sc-approved-richiesta .benefit:nth-child(2) .dot{background:#e9f8f0;color:var(--green)}

body.sc-approved-richiesta .panels{
  max-width:1120px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:stretch;
}
body.sc-approved-richiesta .panel{
  background:#fff;
  border:1px solid #e2ebf3;
  border-radius:17px;
  box-shadow:0 12px 30px rgba(28,68,102,.10);
  padding:25px 26px 23px;
}
body.sc-approved-richiesta .panel-head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}
body.sc-approved-richiesta .panel-icon{
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  background:#eaf4ff;color:#0962cc;flex:0 0 auto;
}
body.sc-approved-richiesta .panel.pay .panel-icon{background:#e9f8f0;color:#159d63}
body.sc-approved-richiesta .panel-title{font-size:21px;font-weight:900;margin:0;color:#092f56}
body.sc-approved-richiesta .panel-sub{font-size:12px;color:#708297;margin-top:4px;line-height:1.4}

body.sc-approved-richiesta .access-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
body.sc-approved-richiesta .access-card{
  border:1px solid #dfe8f1;border-radius:12px;padding:17px 15px;
  display:flex;flex-direction:column;min-height:225px;background:#fff;
}
body.sc-approved-richiesta .access-card h3{margin:7px 0 5px;text-align:center;font-size:15px}
body.sc-approved-richiesta .access-card p{margin:0 0 12px;text-align:center;color:#708297;font-size:11px;line-height:1.4;min-height:31px}
body.sc-approved-richiesta .option-icon{
  width:46px;height:46px;border-radius:50%;background:#eef5ff;display:grid;place-items:center;margin:0 auto;color:#0962cc;
}
body.sc-approved-richiesta .option-icon img{max-width:37px;max-height:37px}
body.sc-approved-richiesta .field{
  width:100%;height:41px;border:1px solid #ccd9e5;border-radius:7px;
  padding:0 11px;font-size:12px;color:#153956;outline:none;background:#fff;
}
body.sc-approved-richiesta .field:focus{border-color:#0866d6;box-shadow:0 0 0 3px rgba(8,102,214,.08)}
body.sc-approved-richiesta .btn{
  width:100%;height:41px;border:0;border-radius:7px;color:#fff;
  font-size:11px;font-weight:900;letter-spacing:.1px;cursor:pointer;margin-top:8px;
}
body.sc-approved-richiesta .btn.blue{background:#0a62c9}
body.sc-approved-richiesta .btn.green{background:#16a163}
body.sc-approved-richiesta .access-card .btn.green{margin-top:auto}

body.sc-approved-richiesta .pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
body.sc-approved-richiesta .form-group label{
  display:block;margin:0 0 5px;color:#4e687f;font-size:11px;font-weight:800;
}
body.sc-approved-richiesta .form-group.full{grid-column:1/-1}
body.sc-approved-richiesta .pay-note{
  margin:16px 0 2px;padding:11px 12px;border-radius:9px;background:#f3f8fd;
  color:#536e85;font-size:11px;line-height:1.45;
}
body.sc-approved-richiesta .pay .btn{margin-top:15px;height:44px;font-size:12px}

body.sc-approved-richiesta footer{
  min-height:94px;background:#062f56;color:#fff;display:flex;align-items:center;
  gap:22px;padding:16px 40px;position:relative;overflow:hidden;
}
body.sc-approved-richiesta footer:after{
  content:"";position:absolute;right:-20px;bottom:-32px;width:430px;height:110px;
  background-image:radial-gradient(rgba(37,142,206,.46) 1.2px,transparent 1.2px);
  background-size:9px 9px;transform:skewX(-17deg)
}
body.sc-approved-richiesta footer img{width:154px;position:relative;z-index:1}
body.sc-approved-richiesta .footer-sep{width:1px;height:43px;background:rgba(255,255,255,.22);position:relative;z-index:1}
body.sc-approved-richiesta .footer-text, body.sc-approved-richiesta .footer-copy{font-size:11px;color:#dce7f0;position:relative;z-index:1;line-height:1.45}

@media (max-width:900px){
  body.sc-approved-richiesta .panels{grid-template-columns:1fr}
}
@media (max-width:640px){
  body.sc-approved-richiesta header{padding:10px 16px}
  body.sc-approved-richiesta .brand img{width:104px}
  body.sc-approved-richiesta .brand-sep{height:38px}
  body.sc-approved-richiesta .brand-title-small{font-size:10px}
  body.sc-approved-richiesta .brand-title-big{font-size:14px}
  body.sc-approved-richiesta .brand-sub, body.sc-approved-richiesta .secure{display:none}
  body.sc-approved-richiesta main{padding:26px 16px}
  body.sc-approved-richiesta .intro h1{font-size:30px}
  body.sc-approved-richiesta .access-grid, body.sc-approved-richiesta .pay-grid{grid-template-columns:1fr}
  body.sc-approved-richiesta .form-group.full{grid-column:auto}
  body.sc-approved-richiesta footer{padding:18px;flex-wrap:wrap}
  body.sc-approved-richiesta .footer-sep{display:none}
}


body.sc-approved-richiesta .request-wrap{max-width:1120px;margin:0 auto}
body.sc-approved-richiesta .request-panel{background:#fff;border:1px solid #e2ebf3;border-radius:17px;box-shadow:0 12px 30px rgba(28,68,102,.10);overflow:hidden}
body.sc-approved-richiesta .request-head{padding:23px 26px 18px;border-bottom:1px solid #edf2f7;display:flex;align-items:center;gap:12px}
body.sc-approved-richiesta .request-head .panel-icon{margin:0}
body.sc-approved-richiesta .request-body{padding:24px 26px 26px}
body.sc-approved-richiesta .request-section+.request-section{margin-top:24px;padding-top:22px;border-top:1px solid #e7eef5}
body.sc-approved-richiesta .request-section h3{margin:0 0 14px;font-size:16px;color:#092f56}
body.sc-approved-richiesta .request-section-note{margin:-8px 0 14px;color:#708297;font-size:11px;line-height:1.45}
body.sc-approved-richiesta .request-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px 14px}
body.sc-approved-richiesta .request-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
body.sc-approved-richiesta .request-field label{display:block;margin:0 0 5px;color:#4e687f;font-size:11px;font-weight:800}
body.sc-approved-richiesta .request-field textarea{width:100%;min-height:100px;border:1px solid #ccd9e5;border-radius:7px;padding:10px 11px;font:inherit;font-size:12px;color:#153956;resize:vertical}
body.sc-approved-richiesta .request-field textarea:focus{outline:none;border-color:#0866d6;box-shadow:0 0 0 3px rgba(8,102,214,.08)}
body.sc-approved-richiesta .request-full{grid-column:1/-1}
body.sc-approved-richiesta .request-radio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
body.sc-approved-richiesta .request-radio{display:flex;align-items:flex-start;gap:8px;color:#4e687f;font-size:12px;line-height:1.4}
body.sc-approved-richiesta .request-radio input{margin-top:2px}
body.sc-approved-richiesta .request-readonly{background:#f3f8fd;color:#62778c}
body.sc-approved-richiesta .request-info{margin-top:16px;padding:11px 12px;border-radius:9px;background:#f3f8fd;color:#536e85;font-size:11px;line-height:1.45}
body.sc-approved-richiesta .request-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
body.sc-approved-richiesta .request-actions .btn{width:auto;min-width:180px;padding:0 20px;margin-top:0}
@media (max-width:900px){body.sc-approved-richiesta .request-grid, body.sc-approved-richiesta .request-grid.two{grid-template-columns:1fr 1fr}body.sc-approved-richiesta .request-radio-grid{grid-template-columns:1fr}}
@media (max-width:640px){body.sc-approved-richiesta .request-grid, body.sc-approved-richiesta .request-grid.two{grid-template-columns:1fr}body.sc-approved-richiesta .request-full{grid-column:auto}body.sc-approved-richiesta .request-actions{flex-direction:column}body.sc-approved-richiesta .request-actions .btn{width:100%}}

body.sc-approved-richiesta .request-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px}
body.sc-approved-richiesta .request-check{display:flex;align-items:flex-start;gap:8px;color:#4e687f;font-size:12px;line-height:1.4}
body.sc-approved-richiesta .request-check input{margin-top:2px}
body.sc-approved-richiesta .request-actions{flex-wrap:wrap;align-items:stretch}
body.sc-approved-richiesta .request-actions .btn{white-space:normal;line-height:1.25;min-height:44px}
@media (max-width:900px){body.sc-approved-richiesta .request-check-grid{grid-template-columns:1fr}}

/* SAFE CITY - header actions */
body.sc-approved-richiesta .actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex-wrap:wrap}
body.sc-approved-richiesta .header-action{
  min-height:52px;padding:7px 13px 7px 9px;border-radius:10px;text-decoration:none;
  display:flex;align-items:center;gap:9px;font-size:11px;font-weight:900;line-height:1.15;
  border:1px solid #dfe8f1;background:#fff;color:#0a3159;box-shadow:0 3px 10px rgba(28,67,101,.04)
}
body.sc-approved-richiesta .round-icon{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}
body.sc-approved-richiesta .header-action.access .round-icon{background:#edf5ff;color:#0962cc}
body.sc-approved-richiesta .header-action.pay .round-icon{background:#e9f8f0;color:#159d63}
body.sc-approved-richiesta .header-action svg{width:27px;height:27px}
body.sc-approved-richiesta .login-key{font-size:20px;line-height:1}
body.sc-approved-richiesta .action-text{display:block;max-width:165px}
body.sc-approved-richiesta .secure{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:11px}
body.sc-approved-richiesta .secure b{display:block;font-size:13px}
body.sc-approved-richiesta .secure span{display:block;color:#65798f;margin-top:2px}
@media (max-width:1050px){
  body.sc-approved-richiesta header{align-items:flex-start}
  body.sc-approved-richiesta .actions{width:100%;justify-content:flex-start}
  body.sc-approved-richiesta .secure{margin-left:auto}
}
@media (max-width:680px){
  body.sc-approved-richiesta .secure{display:none}
  body.sc-approved-richiesta .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  body.sc-approved-richiesta .header-action{width:100%;padding:7px 9px;font-size:10px}
  body.sc-approved-richiesta .action-text{max-width:none}
}

/* Header responsive uniforme */
body.sc-approved-richiesta header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:nowrap;
}
body.sc-approved-richiesta header .brand, body.sc-approved-richiesta header .sc-brand, body.sc-approved-richiesta header .brand-wrap{
  min-width:0;
  flex:1 1 auto;
}
body.sc-approved-richiesta .actions, body.sc-approved-richiesta .sc-actions{
  flex:0 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
body.sc-approved-richiesta .header-action{
  flex:0 1 auto;
  min-width:0;
}
body.sc-approved-richiesta .header-action .action-text{
  white-space:normal;
}

/* Tipografia titolo portale */
body.sc-approved-richiesta .sc-portal-title{display:flex;flex-direction:column;justify-content:center}
body.sc-approved-richiesta .sc-portal-kicker{
  color:#0b3156;font-size:12px;font-weight:900;line-height:1;
  letter-spacing:.01em;margin:0 0 4px 0;
}
body.sc-approved-richiesta .sc-portal-main{
  color:#0b3156;font-size:18px;font-weight:900;line-height:1;
  letter-spacing:.005em;margin:0;
}
body.sc-approved-richiesta .sc-portal-sub{
  color:#60758a;font-size:9px;font-weight:400;line-height:1.25;
  margin-top:7px;
}

@media (max-width:1180px){
  body.sc-approved-richiesta header{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  body.sc-approved-richiesta header .brand, body.sc-approved-richiesta header .sc-brand, body.sc-approved-richiesta header .brand-wrap{
    flex:1 1 100%;
    width:100%;
  }
  body.sc-approved-richiesta .actions, body.sc-approved-richiesta .sc-actions{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width:760px){
  body.sc-approved-richiesta .actions, body.sc-approved-richiesta .sc-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
  }
  body.sc-approved-richiesta .header-action{
    width:100%;
  }
  body.sc-approved-richiesta .secure, body.sc-approved-richiesta .sc-secure{
    width:100%;
    justify-content:flex-start;
    margin-left:0 !important;
  }
  body.sc-approved-richiesta .sc-portal-main{font-size:16px}
  body.sc-approved-richiesta .sc-portal-sub{font-size:9px}
}

/* Tooltip SAFE CITY */
body.sc-approved-richiesta .sc-help{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}
body.sc-approved-richiesta .sc-help-i{
  width:17px;height:17px;border:1px solid #b8cad8;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:800;color:#0b5fa5;background:#fff;cursor:help
}
body.sc-approved-richiesta .sc-help-t{
  visibility:hidden;opacity:0;position:absolute;z-index:200;
  left:50%;bottom:25px;transform:translateX(-50%);
  width:250px;padding:8px 10px;border-radius:7px;background:#0b3156;color:#fff;
  font-size:11px;font-weight:500;line-height:1.35;
  box-shadow:0 6px 18px rgba(0,0,0,.15);transition:opacity .15s ease
}
body.sc-approved-richiesta .sc-help:hover .sc-help-t, body.sc-approved-richiesta .sc-help:focus-within .sc-help-t{visibility:visible;opacity:1}
@media (max-width:760px){
  body.sc-approved-richiesta .sc-help-t{left:0;transform:none;width:min(250px,75vw)}
}

/* Sezioni Residenza e Recapiti */
body.sc-approved-richiesta .request-grid .request-full{grid-column:1 / -1}
@media (max-width:760px){body.sc-approved-richiesta .request-grid .request-full{grid-column:auto}}


/* ===== 03_Accesso_Codice_Comando.html ===== */

body.sc-approved-codice{
  --navy:#082f57;
  --blue:#0967d8;
  --green:#13a464;
  --text:#0a2f56;
  --muted:#62778c;
  --bg:#f3f8fc;
  --line:#dce7f1;
}
body.sc-approved-codice, body.sc-approved-codice *{box-sizing:border-box}
body.sc-approved-codice{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#fff;color:var(--text)}

body.sc-approved-codice{min-height:100vh;display:flex;flex-direction:column}
body.sc-approved-codice main{flex:1 0 auto}
body.sc-approved-codice footer{flex-shrink:0}

body.sc-approved-codice header{
  min-height:82px;
  padding:10px 34px;
  background:#fff;
  border-bottom:1px solid #edf2f7;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
}
body.sc-approved-codice .brand{display:flex;align-items:center;gap:16px;min-width:0}
body.sc-approved-codice .brand img{width:138px;height:auto;display:block}
body.sc-approved-codice .brand-sep{width:1px;height:46px;background:#d5dee7}
body.sc-approved-codice .brand-title-small{font-size:13px;font-weight:800;line-height:1}
body.sc-approved-codice .brand-title-big{font-size:20px;font-weight:900;line-height:1.05;margin-top:4px;letter-spacing:-.25px}
body.sc-approved-codice .brand-sub{font-size:11px;color:#687c90;margin-top:5px}
body.sc-approved-codice .secure{display:flex;align-items:center;gap:9px;white-space:nowrap}
body.sc-approved-codice .secure strong{display:block;font-size:13px}
body.sc-approved-codice .secure span{display:block;font-size:11px;color:#718396;margin-top:2px}

body.sc-approved-codice main{
  
  padding:34px 42px 40px;
  background:
    radial-gradient(circle at 20% 8%, rgba(37,157,222,.06), transparent 24%),
    linear-gradient(110deg,#f9fcff 0%,#f2f8fd 55%,#eef6fc 100%);
}
body.sc-approved-codice .intro{
  max-width:920px;
  margin:0 auto 28px;
  text-align:center;
}
body.sc-approved-codice .intro h1{
  margin:0;
  font-size:38px;
  line-height:1.05;
  font-weight:900;
  color:#082f57;
  letter-spacing:-.7px;
}
body.sc-approved-codice .accent{
  width:88px;height:5px;border-radius:5px;margin:14px auto 16px;
  background:linear-gradient(90deg,var(--green) 0 49%,var(--blue) 49% 100%);
}
body.sc-approved-codice .intro p{
  margin:0 auto;
  max-width:760px;
  color:#597087;
  font-size:15px;
  line-height:1.5;
}
body.sc-approved-codice .benefits{
  display:flex;
  justify-content:center;
  gap:28px;
  flex-wrap:wrap;
  margin-top:18px;
}
body.sc-approved-codice .benefit{
  display:flex;align-items:center;gap:8px;color:#39566f;font-size:12px;font-weight:700;
}
body.sc-approved-codice .dot{
  width:30px;height:30px;border-radius:50%;display:grid;place-items:center;
  background:#e9f3ff;color:var(--blue);font-weight:900;
}
body.sc-approved-codice .benefit:nth-child(2) .dot{background:#e9f8f0;color:var(--green)}

body.sc-approved-codice .panels{
  max-width:1120px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:stretch;
}
body.sc-approved-codice .panel{
  background:#fff;
  border:1px solid #e2ebf3;
  border-radius:17px;
  box-shadow:0 12px 30px rgba(28,68,102,.10);
  padding:25px 26px 23px;
}
body.sc-approved-codice .panel-head{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
}
body.sc-approved-codice .panel-icon{
  width:48px;height:48px;border-radius:50%;display:grid;place-items:center;
  background:#eaf4ff;color:#0962cc;flex:0 0 auto;
}
body.sc-approved-codice .panel.pay .panel-icon{background:#e9f8f0;color:#159d63}
body.sc-approved-codice .panel-title{font-size:21px;font-weight:900;margin:0;color:#092f56}
body.sc-approved-codice .panel-sub{font-size:12px;color:#708297;margin-top:4px;line-height:1.4}

body.sc-approved-codice .access-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
body.sc-approved-codice .access-card{
  border:1px solid #dfe8f1;border-radius:12px;padding:17px 15px;
  display:flex;flex-direction:column;min-height:225px;background:#fff;
}
body.sc-approved-codice .access-card h3{margin:7px 0 5px;text-align:center;font-size:15px}
body.sc-approved-codice .access-card p{margin:0 0 12px;text-align:center;color:#708297;font-size:11px;line-height:1.4;min-height:31px}
body.sc-approved-codice .option-icon{
  width:46px;height:46px;border-radius:50%;background:#eef5ff;display:grid;place-items:center;margin:0 auto;color:#0962cc;
}
body.sc-approved-codice .option-icon img{max-width:37px;max-height:37px}
body.sc-approved-codice .field{
  width:100%;height:41px;border:1px solid #ccd9e5;border-radius:7px;
  padding:0 11px;font-size:12px;color:#153956;outline:none;background:#fff;
}
body.sc-approved-codice .field:focus{border-color:#0866d6;box-shadow:0 0 0 3px rgba(8,102,214,.08)}
body.sc-approved-codice .btn{
  width:100%;height:41px;border:0;border-radius:7px;color:#fff;
  font-size:11px;font-weight:900;letter-spacing:.1px;cursor:pointer;margin-top:8px;
}
body.sc-approved-codice .btn.blue{background:#0a62c9}
body.sc-approved-codice .btn.green{background:#16a163}
body.sc-approved-codice .access-card .btn.green{margin-top:auto}

body.sc-approved-codice .pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 14px}
body.sc-approved-codice .form-group label{
  display:block;margin:0 0 5px;color:#4e687f;font-size:11px;font-weight:800;
}
body.sc-approved-codice .form-group.full{grid-column:1/-1}
body.sc-approved-codice .pay-note{
  margin:16px 0 2px;padding:11px 12px;border-radius:9px;background:#f3f8fd;
  color:#536e85;font-size:11px;line-height:1.45;
}
body.sc-approved-codice .pay .btn{margin-top:15px;height:44px;font-size:12px}

body.sc-approved-codice footer{
  min-height:94px;background:#062f56;color:#fff;display:flex;align-items:center;
  gap:22px;padding:16px 40px;position:relative;overflow:hidden;
}
body.sc-approved-codice footer:after{
  content:"";position:absolute;right:-20px;bottom:-32px;width:430px;height:110px;
  background-image:radial-gradient(rgba(37,142,206,.46) 1.2px,transparent 1.2px);
  background-size:9px 9px;transform:skewX(-17deg)
}
body.sc-approved-codice footer img{width:154px;position:relative;z-index:1}
body.sc-approved-codice .footer-sep{width:1px;height:43px;background:rgba(255,255,255,.22);position:relative;z-index:1}
body.sc-approved-codice .footer-text, body.sc-approved-codice .footer-copy{font-size:11px;color:#dce7f0;position:relative;z-index:1;line-height:1.45}

@media (max-width:900px){
  body.sc-approved-codice .panels{grid-template-columns:1fr}
}
@media (max-width:640px){
  body.sc-approved-codice header{padding:10px 16px}
  body.sc-approved-codice .brand img{width:104px}
  body.sc-approved-codice .brand-sep{height:38px}
  body.sc-approved-codice .brand-title-small{font-size:10px}
  body.sc-approved-codice .brand-title-big{font-size:14px}
  body.sc-approved-codice .brand-sub, body.sc-approved-codice .secure{display:none}
  body.sc-approved-codice main{padding:26px 16px}
  body.sc-approved-codice .intro h1{font-size:30px}
  body.sc-approved-codice .access-grid, body.sc-approved-codice .pay-grid{grid-template-columns:1fr}
  body.sc-approved-codice .form-group.full{grid-column:auto}
  body.sc-approved-codice footer{padding:18px;flex-wrap:wrap}
  body.sc-approved-codice .footer-sep{display:none}
}

/* SAFE CITY - header actions */
body.sc-approved-codice .actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex-wrap:wrap}
body.sc-approved-codice .header-action{
  min-height:52px;padding:7px 13px 7px 9px;border-radius:10px;text-decoration:none;
  display:flex;align-items:center;gap:9px;font-size:11px;font-weight:900;line-height:1.15;
  border:1px solid #dfe8f1;background:#fff;color:#0a3159;box-shadow:0 3px 10px rgba(28,67,101,.04)
}
body.sc-approved-codice .round-icon{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}
body.sc-approved-codice .header-action.access .round-icon{background:#edf5ff;color:#0962cc}
body.sc-approved-codice .header-action.pay .round-icon{background:#e9f8f0;color:#159d63}
body.sc-approved-codice .header-action svg{width:27px;height:27px}
body.sc-approved-codice .login-key{font-size:20px;line-height:1}
body.sc-approved-codice .action-text{display:block;max-width:165px}
body.sc-approved-codice .secure{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:11px}
body.sc-approved-codice .secure b{display:block;font-size:13px}
body.sc-approved-codice .secure span{display:block;color:#65798f;margin-top:2px}
@media (max-width:1050px){
  body.sc-approved-codice header{align-items:flex-start}
  body.sc-approved-codice .actions{width:100%;justify-content:flex-start}
  body.sc-approved-codice .secure{margin-left:auto}
}
@media (max-width:680px){
  body.sc-approved-codice .secure{display:none}
  body.sc-approved-codice .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  body.sc-approved-codice .header-action{width:100%;padding:7px 9px;font-size:10px}
  body.sc-approved-codice .action-text{max-width:none}
}

/* Header responsive uniforme */
body.sc-approved-codice header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:nowrap;
}
body.sc-approved-codice header .brand, body.sc-approved-codice header .sc-brand, body.sc-approved-codice header .brand-wrap{
  min-width:0;
  flex:1 1 auto;
}
body.sc-approved-codice .actions, body.sc-approved-codice .sc-actions{
  flex:0 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
body.sc-approved-codice .header-action{
  flex:0 1 auto;
  min-width:0;
}
body.sc-approved-codice .header-action .action-text{
  white-space:normal;
}

/* Tipografia titolo portale */
body.sc-approved-codice .sc-portal-title{display:flex;flex-direction:column;justify-content:center}
body.sc-approved-codice .sc-portal-kicker{
  color:#0b3156;font-size:12px;font-weight:900;line-height:1;
  letter-spacing:.01em;margin:0 0 4px 0;
}
body.sc-approved-codice .sc-portal-main{
  color:#0b3156;font-size:18px;font-weight:900;line-height:1;
  letter-spacing:.005em;margin:0;
}
body.sc-approved-codice .sc-portal-sub{
  color:#60758a;font-size:9px;font-weight:400;line-height:1.25;
  margin-top:7px;
}

@media (max-width:1180px){
  body.sc-approved-codice header{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  body.sc-approved-codice header .brand, body.sc-approved-codice header .sc-brand, body.sc-approved-codice header .brand-wrap{
    flex:1 1 100%;
    width:100%;
  }
  body.sc-approved-codice .actions, body.sc-approved-codice .sc-actions{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width:760px){
  body.sc-approved-codice .actions, body.sc-approved-codice .sc-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
  }
  body.sc-approved-codice .header-action{
    width:100%;
  }
  body.sc-approved-codice .secure, body.sc-approved-codice .sc-secure{
    width:100%;
    justify-content:flex-start;
    margin-left:0 !important;
  }
  body.sc-approved-codice .sc-portal-main{font-size:16px}
  body.sc-approved-codice .sc-portal-sub{font-size:9px}
}

/* Tooltip SAFE CITY */
body.sc-approved-codice .sc-help{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}
body.sc-approved-codice .sc-help-i{
  width:17px;height:17px;border:1px solid #b8cad8;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:800;color:#0b5fa5;background:#fff;cursor:help
}
body.sc-approved-codice .sc-help-t{
  visibility:hidden;opacity:0;position:absolute;z-index:200;
  left:50%;bottom:25px;transform:translateX(-50%);
  width:250px;padding:8px 10px;border-radius:7px;background:#0b3156;color:#fff;
  font-size:11px;font-weight:500;line-height:1.35;
  box-shadow:0 6px 18px rgba(0,0,0,.15);transition:opacity .15s ease
}
body.sc-approved-codice .sc-help:hover .sc-help-t, body.sc-approved-codice .sc-help:focus-within .sc-help-t{visibility:visible;opacity:1}
@media (max-width:760px){
  body.sc-approved-codice .sc-help-t{left:0;transform:none;width:min(250px,75vw)}
}


/* ===== 04_Paga_Violazione.html ===== */

body.sc-approved-pagamento{
  --navy:#082f57; --blue:#0967d8; --green:#13a464;
  --text:#0a2f56; --muted:#62778c; --bg:#f3f8fc; --line:#dce7f1;
}
body.sc-approved-pagamento, body.sc-approved-pagamento *{box-sizing:border-box}

body.sc-approved-pagamento{margin:0;min-height:100%;font-family:Arial,Helvetica,sans-serif;background:#fff;color:var(--text)}
body.sc-approved-pagamento{min-height:100vh;display:flex;flex-direction:column}

body.sc-approved-pagamento header{
  min-height:82px;padding:10px 34px;background:#fff;border-bottom:1px solid #edf2f7;
  display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;
}
body.sc-approved-pagamento .brand{display:flex;align-items:center;gap:16px;min-width:340px;flex:1 1 430px}
body.sc-approved-pagamento .brand img{width:138px;height:auto;display:block}
body.sc-approved-pagamento .sep{width:1px;height:46px;background:#d4dde7;flex:0 0 auto}
body.sc-approved-pagamento .title-small{font-size:13px;font-weight:800;line-height:1}
body.sc-approved-pagamento .title-big{font-size:20px;font-weight:900;line-height:1.05;margin-top:4px}
body.sc-approved-pagamento .title-sub{font-size:11px;color:#597089;margin-top:5px}

body.sc-approved-pagamento .actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex-wrap:wrap}
body.sc-approved-pagamento .header-action{
  min-height:52px;padding:7px 13px 7px 9px;border-radius:10px;text-decoration:none;
  display:flex;align-items:center;gap:9px;font-size:11px;font-weight:900;line-height:1.15;
  border:1px solid #dfe8f1;background:#fff;color:#0a3159;box-shadow:0 3px 10px rgba(28,67,101,.04)
}
body.sc-approved-pagamento .round-icon{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}
body.sc-approved-pagamento .header-action.access .round-icon{background:#edf5ff;color:#0962cc}
body.sc-approved-pagamento .header-action.pay .round-icon{background:#e9f8f0;color:#159d63}
body.sc-approved-pagamento .header-action svg{width:27px;height:27px}
body.sc-approved-pagamento .login-key{font-size:20px;line-height:1}
body.sc-approved-pagamento .action-text{display:block;max-width:165px}

body.sc-approved-pagamento .secure{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:11px}
body.sc-approved-pagamento .secure b{display:block;font-size:13px}
body.sc-approved-pagamento .secure span{display:block;color:#65798f;margin-top:2px}

body.sc-approved-pagamento main{
  flex:1 0 auto;
  padding:38px 42px 44px;
  background:
    radial-gradient(circle at 20% 8%, rgba(37,157,222,.06), transparent 24%),
    linear-gradient(110deg,#f9fcff 0%,#f2f8fd 55%,#eef6fc 100%);
}
body.sc-approved-pagamento .page-intro{max-width:840px;margin:0 auto 28px;text-align:center}
body.sc-approved-pagamento .page-intro h1{margin:0;color:#082f57;font-size:36px;line-height:1.08;font-weight:900;letter-spacing:-.6px}
body.sc-approved-pagamento .accent{width:88px;height:5px;border-radius:5px;margin:14px auto 16px;background:linear-gradient(90deg,var(--green) 0 49%,var(--blue) 49% 100%)}
body.sc-approved-pagamento .page-intro p{margin:0 auto;max-width:690px;color:#5d7388;font-size:14px;line-height:1.5}

body.sc-approved-pagamento .payment-card{
  max-width:820px;margin:0 auto;background:#fff;border:1px solid #e2ebf3;border-radius:18px;
  box-shadow:0 14px 34px rgba(28,68,102,.10);padding:28px 30px 26px;
}
body.sc-approved-pagamento .card-head{display:flex;align-items:center;gap:13px;margin-bottom:24px}
body.sc-approved-pagamento .card-icon{
  width:50px;height:50px;border-radius:50%;display:grid;place-items:center;
  background:#e9f8f0;color:#159d63;flex:0 0 auto
}
body.sc-approved-pagamento .card-icon svg{width:29px;height:29px}
body.sc-approved-pagamento .card-head h2{margin:0;font-size:22px;font-weight:900;color:#092f56}
body.sc-approved-pagamento .card-head div div{margin-top:4px;color:#718396;font-size:12px}

body.sc-approved-pagamento .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
body.sc-approved-pagamento .form-group.full{grid-column:1/-1}
body.sc-approved-pagamento label{display:block;margin-bottom:6px;color:#4d677f;font-size:12px;font-weight:800}
body.sc-approved-pagamento .field{
  width:100%;height:44px;border:1px solid #ccd9e5;border-radius:8px;padding:0 12px;
  font-size:13px;color:#153956;outline:none;background:#fff
}
body.sc-approved-pagamento .field:focus{border-color:#0866d6;box-shadow:0 0 0 3px rgba(8,102,214,.08)}
body.sc-approved-pagamento .amount-wrap{position:relative}
body.sc-approved-pagamento .amount-wrap .field{padding-right:42px}
body.sc-approved-pagamento .euro{position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:13px;font-weight:800;color:#5d7388}

body.sc-approved-pagamento .help-row{
  display:flex;align-items:flex-start;gap:9px;margin-top:18px;padding:12px 13px;border-radius:10px;
  background:#f4f8fc;color:#5b7085;font-size:11px;line-height:1.45
}
body.sc-approved-pagamento .help-row svg{width:17px;height:17px;flex:0 0 auto;margin-top:1px}

body.sc-approved-pagamento .submit{
  width:100%;height:46px;margin-top:18px;border:0;border-radius:8px;background:#16a163;color:#fff;
  font-size:12px;font-weight:900;letter-spacing:.15px;cursor:pointer
}
body.sc-approved-pagamento .submit:hover{background:#118653}

body.sc-approved-pagamento footer{
  min-height:94px;background:#062f56;color:#fff;display:flex;align-items:center;gap:22px;
  padding:16px 40px;position:relative;overflow:hidden;flex-shrink:0
}
body.sc-approved-pagamento footer:after{
  content:"";position:absolute;right:-20px;bottom:-32px;width:430px;height:110px;
  background-image:radial-gradient(rgba(37,142,206,.46) 1.2px,transparent 1.2px);
  background-size:9px 9px;transform:skewX(-17deg)
}
body.sc-approved-pagamento footer img{width:154px;position:relative;z-index:1}
body.sc-approved-pagamento .footer-sep{width:1px;height:43px;background:rgba(255,255,255,.22);position:relative;z-index:1}
body.sc-approved-pagamento .footer-text, body.sc-approved-pagamento .footer-copy{font-size:11px;color:#dce7f0;position:relative;z-index:1;line-height:1.45}

@media (max-width:1050px){
  body.sc-approved-pagamento header{align-items:flex-start;padding:10px 20px}
  body.sc-approved-pagamento .brand{flex-basis:100%;min-width:0}
  body.sc-approved-pagamento .actions{width:100%;justify-content:flex-start}
  body.sc-approved-pagamento .secure{margin-left:auto}
}
@media (max-width:680px){
  body.sc-approved-pagamento header{padding:12px 18px}
  body.sc-approved-pagamento .brand{gap:10px}
  body.sc-approved-pagamento .brand img{width:108px}
  body.sc-approved-pagamento .sep{height:45px}
  body.sc-approved-pagamento .title-small{font-size:12px}
  body.sc-approved-pagamento .title-big{font-size:17px}
  body.sc-approved-pagamento .title-sub, body.sc-approved-pagamento .secure{display:none}
  body.sc-approved-pagamento .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}
  body.sc-approved-pagamento .header-action{width:100%;padding:7px 9px;font-size:10px}
  body.sc-approved-pagamento .action-text{max-width:none}
  body.sc-approved-pagamento main{padding:26px 16px 32px}
  body.sc-approved-pagamento .page-intro h1{font-size:30px}
  body.sc-approved-pagamento .form-grid{grid-template-columns:1fr}
  body.sc-approved-pagamento .form-group.full{grid-column:auto}
  body.sc-approved-pagamento .payment-card{padding:22px 18px}
  body.sc-approved-pagamento footer{flex-wrap:wrap;padding:20px}
  body.sc-approved-pagamento .footer-sep{display:none}
}

/* Header responsive uniforme */
body.sc-approved-pagamento header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:nowrap;
}
body.sc-approved-pagamento header .brand, body.sc-approved-pagamento header .sc-brand, body.sc-approved-pagamento header .brand-wrap{
  min-width:0;
  flex:1 1 auto;
}
body.sc-approved-pagamento .actions, body.sc-approved-pagamento .sc-actions{
  flex:0 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
body.sc-approved-pagamento .header-action{
  flex:0 1 auto;
  min-width:0;
}
body.sc-approved-pagamento .header-action .action-text{
  white-space:normal;
}

/* Tipografia titolo portale */
body.sc-approved-pagamento .sc-portal-title{display:flex;flex-direction:column;justify-content:center}
body.sc-approved-pagamento .sc-portal-kicker{
  color:#0b3156;font-size:12px;font-weight:900;line-height:1;
  letter-spacing:.01em;margin:0 0 4px 0;
}
body.sc-approved-pagamento .sc-portal-main{
  color:#0b3156;font-size:18px;font-weight:900;line-height:1;
  letter-spacing:.005em;margin:0;
}
body.sc-approved-pagamento .sc-portal-sub{
  color:#60758a;font-size:9px;font-weight:400;line-height:1.25;
  margin-top:7px;
}

@media (max-width:1180px){
  body.sc-approved-pagamento header{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  body.sc-approved-pagamento header .brand, body.sc-approved-pagamento header .sc-brand, body.sc-approved-pagamento header .brand-wrap{
    flex:1 1 100%;
    width:100%;
  }
  body.sc-approved-pagamento .actions, body.sc-approved-pagamento .sc-actions{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width:760px){
  body.sc-approved-pagamento .actions, body.sc-approved-pagamento .sc-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
  }
  body.sc-approved-pagamento .header-action{
    width:100%;
  }
  body.sc-approved-pagamento .secure, body.sc-approved-pagamento .sc-secure{
    width:100%;
    justify-content:flex-start;
    margin-left:0 !important;
  }
  body.sc-approved-pagamento .sc-portal-main{font-size:16px}
  body.sc-approved-pagamento .sc-portal-sub{font-size:9px}
}

/* Tooltip SAFE CITY */
body.sc-approved-pagamento .sc-help{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}
body.sc-approved-pagamento .sc-help-i{
  width:17px;height:17px;border:1px solid #b8cad8;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:800;color:#0b5fa5;background:#fff;cursor:help
}
body.sc-approved-pagamento .sc-help-t{
  visibility:hidden;opacity:0;position:absolute;z-index:200;
  left:50%;bottom:25px;transform:translateX(-50%);
  width:250px;padding:8px 10px;border-radius:7px;background:#0b3156;color:#fff;
  font-size:11px;font-weight:500;line-height:1.35;
  box-shadow:0 6px 18px rgba(0,0,0,.15);transition:opacity .15s ease
}
body.sc-approved-pagamento .sc-help:hover .sc-help-t, body.sc-approved-pagamento .sc-help:focus-within .sc-help-t{visibility:visible;opacity:1}
@media (max-width:760px){
  body.sc-approved-pagamento .sc-help-t{left:0;transform:none;width:min(250px,75vw)}
}


/* ===== 05_Dettaglio_Verbale.html ===== */

body.sc-approved-dettaglio{
  --navy:#082f57;--blue:#0864d9;--green:#11a564;--text:#0a2d54;
  --muted:#60758b;--bg:#f2f7fc;--line:#dce7f1;
}
body.sc-approved-dettaglio, body.sc-approved-dettaglio *{box-sizing:border-box}
body.sc-approved-dettaglio{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}

body.sc-approved-dettaglio{min-height:100vh;display:flex;flex-direction:column}

body.sc-approved-dettaglio header{min-height:82px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 34px;border-bottom:1px solid #edf2f7;gap:18px;flex-wrap:wrap}
body.sc-approved-dettaglio .brand{display:flex;align-items:center;gap:16px;min-width:340px;flex:1 1 430px}
body.sc-approved-dettaglio .brand img{width:138px;height:auto}
body.sc-approved-dettaglio .sep{width:1px;height:46px;background:#d4dde7;flex:0 0 auto}
body.sc-approved-dettaglio .title-small{font-size:13px;font-weight:800}
body.sc-approved-dettaglio .title-big{font-size:20px;font-weight:900;line-height:1.05;margin-top:4px}
body.sc-approved-dettaglio .title-sub{font-size:11px;color:#597089;margin-top:5px}
body.sc-approved-dettaglio .actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  min-width:0;
  flex-wrap:wrap;
}
body.sc-approved-dettaglio .header-action{
  min-height:52px;
  padding:7px 13px 7px 9px;
  border-radius:10px;
  text-decoration:none;
  display:flex;
  align-items:center;
  gap:9px;
  font-size:11px;
  font-weight:900;
  line-height:1.15;
  white-space:normal;
  border:1px solid #dfe8f1;
  background:#fff;
  color:#0a3159;
  box-shadow:0 3px 10px rgba(28,67,101,.04);
  transition:.15s ease;
}
body.sc-approved-dettaglio .header-action:hover{
  border-color:#bfd3e6;
  box-shadow:0 5px 14px rgba(28,67,101,.08);
}
body.sc-approved-dettaglio .header-action .round-icon{
  width:37px;
  height:37px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
body.sc-approved-dettaglio .header-action.access .round-icon{
  background:#edf5ff;
  color:#0962cc;
}
body.sc-approved-dettaglio .header-action.pay .round-icon{
  background:#e9f8f0;
  color:#159d63;
}
body.sc-approved-dettaglio .header-action svg{
  width:20px;
  height:20px;
}
body.sc-approved-dettaglio .login-key-icon{
  font-size:20px;
  line-height:1;
}

body.sc-approved-dettaglio .header-action .action-text{
  display:block;
  max-width:150px;
}

body.sc-approved-dettaglio .secure{display:flex;align-items:center;gap:10px;font-size:13px}
body.sc-approved-dettaglio .secure b{display:block;font-size:14px}
body.sc-approved-dettaglio .secure span{color:#65798f}

body.sc-approved-dettaglio main{padding:26px 46px 30px;flex:1 0 auto}
body.sc-approved-dettaglio .breadcrumb{font-size:13px;color:#55708a;margin-bottom:14px}
body.sc-approved-dettaglio h1{font-size:38px;line-height:1;margin:0 0 10px;font-weight:900}
body.sc-approved-dettaglio .accent{width:64px;height:4px;border-radius:3px;background:linear-gradient(90deg,var(--green) 0 50%,var(--blue) 50%);margin-bottom:22px}
body.sc-approved-dettaglio .grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,1.02fr);gap:22px;align-items:start}
body.sc-approved-dettaglio .stack{display:grid;gap:16px;min-width:0}
body.sc-approved-dettaglio .card{background:#fff;border:1px solid #e4edf5;border-radius:14px;box-shadow:0 8px 22px rgba(20,54,90,.06);overflow:hidden}
body.sc-approved-dettaglio .card-pad{padding:20px 22px}
body.sc-approved-dettaglio .card-title{display:flex;align-items:center;gap:11px;font-size:16px;font-weight:900;margin-bottom:16px}
body.sc-approved-dettaglio .icon{width:38px;height:38px;border-radius:50%;background:#e9f3ff;display:grid;place-items:center;color:var(--blue);font-weight:900;flex:0 0 auto}
body.sc-approved-dettaglio .icon.green{background:#e8f8f0;color:#12965e}
body.sc-approved-dettaglio .command-card{display:grid;grid-template-columns:1fr 1fr}
body.sc-approved-dettaglio .command-item{padding:18px 22px;display:flex;align-items:center;gap:13px;min-width:0}
body.sc-approved-dettaglio .command-item:first-child{border-right:1px solid #e5edf5}
body.sc-approved-dettaglio .label{font-size:12px;color:#667b91;font-weight:700;text-transform:uppercase;letter-spacing:.2px}
body.sc-approved-dettaglio .value{color:#0b2d54;font-size:15px;font-weight:800;margin-top:4px;line-height:1.35;overflow-wrap:anywhere}
body.sc-approved-dettaglio .data-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 24px}
body.sc-approved-dettaglio .data-item{font-size:13px;color:#64798f;min-width:0}
body.sc-approved-dettaglio .data-item strong{display:block;color:#0b2d54;font-size:15px;margin-top:4px;line-height:1.35;overflow-wrap:anywhere}
body.sc-approved-dettaglio .article{padding:14px 0;border-top:1px solid #edf2f6}
body.sc-approved-dettaglio .article:first-of-type{border-top:0;padding-top:0}
body.sc-approved-dettaglio .article-head{font-size:15px;font-weight:900}
body.sc-approved-dettaglio .article-desc{font-size:14px;color:#284760;line-height:1.45;margin-top:5px}
body.sc-approved-dettaglio .media-card{padding:18px}
body.sc-approved-dettaglio .media-title{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:900;margin-bottom:15px}
body.sc-approved-dettaglio .media-stage{min-height:430px;background:#eaf1f7;border:1px solid #d9e5ef;border-radius:10px;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}
body.sc-approved-dettaglio .media-stage img{display:block;max-width:100%;max-height:620px;margin:0 auto;user-select:none;cursor:grab;transform-origin:center center}
body.sc-approved-dettaglio .media-stage img.dragging{cursor:grabbing}
body.sc-approved-dettaglio .media-stage video{width:100%;max-height:620px;background:#000;display:none}
body.sc-approved-dettaglio .loading{position:absolute;color:#60758b;font-size:14px;padding:20px;text-align:center}
body.sc-approved-dettaglio .tools{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:12px}
body.sc-approved-dettaglio .tool{border:1px solid #d5e2ee;background:#fff;border-radius:9px;min-height:54px;cursor:pointer;color:#244663;font-size:11px;font-weight:700}
body.sc-approved-dettaglio .tool:hover{background:#f3f8fd;border-color:#abc7e4}
body.sc-approved-dettaglio .tool b{display:block;color:#0864d9;font-size:18px;margin-bottom:3px}




body.sc-approved-dettaglio footer{min-height:94px;background:#062f56;color:#fff;display:flex;align-items:center;gap:22px;padding:16px 40px;position:relative;overflow:hidden;flex-shrink:0}
body.sc-approved-dettaglio footer:after{content:"";position:absolute;right:-20px;bottom:-32px;width:450px;height:105px;background-image:radial-gradient(rgba(22,132,205,.5) 1.2px,transparent 1.2px);background-size:9px 9px;transform:skewX(-18deg)}
body.sc-approved-dettaglio footer img{width:154px;position:relative;z-index:1}
body.sc-approved-dettaglio .footer-sep{width:1px;height:43px;background:rgba(255,255,255,.22);position:relative;z-index:1}
body.sc-approved-dettaglio .footer-text, body.sc-approved-dettaglio .footer-copy{font-size:11px;position:relative;z-index:1}
@media (max-width:1100px){body.sc-approved-dettaglio .grid{grid-template-columns:1fr}}
@media (max-width:1050px){
  body.sc-approved-dettaglio header{align-items:flex-start}
  body.sc-approved-dettaglio .brand{flex-basis:100%;min-width:0}
  body.sc-approved-dettaglio .actions{width:100%;justify-content:flex-start}
  body.sc-approved-dettaglio .secure{margin-left:auto}
}
@media (max-width:680px){
  body.sc-approved-dettaglio header{padding:12px 18px}
  body.sc-approved-dettaglio .brand{gap:10px}
  body.sc-approved-dettaglio .brand img{width:108px}
  body.sc-approved-dettaglio .sep{height:45px}
  body.sc-approved-dettaglio .title-small{font-size:12px}
  body.sc-approved-dettaglio .title-big{font-size:17px}
  body.sc-approved-dettaglio .title-sub, body.sc-approved-dettaglio .secure{display:none}
  body.sc-approved-dettaglio .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  body.sc-approved-dettaglio .header-action{width:100%;padding:7px 9px;font-size:10px}
  body.sc-approved-dettaglio .header-action .action-text{max-width:none}
  body.sc-approved-dettaglio main{padding:22px}
  body.sc-approved-dettaglio h1{font-size:30px}
  body.sc-approved-dettaglio .command-card, body.sc-approved-dettaglio .data-grid{grid-template-columns:1fr}
  body.sc-approved-dettaglio .command-item:first-child{border-right:0;border-bottom:1px solid #e5edf5}
  body.sc-approved-dettaglio .tools{grid-template-columns:repeat(2,1fr)}
  body.sc-approved-dettaglio .media-stage{min-height:290px}
  body.sc-approved-dettaglio footer{flex-wrap:wrap;padding:20px}
  body.sc-approved-dettaglio .footer-sep{display:none}
}

/* Header responsive uniforme */
body.sc-approved-dettaglio header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:nowrap;
}
body.sc-approved-dettaglio header .brand, body.sc-approved-dettaglio header .sc-brand, body.sc-approved-dettaglio header .brand-wrap{
  min-width:0;
  flex:1 1 auto;
}
body.sc-approved-dettaglio .actions, body.sc-approved-dettaglio .sc-actions{
  flex:0 1 auto;
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
body.sc-approved-dettaglio .header-action{
  flex:0 1 auto;
  min-width:0;
}
body.sc-approved-dettaglio .header-action .action-text{
  white-space:normal;
}

/* Tipografia titolo portale */
body.sc-approved-dettaglio .sc-portal-title{display:flex;flex-direction:column;justify-content:center}
body.sc-approved-dettaglio .sc-portal-kicker{
  color:#0b3156;font-size:12px;font-weight:900;line-height:1;
  letter-spacing:.01em;margin:0 0 4px 0;
}
body.sc-approved-dettaglio .sc-portal-main{
  color:#0b3156;font-size:18px;font-weight:900;line-height:1;
  letter-spacing:.005em;margin:0;
}
body.sc-approved-dettaglio .sc-portal-sub{
  color:#60758a;font-size:9px;font-weight:400;line-height:1.25;
  margin-top:7px;
}

@media (max-width:1180px){
  body.sc-approved-dettaglio header{
    align-items:flex-start;
    flex-wrap:wrap;
  }
  body.sc-approved-dettaglio header .brand, body.sc-approved-dettaglio header .sc-brand, body.sc-approved-dettaglio header .brand-wrap{
    flex:1 1 100%;
    width:100%;
  }
  body.sc-approved-dettaglio .actions, body.sc-approved-dettaglio .sc-actions{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width:760px){
  body.sc-approved-dettaglio .actions, body.sc-approved-dettaglio .sc-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    width:100%;
  }
  body.sc-approved-dettaglio .header-action{
    width:100%;
  }
  body.sc-approved-dettaglio .secure, body.sc-approved-dettaglio .sc-secure{
    width:100%;
    justify-content:flex-start;
    margin-left:0 !important;
  }
  body.sc-approved-dettaglio .sc-portal-main{font-size:16px}
  body.sc-approved-dettaglio .sc-portal-sub{font-size:9px}
}

/* Footer compatto uniforme alle altre pagine */
body.sc-approved-dettaglio footer, body.sc-approved-dettaglio .footer, body.sc-approved-dettaglio .sc-footer{
  min-height:50px !important;
  height:auto !important;
  padding:8px 22px !important;
  margin-top:auto !important;
}
body.sc-approved-dettaglio footer img, body.sc-approved-dettaglio .footer img, body.sc-approved-dettaglio .sc-footer img{
  max-height:30px !important;
  width:auto !important;
}
body.sc-approved-dettaglio footer .footer-inner, body.sc-approved-dettaglio .footer .footer-inner, body.sc-approved-dettaglio .sc-footer .sc-footer-inner{
  min-height:34px !important;
  padding:0 !important;
  align-items:center !important;
}

/* Tooltip SAFE CITY */
body.sc-approved-dettaglio .sc-help{position:relative;display:inline-flex;vertical-align:middle;margin-left:6px}
body.sc-approved-dettaglio .sc-help-i{
  width:17px;height:17px;border:1px solid #b8cad8;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  font-size:10px;font-weight:800;color:#0b5fa5;background:#fff;cursor:help
}
body.sc-approved-dettaglio .sc-help-t{
  visibility:hidden;opacity:0;position:absolute;z-index:200;
  left:50%;bottom:25px;transform:translateX(-50%);
  width:250px;padding:8px 10px;border-radius:7px;background:#0b3156;color:#fff;
  font-size:11px;font-weight:500;line-height:1.35;
  box-shadow:0 6px 18px rgba(0,0,0,.15);transition:opacity .15s ease
}
body.sc-approved-dettaglio .sc-help:hover .sc-help-t, body.sc-approved-dettaglio .sc-help:focus-within .sc-help-t{visibility:visible;opacity:1}
@media (max-width:760px){
  body.sc-approved-dettaglio .sc-help-t{left:0;transform:none;width:min(250px,75vw)}
}
