/*
 * ============================================================
 * LegalDesk AUTH V6-C
 * Login + Trial + Paid registration
 *
 * Design goal:
 * - same visual family as approved public V6
 * - dark V6 shell
 * - high-contrast light working surfaces
 * - no dark text over dark backgrounds
 * - transparent approved LegalDesk logo
 * - preserve existing markup, forms and JS
 * ============================================================
 */

body.ld-auth-v6-c{
    --auth-bg:#0A0B10;
    --auth-bg-soft:#10131A;

    --auth-surface:#FFFFFF;
    --auth-surface-2:#F7F8FB;
    --auth-surface-3:#EEF1F6;

    --auth-ink:#0B162A;
    --auth-copy:#536176;
    --auth-muted:#758198;

    --auth-line:#DCE2EB;

    --auth-gold:#D9AE66;
    --auth-gold-soft:#F5E8CF;

    --auth-blue:#4F7CFF;
    --auth-cyan:#22D3EE;

    min-height:100vh;

    background:
        radial-gradient(
            circle at 85% 8%,
            rgba(79,124,255,.15),
            transparent 31%
        ),
        radial-gradient(
            circle at 12% 72%,
            rgba(34,211,238,.07),
            transparent 30%
        ),
        #0A0B10
        !important;

    color:#F5F6FA !important;

    font-family:
        Inter,
        system-ui,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        sans-serif
        !important;
}

/* ============================================================
 * Approved brand asset
 * ============================================================ */

body.ld-auth-v6-c .ld-auth-brand-logo{
    display:block !important;
    width:auto !important;
    max-width:230px !important;
    height:auto !important;

    padding:0 !important;
    margin:0 !important;

    border:0 !important;
    border-radius:0 !important;

    background:transparent !important;
    box-shadow:none !important;
}

/* kill previous white logo-box treatment */
body.ld-auth-v6-c
:is(
    .legaldesk-public-brand-logo,
    .legaldesk-public-brand-logo--login,
    .logo-svg
){
    padding:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

/* ============================================================
 * Generic typography
 * ============================================================ */

body.ld-auth-v6-c h1,
body.ld-auth-v6-c h2,
body.ld-auth-v6-c h3{
    font-family:
        "Bricolage Grotesque",
        Inter,
        sans-serif
        !important;

    letter-spacing:-.035em !important;
}

body.ld-auth-v6-c p{
    line-height:1.65;
}

body.ld-auth-v6-c .eyebrow{
    color:var(--auth-gold) !important;

    font-size:11px !important;
    font-weight:800 !important;
    letter-spacing:.14em !important;
}

/* ============================================================
 * LOGIN
 * ============================================================ */

body.ld-auth-v6-c-login .auth-shell{
    width:min(1240px,calc(100% - 48px)) !important;
    min-height:calc(100vh - 48px) !important;

    margin:24px auto !important;

    display:grid !important;
    grid-template-columns:minmax(0,1.08fr) minmax(390px,.72fr) !important;

    overflow:hidden !important;

    border:
        1px solid
        rgba(255,255,255,.09)
        !important;

    border-radius:28px !important;

    background:
        rgba(255,255,255,.025)
        !important;

    box-shadow:
        0 35px 100px
        rgba(0,0,0,.36)
        !important;
}

/* left marketing panel */
body.ld-auth-v6-c-login .brand-panel{
    min-height:auto !important;

    padding:
        clamp(42px,6vw,76px)
        clamp(38px,6vw,74px)
        !important;

    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;

    background:
        radial-gradient(
            circle at 22% 18%,
            rgba(79,124,255,.13),
            transparent 30%
        ),
        radial-gradient(
            circle at 75% 80%,
            rgba(34,211,238,.07),
            transparent 32%
        ),
        linear-gradient(
            145deg,
            #0E1118,
            #090B10
        )
        !important;

    color:#F7F8FB !important;
}

body.ld-auth-v6-c-login .brand-panel::before,
body.ld-auth-v6-c-login .brand-panel::after{
    opacity:.18 !important;
}

body.ld-auth-v6-c-login .brand-copy{
    max-width:650px !important;
}

body.ld-auth-v6-c-login .brand-panel h1{
    margin-top:28px !important;

    max-width:650px !important;

    color:#F7F8FB !important;

    font-size:
        clamp(48px,5.4vw,74px)
        !important;

    line-height:.98 !important;
}

body.ld-auth-v6-c-login .slogan{
    color:var(--auth-gold) !important;
}

body.ld-auth-v6-c-login .lead{
    max-width:620px !important;

    color:#AAB4C6 !important;

    font-size:16px !important;
}

body.ld-auth-v6-c-login .feature-row{
    gap:12px !important;
}

body.ld-auth-v6-c-login .feature{
    border:
        1px solid
        rgba(255,255,255,.09)
        !important;

    border-radius:16px !important;

    background:
        rgba(255,255,255,.045)
        !important;

    box-shadow:none !important;
}

body.ld-auth-v6-c-login .feature strong{
    color:#F7F8FB !important;
}

body.ld-auth-v6-c-login .feature span,
body.ld-auth-v6-c-login .feature p{
    color:#8792A7 !important;
}

/* right panel */
body.ld-auth-v6-c-login .login-panel{
    min-height:auto !important;

    padding:
        clamp(32px,4vw,52px)
        !important;

    display:flex !important;
    align-items:center !important;

    background:
        #ECEFF4
        !important;

    color:var(--auth-ink) !important;
}

body.ld-auth-v6-c-login .login-card{
    width:100% !important;
    max-width:430px !important;

    margin:auto !important;

    overflow:hidden !important;

    border:
        1px solid
        #DCE2EA
        !important;

    border-radius:24px !important;

    background:#FFFFFF !important;

    color:var(--auth-ink) !important;

    box-shadow:
        0 26px 70px
        rgba(11,22,42,.12)
        !important;
}

body.ld-auth-v6-c-login .login-head{
    padding:30px 30px 25px !important;

    background:
        linear-gradient(
            145deg,
            #0D1320,
            #101B2D
        )
        !important;

    color:#FFFFFF !important;
}

body.ld-auth-v6-c-login .login-head h2{
    color:#FFFFFF !important;
}

body.ld-auth-v6-c-login .login-head p{
    color:#AEB9CC !important;
}

body.ld-auth-v6-c-login .login-card-logo{
    margin-bottom:22px !important;
}

body.ld-auth-v6-c-login .login-body{
    padding:28px 30px 30px !important;

    background:#FFFFFF !important;

    color:var(--auth-ink) !important;
}

/* labels + inputs */
body.ld-auth-v6-c-login .field label,
body.ld-auth-v6-c-login .login-body label{
    color:#1B2A40 !important;

    font-size:13px !important;
    font-weight:750 !important;
}

body.ld-auth-v6-c-login
:is(
    input[type="email"],
    input[type="password"]
){
    min-height:50px !important;

    border:
        1px solid
        #CBD3DF
        !important;

    border-radius:13px !important;

    background:#F9FAFC !important;

    color:#101827 !important;

    box-shadow:none !important;
}

body.ld-auth-v6-c-login
:is(
    input[type="email"],
    input[type="password"]
):focus{
    border-color:#4F7CFF !important;

    background:#FFFFFF !important;

    box-shadow:
        0 0 0 4px
        rgba(79,124,255,.10)
        !important;
}

/* actions */
body.ld-auth-v6-c-login .btn,
body.ld-auth-v6-c-login button{
    min-height:48px !important;

    border-radius:13px !important;

    font-weight:800 !important;
}

body.ld-auth-v6-c-login .btn-navy,
body.ld-auth-v6-c-login button[type="submit"]{
    border:
        1px solid
        #111927
        !important;

    background:
        linear-gradient(
            135deg,
            #111827,
            #17233A
        )
        !important;

    color:#FFFFFF !important;

    box-shadow:
        0 11px 28px
        rgba(17,24,39,.18)
        !important;
}

body.ld-auth-v6-c-login .btn-outline{
    border:
        1px solid
        #CCD4DF
        !important;

    background:#FFFFFF !important;

    color:#162238 !important;
}

body.ld-auth-v6-c-login .password-help,
body.ld-auth-v6-c-login .meta{
    color:#69768A !important;
}

body.ld-auth-v6-c-login .login-body a{
    color:#926C2D !important;
    font-weight:750 !important;
}

/* ============================================================
 * REGISTRATION — SHARED TRIAL + PAID
 * ============================================================ */

body.ld-auth-v6-c-register{
    background:
        radial-gradient(
            circle at 88% 7%,
            rgba(79,124,255,.14),
            transparent 28%
        ),
        radial-gradient(
            circle at 10% 45%,
            rgba(34,211,238,.06),
            transparent 28%
        ),
        #0A0B10
        !important;
}

/* header */
body.ld-auth-v6-c-register .topbar{
    position:sticky !important;
    top:0 !important;
    z-index:50 !important;

    border-bottom:
        1px solid
        rgba(255,255,255,.08)
        !important;

    background:
        rgba(10,11,16,.93)
        !important;

    box-shadow:none !important;

    backdrop-filter:
        blur(18px)
        !important;
}

body.ld-auth-v6-c-register .nav{
    min-height:78px !important;
}

body.ld-auth-v6-c-register .nav-actions{
    gap:10px !important;
}

body.ld-auth-v6-c-register .nav-actions .btn{
    min-height:42px !important;

    border-radius:12px !important;
}

body.ld-auth-v6-c-register .nav-actions .btn-outline{
    border:
        1px solid
        rgba(255,255,255,.14)
        !important;

    background:
        rgba(255,255,255,.035)
        !important;

    color:#F3F5F9 !important;
}

body.ld-auth-v6-c-register .nav-actions .btn-navy{
    border:
        1px solid
        rgba(217,174,102,.35)
        !important;

    background:
        #F5F6FA
        !important;

    color:#101827 !important;
}

/* whole page */
body.ld-auth-v6-c-register .page{
    max-width:1320px !important;

    padding-top:
        clamp(44px,6vw,76px)
        !important;

    padding-bottom:90px !important;
}

/* hero */
body.ld-auth-v6-c-register .hero{
    margin-bottom:34px !important;

    background:transparent !important;
}

body.ld-auth-v6-c-register .hero .eyebrow{
    color:var(--auth-gold) !important;
}

body.ld-auth-v6-c-register .hero h1{
    max-width:1000px !important;

    margin-top:12px !important;

    color:#F7F8FB !important;

    font-size:
        clamp(48px,5vw,70px)
        !important;

    line-height:1 !important;
}

body.ld-auth-v6-c-register .hero > div > p,
body.ld-auth-v6-c-register .hero p{
    max-width:760px !important;

    color:#A5B0C3 !important;

    font-size:16px !important;
}

/* two-column content */
body.ld-auth-v6-c-register #registro-form.layout{
    display:grid !important;

    grid-template-columns:
        minmax(0,1fr)
        360px
        !important;

    gap:24px !important;

    align-items:start !important;
}

/* MAIN FORM — LIGHT */
body.ld-auth-v6-c-register .form-card{
    overflow:hidden !important;

    border:
        1px solid
        #DDE3EC
        !important;

    border-radius:24px !important;

    background:#FFFFFF !important;

    color:var(--auth-ink) !important;

    box-shadow:
        0 26px 80px
        rgba(0,0,0,.20)
        !important;
}

body.ld-auth-v6-c-register .form-section{
    padding:
        clamp(26px,3vw,36px)
        !important;

    border-bottom:
        1px solid
        #E4E8EF
        !important;

    background:#FFFFFF !important;

    color:var(--auth-ink) !important;
}

body.ld-auth-v6-c-register .form-section:last-child{
    border-bottom:0 !important;
}

body.ld-auth-v6-c-register .section-head h2{
    color:#0E1B2E !important;

    font-size:
        clamp(22px,2vw,28px)
        !important;
}

body.ld-auth-v6-c-register .section-head p{
    color:#69768A !important;
}

/* type cards */
body.ld-auth-v6-c-register .choice-grid{
    gap:12px !important;
}

body.ld-auth-v6-c-register .choice-card{
    min-height:96px !important;

    border:
        1px solid
        #D5DCE6
        !important;

    border-radius:16px !important;

    background:#F8F9FB !important;

    color:#17253A !important;

    box-shadow:none !important;

    transition:
        .2s ease
        !important;
}

body.ld-auth-v6-c-register .choice-card:hover{
    border-color:#A8B7CC !important;

    transform:
        translateY(-1px)
        !important;
}

body.ld-auth-v6-c-register
.choice
input[type="radio"]:checked
+ .choice-card{
    border-color:
        #4F7CFF
        !important;

    background:
        linear-gradient(
            145deg,
            #F3F7FF,
            #F6FBFC
        )
        !important;

    box-shadow:
        0 0 0 3px
        rgba(79,124,255,.09)
        !important;
}

body.ld-auth-v6-c-register .choice-card strong{
    color:#15243A !important;
}

body.ld-auth-v6-c-register .choice-card span,
body.ld-auth-v6-c-register .choice-card p{
    color:#657388 !important;
}

/* form labels */
body.ld-auth-v6-c-register .field label{
    color:#203047 !important;

    font-size:13px !important;
    font-weight:750 !important;
}

/* inputs */
body.ld-auth-v6-c-register
:is(
    input:not([type="radio"]):not([type="hidden"]),
    select,
    textarea
){
    min-height:49px !important;

    border:
        1px solid
        #CBD3DF
        !important;

    border-radius:13px !important;

    background:#FBFCFD !important;

    color:#122036 !important;

    box-shadow:none !important;
}

body.ld-auth-v6-c-register textarea{
    min-height:100px !important;
}

body.ld-auth-v6-c-register
:is(
    input:not([type="radio"]):not([type="hidden"]),
    select,
    textarea
):focus{
    border-color:#4F7CFF !important;

    background:#FFFFFF !important;

    box-shadow:
        0 0 0 4px
        rgba(79,124,255,.09)
        !important;

    outline:none !important;
}

body.ld-auth-v6-c-register option{
    color:#122036 !important;
    background:#FFFFFF !important;
}

body.ld-auth-v6-c-register .field small{
    color:#738096 !important;
}

/* informational boxes */
body.ld-auth-v6-c-register
:is(
    .trial-quick-note,
    .trial-simple-help
){
    border:
        1px solid
        #D8E1EC
        !important;

    border-radius:15px !important;

    background:#F5F8FC !important;

    color:#31425C !important;
}

body.ld-auth-v6-c-register
:is(
    .trial-quick-note,
    .trial-simple-help
)
strong{
    color:#16263D !important;
}

/* ============================================================
 * SUMMARY — DARK but with correct light text
 * ============================================================ */

body.ld-auth-v6-c-register .summary-card{
    position:sticky !important;
    top:102px !important;

    overflow:hidden !important;

    border:
        1px solid
        rgba(255,255,255,.10)
        !important;

    border-radius:24px !important;

    background:
        linear-gradient(
            150deg,
            #141923,
            #0D1118
        )
        !important;

    color:#F7F8FB !important;

    box-shadow:
        0 28px 75px
        rgba(0,0,0,.28)
        !important;
}

body.ld-auth-v6-c-register .summary-hero{
    padding:28px !important;

    background:
        radial-gradient(
            circle at top right,
            rgba(79,124,255,.16),
            transparent 40%
        ),
        linear-gradient(
            145deg,
            #172033,
            #111620
        )
        !important;

    color:#FFFFFF !important;
}

body.ld-auth-v6-c-register .summary-logo{
    border:
        1px solid
        rgba(255,255,255,.10)
        !important;

    background:
        rgba(255,255,255,.06)
        !important;
}

body.ld-auth-v6-c-register .summary-logo-icon{
    color:#E2BB76 !important;
}

body.ld-auth-v6-c-register .summary-hero h3{
    color:#FFFFFF !important;
}

body.ld-auth-v6-c-register .summary-hero p{
    color:#AAB5C8 !important;
}

body.ld-auth-v6-c-register .summary-body{
    padding:26px !important;

    background:transparent !important;
}

body.ld-auth-v6-c-register
:is(
    .summary-plan,
    .trial-summary-note
){
    border:
        1px solid
        rgba(255,255,255,.10)
        !important;

    border-radius:18px !important;

    background:
        rgba(255,255,255,.045)
        !important;

    color:#F5F7FA !important;
}

body.ld-auth-v6-c-register .summary-plan .label{
    color:#A2ADC0 !important;
}

body.ld-auth-v6-c-register .summary-plan h4,
body.ld-auth-v6-c-register .summary-plan strong{
    color:#FFFFFF !important;
}

body.ld-auth-v6-c-register .summary-price{
    color:#E5BF79 !important;
}

body.ld-auth-v6-c-register .summary-list{
    border-top:
        1px solid
        rgba(255,255,255,.08)
        !important;
}

body.ld-auth-v6-c-register .summary-row{
    border-bottom:
        1px solid
        rgba(255,255,255,.08)
        !important;

    background:transparent !important;

    color:#AFB9C9 !important;
}

body.ld-auth-v6-c-register .summary-row strong{
    color:#FFFFFF !important;
}

body.ld-auth-v6-c-register .notice{
    border:
        1px solid
        rgba(217,174,102,.25)
        !important;

    border-radius:15px !important;

    background:
        rgba(217,174,102,.09)
        !important;

    color:#E6C78E !important;
}

body.ld-auth-v6-c-register .trial-summary-note{
    border-color:
        rgba(34,211,238,.18)
        !important;

    background:
        rgba(34,211,238,.055)
        !important;
}

body.ld-auth-v6-c-register .trial-summary-note,
body.ld-auth-v6-c-register .trial-summary-note strong{
    color:#DCEEF1 !important;
}

/* ============================================================
 * SUBMIT AREA
 * ============================================================ */

body.ld-auth-v6-c-register .actions{
    padding:
        22px
        clamp(26px,3vw,36px)
        !important;

    border-top:
        1px solid
        #E1E6ED
        !important;

    background:#F7F8FA !important;
}

body.ld-auth-v6-c-register .submit-btn,
body.ld-auth-v6-c-register button[type="submit"]{
    min-height:50px !important;

    border:
        1px solid
        #151D2A
        !important;

    border-radius:13px !important;

    background:
        linear-gradient(
            135deg,
            #111827,
            #1B2941
        )
        !important;

    color:#FFFFFF !important;

    font-weight:800 !important;

    box-shadow:
        0 12px 30px
        rgba(17,24,39,.18)
        !important;
}

body.ld-auth-v6-c-register .actions .btn-outline,
body.ld-auth-v6-c-register .summary-card .btn-outline{
    border:
        1px solid
        rgba(255,255,255,.13)
        !important;

    background:
        rgba(255,255,255,.03)
        !important;

    color:#F2F5F9 !important;
}

body.ld-auth-v6-c-register .form-card .btn-outline{
    border:
        1px solid
        #D0D7E2
        !important;

    background:#FFFFFF !important;

    color:#26364C !important;
}

/* ============================================================
 * Error / success
 * ============================================================ */

body.ld-auth-v6-c .alert-error{
    border-color:#F2C9CB !important;
    background:#FFF1F2 !important;
    color:#9F2430 !important;
}

body.ld-auth-v6-c .alert-success{
    border-color:#BDE5CE !important;
    background:#ECF9F1 !important;
    color:#17623A !important;
}

/* ============================================================
 * Responsive
 * ============================================================ */

@media(max-width:1050px){

    body.ld-auth-v6-c-login .auth-shell{
        grid-template-columns:1fr !important;
    }

    body.ld-auth-v6-c-login .brand-panel{
        min-height:auto !important;
    }

    body.ld-auth-v6-c-login .login-panel{
        padding:34px !important;
    }

    body.ld-auth-v6-c-register #registro-form.layout{
        grid-template-columns:1fr !important;
    }

    body.ld-auth-v6-c-register .summary-card{
        position:static !important;
    }
}

@media(max-width:760px){

    body.ld-auth-v6-c-login .auth-shell{
        width:
            min(100% - 24px,1240px)
            !important;

        margin:12px auto !important;

        border-radius:20px !important;
    }

    body.ld-auth-v6-c-login .feature-row{
        grid-template-columns:1fr !important;
    }

    body.ld-auth-v6-c-login .brand-panel{
        padding:36px 26px !important;
    }

    body.ld-auth-v6-c-login .login-panel{
        padding:18px !important;
    }

    body.ld-auth-v6-c-login .login-head,
    body.ld-auth-v6-c-login .login-body{
        padding:25px 22px !important;
    }

    body.ld-auth-v6-c-register .page{
        padding:
            34px
            16px
            60px
            !important;
    }

    body.ld-auth-v6-c-register .hero h1{
        font-size:
            clamp(38px,11vw,52px)
            !important;
    }

    body.ld-auth-v6-c-register .choice-grid,
    body.ld-auth-v6-c-register .grid{
        grid-template-columns:1fr !important;
    }

    body.ld-auth-v6-c-register .form-section{
        padding:24px 20px !important;
    }

    body.ld-auth-v6-c-register .actions{
        padding:20px !important;
    }
}


/* ============================================================
 * AUTH-V6-C-D
 * Registration page contrast correction
 *
 * The legacy registration .page surface carries a light/gray
 * background. The V6 hero uses light typography, causing the
 * title to disappear. Keep the working form surface white,
 * but return the page / hero shell to the approved dark V6.
 * ============================================================ */

body.ld-auth-v6-c-register .page{
    background:
        radial-gradient(
            circle at 84% 6%,
            rgba(79,124,255,.11),
            transparent 31%
        ),
        radial-gradient(
            circle at 10% 36%,
            rgba(34,211,238,.055),
            transparent 28%
        ),
        #0A0B10
        !important;

    color:#F5F6FA !important;

    box-shadow:none !important;
}

/*
 * Hero must always remain a dark/high-contrast area.
 */

body.ld-auth-v6-c-register .hero{
    position:relative !important;

    margin:
        0
        0
        38px
        !important;

    padding:0 !important;

    background:
        transparent
        !important;

    color:#F5F6FA !important;
}

body.ld-auth-v6-c-register .hero h1{
    color:#F7F8FB !important;

    opacity:1 !important;

    text-shadow:
        0 1px 0
        rgba(0,0,0,.08)
        !important;
}

body.ld-auth-v6-c-register .hero p{
    color:#AAB5C8 !important;
    opacity:1 !important;
}

body.ld-auth-v6-c-register .hero .eyebrow{
    color:#D9AE66 !important;
    opacity:1 !important;
}

/*
 * Eliminate any inherited light pseudo-surface behind the hero.
 */

body.ld-auth-v6-c-register .page::before,
body.ld-auth-v6-c-register .page::after,
body.ld-auth-v6-c-register .hero::before,
body.ld-auth-v6-c-register .hero::after{
    background:transparent !important;
}

/*
 * Keep all actual data-entry surfaces intentionally light.
 */

body.ld-auth-v6-c-register .form-card,
body.ld-auth-v6-c-register .form-section{
    background:#FFFFFF !important;
}

body.ld-auth-v6-c-register .actions{
    background:#F7F8FA !important;
}

/*
 * Keep the side summary intentionally dark and readable.
 */

body.ld-auth-v6-c-register .summary-card{
    background:
        linear-gradient(
            150deg,
            #141923,
            #0D1118
        )
        !important;

    color:#F7F8FB !important;
}

/*
 * Ensure no public landing hero rules can wash out this page.
 */

body.ld-auth-v6-c-register
:is(
    .hero h1,
    .hero h2,
    .hero h3
){
    -webkit-text-fill-color:
        currentColor
        !important;

    filter:none !important;
}

/*
 * Mobile retains the same contrast contract.
 */

@media(max-width:760px){

    body.ld-auth-v6-c-register .page{
        background:#0A0B10 !important;
    }

    body.ld-auth-v6-c-register .hero{
        margin-bottom:28px !important;
    }
}
