﻿:root {
    --corp-bg: #f4f7fb;
    --corp-card: rgba(255, 255, 255, .88);
    --corp-text: #101828;
    --corp-muted: #667085;
    --corp-line: #e4e7ec;
    --corp-soft: #f9fafb;
    --corp-primary: #2563eb;
    --corp-primary-2: #1d4ed8;
    --corp-primary-soft: #eff6ff;
    --corp-danger: #dc2626;
    --corp-success: #059669;
    --corp-warning: #d97706;
    --corp-shadow: 0 24px 70px rgba(15, 23, 42, .15);
    --corp-radius: 28px
}

.corp-auth, .corp-auth * {
    box-sizing: border-box
}

.corp-auth {
    position: relative;
    min-block-size: min(860px, 100vh);
    color: var(--corp-text);
    overflow: hidden;
    padding: clamp(20px, 4vw, 48px);
    background: radial-gradient(circle at top left, #dbeafe 0, transparent 34%), radial-gradient(circle at bottom right, #e0e7ff 0, transparent 32%), var(--corp-bg)
}

.corp-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden
}

.corp-orb {
    position: absolute;
    border-radius: 999px;
    filter: blur(12px);
    opacity: .75
}

.corp-orb-a {
    inline-size: 340px;
    block-size: 340px;
    inset-inline-start: -80px;
    inset-block-start: -100px;
    background: linear-gradient(135deg, #60a5fa, #a78bfa)
}

.corp-orb-b {
    inline-size: 300px;
    block-size: 300px;
    inset-inline-end: -90px;
    inset-block-end: -100px;
    background: linear-gradient(135deg, #22c55e, #38bdf8)
}

.corp-grid {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(37,99,235,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(37,99,235,.055) 1px, transparent 1px);
    background-size: 42px 42px;
    mask-image: radial-gradient(circle at center, #000 0, transparent 72%)
}

.corp-shell {
    position: relative;
    inline-size: min(1120px, 100%);
    margin-block-start: 0;
    margin-inline-end: auto;
    margin-block-end: 0;
    margin-inline-start: auto;
    display: grid;
    grid-template-columns: minmax(0, .96fr) minmax(380px, 480px);
    gap: clamp(22px, 4vw, 54px);
    align-items: center;
    min-block-size: calc(100vh - 96px)
}

.corp-brand-panel {
    min-block-size: 60vh;
    display: flex;
    align-items: stretch
}

.corp-brand-card {
    flex: 1;
    position: relative;
    padding: clamp(32px, 4vw, 54px);
    border-radius: 36px;
    color: white;
    background: linear-gradient(145deg, rgba(15,23,42,.92), rgba(30,64,175,.86)), radial-gradient(circle at 80% 20%, rgba(96,165,250,.58), transparent 40%);
    box-shadow: var(--corp-shadow);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end
}

    .corp-brand-card:before {
        content: "";
        position: absolute;
        inset: 24px;
        border: 1px solid rgba(255,255,255,.18);
        border-radius: 28px
    }

.corp-logo-mark {
    position: absolute;
    inset-block-start: 46px;
    inset-inline-start: 46px;
    inline-size: 58px;
    block-size: 58px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: rgba(255,255,255,.16);
    backdrop-filter: blur(20px);
    font-size: 28px;
    font-weight: 900;
    letter-spacing: -.06em
}

.corp-kicker {
    position: relative;
    color: #bfdbfe;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .16em;
    margin-block-end: 12px
}

.corp-brand-card h1 {
    position: relative;
    font-size: clamp(34px, 5vw, 58px);
    line-height: .95;
    letter-spacing: -.055em;
    margin-block-start: 0;
    margin-inline-end: 0;
    margin-block-end: 20px;
    margin-inline-start: 0;
    max-inline-size: 620px;
    font-family: 'IRANSans';
}

.corp-brand-card p {
    position: relative;
    color: rgba(255,255,255,.78);
    font-size: 17px;
    line-height: 1.75;
    margin-block-start: 0;
    margin-inline-end: 0;
    margin-block-end: 28px;
    margin-inline-start: 0;
    max-inline-size: 560px
}

.corp-trust-row {
    position: relative;
    display: flex;
    gap: 10px;
    flex-wrap: wrap
}

    .corp-trust-row span {
        padding-block-start: 9px;
        padding-inline-end: 12px;
        padding-block-end: 9px;
        padding-inline-start: 12px;
        border: 1px solid rgba(255,255,255,.18);
        border-radius: 999px;
        background: rgba(255,255,255,.1);
        color: rgba(255,255,255,.82);
        font-size: 12px;
        font-weight: 700
    }

.corp-card {
    inline-size: 100%;
    border: 1px solid rgba(255,255,255,.7);
    border-radius: var(--corp-radius);
    padding: clamp(24px, 4vw, 36px);
    background: var(--corp-card);
    box-shadow: var(--corp-shadow);
    backdrop-filter: blur(24px);
    min-block-size: 60vh;
}

.corp-card-top {
    min-block-size: 34px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-block-end: 16px
}

.corp-icon-btn {
    inline-size: 38px;
    block-size: 38px;
    border: 1px solid var(--corp-line);
    border-radius: 14px;
    background: rgba(255,255,255,.7);
    color: var(--corp-text);
    display: grid;
    place-items: center;
    cursor: pointer;
    transition: .2s ease
}

    .corp-icon-btn:hover {
        transform: translateX(-2px);
        border-color: #bfdbfe;
        background: white
    }

.corp-back.is-hidden {
    opacity: 0;
    pointer-events: none
}

.corp-step-dots {
    display: inline-flex;
    gap: 6px
}

    .corp-step-dots span {
        inline-size: 7px;
        block-size: 7px;
        border-radius: 99px;
        background: #cbd5e1;
        transition: .25s
    }

        .corp-step-dots span.is-active {
            inline-size: 24px;
            background: var(--corp-primary)
        }

.corp-head {
    margin-block-end: 22px
}

.corp-eyebrow {
    color: var(--corp-primary);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .14em;
    font-weight: 900;
    margin-block-end: 8px
}

.corp-head h2 {
    margin: 0;
    font-size: clamp(28px, 4vw, 36px);
    line-height: 1.08;
    letter-spacing: -.04em
}

.corp-head p {
    color: var(--corp-muted);
    line-height: 1.7;
    margin-block-start: 12px;
    margin-inline-end: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    font-size: 14px
}

.corp-alert {
    border-radius: 16px;
    padding-block-start: 12px;
    padding-inline-end: 14px;
    padding-block-end: 12px;
    padding-inline-start: 14px;
    font-size: 13px;
    line-height: 1.55;
    margin-block-start: 0;
    margin-inline-end: 0;
    margin-block-end: 18px;
    margin-inline-start: 0;
    border: 1px solid var(--corp-line);
    background: white
}

    .corp-alert.is-error {
        color: #991b1b;
        border-color: #fecaca;
        background: #fff1f2
    }

    .corp-alert.is-success {
        color: #065f46;
        border-color: #bbf7d0;
        background: #f0fdf4
    }

    .corp-alert.is-info {
        color: #1e40af;
        border-color: #bfdbfe;
        background: #eff6ff
    }

.corp-step {
    animation: corpFade .22s ease
}

.hidden {
    display: none !important
}

@keyframes corpFade {
    from {
        opacity: 0;
        transform: translateY(8px)
    }

    to {
        opacity: 1;
        transform: translateY(0)
    }
}

.corp-field {
    margin-block-end: 18px
}

    .corp-field label {
        display: block;
        font-weight: 800;
        font-size: 13px;
        margin-block-end: 8px
    }

.corp-help {
    display: block;
    color: var(--corp-muted);
    font-size: 12px;
    line-height: 1.5;
    margin-block-start: 7px
}

.corp-field input, .corp-field select, .corp-profile-grid input, .corp-profile-grid select {
    inline-size: 100%;
    border: 1px solid #d0d5dd;
    border-radius: 16px;
    min-block-size: 52px;
    padding-block-start: 0;
    padding-inline-end: 15px;
    padding-block-end: 0;
    padding-inline-start: 15px;
    color: var(--corp-text);
    background: rgba(255,255,255,.86);
    outline: none;
    font: inherit;
    transition: border-color .2s, box-shadow .2s, background .2s
}

    .corp-field input:focus, .corp-field select:focus, .corp-profile-grid input:focus, .corp-profile-grid select:focus {
        border-color: var(--corp-primary);
        box-shadow: 0 0 0 4px rgba(37,99,235,.12);
        background: white
    }

.corp-input-wrap {
    position: relative
}

    .corp-input-wrap input {
        padding-inline-end: 66px
    }

.corp-clear, .corp-toggle-password {
    position: absolute;
    inset-inline-end: 10px;
    inset-block-start: 50%;
    transform: translateY(-50%);
    block-size: 34px;
    min-inline-size: 34px;
    border: 0;
    border-radius: 12px;
    background: var(--corp-soft);
    color: var(--corp-muted);
    cursor: pointer;
    font-weight: 800
}

.corp-toggle-password {
    min-inline-size: 54px;
    font-size: 12px
}

.corp-primary {
    inline-size: 100%;
    min-block-size: 54px;
    border: 0;
    border-radius: 16px;
    color: white;
    background: linear-gradient(135deg, var(--corp-primary), var(--corp-primary-2));
    font: inherit;
    font-weight: 900;
    cursor: pointer;
    box-shadow: 0 12px 22px rgba(37,99,235,.25);
    transition: transform .2s, box-shadow .2s, opacity .2s
}

    .corp-primary:hover {
        transform: translateY(-1px);
        box-shadow: 0 16px 28px rgba(37,99,235,.3)
    }

    .corp-primary:disabled {
        opacity: .68;
        cursor: not-allowed;
        transform: none
    }

.corp-secondary-actions {
    display: flex;
    justify-content: center;
    gap: 14px;
    margin-block-start: 16px;
    flex-wrap: wrap
}

.corp-link {
    border: 0;
    background: transparent;
    color: var(--corp-primary);
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    padding-block-start: 6px;
    padding-inline-end: 4px;
    padding-block-end: 6px;
    padding-inline-start: 4px
}

    .corp-link:hover {
        color: var(--corp-primary-2);
        text-decoration: underline
    }

    .corp-link:disabled, .corp-link.is-disabled {
        color: #98a2b3;
        cursor: not-allowed;
        text-decoration: none
    }

.corp-choice-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px
}

.corp-choice {
    text-align: start;
    padding: 18px;
    border: 1px solid var(--corp-line);
    border-radius: 18px;
    background: rgba(255,255,255,.82);
    cursor: pointer;
    transition: .2s
}

    .corp-choice:hover {
        border-color: #93c5fd;
        background: white;
        transform: translateY(-1px)
    }

    .corp-choice strong {
        display: block;
        font-size: 15px;
        margin-block-end: 5px
    }

    .corp-choice span {
        display: block;
        color: var(--corp-muted);
        font-size: 13px;
        line-height: 1.5
    }

.corp-code-caption {
    color: var(--corp-muted);
    font-size: 14px;
    line-height: 1.7;
    margin-block-end: 16px
}

.corp-otp-boxes {
    display: flex;
    gap: 10px;
    justify-content: center;
    direction: ltr;
    margin-block-end: 16px
}

    .corp-otp-boxes input {
        inline-size: min(54px, 13vw);
        block-size: 58px;
        border: 1px solid #d0d5dd;
        border-radius: 16px;
        text-align: center;
        font-size: 24px;
        font-weight: 900;
        color: var(--corp-text);
        outline: none;
        background: white;
        transition: .2s
    }

        .corp-otp-boxes input:focus {
            border-color: var(--corp-primary);
            box-shadow: 0 0 0 4px rgba(37,99,235,.12)
        }

.corp-code-tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-block-size: 34px;
    margin-block-end: 16px;
    color: var(--corp-muted);
    font-size: 13px
}

.corp-change-id {
    display: block;
    margin-block-start: 14px;
    margin-inline-end: auto;
    margin-block-end: 0;
    margin-inline-start: auto
}

.corp-profile-grid {
    display: grid;
    gap: 14px;
    margin-block-end: 18px
}

.corp-profile-row label {
    display: block;
    font-weight: 800;
    font-size: 13px;
    margin-block-end: 8px
}

.corp-footer {
    margin-block-start: 22px;
    padding-block-start: 18px;
    border-block-start: 1px solid var(--corp-line)
}

.corp-social-title {
    color: var(--corp-muted);
    font-size: 12px;
    font-weight: 800;
    text-align: center;
    margin-block-end: 12px;
    text-transform: uppercase;
    letter-spacing: .08em
}

.corp-auth .magic-auth-social-title {
    display: none
}

.corp-auth .corp-social-block:empty, .corp-auth .corp-social-block:has(.corp-social-title:only-child) {
    display: none
}

.corp-card.is-loading {
    pointer-events: none
}

    .corp-card.is-loading:after {
        content: "";
        position: absolute
    }

.corp-primary.is-loading {
    color: transparent;
    position: relative
}

    .corp-primary.is-loading:after {
        content: "";
        inline-size: 20px;
        block-size: 20px;
        border: 2px solid rgba(255,255,255,.55);
        border-block-start-color: white;
        border-radius: 50%;
        position: absolute;
        inset-inline-start: 50%;
        inset-block-start: 50%;
        margin-block-start: -10px;
        margin-inline-end: 0;
        margin-block-end: 0;
        margin-inline-start: -10px;
        animation: corpSpin .8s linear infinite
    }

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

@media (max-width: 920px) {
    .corp-shell {
        grid-template-columns: 1fr;
        min-block-size: auto
    }

    .corp-brand-panel {
        display: none
    }

    .corp-card {
        max-inline-size: 520px;
        margin-block-start: 0;
        margin-inline-end: auto;
        margin-block-end: 0;
        margin-inline-start: auto
    }

    .corp-auth {
        min-block-size: 100vh
    }
}

@media (max-width: 520px) {
    .corp-auth {
        padding: 12px
    }

    .corp-card {
        border-radius: 24px;
        padding-block-start: 22px;
        padding-inline-end: 18px;
        padding-block-end: 22px;
        padding-inline-start: 18px
    }

    .corp-otp-boxes {
        gap: 7px
    }

        .corp-otp-boxes input {
            block-size: 52px;
            border-radius: 14px;
            font-size: 21px
        }

    .corp-head h2 {
        font-size: 28px
    }
}

@media (prefers-reduced-motion: reduce) {
    .corp-auth * {
        animation: none !important;
        transition: none !important
    }
}

/* Native OTP input layer: keeps Android keyboard, SMS autofill and backspace reliable while preserving segmented UI. */
.corp-otp-native-host {
    position: relative
}

.corp-otp-boxes .corp-otp-real {
    position: absolute;
    inset: 0;
    inline-size: 100%;
    block-size: 100%;
    opacity: .01;
    color: transparent;
    background: transparent;
    border: 0;
    outline: 0;
    caret-color: transparent;
    z-index: 3;
    font-size: 32px;
    letter-spacing: 20px;
    padding: 0
}

.corp-otp-boxes .corp-otp-input {
    pointer-events: none;
    position: relative;
    z-index: 1
}

    .corp-otp-boxes .corp-otp-input.is-active {
        border-color: var(--corp-primary);
        box-shadow: 0 0 0 4px rgba(37,99,235,.12)
    }

    .corp-otp-boxes .corp-otp-input.is-filled {
        border-color: rgba(37,99,235,.45)
    }

.corp-captcha {
    margin-block: 0 18px;
    padding: 14px;
    border: 1px solid var(--corp-line);
    border-radius: 18px;
    background: rgba(255,255,255,.78);
}

.corp-captcha-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-block-end: 10px;
}

    .corp-captcha-head label {
        font-weight: 900;
        font-size: 13px;
    }

.corp-captcha-body {
    display: grid;
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}

    .corp-captcha-body img {
        inline-size: 190px;
        block-size: 60px;
        object-fit: contain;
        border-radius: 14px;
        border: 1px solid #d0d5dd;
        background: white;
    }

    .corp-captcha-body input {
        inline-size: 100%;
        border: 1px solid #d0d5dd;
        border-radius: 16px;
        min-block-size: 52px;
        padding-inline: 15px;
        background: rgba(255,255,255,.92);
        font: inherit;
        outline: none;
    }

        .corp-captcha-body input:focus {
            border-color: var(--corp-primary);
            box-shadow: 0 0 0 4px rgba(37,99,235,.12);
        }

.corp-role-options {
    margin-block: 14px 18px;
    padding: 14px;
    border: 1px solid var(--corp-line);
    border-radius: 18px;
    background: rgba(255,255,255,.72);
}

.corp-role-title {
    font-size: 13px;
    font-weight: 900;
    margin-block-end: 10px;
}

.corp-role-option {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 10px;
    border-radius: 12px;
    cursor: pointer;
    transition: background .2s ease;
}

    .corp-role-option:hover {
        background: var(--corp-primary-soft);
    }

    .corp-role-option input {
        inline-size: 18px;
        block-size: 18px;
        accent-color: var(--corp-primary);
    }

@media (max-width: 560px) {
    .corp-captcha-body {
        grid-template-columns: 1fr;
    }

        .corp-captcha-body img {
            inline-size: 100%;
            max-inline-size: 220px;
        }
}

.corp-social-block {
    margin-block-start: 22px;
    padding-block-start: 18px;
    border-block-start: 1px solid var(--corp-line);
}

.corp-social-title {
    text-align: center;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--corp-muted);
    margin-block-end: 14px;
}

.corp-social-controls {
    display: grid;
    gap: 10px;
}

    .corp-social-controls a,
    .corp-social-controls button,
    .corp-social-controls input[type="submit"],
    .corp-social-controls .dnnPrimaryAction,
    .corp-social-controls .dnnSecondaryAction {
        inline-size: 100%;
        min-block-size: 48px;
        border-radius: 16px !important;
        border: 1px solid var(--corp-line) !important;
        background: #fff !important;
        color: var(--corp-text) !important;
        box-shadow: 0 10px 28px rgba(15,23,42,.08) !important;
        font-weight: 900 !important;
        text-align: center !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        text-decoration: none !important;
    }

        .corp-social-controls a:hover,
        .corp-social-controls button:hover,
        .corp-social-controls input[type="submit"]:hover {
            transform: translateY(-1px);
            border-color: rgba(37,99,235,.35) !important;
            box-shadow: 0 14px 34px rgba(37,99,235,.14) !important;
        }

        .corp-social-controls a::before,
        .corp-social-controls button::before,
        .corp-social-controls input[type="submit"]::before {
            content: "â†—";
            inline-size: 24px;
            block-size: 24px;
            border-radius: 999px;
            background: var(--corp-primary-soft);
            color: var(--corp-primary);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: 13px;
            line-height: 1;
        }

    .corp-social-controls [href*="google" i]::before,
    .corp-social-controls [id*="google" i]::before {
        content: "G";
    }

    .corp-social-controls [href*="facebook" i]::before,
    .corp-social-controls [id*="facebook" i]::before {
        content: "f";
    }

    .corp-social-controls [href*="twitter" i]::before,
    .corp-social-controls [href*="x.com" i]::before,
    .corp-social-controls [id*="twitter" i]::before {
        content: "ð•";
    }

    .corp-social-controls [href*="github" i]::before,
    .corp-social-controls [id*="github" i]::before {
        content: "âŒ˜";
    }

    .corp-social-controls [href*="linkedin" i]::before,
    .corp-social-controls [id*="linkedin" i]::before {
        content: "in";
    }

/* Logical country + identifier composition */
.corp-phone-row {
    display: grid;
    grid-template-columns: minmax(60px,50px) minmax(0,1fr);
    gap: 10px;
    align-items: stretch;
    direction: ltr;
}

.select2-container {
    direction: ltr;
}

.select2-container--open .select2-dropdown--below {
    min-width: max-content;
    direction: ltr;
}

.corp-phone-row .corp-input-wrap {
    min-inline-size: 0
}

.corp-phone-row .corp-country-select {
    inline-size: 100%;
    block-size: 48px
}

.corp-phone-row .select2-container {
    inline-size: 100% !important;
    min-inline-size: 0;
}

    .corp-phone-row .select2-container .selection {
    }

.corp-phone-row .select2-selection--single {
    block-size: 48px !important;
    display: flex !important;
    align-items: center;
    padding-inline: 10px !important;
    border: 1px solid var(--corp-border) !important;
    border-radius: 12px !important;
    background: var(--corp-surface) !important
}

.corp-phone-row .select2-selection__rendered {
    padding-inline: 0 !important;
    line-height: 1 !important
}

.corp-phone-row .select2-selection__arrow {
    inset-inline-end: 8px !important;
    inset-inline-start: auto !important;
    block-size: 46px !important
}

@media (max-width:520px) {
    .corp-phone-row {
        grid-template-columns: 104px minmax(0,1fr);
        gap: 8px
    }
}

/* ANAJ Identity - Minimal Auth visual system
   Same backend/API contract, deliberately different one-card product UX. */
.minimal-auth {
    --corp-primary: #111827;
    --corp-primary-soft: #f3f4f6;
    --corp-text: #111827;
    --corp-muted: #6b7280;
    --corp-line: #e5e7eb;
    min-height: min(760px, 100vh);
    background: #fafafa;
}
.minimal-auth .corp-bg { display: none; }
.minimal-auth .corp-shell {
    width: min(100%, 520px);
    min-height: 100%;
    margin-inline: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(18px, 5vw, 52px) 16px;
}
.minimal-auth .corp-brand-panel { display: none; }
.minimal-auth .corp-card {
    width: 100%;
    border: 1px solid #e5e7eb;
    border-radius: 24px;
    background: rgba(255,255,255,.98);
    box-shadow: 0 24px 70px rgba(17,24,39,.08);
    padding: clamp(24px, 5vw, 42px);
}
.minimal-auth .corp-card::before {
    content: "ANAJ IDENTITY";
    display: block;
    margin-block-end: 28px;
    color: #111827;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .16em;
}
.minimal-auth .corp-card-top { position: absolute; inset-block-start: 22px; inset-inline-end: 22px; }
.minimal-auth .corp-step-dots { display: none; }
.minimal-auth .corp-head { margin-block-end: 26px; }
.minimal-auth .corp-eyebrow { display: none; }
.minimal-auth .corp-head h2 { font-size: clamp(28px, 6vw, 40px); letter-spacing: -.045em; }
.minimal-auth .corp-head p { max-width: 36ch; }
.minimal-auth input,
.minimal-auth select,
.minimal-auth .select2-selection { border-radius: 12px !important; box-shadow: none !important; }
.minimal-auth .corp-primary { border-radius: 12px; min-height: 50px; box-shadow: none; }
.minimal-auth .corp-choice-grid { grid-template-columns: 1fr; }
.minimal-auth .corp-choice { border-radius: 14px; text-align: start; }
.minimal-auth .corp-otp-boxes { justify-content: center; gap: 8px; }
.minimal-auth .corp-otp-boxes input { border-radius: 10px !important; }
.minimal-auth .corp-footer { margin-block-start: 30px; }
.minimal-auth .corp-social-controls { grid-template-columns: repeat(2, minmax(0,1fr)); }
.minimal-auth .corp-social-controls a,
.minimal-auth .corp-social-controls button,
.minimal-auth .corp-social-controls input[type="submit"] {
    min-block-size: 46px;
    border-radius: 12px !important;
    box-shadow: none !important;
}
@media (max-width: 560px) {
    .minimal-auth { min-height: 100dvh; background: #fff; }
    .minimal-auth .corp-shell { padding: 0; align-items: stretch; }
    .minimal-auth .corp-card { border: 0; border-radius: 0; box-shadow: none; padding: 28px 20px; }
    .minimal-auth .corp-social-controls { grid-template-columns: 1fr; }
}


.corp-payment-result { text-align:center; padding:18px 8px 8px; }
.corp-payment-result-icon { inline-size:68px; block-size:68px; margin:0 auto 18px; border-radius:50%; display:grid; place-items:center; font-size:34px; font-weight:800; background:rgba(124,58,237,.1); color:var(--corp-primary); }
.corp-payment-result.is-success .corp-payment-result-icon { background:rgba(16,185,129,.12); color:#059669; }
.corp-payment-result.is-error .corp-payment-result-icon { background:rgba(239,68,68,.12); color:#dc2626; }
.corp-payment-result.is-pending .corp-payment-result-icon { background:rgba(245,158,11,.12); color:#d97706; }
.corp-payment-result h3 { margin:0 0 10px; font-size:1.25rem; }
.corp-payment-result p { margin:0; line-height:1.8; color:var(--corp-muted); }
.corp-payment-result-reference { margin-top:14px; padding:10px 12px; border:1px solid var(--corp-border); border-radius:10px; font-family:monospace; direction:ltr; }
.corp-payment-result-progress { overflow:hidden; height:4px; margin-top:24px; border-radius:999px; background:rgba(124,58,237,.12); }
.corp-payment-result-progress span { display:block; height:100%; width:100%; transform-origin:left; background:currentColor; animation:corp-payment-countdown 5s linear forwards; }
@keyframes corp-payment-countdown { from { transform:scaleX(1); } to { transform:scaleX(0); } }
