/* /Pages/Default.razor.rz.scp.css */
:root[b-r7et5m1ihq] {
    --vcd-orange: #E86800;
    --vcd-orange-dark: #C95800;
    --vcd-orange-soft: #FFF3E9;
    --vcd-ink: #24272B;
    --vcd-muted: #62686E;
    --vcd-border: #E4E7EA;
    --vcd-surface: #FFFFFF;
    --vcd-background: #F5F6F8;
}

.landing-page[b-r7et5m1ihq] {
    min-height: 100vh;
    background: #ffffff;
    color: #24272B;
}

.landing-header[b-r7et5m1ihq] {
    width: min(1180px, calc(100% - 40px));
    min-height: 82px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.landing-brand[b-r7et5m1ihq] {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #24272B;
    text-decoration: none;
}

.landing-brand img[b-r7et5m1ihq] {
    width: 52px;
    height: 52px;
    object-fit: contain;
}

.landing-brand-text[b-r7et5m1ihq] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.landing-brand-text strong[b-r7et5m1ihq] {
    font-size: 1.02rem;
    font-weight: 800;
    letter-spacing: -0.01em;
}

.landing-brand-text span[b-r7et5m1ihq] {
    color: #747A80;
    font-size: 0.76rem;
    font-weight: 500;
}

.landing-header-actions[b-r7et5m1ihq] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.header-login-link[b-r7et5m1ihq],
.header-register-link[b-r7et5m1ihq],
.primary-cta[b-r7et5m1ihq],
.secondary-cta[b-r7et5m1ihq],
.final-register[b-r7et5m1ihq],
.final-login[b-r7et5m1ihq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 800;
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, border-color .18s ease;
}

.header-login-link[b-r7et5m1ihq] {
    min-height: 44px;
    padding: 0 18px;
    color: #343A40;
    border: 1px solid #DDE1E5;
    border-radius: 10px;
    background: #FFFFFF;
}

.header-register-link[b-r7et5m1ihq] {
    min-height: 44px;
    padding: 0 20px;
    color: #FFFFFF;
    border: 1px solid #E86800;
    border-radius: 10px;
    background: #E86800;
    box-shadow: 0 7px 18px rgba(232, 104, 0, .18);
}

.header-login-link:hover[b-r7et5m1ihq],
.secondary-cta:hover[b-r7et5m1ihq],
.final-login:hover[b-r7et5m1ihq] {
    border-color: #E86800;
    color: #C95800;
}

.header-register-link:hover[b-r7et5m1ihq],
.primary-cta:hover[b-r7et5m1ihq],
.final-register:hover[b-r7et5m1ihq] {
    background: #D86100;
    border-color: #D86100;
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(232, 104, 0, .22);
}

.hero-section[b-r7et5m1ihq] {
    position: relative;
    overflow: hidden;
    width: min(1180px, calc(100% - 40px));
    min-height: 610px;
    margin: 0 auto;
    padding: 76px 64px;
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(390px, .98fr);
    align-items: center;
    gap: 70px;
    border: 1px solid #ECEEF0;
    border-radius: 28px;
    background:
        radial-gradient(circle at 85% 12%, rgba(232, 104, 0, .10), transparent 29%),
        linear-gradient(145deg, #FFFFFF 0%, #FFFDFC 48%, #FFF8F2 100%);
}

.hero-section[b-r7et5m1ihq]::before {
    content: "";
    position: absolute;
    width: 360px;
    height: 360px;
    left: -190px;
    bottom: -210px;
    border-radius: 50%;
    background: rgba(232, 104, 0, .055);
}

.hero-content[b-r7et5m1ihq] {
    position: relative;
    z-index: 2;
}

.hero-kicker[b-r7et5m1ihq],
.section-kicker[b-r7et5m1ihq],
.final-cta-kicker[b-r7et5m1ihq] {
    color: #E86800;
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .14em;
}

.hero-content h1[b-r7et5m1ihq] {
    max-width: 650px;
    margin: 15px 0 20px;
    color: #24272B;
    font-size: clamp(2.75rem, 5vw, 4.65rem);
    font-weight: 850;
    line-height: .98;
    letter-spacing: -.055em;
}

.hero-lead[b-r7et5m1ihq] {
    max-width: 650px;
    margin: 0;
    color: #5C636A;
    font-size: 1.08rem;
    line-height: 1.72;
}

.hero-actions[b-r7et5m1ihq] {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.primary-cta[b-r7et5m1ihq],
.secondary-cta[b-r7et5m1ihq] {
    min-height: 52px;
    padding: 0 23px;
    border-radius: 12px;
}

.primary-cta[b-r7et5m1ihq] {
    gap: 18px;
    color: #FFFFFF;
    border: 1px solid #E86800;
    background: #E86800;
    box-shadow: 0 9px 22px rgba(232, 104, 0, .19);
}

.cta-arrow[b-r7et5m1ihq] {
    font-size: 1.3rem;
    line-height: 1;
}

.secondary-cta[b-r7et5m1ihq] {
    color: #343A40;
    border: 1px solid #DDE1E5;
    background: rgba(255, 255, 255, .82);
}

.hero-points[b-r7et5m1ihq] {
    margin-top: 28px;
    display: flex;
    flex-wrap: wrap;
    gap: 11px 24px;
}

.hero-points > div[b-r7et5m1ihq] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #596168;
    font-size: .86rem;
    font-weight: 650;
}

[b-r7et5m1ihq] .hero-points .mud-icon-root {
    color: #E86800;
}

.hero-visual[b-r7et5m1ihq] {
    position: relative;
    z-index: 1;
    min-height: 455px;
    display: flex;
    align-items: center;
    justify-content: center;
    isolation: isolate;
}

.smartpos-glow[b-r7et5m1ihq] {
    position: absolute;
    z-index: 0;
    width: min(470px, 92%);
    height: 360px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(232, 104, 0, .16) 0%, rgba(232, 104, 0, .07) 48%, rgba(232, 104, 0, 0) 74%);
    filter: blur(10px);
}

.smartpos-image[b-r7et5m1ihq] {
    position: relative;
    z-index: 1;
    width: min(570px, 112%);
    max-width: none;
    height: auto;
    display: block;
    object-fit: contain;
    filter: drop-shadow(0 25px 22px rgba(38, 43, 48, .18));
}

.benefits-section[b-r7et5m1ihq],
.workflow-section[b-r7et5m1ihq] {
    width: min(1120px, calc(100% - 40px));
    margin: 0 auto;
}

.benefits-section[b-r7et5m1ihq] {
    padding: 112px 0 102px;
}

.section-heading[b-r7et5m1ihq] {
    max-width: 720px;
    margin: 0 auto 48px;
    text-align: center;
}

.section-heading h2[b-r7et5m1ihq],
.workflow-copy h2[b-r7et5m1ihq],
.final-cta-content h2[b-r7et5m1ihq] {
    margin: 12px 0 14px;
    color: #24272B;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.section-heading p[b-r7et5m1ihq],
.workflow-copy p[b-r7et5m1ihq],
.final-cta-content p[b-r7et5m1ihq] {
    margin: 0;
    color: #697078;
    line-height: 1.7;
}

.benefit-grid[b-r7et5m1ihq] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.benefit-card[b-r7et5m1ihq] {
    padding: 28px 25px 29px;
    border: 1px solid #E6E9EC;
    border-radius: 18px;
    background: #FFFFFF;
    box-shadow: 0 7px 20px rgba(34, 39, 43, .045);
}

.benefit-icon[b-r7et5m1ihq] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #E86800;
    border-radius: 13px;
    background: #FFF2E8;
}

.benefit-card h3[b-r7et5m1ihq] {
    margin: 19px 0 10px;
    color: #30353A;
    font-size: 1rem;
}

.benefit-card p[b-r7et5m1ihq] {
    margin: 0;
    color: #6D747B;
    font-size: .86rem;
    line-height: 1.65;
}

.workflow-section[b-r7et5m1ihq] {
    margin-bottom: 104px;
    padding: 60px;
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    align-items: center;
    gap: 70px;
    border-radius: 24px;
    background: #F7F8F9;
    border: 1px solid #EAECED;
}

.workflow-copy[b-r7et5m1ihq] {
    max-width: 470px;
}

.workflow-steps[b-r7et5m1ihq] {
    display: flex;
    flex-direction: column;
}

.workflow-step[b-r7et5m1ihq] {
    position: relative;
    padding: 16px 0;
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 17px;
}

.workflow-step + .workflow-step[b-r7et5m1ihq] {
    border-top: 1px solid #E3E6E8;
}

.step-number[b-r7et5m1ihq] {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    border-radius: 50%;
    background: #E86800;
    font-size: .85rem;
    font-weight: 900;
    box-shadow: 0 6px 16px rgba(232, 104, 0, .18);
}

.workflow-step strong[b-r7et5m1ihq] {
    display: block;
    margin-top: 2px;
    color: #343A40;
}

.workflow-step p[b-r7et5m1ihq] {
    margin: 5px 0 0;
    color: #737A81;
    font-size: .84rem;
    line-height: 1.55;
}

.final-cta-section[b-r7et5m1ihq] {
    padding: 0 20px 36px;
}

.final-cta-content[b-r7et5m1ihq] {
    width: min(1120px, 100%);
    margin: 0 auto;
    padding: 52px 56px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 44px;
    color: #FFFFFF;
    border-radius: 24px;
    background: linear-gradient(125deg, #D85F00 0%, #E86800 54%, #F28B32 100%);
    box-shadow: 0 22px 44px rgba(188, 79, 0, .16);
}

.final-cta-content > div:first-child[b-r7et5m1ihq] {
    max-width: 660px;
}

.final-cta-kicker[b-r7et5m1ihq] {
    color: rgba(255, 255, 255, .78);
}

.final-cta-content h2[b-r7et5m1ihq] {
    color: #FFFFFF;
}

.final-cta-content p[b-r7et5m1ihq] {
    color: rgba(255, 255, 255, .86);
}

.final-cta-actions[b-r7et5m1ihq] {
    display: flex;
    flex-shrink: 0;
    gap: 10px;
}

.final-register[b-r7et5m1ihq],
.final-login[b-r7et5m1ihq] {
    min-height: 50px;
    padding: 0 22px;
    border-radius: 11px;
}

.final-register[b-r7et5m1ihq] {
    color: #D85F00;
    border: 1px solid #FFFFFF;
    background: #FFFFFF;
}

.final-register:hover[b-r7et5m1ihq] {
    color: #C75500;
    background: #FFF7F0;
    border-color: #FFF7F0;
}

.final-login[b-r7et5m1ihq] {
    color: #FFFFFF;
    border: 1px solid rgba(255, 255, 255, .58);
    background: rgba(255, 255, 255, .09);
}

.final-login:hover[b-r7et5m1ihq] {
    color: #FFFFFF;
    border-color: #FFFFFF;
    background: rgba(255, 255, 255, .16);
}

/* VirtualCashConnect: integrazione per software house. */
.vcc-section[b-r7et5m1ihq] {
    padding: 0 20px 96px;
}

.vcc-content[b-r7et5m1ihq] {
    width: min(1120px, 100%);
    margin: 0 auto;
    padding: 52px 56px;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(270px, .8fr);
    align-items: center;
    gap: 62px;
    border: 1px solid #E6E9EC;
    border-radius: 24px;
    background: linear-gradient(135deg, #FFFFFF 45%, #FFF7F0 100%);
}

.vcc-copy h2[b-r7et5m1ihq] {
    margin: 14px 0 20px;
    color: #24272B;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.1;
    letter-spacing: -.035em;
}

.vcc-copy h2 span[b-r7et5m1ihq] {
    color: #E86800;
}

.vcc-copy p[b-r7et5m1ihq] {
    max-width: 610px;
    margin: 0 0 14px;
    color: #62686E;
    line-height: 1.7;
}

.vcc-copy .vcc-lead[b-r7et5m1ihq] {
    color: #30353A;
    font-size: 1.08rem;
}

.vcc-contact[b-r7et5m1ihq] {
    min-height: 50px;
    margin-top: 14px;
    padding: 0 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    color: #FFFFFF;
    font-weight: 800;
    text-decoration: none;
    border-radius: 11px;
    background: #E86800;
    box-shadow: 0 9px 22px rgba(232, 104, 0, .18);
    transition: transform .18s ease, background-color .18s ease;
}

.vcc-contact:hover[b-r7et5m1ihq] {
    color: #FFFFFF;
    background: #D86100;
    transform: translateY(-1px);
}

.vcc-sectors[b-r7et5m1ihq] {
    padding: 26px;
    border: 1px solid #F0E3D8;
    border-radius: 18px;
    background: #FFFFFF;
    box-shadow: 0 10px 30px rgba(34, 39, 43, .045);
}

.vcc-sectors-heading[b-r7et5m1ihq] {
    margin-bottom: 16px;
    color: #697078;
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: .08em;
}

.vcc-sector[b-r7et5m1ihq] {
    min-height: 58px;
    margin-top: 10px;
    padding: 0 16px;
    display: flex;
    align-items: center;
    gap: 13px;
    color: #343A40;
    font-weight: 750;
    border: 1px solid #F0E5DD;
    border-radius: 12px;
    background: #FFF8F2;
}

[b-r7et5m1ihq] .vcc-sector .mud-icon-root {
    color: #E86800;
}

.vcc-sectors-footer[b-r7et5m1ihq] {
    margin-top: 20px;
    padding-top: 18px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: #697078;
    font-size: .85rem;
    line-height: 1.5;
    border-top: 1px solid #E8EAEC;
}

[b-r7et5m1ihq] .vcc-sectors-footer .mud-icon-root {
    flex-shrink: 0;
    color: #E86800;
}

.landing-footer[b-r7et5m1ihq] {
    width: min(1180px, calc(100% - 40px));
    min-height: 104px;
    margin: 0 auto;
    padding: 24px 0;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 12px 32px;
    border-top: 1px solid #E6E9EC;
}

.footer-brand[b-r7et5m1ihq] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.footer-brand img[b-r7et5m1ihq] {
    width: 38px;
    height: 38px;
    object-fit: contain;
}

.footer-brand > div[b-r7et5m1ihq] {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.footer-brand strong[b-r7et5m1ihq] {
    font-size: .82rem;
}

.footer-brand span[b-r7et5m1ihq],
.footer-copyright[b-r7et5m1ihq] {
    color: #858B91;
    font-size: .7rem;
}

.footer-links[b-r7et5m1ihq] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 17px;
}

.footer-links a[b-r7et5m1ihq] {
    color: #62686E;
    font-size: .75rem;
    font-weight: 650;
    text-decoration: none;
}

.footer-links a:hover[b-r7et5m1ihq] {
    color: #E86800;
}

.footer-copyright[b-r7et5m1ihq] {
    grid-column: 1 / -1;
}

@media (max-width: 1040px) {
    .hero-section[b-r7et5m1ihq] {
        grid-template-columns: 1fr;
        gap: 46px;
        padding: 64px 54px;
    }

    .hero-content[b-r7et5m1ihq] {
        max-width: 760px;
    }

    .hero-visual[b-r7et5m1ihq] {
        width: min(650px, 100%);
        margin: 0 auto;
    }

    .smartpos-image[b-r7et5m1ihq] {
        width: min(600px, 100%);
    }

    .benefit-grid[b-r7et5m1ihq] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .workflow-section[b-r7et5m1ihq] {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .workflow-copy[b-r7et5m1ihq] {
        max-width: 700px;
    }

    .vcc-content[b-r7et5m1ihq] {
        grid-template-columns: 1fr;
        gap: 32px;
    }
}

@media (max-width: 720px) {
    .landing-header[b-r7et5m1ihq] {
        width: min(100% - 28px, 1180px);
        min-height: 74px;
    }

    .landing-brand img[b-r7et5m1ihq] {
        width: 44px;
        height: 44px;
    }

    .landing-brand-text span[b-r7et5m1ihq] {
        display: none;
    }

    .header-login-link[b-r7et5m1ihq],
    .header-register-link[b-r7et5m1ihq] {
        min-height: 40px;
        padding: 0 13px;
        font-size: .78rem;
    }

    .hero-section[b-r7et5m1ihq] {
        width: calc(100% - 20px);
        padding: 48px 25px 42px;
        border-radius: 21px;
    }

    .hero-content h1[b-r7et5m1ihq] {
        font-size: clamp(2.5rem, 12vw, 3.45rem);
    }

    .hero-lead[b-r7et5m1ihq] {
        font-size: .98rem;
    }

    .hero-actions[b-r7et5m1ihq],
    .final-cta-actions[b-r7et5m1ihq] {
        flex-direction: column;
    }

    .primary-cta[b-r7et5m1ihq],
    .secondary-cta[b-r7et5m1ihq],
    .final-register[b-r7et5m1ihq],
    .final-login[b-r7et5m1ihq] {
        width: 100%;
    }

    .hero-points[b-r7et5m1ihq] {
        flex-direction: column;
    }

    .hero-visual[b-r7et5m1ihq] {
        min-height: 350px;
    }

    .smartpos-image[b-r7et5m1ihq] {
        width: min(520px, 108%);
    }

    .smartpos-glow[b-r7et5m1ihq] {
        height: 280px;
    }

    .benefits-section[b-r7et5m1ihq] {
        width: calc(100% - 30px);
        padding: 82px 0 75px;
    }

    .benefit-grid[b-r7et5m1ihq] {
        grid-template-columns: 1fr;
    }

    .workflow-section[b-r7et5m1ihq] {
        width: calc(100% - 30px);
        margin-bottom: 78px;
        padding: 38px 25px;
        border-radius: 20px;
    }

    .final-cta-section[b-r7et5m1ihq] {
        padding: 0 15px 28px;
    }

    .final-cta-content[b-r7et5m1ihq] {
        padding: 39px 27px;
        flex-direction: column;
        align-items: stretch;
        border-radius: 20px;
    }

    .vcc-section[b-r7et5m1ihq] {
        padding: 0 15px 72px;
    }

    .vcc-content[b-r7et5m1ihq] {
        padding: 39px 27px;
        border-radius: 20px;
    }

    .vcc-sectors[b-r7et5m1ihq] {
        padding: 20px;
    }

    .vcc-contact[b-r7et5m1ihq] {
        width: 100%;
    }

    .landing-footer[b-r7et5m1ihq] {
        width: calc(100% - 30px);
        grid-template-columns: 1fr;
        align-items: start;
    }

    .footer-links[b-r7et5m1ihq] {
        justify-content: flex-start;
        gap: 12px 17px;
    }

    .footer-copyright[b-r7et5m1ihq] {
        grid-column: auto;
    }
}

@media (max-width: 480px) {
    .landing-brand-text strong[b-r7et5m1ihq] {
        font-size: .88rem;
    }

    .landing-header-actions[b-r7et5m1ihq] {
        gap: 6px;
    }

    .header-login-link[b-r7et5m1ihq] {
        display: none;
    }

    .hero-visual[b-r7et5m1ihq] {
        min-height: 285px;
    }

    .smartpos-image[b-r7et5m1ihq] {
        width: 112%;
    }

}
/* /Pages/Login.razor.rz.scp.css */
.login-page[b-ydt3b9q8xm] {
    --vcd-orange: #e86800;
    --vcd-orange-dark: #c95700;
    --vcd-orange-soft: #fff5ed;
    --vcd-orange-border: #f2d7c2;
    --vcd-text: #24272b;
    --vcd-muted: #68717a;
    --vcd-border: #e2e6ea;
    --vcd-surface: #ffffff;

    min-height: 100vh;
    min-height: 100dvh;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(18px, 3vw, 38px);
    color: var(--vcd-text);
    background:
        radial-gradient(circle at 10% 10%, rgba(232, 104, 0, .09), transparent 28%),
        linear-gradient(180deg, #fafbfc 0%, #f2f4f6 100%);
}

.login-page *[b-ydt3b9q8xm],
.login-page *[b-ydt3b9q8xm]::before,
.login-page *[b-ydt3b9q8xm]::after {
    box-sizing: border-box;
}

.login-shell-card[b-ydt3b9q8xm] {
    width: min(1080px, 100%);
    display: grid;
    grid-template-columns: minmax(300px, 40%) minmax(0, 60%);
    overflow: hidden;
    background: var(--vcd-surface);
    border: 1px solid #e3e7ea;
    border-radius: 24px;
    box-shadow: 0 22px 60px rgba(31, 42, 51, .11);
}

.login-brand-panel[b-ydt3b9q8xm] {
    min-width: 0;
    min-height: 610px;
    padding: clamp(30px, 3.5vw, 46px);
    display: flex;
    flex-direction: column;
    color: var(--vcd-text);
    background:
        radial-gradient(circle at 18% 12%, rgba(232, 104, 0, .13), transparent 34%),
        linear-gradient(145deg, #fff9f4 0%, #fff1e5 58%, #fffaf7 100%);
    border-right: 1px solid var(--vcd-orange-border);
}

.brand-header[b-ydt3b9q8xm] {
    display: flex;
    align-items: center;
    gap: 15px;
}

.vcd-logo-frame[b-ydt3b9q8xm] {
    width: 86px;
    min-width: 86px;
    height: 86px;
    padding: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border: 1px solid #eadfd7;
    border-radius: 18px;
    box-shadow: 0 8px 22px rgba(73, 49, 31, .08);
}

.login-logo[b-ydt3b9q8xm] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.brand-name-block[b-ydt3b9q8xm] {
    min-width: 0;
}

.vcd-logo-text[b-ydt3b9q8xm] {
    color: #263039;
    font-size: 1.30rem;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: -.02em;
}

.vcd-logo-subtext[b-ydt3b9q8xm] {
    margin-top: 5px;
    color: #8c6d57;
    font-size: .66rem;
    line-height: 1;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.brand-content[b-ydt3b9q8xm] {
    margin: auto 0;
    padding: 38px 0;
}

.brand-eyebrow[b-ydt3b9q8xm] {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 10px;
    color: var(--vcd-orange-dark);
    background: rgba(232, 104, 0, .08);
    border: 1px solid rgba(232, 104, 0, .18);
    border-radius: 999px;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .10em;
}

.brand-content h1[b-ydt3b9q8xm] {
    max-width: 380px;
    margin: 18px 0 0;
    color: #20262d;
    font-size: clamp(1.8rem, 2.5vw, 2.5rem);
    line-height: 1.10;
    font-weight: 800;
    letter-spacing: -.035em;
}

.brand-content > p[b-ydt3b9q8xm] {
    max-width: 390px;
    margin: 16px 0 0;
    color: #616b74;
    font-size: .92rem;
    line-height: 1.60;
}

.brand-points[b-ydt3b9q8xm] {
    display: grid;
    gap: 10px;
    margin-top: 24px;
}

.brand-point[b-ydt3b9q8xm] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #3d4750;
    font-size: .84rem;
    font-weight: 600;
}

.brand-point-marker[b-ydt3b9q8xm] {
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 50%;
    background: var(--vcd-orange);
    box-shadow: 0 0 0 4px rgba(232, 104, 0, .10);
}

.brand-footer[b-ydt3b9q8xm] {
    padding-top: 16px;
    color: #907f72;
    border-top: 1px solid rgba(232, 104, 0, .14);
    font-size: .70rem;
}

.login-main-panel[b-ydt3b9q8xm] {
    min-width: 0;
    padding: clamp(32px, 4vw, 52px) clamp(28px, 5vw, 64px) 26px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: #ffffff;
}

.login-form-area[b-ydt3b9q8xm] {
    width: min(100%, 440px);
    margin: 0 auto;
}

.login-header[b-ydt3b9q8xm] {
    margin-bottom: 22px;
}

.login-kicker[b-ydt3b9q8xm] {
    margin-bottom: 7px;
    color: var(--vcd-orange);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .13em;
}

.login-header h2[b-ydt3b9q8xm] {
    margin: 0;
    color: #20262d;
    font-size: clamp(1.8rem, 2.8vw, 2.25rem);
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -.03em;
}

.login-header p[b-ydt3b9q8xm] {
    margin: 9px 0 0;
    max-width: 410px;
    color: var(--vcd-muted);
    font-size: .90rem;
    line-height: 1.52;
}

.login-form-card[b-ydt3b9q8xm] {
    padding: 22px;
    background: #ffffff;
    border: 1px solid var(--vcd-border);
    border-radius: 16px;
    box-shadow: 0 8px 22px rgba(29, 39, 48, .045);
}

[b-ydt3b9q8xm] .login-form-card .mud-input-control {
    margin-top: 0;
}

[b-ydt3b9q8xm] .login-form-card .mud-input-outlined {
    border-radius: 10px;
    background: #ffffff;
}

[b-ydt3b9q8xm] .login-form-card .mud-input-outlined-border {
    border-color: #d8dde1 !important;
    transition: border-color .16s ease, box-shadow .16s ease;
}

[b-ydt3b9q8xm] .login-form-card .mud-input-outlined:focus-within .mud-input-outlined-border {
    border-color: var(--vcd-orange) !important;
    box-shadow: 0 0 0 3px rgba(232, 104, 0, .08);
}

[b-ydt3b9q8xm] .login-form-card .mud-input-label {
    color: #565f68;
    font-weight: 600;
}

[b-ydt3b9q8xm] .login-form-card .mud-input-adornment .mud-icon-root {
    color: var(--vcd-orange) !important;
}

[b-ydt3b9q8xm] .login-submit-button.mud-button-root {
    min-height: 48px;
    margin-top: 1px;
    border-radius: 10px;
    font-weight: 800;
    text-transform: none;
    box-shadow: 0 7px 18px rgba(232, 104, 0, .18);
}

[b-ydt3b9q8xm] .login-form-card .mud-alert {
    border-radius: 10px;
}

.login-support-card[b-ydt3b9q8xm] {
    margin-top: 16px;
    padding: 15px 17px;
    background: #fafbfc;
    border: 1px solid #e6e9ec;
    border-radius: 12px;
}

.support-title[b-ydt3b9q8xm] {
    margin-bottom: 8px;
    color: #59636c;
    font-size: .76rem;
    font-weight: 700;
}

.login-links[b-ydt3b9q8xm] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px 16px;
}

.login-links a[b-ydt3b9q8xm],
.special-access a[b-ydt3b9q8xm],
.legal-links a[b-ydt3b9q8xm],
.software-solution-box a[b-ydt3b9q8xm] {
    text-decoration: none;
    transition: color .16s ease;
}

.login-links a[b-ydt3b9q8xm] {
    color: var(--vcd-orange-dark);
    font-size: .82rem;
    font-weight: 700;
}

.login-links a:hover[b-ydt3b9q8xm] {
    color: var(--vcd-orange);
}

.special-access[b-ydt3b9q8xm] {
    margin-top: 11px;
    padding: 10px 2px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: #78828b;
    font-size: .78rem;
}

.special-access-links[b-ydt3b9q8xm] {
    display: flex;
    align-items: center;
    gap: 14px;
}

.special-access a[b-ydt3b9q8xm] {
    color: #35404a;
    font-weight: 800;
}

.special-access a:hover[b-ydt3b9q8xm] {
    color: var(--vcd-orange);
}

.login-footer[b-ydt3b9q8xm] {
    width: min(100%, 440px);
    margin: 22px auto 0;
    padding-top: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px 14px;
    border-top: 1px solid #edf0f2;
}

.software-solution-box[b-ydt3b9q8xm] {
    display: flex;
    align-items: center;
    gap: 4px;
    color: #9aa1a7;
    font-size: .67rem;
}

.software-solution-box a[b-ydt3b9q8xm] {
    color: #747d85;
    font-weight: 700;
}

.software-solution-box a:hover[b-ydt3b9q8xm] {
    color: var(--vcd-orange);
}

.legal-links[b-ydt3b9q8xm] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.legal-links a[b-ydt3b9q8xm] {
    color: #878f96;
    font-size: .67rem;
    font-weight: 600;
}

.legal-links a:hover[b-ydt3b9q8xm] {
    color: var(--vcd-orange-dark);
}

/* Notebook e tablet: il branding resta visibile ma non sottrae spazio al form. */
@media (max-width: 960px) {
    .login-page[b-ydt3b9q8xm] {
        align-items: flex-start;
        padding: 22px;
    }

    .login-shell-card[b-ydt3b9q8xm] {
        grid-template-columns: 1fr;
    }

    .login-brand-panel[b-ydt3b9q8xm] {
        min-height: 0;
        padding: 24px 30px;
        border-right: 0;
        border-bottom: 1px solid var(--vcd-orange-border);
    }

    .vcd-logo-frame[b-ydt3b9q8xm] {
        width: 72px;
        min-width: 72px;
        height: 72px;
        border-radius: 15px;
    }

    .brand-content[b-ydt3b9q8xm] {
        padding: 22px 0 0;
    }

    .brand-content h1[b-ydt3b9q8xm] {
        max-width: 720px;
        margin-top: 12px;
        font-size: clamp(1.5rem, 4vw, 2rem);
    }

    .brand-content > p[b-ydt3b9q8xm] {
        max-width: 720px;
        margin-top: 10px;
    }

    .brand-points[b-ydt3b9q8xm],
    .brand-footer[b-ydt3b9q8xm],
    .brand-eyebrow[b-ydt3b9q8xm] {
        display: none;
    }

    .login-main-panel[b-ydt3b9q8xm] {
        padding: 30px 30px 24px;
    }

    .login-form-area[b-ydt3b9q8xm],
    .login-footer[b-ydt3b9q8xm] {
        width: min(100%, 520px);
    }
}

/* Smartphone: priorità assoluta al form; il pannello superiore diventa una testata compatta. */
@media (max-width: 600px) {
    .login-page[b-ydt3b9q8xm] {
        display: block;
        padding: 0;
        background: #ffffff;
    }

    .login-shell-card[b-ydt3b9q8xm] {
        width: 100%;
        border: 0;
        border-radius: 0;
        box-shadow: none;
    }

    .login-brand-panel[b-ydt3b9q8xm] {
        padding: 16px 18px;
        border-radius: 0 0 18px 18px;
    }

    .brand-header[b-ydt3b9q8xm] {
        gap: 11px;
    }

    .vcd-logo-frame[b-ydt3b9q8xm] {
        width: 62px;
        min-width: 62px;
        height: 62px;
        padding: 5px;
        border-radius: 13px;
    }

    .vcd-logo-text[b-ydt3b9q8xm] {
        font-size: 1.08rem;
    }

    .vcd-logo-subtext[b-ydt3b9q8xm] {
        margin-top: 4px;
        font-size: .58rem;
    }

    .brand-content[b-ydt3b9q8xm] {
        display: none;
    }

    .login-main-panel[b-ydt3b9q8xm] {
        padding: 24px 16px 18px;
    }

    .login-header[b-ydt3b9q8xm] {
        margin-bottom: 18px;
    }

    .login-header h2[b-ydt3b9q8xm] {
        font-size: 1.65rem;
    }

    .login-header p[b-ydt3b9q8xm] {
        font-size: .84rem;
    }

    .login-form-card[b-ydt3b9q8xm] {
        padding: 18px 16px;
        border-radius: 14px;
    }

    .login-support-card[b-ydt3b9q8xm] {
        padding: 14px 15px;
    }

    .login-links[b-ydt3b9q8xm] {
        display: grid;
        gap: 7px;
    }

    .special-access[b-ydt3b9q8xm] {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }

    .special-access-links[b-ydt3b9q8xm] {
        flex-wrap: wrap;
        gap: 6px 14px;
    }

    .login-footer[b-ydt3b9q8xm] {
        margin-top: 20px;
        padding-top: 14px;
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
    }
}

@media (max-width: 360px) {
    .login-brand-panel[b-ydt3b9q8xm] {
        padding-left: 14px;
        padding-right: 14px;
    }

    .login-main-panel[b-ydt3b9q8xm] {
        padding-left: 12px;
        padding-right: 12px;
    }

    .login-form-card[b-ydt3b9q8xm] {
        padding-left: 14px;
        padding-right: 14px;
    }
}
/* /Pages/PasswordRecovery.razor.rz.scp.css */
.recovery-page[b-pc5o3aapu6] {
    min-height: 100vh;
    min-height: 100dvh;
    display: grid;
    place-items: center;
    padding: 24px;
    background: #f5f6f8;
}

.recovery-card[b-pc5o3aapu6] {
    width: min(100%, 620px);
    overflow: hidden;
    border: 1px solid #e4e8eb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 15px 36px rgba(25, 40, 52, .10);
}

.recovery-header[b-pc5o3aapu6] {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 22px 28px;
    color: #fff;
    background: #e86800;
}

.recovery-header img[b-pc5o3aapu6] {
    width: 44px;
    height: 44px;
    object-fit: contain;
}

.recovery-kicker[b-pc5o3aapu6] {
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .12em;
    opacity: .85;
}

.recovery-header h1[b-pc5o3aapu6] {
    margin: 2px 0 0;
    font-size: clamp(1.4rem, 4vw, 1.8rem);
}

.recovery-body[b-pc5o3aapu6] {
    padding: 30px;
}

.recovery-intro[b-pc5o3aapu6] {
    margin: 0 0 24px;
    color: #53626e;
    line-height: 1.65;
}

.center-status[b-pc5o3aapu6] {
    display: grid;
    justify-items: center;
    gap: 14px;
    padding: 20px 0;
    color: #586773;
}

.center-status p[b-pc5o3aapu6] {
    margin: 0;
}

.recovery-actions[b-pc5o3aapu6] {
    margin-top: 24px;
}

.recovery-actions.secondary[b-pc5o3aapu6] {
    text-align: center;
}

.recovery-actions a[b-pc5o3aapu6] {
    color: #003d59;
    font-weight: 600;
}

@media (max-width: 600px) {
    .recovery-page[b-pc5o3aapu6] { padding: 12px; }
    .recovery-header[b-pc5o3aapu6] { padding: 18px 20px; }
    .recovery-body[b-pc5o3aapu6] { padding: 22px 18px; }
}
/* /Pages/Register.razor.rz.scp.css */
.public-account-page[b-pyod8kf3qr] {
    min-height: 100vh;
    min-height: 100dvh;
    background: #f5f6f8;
    color: #1f2933;
}

.public-account-topbar[b-pyod8kf3qr] {
    min-height: 68px;
    display: flex;
    align-items: center;
    padding: 10px clamp(18px, 4vw, 56px);
    background: #e86800;
    box-shadow: 0 2px 14px rgba(0, 0, 0, .10);
}

.public-brand[b-pyod8kf3qr] {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: #fff;
    font-size: 1.05rem;
    font-weight: 700;
    text-decoration: none;
}

.public-brand img[b-pyod8kf3qr] {
    width: 42px;
    height: 42px;
    object-fit: contain;
}

.register-content[b-pyod8kf3qr] {
    width: min(1180px, calc(100% - 32px));
    margin: 34px auto;
    display: grid;
    grid-template-columns: minmax(290px, .75fr) minmax(0, 1.35fr);
    gap: 28px;
    align-items: start;
}

.register-intro[b-pyod8kf3qr],
.register-card[b-pyod8kf3qr] {
    border: 1px solid #e5e8ec;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(26, 38, 49, .07);
}

.register-intro[b-pyod8kf3qr] {
    position: sticky;
    top: 28px;
    padding: 30px;
    background: linear-gradient(145deg, #fff7f1 0%, #fff 58%, #f2f7fa 100%);
}

.eyebrow[b-pyod8kf3qr] {
    margin-bottom: 8px;
    color: #e86800;
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.register-intro h1[b-pyod8kf3qr] {
    margin: 0 0 14px;
    color: #003d59;
    font-size: clamp(1.7rem, 3vw, 2.25rem);
}

.register-intro > p[b-pyod8kf3qr] {
    margin: 0;
    line-height: 1.65;
    color: #526170;
}

.register-steps[b-pyod8kf3qr] {
    display: grid;
    gap: 14px;
    margin: 28px 0;
}

.register-steps > div[b-pyod8kf3qr] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.register-steps span[b-pyod8kf3qr] {
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e86800;
    color: #fff;
    font-weight: 800;
}

.register-steps p[b-pyod8kf3qr] {
    margin: 0;
    font-weight: 600;
}

.register-help[b-pyod8kf3qr] {
    display: grid;
    gap: 4px;
    padding: 15px 16px;
    border-left: 4px solid #e86800;
    border-radius: 10px;
    background: #fff7f1;
}

.register-help a[b-pyod8kf3qr] {
    color: #003d59;
    overflow-wrap: anywhere;
}

.register-card[b-pyod8kf3qr] {
    padding: 26px 28px 30px;
}

.register-card-header[b-pyod8kf3qr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    padding-bottom: 18px;
    border-bottom: 1px solid #edf0f2;
}

.register-card-header h2[b-pyod8kf3qr] {
    margin: 0 0 4px;
    color: #003d59;
    font-size: 1.3rem;
}

.register-card-header p[b-pyod8kf3qr] {
    margin: 0;
    color: #6b7785;
    font-size: .9rem;
}

.back-login[b-pyod8kf3qr] {
    flex: 0 0 auto;
    color: #003d59;
    font-weight: 600;
}

.section-title[b-pyod8kf3qr] {
    margin: 26px 0 14px;
    color: #e86800;
    font-size: .95rem;
    font-weight: 800;
}

.consent-box[b-pyod8kf3qr] {
    margin-bottom: 10px;
    padding: 9px 12px;
    border: 1px solid #e0e5e9;
    border-radius: 10px;
    background: #fff;
}

.consent-box a[b-pyod8kf3qr] {
    color: #003d59;
    font-weight: 600;
}

.captcha-wrap[b-pyod8kf3qr] {
    min-height: 78px;
    margin-top: 18px;
    overflow: hidden;
}

.register-submit[b-pyod8kf3qr] {
    min-height: 48px;
}

.public-account-footer[b-pyod8kf3qr] {
    padding: 0 20px 28px;
    color: #6c7781;
    text-align: center;
    font-size: .86rem;
}

@media (max-width: 900px) {
    .register-content[b-pyod8kf3qr] {
        grid-template-columns: 1fr;
        margin-top: 22px;
    }

    .register-intro[b-pyod8kf3qr] {
        position: static;
        padding: 22px;
    }

    .register-steps[b-pyod8kf3qr] {
        grid-template-columns: repeat(3, 1fr);
        gap: 8px;
    }

    .register-steps > div[b-pyod8kf3qr] {
        align-items: flex-start;
    }
}

@media (max-width: 600px) {
    .public-account-topbar[b-pyod8kf3qr] {
        min-height: 60px;
        padding: 8px 14px;
    }

    .public-brand img[b-pyod8kf3qr] {
        width: 36px;
        height: 36px;
    }

    .public-brand span[b-pyod8kf3qr] {
        font-size: .92rem;
    }

    .register-content[b-pyod8kf3qr] {
        width: min(100% - 20px, 1180px);
        margin: 14px auto 24px;
        gap: 14px;
    }

    .register-intro[b-pyod8kf3qr] {
        padding: 20px;
    }

    .register-steps[b-pyod8kf3qr] {
        grid-template-columns: 1fr;
        margin: 20px 0;
    }

    .register-card[b-pyod8kf3qr] {
        padding: 20px 16px 24px;
        border-radius: 14px;
    }

    .register-card-header[b-pyod8kf3qr] {
        display: block;
    }

    .back-login[b-pyod8kf3qr] {
        display: inline-block;
        margin-top: 10px;
    }

    .captcha-wrap[b-pyod8kf3qr] {
        transform-origin: left top;
        transform: scale(.88);
        width: 114%;
        margin-bottom: -8px;
    }
}
/* /Pages/RegisterConfirm.razor.rz.scp.css */
.status-page[b-9w4rq1rllu] {
    min-height: 100vh;
    min-height: 100dvh;
    display: grid;
    place-items: center;
    padding: 24px;
    background: #f5f6f8;
}

.status-card[b-9w4rq1rllu] {
    width: min(100%, 720px);
    overflow: hidden;
    border: 1px solid #e4e8eb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 16px 38px rgba(25, 40, 52, .10);
}

.status-header[b-9w4rq1rllu] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 25px 30px;
    color: #fff;
    background: #e86800;
}

.status-header img[b-9w4rq1rllu] {
    width: 46px;
    height: 46px;
    object-fit: contain;
}

.status-kicker[b-9w4rq1rllu] {
    margin-bottom: 3px;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .12em;
    opacity: .85;
}

.status-header h1[b-9w4rq1rllu] {
    margin: 0;
    font-size: clamp(1.45rem, 4vw, 1.95rem);
}

.status-body[b-9w4rq1rllu] {
    padding: 30px;
}

.lead[b-9w4rq1rllu] {
    margin: 0;
    color: #43525f;
    font-size: 1.05rem;
    line-height: 1.65;
}

.status-detail[b-9w4rq1rllu] {
    display: grid;
    gap: 3px;
    margin-top: 20px;
    padding: 12px 15px;
    border-radius: 10px;
    background: #f4f6f8;
}

.status-detail span[b-9w4rq1rllu] {
    color: #6b7782;
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
}

.status-detail strong[b-9w4rq1rllu] {
    overflow-wrap: anywhere;
    color: #003d59;
}

.status-actions[b-9w4rq1rllu] {
    margin-top: 26px;
}

@media (max-width: 600px) {
    .status-page[b-9w4rq1rllu] { padding: 12px; }
    .status-header[b-9w4rq1rllu], .status-body[b-9w4rq1rllu] { padding: 20px; }
}
/* /Pages/RegisterVerify.razor.rz.scp.css */
.verify-page[b-pj3jwu8tro] {
    min-height: 100vh;
    min-height: 100dvh;
    display: grid;
    place-items: center;
    padding: 24px;
    background: #f5f6f8;
}

.verify-card[b-pj3jwu8tro] {
    width: min(100%, 680px);
    padding: 34px;
    text-align: center;
    border: 1px solid #e4e8eb;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 15px 35px rgba(25, 40, 52, .09);
}

.verify-logo[b-pj3jwu8tro] {
    width: 54px;
    height: 54px;
    margin-bottom: 18px;
    object-fit: contain;
}

.verify-card h1[b-pj3jwu8tro] {
    margin: 0 0 12px;
    color: #003d59;
    font-size: clamp(1.45rem, 4vw, 1.9rem);
}

.verify-card > p[b-pj3jwu8tro] {
    color: #667582;
}

.verify-icon[b-pj3jwu8tro] {
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    margin: 0 auto 18px;
    border-radius: 50%;
    font-size: 2rem;
    font-weight: 800;
}

.verify-icon.pending[b-pj3jwu8tro] { background: #eef5f8; color: #003d59; }
.verify-icon.success[b-pj3jwu8tro] { background: #eaf8ef; color: #23884c; }
.verify-icon.error[b-pj3jwu8tro] { background: #fff4e7; color: #c36b00; }

.redirect-note[b-pj3jwu8tro] {
    margin: 16px 0 0;
    font-size: .9rem;
}

@media (max-width: 600px) {
    .verify-page[b-pj3jwu8tro] { padding: 12px; }
    .verify-card[b-pj3jwu8tro] { padding: 25px 18px; }
}
