.mynovacard-wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    gap: 28px !important;
}

.mynovacard-view,
.mynovacard-edit,
.mynovacard-password,
.mynovacard-delete-account {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}

.mynovacard-edit,
.mynovacard-password,
.mynovacard-delete-account {
    display: none !important;
}

.mynovacard-form {
    display: block !important;
    width: 100% !important;
    max-width: 760px !important;
    margin: 20px auto 0 !important;
    padding: 24px !important;
    border: 1px solid #ddd !important;
    border-radius: 16px !important;
    background: #fff !important;
    text-align: left !important;
    box-shadow: 0 6px 20px rgba(0,0,0,.04) !important;
    box-sizing: border-box !important;
}

.mynovacard-form h3 {
    text-align: center !important;
    margin-top: 0 !important;
    margin-bottom: 22px !important;
}

.mynovacard-form .field-row {
    display: grid !important;
    grid-template-columns: 175px minmax(0, 1fr) !important;
    column-gap: 18px !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.mynovacard-form .field-row label {
    display: block !important;
    width: 175px !important;
    min-width: 175px !important;
    max-width: 175px !important;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: 600 !important;
    box-sizing: border-box !important;
    text-align: right !important;
    line-height: 1.3 !important;
    white-space: normal !important;
}

.mynovacard-form .field-row input,
.mynovacard-form .field-row textarea,
.mynovacard-form .field-row select {
    display: block !important;
    grid-column: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 10px !important;
    border: 1px solid #bbb !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
    font: inherit !important;
}

.mynovacard-form .field-row textarea {
    resize: vertical !important;
    min-height: 110px !important;
}

.mynovacard-form-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    margin-top: 20px !important;
    flex-wrap: nowrap !important;
}

.mynovacard-form-actions .btn {
    display: block !important;
    width: max-content !important;
    min-width: 190px !important;
    margin: 0 auto !important;
}

.mynovacard-card {
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 auto 20px !important;
    padding: 24px !important;
    border: 1px solid #ddd !important;
    border-radius: 16px !important;
    text-align: center !important;
    background: #fff !important;
    box-shadow: 0 6px 20px rgba(0,0,0,.06) !important;
    box-sizing: border-box !important;
}

.mynovacard-card-title {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    margin: 0 0 14px !important;
}

.mynovacard-company {
    margin: 0 0 10px !important;
}

.mynovacard-name {
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    margin: 12px 0 !important;
}

.mynovacard-extra {
    margin: 8px 0 18px !important;
    white-space: pre-line !important;
}

.mynovacard-button {
    display: inline-block !important;
    margin-top: 30px !important;
}

.mynovacard-qr {
    margin-top: 30px !important;
}

.mynovacard-edit-button {
    margin-top: 30px !important;
}

.mynovacard-address {
    margin: 16px 0 !important;
}

@media (max-width: 768px) {
    .mynovacard-form,
    .mynovacard-card {
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .mynovacard-form .field-row {
        display: block !important;
        margin-bottom: 15px !important;
    }

    .mynovacard-form .field-row label {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        text-align: left !important;
        padding-right: 0 !important;
        margin-bottom: 6px !important;
    }

    .mynovacard-form .field-row input,
    .mynovacard-form .field-row textarea,
    .mynovacard-form .field-row select {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* v3.5.1 Your Virtual Business Card Card button stacking */
.mynovacard-public-link-button{display:block!important;width:max-content!important;margin:14px auto 12px!important;}
.mynovacard-public-return-button{display:block!important;width:max-content!important;margin:0 auto!important;}

/* v3.5.7 Send Invitation card */
.mynovacard-invite {
    width: 100% !important;
    display: none !important;
    flex-direction: column !important;
    align-items: center !important;
}

/* v3.6.0 Contact Info card stacked action buttons */
.mynovacard-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    margin-top: 30px !important;
    width: 100% !important;
}
.mynovacard-actions .btn {
    display: block !important;
    width: 250px !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
}

.mynovacard-public-qr-note {
    font-size: 0.80rem;
    color: #666;
    text-align: center;
    margin: 10px auto 10px auto;
    line-height: 1.4;
    max-width: 360px;
}

.mynovacard-logout-form {
    display: block;
    margin: 10px auto;
    text-align: center;
}
.mynovacard-logout-form .btn {
    display: block;
    width: 250px;
    margin: 10px auto;
}
.mynovacard-password-requirements {
    max-width: 585px;
    margin: -6px auto 14px auto;
    font-size: 0.85rem;
    color: #666;
    text-align: center;
    line-height: 1.35;
}

.mynovacard-save-message {
    font-size: 0.9rem;
    font-weight: 600;
    text-align: center;
    color: #2c3e50;
    margin: 10px auto 10px auto;
}

.mynovacard-add-btn {
    background-color: #28A745;
    border-color: #28A745;
    color: #FFFFFF;
    font-weight: 700;
}


/* v3.8.9 Template004 background for Contact Info card only */
.mynovacard-main-card {
    width: 100% !important;
    max-width: 540px !important;
    min-height: 960px !important;
    padding: 390px 54px 34px 54px !important;
    background-image: url("../images/template004.png") !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-size: 100% 100% !important;
    background-color: #050807 !important;
    border: none !important;
    border-radius: 24px !important;
    box-shadow: 0 8px 28px rgba(0,0,0,.35) !important;
    color: #D8A73A !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
.mynovacard-main-card .mynovacard-card-title {
    display: none !important;
}
.mynovacard-main-card .mynovacard-name {
    color: #D8A73A !important;
    font-size: 2.0rem !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
    margin: 0 0 6px 0 !important;
}
.mynovacard-main-card .mynovacard-company,
.mynovacard-main-card .mynovacard-address,
.mynovacard-main-card .mynovacard-extra,
.mynovacard-main-card div {
    color: #D8A73A !important;
}
.mynovacard-main-card .mynovacard-company {
    font-size: 1.25rem !important;
    margin: 0 0 12px 0 !important;
}
.mynovacard-main-card .mynovacard-address {
    margin: 12px 0 !important;
}
.mynovacard-main-card .mynovacard-extra {
    margin: 10px 0 16px !important;
}
.mynovacard-main-card .mynovacard-save-message {
    color: #D8A73A !important;
    font-size: .95rem !important;
    font-weight: 600 !important;
    margin: 16px auto 10px auto !important;
}
.mynovacard-main-card .mynovacard-actions {
    margin-top: 18px !important;
    gap: 10px !important;
}
.mynovacard-main-card .btn,
.mynovacard-main-card .mynovacard-add-btn,
.mynovacard-main-card .mynovacard-logout-form .btn {
    background: rgba(0,0,0,.35) !important;
    border: 1px solid #D8A73A !important;
    color: #D8A73A !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    box-shadow: none !important;
}
.mynovacard-main-card .btn:hover,
.mynovacard-main-card .mynovacard-add-btn:hover,
.mynovacard-main-card .mynovacard-logout-form .btn:hover {
    background: rgba(216,167,58,.18) !important;
    color: #FFD56A !important;
    border-color: #FFD56A !important;
}
@media (max-width: 600px) {
    .mynovacard-main-card {
        max-width: 100% !important;
        min-height: 0 !important;
        aspect-ratio: 540 / 960 !important;
        padding: 72% 9% 7% 9% !important;
        border-radius: 18px !important;
    }
    .mynovacard-main-card .mynovacard-name {
        font-size: 1.45rem !important;
    }
    .mynovacard-main-card .mynovacard-company {
        font-size: 1.05rem !important;
    }
    .mynovacard-main-card .mynovacard-actions .btn {
        width: 220px !important;
    }
}


/* v3.8.10 Contact Info card background and text refinements */
.mynovacard-main-card {
    background-image: url("../images/template004.png") !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% 100% !important;
    background-color: #050807 !important;
    min-height: 950px !important;
    max-width: 540px !important;
    padding: 390px 54px 34px 54px !important;
    color: #D8A73A !important;
}
.mynovacard-main-card .mynovacard-card-title,
.mynovacard-main-card .mynovacard-name,
.mynovacard-main-card .mynovacard-company,
.mynovacard-main-card .mynovacard-address,
.mynovacard-main-card .mynovacard-extra,
.mynovacard-main-card div {
    color: #D8A73A !important;
}
.mynovacard-main-card .mynovacard-save-message { display:none !important; }
@media (max-width: 600px) {
    .mynovacard-main-card {
        background-size: 100% 100% !important;
        background-position: top center !important;
    }
}


/* v3.8.11: force full Template004 artwork visible in Contact Info card */
.mynovacard-main-card {
    width: 540px !important;
    max-width: 100% !important;
    min-height: 932px !important;
    padding: 390px 54px 34px 54px !important;
    background-image: url("../images/template004.png") !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% 100% !important;
    background-color: #050807 !important;
    border: none !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    color: #D8A73A !important;
}
.mynovacard-main-card .mynovacard-save-message,
.mynovacard-save-message { display: none !important; }
.mynovacard-main-card .mynovacard-card-title { display: none !important; }
@media (max-width: 600px) {
    .mynovacard-main-card {
        width: 100% !important;
        min-height: 0 !important;
        aspect-ratio: 540 / 932 !important;
        padding: 72% 9% 7% 9% !important;
        background-size: 100% 100% !important;
    }
}


/* v3.8.13 mobile logout visibility fix */
@media (max-width: 768px) {
    .mynovacard-actions,
    .mcc-actions,
    .contact-card-actions,
    .contact-info-actions {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 10px !important;
        width: 100% !important;
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }

    .mynovacard-actions form,
    .mcc-actions form,
    .contact-card-actions form,
    .contact-info-actions form,
    form.mcc-logout-form,
    form.mynovacard-logout-form {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        max-width: 280px !important;
        margin: 10px auto !important;
        overflow: visible !important;
        height: auto !important;
    }

    .mynovacard-actions .btn,
    .mcc-actions .btn,
    .contact-card-actions .btn,
    .contact-info-actions .btn,
    .mcc-logout-button,
    .mynovacard-logout-button,
    button[name="logout"],
    button[value="logout"],
    input[value="Log Out"] {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        max-width: 280px !important;
        margin: 10px auto !important;
        position: relative !important;
        z-index: 20 !important;
        white-space: normal !important;
    }
}


/* v3.8.14: mobile action button visibility fix - do not crop logout */
@media (max-width: 600px) {
    .mynovacard-main-card {
        height: auto !important;
        min-height: 932px !important;
        aspect-ratio: auto !important;
        overflow: visible !important;
        padding-bottom: 120px !important;
    }

    .mynovacard-main-card .mynovacard-actions {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        gap: 10px !important;
        width: 100% !important;
        margin: 18px auto 0 auto !important;
        position: relative !important;
        z-index: 999 !important;
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }

    .mynovacard-main-card .mynovacard-actions form,
    .mynovacard-main-card .mcc-logout-form {
        display: block !important;
        width: 100% !important;
        max-width: 260px !important;
        margin: 0 auto !important;
        position: relative !important;
        z-index: 1000 !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .mynovacard-main-card .mynovacard-actions .btn,
    .mynovacard-main-card .mcc-logout-form .btn,
    .mynovacard-main-card .mcc-logout-button {
        display: block !important;
        width: 100% !important;
        max-width: 260px !important;
        min-height: 42px !important;
        margin: 0 auto 10px auto !important;
        visibility: visible !important;
        opacity: 1 !important;
        position: relative !important;
        z-index: 1001 !important;
        box-sizing: border-box !important;
        white-space: normal !important;
    }
}


/* v3.8.15: mobile circle and content positioning fix */
.mynovacard-main-card {
    background-size: 100% auto !important;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    height: auto !important;
    min-height: 1120px !important;
    overflow: visible !important;
}

@media (max-width: 600px) {
    .mynovacard-main-card {
        width: 100% !important;
        max-width: 540px !important;
        min-height: 1120px !important;
        height: auto !important;
        aspect-ratio: auto !important;
        padding: 78% 9% 130px 9% !important;
        background-size: 100% auto !important;
        background-position: top center !important;
        background-repeat: no-repeat !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    .mynovacard-main-card .mynovacard-card-title {
        display: none !important;
    }

    .mynovacard-main-card .mynovacard-name {
        margin-top: 0 !important;
        padding-top: 0 !important;
        line-height: 1.15 !important;
        position: relative !important;
        z-index: 5 !important;
    }

    .mynovacard-main-card .mynovacard-company,
    .mynovacard-main-card .mynovacard-position,
    .mynovacard-main-card .mynovacard-address,
    .mynovacard-main-card .mynovacard-extra,
    .mynovacard-main-card .mynovacard-field {
        position: relative !important;
        z-index: 5 !important;
    }

    .mynovacard-main-card .mynovacard-actions {
        position: relative !important;
        z-index: 50 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        width: 100% !important;
        gap: 10px !important;
        margin-top: 18px !important;
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }

    .mynovacard-main-card .mynovacard-actions .btn,
    .mynovacard-main-card .mcc-logout-form,
    .mynovacard-main-card .mcc-logout-form .btn {
        display: block !important;
        width: 100% !important;
        max-width: 260px !important;
        visibility: visible !important;
        opacity: 1 !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* Extra small phones */
@media (max-width: 390px) {
    .mynovacard-main-card {
        padding-top: 82% !important;
        min-height: 1160px !important;
        padding-bottom: 150px !important;
    }
}


/* v3.8.16: polished black-gold card refinements */
.mynovacard-main-card {
    background-color: #050807 !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% auto !important;
    border-radius: 24px !important;
    overflow: hidden !important;
    box-shadow: 0 8px 28px rgba(0,0,0,.35) !important;
}

/* Do not show CONTACT INFO label from HTML */
.mynovacard-main-card .mynovacard-card-title {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Owner-only buttons: white letters only */
.mynovacard-main-card #mynovacard-edit-btn,
.mynovacard-main-card #mynovacard-public-link-btn,
.mynovacard-main-card .mcc-logout-form .btn,
.mynovacard-main-card .mcc-logout-button {
    color: #ffffff !important;
}

/* Keep Add To Contacts and Invitation colors controlled by existing styles */
.mynovacard-main-card .mynovacard-add-btn,
.mynovacard-main-card #mynovacard-send-invitation-btn {
    color: inherit;
}

/* Remove any white visual gap below the artwork/card */
.mynovacard-wrap,
.mynovacard-view,
#mynovacard-view {
    background: transparent !important;
}

@media (min-width: 601px) {
    .mynovacard-main-card {
        min-height: 1040px !important;
        height: auto !important;
        padding-bottom: 72px !important;
    }
}

@media (max-width: 600px) {
    .mynovacard-main-card {
        width: 100% !important;
        max-width: 540px !important;
        min-height: 1080px !important;
        height: auto !important;
        aspect-ratio: auto !important;
        padding: 78% 9% 90px 9% !important;
        background-color: #050807 !important;
        background-size: 100% auto !important;
        background-position: top center !important;
        background-repeat: no-repeat !important;
        overflow: hidden !important;
        border-radius: 22px !important;
        box-sizing: border-box !important;
    }

    .mynovacard-main-card .mynovacard-actions {
        margin-top: 16px !important;
        padding-bottom: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 10px !important;
        overflow: visible !important;
        height: auto !important;
        max-height: none !important;
    }

    .mynovacard-main-card .mynovacard-actions .btn,
    .mynovacard-main-card .mcc-logout-form,
    .mynovacard-main-card .mcc-logout-form .btn {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        width: 100% !important;
        max-width: 260px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        position: relative !important;
        z-index: 50 !important;
    }
}

@media (max-width: 390px) {
    .mynovacard-main-card {
        min-height: 1110px !important;
        padding-bottom: 100px !important;
    }
}


/* v3.8.18: seamless background bottom fix */
.mynovacard-main-card {
    background-color: #050807 !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% auto !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border-radius: 24px !important;
    padding-bottom: 48px !important;
}

/* Dark continuation blends with template004 without visible white gaps */
.mynovacard-main-card::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 220px !important;
    background: #050807 !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

.mynovacard-main-card > * {
    position: relative !important;
    z-index: 2 !important;
}

.mynovacard-main-card .mynovacard-actions {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

@media (min-width: 601px) {
    .mynovacard-main-card {
        min-height: 0 !important;
        padding-bottom: 54px !important;
    }
}

@media (max-width: 600px) {
    .mynovacard-main-card {
        min-height: 0 !important;
        height: auto !important;
        aspect-ratio: auto !important;
        background-size: 100% auto !important;
        background-position: top center !important;
        background-repeat: no-repeat !important;
        padding-top: 78% !important;
        padding-bottom: 48px !important;
        overflow: hidden !important;
    }

    .mynovacard-main-card::after {
        height: 170px !important;
        background: #050807 !important;
    }

    .mynovacard-main-card .mynovacard-actions {
        margin-top: 14px !important;
        gap: 10px !important;
    }
}

@media (max-width: 390px) {
    .mynovacard-main-card {
        padding-bottom: 54px !important;
    }

    .mynovacard-main-card::after {
        height: 180px !important;
    }
}

/* v3.8.19: static blue background fallback */
.mynovacard-main-card {
    background-image: url("../images/default.png") !important;
}

/* v3.8.20 static blue background fallback */
.mynovacard-main-card {
    background-image: url("../images/default.png") !important;
    background-color: #082a59 !important;
}


/* v3.8.21: single-circle icon fix */
.mynovacard-main-card .mynovacard-field::before,
.mynovacard-main-card .mynovacard-address::before,
.mynovacard-main-card .mynovacard-extra::before {
    content: none !important;
    display: none !important;
    border: 0 !important;
    background: transparent !important;
}

.mynovacard-main-card .mynovacard-icon {
    border: 2px solid #F4B72E !important;
    border-radius: 50% !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
}

.mynovacard-main-card .mynovacard-icon::before,
.mynovacard-main-card .mynovacard-icon::after {
    content: none !important;
    display: none !important;
}





/* v3.8.24: permanent white-strip removal fallback */
.mynovacard-main-card {
    background-color: #1A2F56 !important;
    background-image: url("../images/blue-back-seamless.png") !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% 100% !important;
    overflow: hidden !important;
    padding-bottom: 46px !important;
}
.mynovacard-main-card::after {
    content: none !important;
    display: none !important;
}
.mynovacard-main-card .mynovacard-actions {
    background: transparent !important;
    margin-top: 14px !important;
}


/* v3.8.25: reliable mobile circular photo/artwork fix fallback */
.mynovacard-main-card {
    background-color: #1A2F56 !important;
    background-image: url("../images/blue-back-seamless.png") !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% auto !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
}
.mynovacard-main-card::after {
    content: none !important;
    display: none !important;
}
.mynovacard-main-card .mynovacard-photo,
.mynovacard-main-card .mynovacard-photo img,
.mynovacard-main-card .mynovacard-photo-placeholder,
.mynovacard-main-card .mcc-photo,
.mynovacard-main-card .mcc-photo img,
.mynovacard-main-card .mcc-photo-placeholder {
    aspect-ratio: 1 / 1 !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    overflow: hidden !important;
    transform: none !important;
}
@media (max-width: 600px) {
    .mynovacard-main-card {
        background-image: url("../images/blue-back-seamless.png") !important;
        background-size: 100% auto !important;
        padding-top: 72% !important;
        padding-bottom: 44px !important;
    }
    .mynovacard-main-card .mynovacard-photo,
    .mynovacard-main-card .mynovacard-photo img,
    .mynovacard-main-card .mynovacard-photo-placeholder,
    .mynovacard-main-card .mcc-photo,
    .mynovacard-main-card .mcc-photo img,
    .mynovacard-main-card .mcc-photo-placeholder {
        width: 180px !important;
        height: 180px !important;
        min-width: 180px !important;
        min-height: 180px !important;
        max-width: 180px !important;
        max-height: 180px !important;
        flex: 0 0 180px !important;
    }
}


/* v3.8.26: desktop-only name spacing below circle fallback */
@media (min-width: 601px) {
    .mynovacard-main-card {
        padding-top: 390px !important;
    }
    .mynovacard-main-card .mynovacard-name {
        margin-top: 10px !important;
    }
}


/* v3.8.27: profile picture upload/display */
.mynovacard-main-card .mynovacard-profile-photo-frame {
    position: absolute !important;
    left: 50% !important;
    top: 70px !important;
    transform: translateX(-50%) !important;
    width: 205px !important;
    height: 205px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    z-index: 3 !important;
    background: transparent !important;
    box-sizing: border-box !important;
}

.mynovacard-main-card .mynovacard-profile-photo-frame img {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    display: block !important;
    object-fit: cover !important;
    border-radius: 50% !important;
}

.mynovacard-main-card .mynovacard-profile-photo-empty {
    pointer-events: none !important;
}

.mynovacard-current-photo img {
    width: 96px !important;
    height: 96px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    display: block !important;
    border: 2px solid #D8A73A !important;
}

.mynovacard-checkbox-label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    width: auto !important;
    max-width: none !important;
    text-align: left !important;
    font-weight: 500 !important;
}

.mynovacard-checkbox-label input {
    width: auto !important;
    min-width: 0 !important;
}

@media (min-width: 601px) {
    .mynovacard-main-card .mynovacard-profile-photo-frame {
        top: 72px !important;
        width: 205px !important;
        height: 205px !important;
    }
}

@media (max-width: 600px) {
    .mynovacard-main-card .mynovacard-profile-photo-frame {
        top: 8.4vw !important;
        width: 38vw !important;
        height: 38vw !important;
        max-width: 190px !important;
        max-height: 190px !important;
        min-width: 138px !important;
        min-height: 138px !important;
        aspect-ratio: 1 / 1 !important;
        border-radius: 50% !important;
        overflow: hidden !important;
    }

    .mynovacard-main-card .mynovacard-profile-photo-frame img {
        aspect-ratio: 1 / 1 !important;
        border-radius: 50% !important;
        object-fit: cover !important;
    }
}


/* v3.8.28: proportional profile photo alignment to artwork circle fallback */
.mynovacard-main-card .mynovacard-profile-photo-frame {
    position: absolute !important;
    left: 50% !important;
    top: 16.2% !important;
    width: 38% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    z-index: 10 !important;
}
.mynovacard-main-card .mynovacard-profile-photo-frame img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 50% !important;
    aspect-ratio: 1 / 1 !important;
}
@media (max-width: 600px) {
    .mynovacard-main-card .mynovacard-profile-photo-frame {
        top: 16.2% !important;
        width: 38% !important;
        min-width: 132px !important;
        min-height: 132px !important;
        max-width: 190px !important;
        max-height: 190px !important;
    }
}


/* v3.8.29: profile photo alignment based on provided desktop/mobile screenshots fallback */
.mynovacard-main-card .mynovacard-profile-photo-frame {
    left: 50.4% !important;
    top: 18.0% !important;
    width: 41% !important;
    aspect-ratio: 1 / 1 !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    max-width: 222px !important;
    max-height: 222px !important;
}
.mynovacard-main-card .mynovacard-profile-photo-frame img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 50% !important;
}
@media (max-width: 600px) {
    .mynovacard-main-card .mynovacard-profile-photo-frame {
        left: 50.8% !important;
        top: 17.3% !important;
        width: 42% !important;
        max-width: 198px !important;
        max-height: 198px !important;
        min-width: 136px !important;
        min-height: 136px !important;
    }
}

/* v3.8.30: transparent artwork window with profile picture behind artwork fallback */
.mynovacard-main-card {
    background-color: #1A2F56 !important;
    background-image:
        url("../images/blue-back-window.png"),
        var(--mcc-profile-photo-url),
        url("../images/blue-back-seamless.png") !important;
    background-repeat: no-repeat, no-repeat, no-repeat !important;
    background-position:
        top center,
        var(--mcc-photo-x, 50%) var(--mcc-photo-y, 50%),
        top center !important;
    background-size:
        100% 100%,
        calc(41% * var(--mcc-photo-zoom, 1)) auto,
        100% 100% !important;
    overflow: hidden !important;
}
.mynovacard-main-card .mynovacard-profile-photo-frame {
    display: none !important;
}
.mynovacard-photo-preview {
    width: 130px !important;
    height: 130px !important;
    border-radius: 50% !important;
    border: 2px solid #D8A73A !important;
    background-color: #d8d8d8 !important;
    background-image: var(--mcc-preview-photo-url) !important;
    background-repeat: no-repeat !important;
    background-position: var(--mcc-preview-photo-x, 50%) var(--mcc-preview-photo-y, 50%) !important;
    background-size: calc(100% * var(--mcc-preview-photo-zoom, 1)) auto !important;
    overflow: hidden !important;
}


/* v3.8.31: reliable Main Card profile photo layer fallback */
.mynovacard-main-card {
    position: relative !important;
    background-color: #1A2F56 !important;
    background-image: url("../images/blue-back-seamless.png") !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% 100% !important;
    overflow: hidden !important;
}
.mynovacard-main-card::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background-image: url("../images/blue-back-window.png") !important;
    background-repeat: no-repeat !important;
    background-position: top center !important;
    background-size: 100% 100% !important;
    z-index: 2 !important;
    pointer-events: none !important;
}
.mynovacard-main-card > * {
    position: relative !important;
    z-index: 3 !important;
}
.mynovacard-main-card .mynovacard-profile-photo-layer {
    position: absolute !important;
    left: 50% !important;
    top: 18.0% !important;
    width: calc(41% * var(--mcc-photo-zoom, 1)) !important;
    aspect-ratio: 1 / 1 !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    z-index: 1 !important;
    pointer-events: none !important;
}
.mynovacard-main-card .mynovacard-profile-photo-layer img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    object-fit: cover !important;
    object-position: var(--mcc-photo-x, 50%) var(--mcc-photo-y, 50%) !important;
    border-radius: 50% !important;
}
@media (max-width: 600px) {
    .mynovacard-main-card .mynovacard-profile-photo-layer {
        left: 50.8% !important;
        top: 17.3% !important;
        width: calc(42% * var(--mcc-photo-zoom, 1)) !important;
    }
}


/* v3.8.32: larger Main Card profile picture fallback */
.mynovacard-main-card .mynovacard-profile-photo-layer {
    width: 47% !important;
    left: 50.4% !important;
    top: 18.0% !important;
}
@media (max-width: 600px) {
    .mynovacard-main-card .mynovacard-profile-photo-layer {
        width: 46% !important;
        left: 50.8% !important;
        top: 17.3% !important;
    }
}


/* v3.8.34: show Main Card profile picture in front of background artwork */
.mynovacard-main-card {
    position: relative !important;
    overflow: hidden !important;
}

/* Background/overlay layers must stay behind content and photo */
.mynovacard-main-card::before,
.mynovacard-main-card::after {
    z-index: 0 !important;
    pointer-events: none !important;
}

/* Keep all normal content above the background */
.mynovacard-main-card > * {
    position: relative !important;
    z-index: 3 !important;
}

/* Profile picture layer in front of background artwork */
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame {
    display: block !important;
    position: absolute !important;
    left: 50% !important;
    top: 13.2% !important;
    width: 38% !important;
    max-width: 210px !important;
    min-width: 150px !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    z-index: 10 !important;
    pointer-events: none !important;
    background: #d8d8d8 !important;
    border: 4px solid #F4B72E !important;
    box-shadow: 0 0 0 3px rgba(255,255,255,.18), 0 8px 24px rgba(0,0,0,.35) !important;
    box-sizing: border-box !important;
}

/* Profile picture image itself */
.mynovacard-main-card .mynovacard-profile-photo-layer img,
.mynovacard-main-card .mynovacard-profile-photo-frame img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: var(--mcc-photo-x, 50%) var(--mcc-photo-y, 50%) !important;
    border-radius: 50% !important;
    transform: scale(var(--mcc-photo-zoom, 1)) !important;
    transform-origin: center center !important;
}

@media (max-width: 600px) {
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame {
        left: 50% !important;
        top: 12.8% !important;
        width: 36% !important;
        min-width: 126px !important;
        max-width: 170px !important;
    }
}


/* v3.8.35: lower Main Card profile picture and gold contact name */
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame {
    top: 16.2% !important;
}

/* First and Last Name gold color matching background artwork */
.mynovacard-main-card .mynovacard-name {
    color: #F4B72E !important;
    text-shadow: 0 2px 6px rgba(0,0,0,.45) !important;
}

@media (min-width: 601px) {
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame {
        top: 16.4% !important;
    }
}

@media (max-width: 600px) {
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame {
        top: 15.6% !important;
    }
}


/* v3.8.36 larger/lower profile circle */
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame{
 width:44%!important;
 max-width:245px!important;
 min-width:175px!important;
 top:18%!important;
}
@media(max-width:600px){
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame{
 width:42%!important;
 max-width:190px!important;
 min-width:145px!important;
 top:17.2%!important;
}}


/* v3.8.37 mobile-only larger Profile Picture circle */
@media (max-width:600px){
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame{
        width:48%!important;
        max-width:215px!important;
        min-width:160px!important;
    }
}


/* v3.8.38 larger Profile Picture circle on desktop and mobile */
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame{
    width:52%!important;
    max-width:285px!important;
    min-width:205px!important;
}

@media (max-width:600px){
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame{
        width:54%!important;
        max-width:245px!important;
        min-width:180px!important;
    }
}


/* v3.8.41 First Name above Last Name */
.mynovacard-main-card .mynovacard-name{
display:flex!important;
flex-direction:column!important;
align-items:center!important;
line-height:1.05!important;
}
.mynovacard-main-card .mynovacard-name .mcc-first,
.mynovacard-main-card .mynovacard-name .mcc-last{
display:block!important;
}


/* v3.8.42 fix: split name only on Main Card, not inside edit form input */
.mynovacard-main-card .mynovacard-name{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    line-height:1.05!important;
}
.mynovacard-main-card .mynovacard-name .mcc-first,
.mynovacard-main-card .mynovacard-name .mcc-last{
    display:block!important;
}


/* v3.8.43 Picture Preview Save button */
.mynovacard-picture-preview-wrap{display:flex!important;align-items:center!important;gap:16px!important;flex-wrap:wrap!important}
.mynovacard-save-preview-photo{min-width:90px!important}
@media(max-width:600px){.mynovacard-picture-preview-wrap{justify-content:center!important}}


/* v3.8.44 Picture Preview Save button */
.mynovacard-picture-preview-wrap{
    display:flex!important;
    align-items:center!important;
    gap:16px!important;
    flex-wrap:wrap!important;
}
.mynovacard-save-preview-photo{
    min-width:90px!important;
    padding:10px 22px!important;
    font-weight:700!important;
}
@media(max-width:600px){
    .mynovacard-picture-preview-wrap{
        justify-content:center!important;
    }
}


/* v3.8.45 Picture Preview Save button */
.mynovacard-picture-preview-wrap{
    display:flex!important;
    align-items:center!important;
    gap:22px!important;
    flex-wrap:nowrap!important;
    grid-column:2!important;
}
.mynovacard-save-preview-photo{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:150px!important;
    height:48px!important;
    padding:10px 28px!important;
    border-radius:10px!important;
    border:1px solid #d8a73a!important;
    background:#f4b72e!important;
    color:#061b3a!important;
    font-weight:800!important;
    font-size:16px!important;
    cursor:pointer!important;
    box-shadow:0 3px 9px rgba(0,0,0,.18)!important;
}
.mynovacard-save-preview-photo:hover{
    filter:brightness(1.05)!important;
}
@media(max-width:600px){
    .mynovacard-picture-preview-wrap{
        justify-content:center!important;
        flex-wrap:wrap!important;
    }
}


/* v3.8.46 Main Card fixed profile picture size, independent from edit controls */
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame{
    width:260px!important;
    height:260px!important;
    max-width:260px!important;
    max-height:260px!important;
    min-width:260px!important;
    min-height:260px!important;
    aspect-ratio:1/1!important;
    border-radius:50%!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
}

/* Main Card image ignores Picture Zoom, Horizontal Position and Vertical Position */
.mynovacard-main-card .mynovacard-profile-photo-layer img,
.mynovacard-main-card .mynovacard-profile-photo-frame img{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    object-fit:cover!important;
    object-position:center center!important;
    transform:none!important;
    border-radius:50%!important;
}

/* Decorative circle border uses same fixed size as the profile image */
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame{
    border:4px solid #F4B72E!important;
    box-shadow:0 0 0 3px rgba(255,255,255,.18),0 8px 24px rgba(0,0,0,.35)!important;
}

@media(max-width:600px){
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame{
        width:210px!important;
        height:210px!important;
        max-width:210px!important;
        max-height:210px!important;
        min-width:210px!important;
        min-height:210px!important;
    }
}


/* v3.8.47 remove Picture Preview separate Save button */
#mcc-save-preview-photo,
.mynovacard-save-preview-photo{
    display:none!important;
}

/* v3.8.63 Invitation card email helper text */
.mynovacard-email-confirm-note {
    display: block;
    margin-top: 4px;
    font-size: 0.82rem;
    line-height: 1.25;
    color: rgba(255,255,255,0.72);
}


/* v3.8.65 Invitation card email confirmation helper - visible under email field */
.mynovacard-form .field-row.mynovacard-invite-email-row {
    align-items: start !important;
}
.mynovacard-form .field-row .mynovacard-invite-email-control {
    grid-column: 2 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}
.mynovacard-form .field-row .mynovacard-invite-email-control input {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
.mynovacard-form .field-row .mynovacard-email-confirm-note {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    clear: both !important;
    margin: 6px 0 0 0 !important;
    padding: 0 !important;
    font-size: 0.86rem !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    color: #3f4d5a !important;
    text-align: left !important;
}
@media (max-width: 768px) {
    .mynovacard-form .field-row .mynovacard-invite-email-control {
        grid-column: auto !important;
        width: 100% !important;
    }
    .mynovacard-form .field-row .mynovacard-email-confirm-note {
        font-size: 0.84rem !important;
    }
}

/* v3.8.66 Invitation subtitle */
.mynovacard-invitation-subtitle{
    margin-top:-6px;
    margin-bottom:16px;
    text-align:center;
    font-size:.95rem;
    font-weight:500;
    line-height:1.3;
    color:#6c757d;
}
@media (max-width: 600px){
    .mynovacard-invitation-subtitle{
        font-size:.9rem;
        margin-bottom:14px;
    }
}


.mynovacard-delete-warning {
    text-align: center !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
    color: #7a1d1d !important;
    background: #fff3f3 !important;
    border: 1px solid #f0b5b5 !important;
    border-radius: 12px !important;
    padding: 18px !important;
    margin: 0 0 18px 0 !important;
}

.mynovacard-delete-warning p {
    margin: 0 0 12px 0 !important;
}

.mynovacard-delete-warning p:last-child {
    margin-bottom: 0 !important;
}

.mynovacard-delete-confirm-text {
    font-weight: 800 !important;
    letter-spacing: .04em !important;
    color: #b00020 !important;
}

.mynovacard-delete-actions {
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
}

.mynovacard-delete-confirm-btn {
    font-weight: 800 !important;
}


/* v3.8.80 Mobile main card flow fix: keep profile picture fixed and start information below it */
.mynovacard-main-card .mynovacard-profile-photo-layer,
.mynovacard-main-card .mynovacard-profile-photo-frame{
    top:168px!important;
}

@media (max-width:600px){
    .mynovacard-main-card{
        min-height:0!important;
        height:auto!important;
        aspect-ratio:auto!important;
        overflow:visible!important;
        padding-top:calc(clamp(105px, 30vw, 132px) + 112px + 18px)!important;
        padding-left:9%!important;
        padding-right:9%!important;
        padding-bottom:7%!important;
        background-size:100% 100%!important;
        background-position:top center!important;
    }
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame{
        top:clamp(105px, 30vw, 132px)!important;
        left:50%!important;
        width:210px!important;
        height:210px!important;
        min-width:210px!important;
        min-height:210px!important;
        max-width:210px!important;
        max-height:210px!important;
        transform:translate(-50%, -50%)!important;
    }
    .mynovacard-main-card .mynovacard-name{
        margin-top:0!important;
        clear:both!important;
    }
}

@media (max-width:380px){
    .mynovacard-main-card{
        padding-top:calc(clamp(98px, 30vw, 116px) + 102px + 16px)!important;
    }
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame{
        top:clamp(98px, 30vw, 116px)!important;
        width:190px!important;
        height:190px!important;
        min-width:190px!important;
        min-height:190px!important;
        max-width:190px!important;
        max-height:190px!important;
    }
}


/* v3.8.81 Mobile fixed profile-picture flow refinement
   - Moves the mobile profile picture slightly lower.
   - Reserves fixed vertical space for the profile picture.
   - Forces all user information to start below the picture.
   - Prevents long information from overlapping/pushing the name under the picture. */
@media (max-width:600px){
    .mynovacard-main-card{
        --mcc-mobile-photo-size: 210px;
        --mcc-mobile-photo-center-y: 150px;
        --mcc-mobile-info-gap: 24px;
        min-height:0!important;
        height:auto!important;
        aspect-ratio:auto!important;
        overflow:visible!important;
        padding-top:calc(var(--mcc-mobile-photo-center-y) + (var(--mcc-mobile-photo-size) / 2) + var(--mcc-mobile-info-gap))!important;
        padding-left:9%!important;
        padding-right:9%!important;
        padding-bottom:7%!important;
        background-size:100% 100%!important;
        background-position:top center!important;
    }
    .mynovacard-main-card .mynovacard-profile-photo-layer,
    .mynovacard-main-card .mynovacard-profile-photo-frame{
        position:absolute!important;
        top:var(--mcc-mobile-photo-center-y)!important;
        left:50%!important;
        width:var(--mcc-mobile-photo-size)!important;
        height:var(--mcc-mobile-photo-size)!important;
        min-width:var(--mcc-mobile-photo-size)!important;
        min-height:var(--mcc-mobile-photo-size)!important;
        max-width:var(--mcc-mobile-photo-size)!important;
        max-height:var(--mcc-mobile-photo-size)!important;
        transform:translate(-50%, -50%)!important;
        z-index:10!important;
        flex:0 0 auto!important;
    }
    .mynovacard-main-card .mynovacard-name{
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
        position:relative!important;
        z-index:3!important;
        margin-top:0!important;
        clear:both!important;
    }
    .mynovacard-main-card .mynovacard-company,
    .mynovacard-main-card .mynovacard-position,
    .mynovacard-main-card .mynovacard-info-list,
    .mynovacard-main-card .mynovacard-actions{
        position:relative!important;
        z-index:3!important;
        clear:both!important;
    }
}

@media (max-width:380px){
    .mynovacard-main-card{
        --mcc-mobile-photo-size: 190px;
        --mcc-mobile-photo-center-y: 138px;
        --mcc-mobile-info-gap: 22px;
        padding-top:calc(var(--mcc-mobile-photo-center-y) + (var(--mcc-mobile-photo-size) / 2) + var(--mcc-mobile-info-gap))!important;
    }
}
