

    .done-btn button{
        background-color: #0070ee;
        color: #fff;
        border: none;
        border-radius: 80px;
        font-size: 14px;
        line-height: 1.5;
        letter-spacing: 0.5px;
        padding: 10px 24px;
        margin-top: 24px;
        cursor: pointer;
        transition: all 0.2s ease;
    }

    /* 10% lighter on hover & focus */
    .done-btn button:hover,
    .done-btn button:focus{
        filter: brightness(110%);
        outline: none;
    }

    /* 10% darker when active (clicked) */
    .done-btn button:active{
        filter: brightness(90%);
    }



    :root {
        --bu-thanks-bg: #fff;
        --bu-bg: #86868812;
        --bu-text: #f5f5f7;
        --bu-drop-bg: #86868816;
        --bu-drop-border: #86868966;
        --bu-progress-bg: #fff2;
        --bu-progress-bar: #fff8;
        --bu-success-color: #8b0;
        --bu-warning-color: #f45;
        --bu-info-color: #fff8;
        --bu-hover-bg: rgba(0, 119, 182, 0.05);
        --bu-link-color: #0077B6;
        --bu-offline-color: #7986CB;
        --bu-es: cubic-bezier(0.4, 0, 0.2, 1);
        --bu-reverse-color: #000;
        --bu-focus-ring: 0 0 0 3px rgba(0, 119, 182, 0.3);
        --bu-invalid-border: #ff6b6b;
        --bu-valid-border: #00C4B4;
        --bu-required-asterisk: #ff6b6b;
        --bu-submit: #8b0;
        --bu-sec-bg: rgba(60, 60, 60, 0.25);
        --bu-reverse-color-global: #1d1d1f;
        --bu-focus-ring-color: rgba(0, 119, 182, 0.3);
        --bu-focus-border-color: #0070ee;
        --bu-focus-thickness: 2px;
        --bu-focus-offset: 2px;
        --bu-cell-focus-bg: rgba(0, 119, 182, 0.04);
        --bu-cell-focus-shadow: rgba(0, 119, 182, 0.2);
        --bu-font-text: 'BB Pro Text', sans-serif;
        --bu-font-display: 'BB Pro Display', sans-serif;
    }

    .theme-dark {
        --bu-thanks-bg: #1d1d1f;
        --bu-bg: #86868816;
        --bu-text: var(--bu-thanks-bg);
        --bu-drop-bg: #86868824;
        --bu-drop-border: #86868944;
        --bu-progress-bg: #0003;
        --bu-progress-bar: #0008;
        --bu-success-color: #448800;
        --bu-warning-color: #f45;
        --bu-info-color: #0008;
        --bu-hover-bg: rgba(0, 119, 182, 0.05);
        --bu-link-color: #0077B6;
        --bu-offline-color: #7986CB;
        --bu-es: cubic-bezier(0.4, 0, 0.2, 1);
        --bu-reverse-color: #fff;
        --bu-focus-ring: 0 0 0 3px rgba(0, 119, 182, 0.3);
        --bu-invalid-border: #ff6b6b;
        --bu-valid-border: #00C4B4;
        --bu-required-asterisk: #ff6b6b;
        --bu-submit: #8b0;
        --bu-sec-bg: rgba(255, 255, 255, 0.25);
        --bu-reverse-color-global: #f5f5f7;
        --bu-focus-ring-color: rgba(76, 204, 255, 0.4);
        --bu-focus-border-color: #0070ee;
        --bu-cell-focus-bg: rgba(255, 255, 255, 0.03);
        --bu-cell-focus-shadow: rgba(255, 255, 255, 0.15);
    }

    .bio-m {
        align-content: center;
        align-items: center;
        padding: 0 22px;
    }

    .bio-upload-table-wrapper {
        max-width: 980px;
        margin: 0 auto;
        padding: 64px 0 120px;
    }

    #bio-upload-thanks-popup {
        display: none;
    }

    .share-linebreak {
        display: none;
    }

    .share-your-profile {
        padding: 120px 22px 12px 22px;
        font-family: var(--bu-font-display);
        font-weight: 600;
        font-size: 80px;
        line-height: 1.08em;
        letter-spacing: -0.012em;
        text-align: center;
        position: relative;
        max-width: fit-content;
        margin: 0 auto;
    }

    .share-your-profile-text {
        text-align: center;
        max-width: fit-content;
        position: relative;
        color: transparent;
        -webkit-background-clip: text;
        background-clip: text;
        background-image: linear-gradient(to right, #5cf, #f5c);
        display: inline-block;
        padding: 8px;
        margin: -8px;
    }

    .theme-dark .share-your-profile-text {
        background-image: linear-gradient(to right, #22aaff, #ff22aa);
    }

    .share-your-profile-text::before {
        content: attr(data-text);
        position: absolute;
        left: 0;
        top: 0;
        max-width: fit-content;
        height: 100%;
        color: #f5f5f7;
        -webkit-mask-image: linear-gradient(to right, black 25%, transparent 50%);
        mask-image: linear-gradient(to right, black 25%, transparent 50%);
        -webkit-mask-size: 400% 100%;
        mask-size: 400% 100%;
        -webkit-mask-position: 0% 0;
        mask-position: 0% 0;
        transition: mask-position 1.5s cubic-bezier(.32, 0.8, .6, 1) 0.5s;
        display: block;
        padding: inherit;
    }

    .theme-dark .share-your-profile-text::before {
        color: #1d1d1f;
    }

    .share-your-profile.revealed .share-your-profile-text::before {
        -webkit-mask-position: 100% 0;
        mask-position: 100% 0;
    }

    @media (max-width: 1024px) {
        .share-your-profile {
            font-size: 64px;
            padding-top: 72px;
            letter-spacing: -0.016em;
        }
    }

    @media (max-width: 767px) {
        .share-your-profile {
            font-size: 48px;
            padding-top: 80px;
            line-height: 1.125em;
            letter-spacing: -0.008em;
            max-width: fit-content;
        }
    }

    .bio-upload-table {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        width: 100%;
        justify-content: space-between;
        gap: 22px;
    }

    .bio-upload-cell {
        display: flex;
        flex-direction: column;
        flex: 1 1 40%;
        background-color: var(--bu-sec-bg);
        -webkit-backdrop-filter: saturate(180%) blur(5px);
        backdrop-filter: saturate(180%) blur(5px);
        border-radius: 16px;
        padding: 28px;
        box-sizing: border-box;
    }

    .uplaod-title {
        color: var(--bu-text);
        font-family: var(--bu-font-display);
        font-weight: 600;
        font-size: 80px;
        line-height: 1em;
        letter-spacing: -0.012em;
        text-align: center;
        padding: 12px 22px;
        padding-top: 120px;
        background: linear-gradient(90deg, #66ccff 10%, #ff66cc 90%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        text-fill-color: transparent;
    }

    .bio-upload-container *,
    .bio-upload-drop-area,
    .bio-upload-submit,
    .bio-upload-thanks,
    .bio-upload-warning,
    .bio-upload-file-item {
        transition-timing-function: var(--bu-es);
    }

    .bio-upload-container {
        background: var(--bu-bg);
        border-radius: 16px;
        padding: 32px;
        transition: background 0.5s var(--bu-es), height 0.4s var(--bu-es);
        overflow: hidden;
    }

    .bio-upload-title {
        color: var(--bu-text);
    }

    .bio-upload-title,
    #thanks-message {
        font-family: var(--bu-font-display);
        font-weight: 600;
        font-size: 28px;
        line-height: 1.1em;
        letter-spacing: 0em;
    }

    .bio-upload-subheading {
        color: var(--bu-text);
        padding-top: 12px;
        padding-bottom: 32px;
    }

    .bio-upload-file-list,
    .bio-upload-subheading {
        font-family: var(--bu-font-text);
        font-weight: 400;
        font-size: 14px;
        line-height: 1.42858;
        letter-spacing: -0.016em;
    }

    .bio-upload-drop-area {
        position: relative;
        display: block;
        text-align: center;
        border: 2px dashed var(--bu-drop-border);
        color: var(--bu-info-color);
        background: var(--bu-drop-bg);
        border-radius: 12px;
        padding: 48px 40px;
        margin-bottom: 24px;
        cursor: pointer;
        transition: background 0.4s var(--bu-es);
        line-height: 1.6;
    }

    .bio-upload-drop-area input {
        display: none;
    }

    .bio-upload-drop-area.dragover {
        border-color: var(--bu-progress-bar);
        background: var(--bu-hover-bg);
    }

    .bio-upload-drop-area:hover {
        border-color: var(--bu-progress-bar);
    }

    .bio-upload-icon {
        display: block;
        margin: 0 auto 12px auto;
        color: var(--bu-thanks-bg);
        opacity: 0.7;
        transition: color 0.3s var(--bu-es), opacity 0.3s var(--bu-es), opacity var(--bu-es);
        transition: transform 0.3s var(--bu-es);
    }

    .bio-upload-drop-area:hover .bio-upload-icon,
    .bio-upload-drop-area.dragover .bio-upload-icon {
        opacity: 1;
        color: var(--bu-thanks-bg);
        transform: translateY(-2px);
        transition: transform 0.3s var(--bu-es);
    }

    .bio-upload-drop-area:active .bio-upload-icon {
        color: var(--bu-info-color);
        transition: color 0s;
    }

    .bio-upload-drop-area:hover,
    .bio-upload-drop-area.dragover {
        color: var(--bu-progress-bar);
    }

    #bio-upload-file-list {
        display: none;
    }

    #bio-upload-file-list:not(:empty) {
        display: flex;
    }

    .bio-upload-file-list {
        margin-bottom: 24px;
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .bio-upload-file-item {
        display: flex;
        position: relative;
        background: var(--bu-drop-bg);
        border-radius: 10px;
        padding: 15px;
    }

    .bio-upload-file-item.dragging {
        opacity: 0.9 !important;
        transform: scale(1.1) !important;
        box-shadow: 0 15px 30px rgba(0, 0, 0, 0.5) !important;
    }

    @keyframes bio-m-fadeIn {
        0% {
            opacity: 0;
            transform: translateY(100px);
        }

        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .bio-upload-file-item.hidden-upload {
        opacity: 0 !important;
        height: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        overflow: hidden;
        transition: height 0.5s var(--bu-es), padding 0.5s var(--bu-es), margin 0.5s var(--bu-es), opacity 0.5s var(--bu-es);
    }

    .bio-upload-file-item.submitted .bio-upload-file-controls,
    .bio-upload-file-item.submitted .bio-upload-file-info,
    .bio-upload-file-item.submitted .bio-upload-progress,
    .bio-upload-file-item.submitted .bio-upload-speed-info {
        display: none !important;
    }

    .bio-upload-file-item.submitted .bio-upload-file-name::after {
        content: " 􀁢 Sent";
        color: var(--bu-success-color);
        white-space: nowrap;
    }

    .bio-upload-file-item.submitted {
        opacity: 0.7;
        pointer-events: none;
    }

    .bio-upload-img-wrapper {
        width: 80px;
        height: 80px;
        border-radius: 5px;
        align-content: center;
        align-items: center;
        text-align: center;
        font-family: var(--bu-font-text);
        font-weight: 600;
        font-size: 17px;
        letter-spacing: -0.022em;
        color: var(--bu-reverse-color-global);
        background: transparent;
    }

    .bio-upload-file-item img {
        width: 80px;
        height: 80px;
        border-radius: 5px;
        cursor: grab;
        user-select: none;
        flex-shrink: 0;
        display: block;
        object-fit: cover;
        object-position: center;
    }

    .bio-upload-file-details {
        flex: 1;
        width: 100%;
        word-break: break-word;
        margin-left: 14px;
    }

    .bio-upload-file-name {
        padding-right: 32px;
        color: var(--bu-text);
    }

    .bio-upload-file-size {
        color: var(--bu-info-color);
    }

    .bio-upload-file-info {
        margin-top: 6px;
        color: var(--bu-info-color);
    }

    .bio-upload-progress {
        width: 100%;
        height: 6px;
        background: var(--bu-progress-bg);
        border-radius: 8px;
        overflow: hidden;
        margin-top: 8px;
    }

    .bio-upload-progress-bar {
        height: 100%;
        background: var(--bu-progress-bar);
        width: 0;
        transition: width 0.2s;
    }

    .bio-upload-speed-info {
        color: var(--bu-info-color);
        margin-top: 6px;
    }

    .bio-upload-file-controls {
        position: absolute;
        top: 12px;
        right: 12px;
        z-index: 10;
        gap: 10px;
        border-radius: 80px;
    }

    .bio-upload-remove-btn svg {
        fill: var(--bu-progress-bar);
    }



    .bio-upload-thanks-close svg {
        fill: var(--bu-reverse-color);
    }

    button.bio-upload-remove-btn,
    button.bio-upload-thanks-close {
        border-radius: 80px;
        background: #86868922;
    }

    .bio-upload-remove-btn,
    .bio-upload-remove-btn,
    .bio-upload-thanks-close {
        all: unset;
        border: none;
        width: 24px;
        height: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: transform 0.2s, background 0.2s, color 0.2s;
    }

    .bio-upload-remove-btn:hover,
    .bio-upload-thanks-close:hover {
        background: var(--bu-progress-bar) !important;
        color: white;
    }

    .bio-upload-remove-btn[data-action='retry'] {
        background: var(--bu-link-color);
        display: none;
    }

    .bio-upload-thanks-close {
        position: absolute;
        top: 20px;
        right: 20px;
        width: 32px;
        height: 32px;
        padding: 0;
    }

    button.bio-upload-submit,
    button.bio-upload-submit-new {
        margin-top: auto;
    }


    button.bio-upload-submit,
    button.bio-upload-submit-new,
    button.bio-contact-submit-btn {
        display: block;
        font-family: var(--bu-font-text);
        font-weight: 400;
        font-size: 17px;
        line-height: 1.17648;
        letter-spacing: -0.022em;
        width: 100%;
        padding: 12px;
        border-radius: 8px;
        color: #fff;
        background: linear-gradient(120deg, #4cf 0%, #f4b 100%);
        cursor: pointer;
        text-align: center;
        transition: opacity 0.3s, background-color 0.3s, transform 0.1s;
    }

    button.bio-upload-submit:hover,
    button.bio-contact-submit-btn:hover {
        background: linear-gradient(-120deg, #4bf 0%, #f4b 100%);
    }

    .theme-dark button.bio-upload-submit,
    .theme-dark button.bio-contact-submit-btn {
        background: linear-gradient(120deg, #22aaff 0%, #ff22aa 100%);
    }

    .theme-dark button.bio-upload-submit:hover,
    .theme-dark button.bio-contact-submit-btn:hover {
        background: linear-gradient(-120deg, #22aaff 0%, #ff22aa 100%);
    }



    button.bio-upload-submit-new {
        background: linear-gradient(to right, #99f, #6c4);
    }

    .theme-dark button.bio-upload-submit-new {
        background: linear-gradient(to right, #8080ff, #33bb00);
    }


    .bio-upload-submit:disabled,
    .bio-upload-submit-new:disabled,
    .bio-contact-submit-btn:disabled {
        opacity: 0.6;
        cursor: not-allowed;
    }

    .bio-upload-submit.loading,
    .bio-contact-submit-btn.loading {
        pointer-events: none;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }

    .bio-upload-submit.loading::before,
    .bio-contact-submit-btn.loading::before {
        content: '';
        width: 18px;
        height: 18px;
        margin-right: 10px;
        border: 2px solid #fff;
        border-top-color: rgba(255, 255, 255, 0.2);
        border-radius: 50%;
        box-sizing: border-box;
        animation: spin 0.6s linear infinite;
    }

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



    .bio-upload-offline-status {
        color: var(--bu-offline-color);
    }

    .bio-upload-combined-progress {
        width: 100%;
        height: 10px;
        background: var(--bu-progress-bg);
        border-radius: 5px;
        overflow: hidden;
    }

    .bio-upload-combined-progress-bar {
        height: 100%;
        width: 0;
        background: var(--bu-progress-bar);
        transition: width 0.3s;
    }

    .bio-upload-offline-status,
    .bio-upload-combined-progress {
        margin-bottom: 24px;
    }

    .bio-upload-warning {
        opacity: 0;
        transform: translateY(10px);
        height: 0;
        padding: 0;
        overflow: hidden;
        margin-top: 0;
        transition: opacity 0.4s, transform 0.4s, height 0.5s, padding 0.5s, margin 0.5s var(--bu-es);
    }

    .bio-upload-warning.show {
        opacity: 1;
        transform: translateY(0);
        height: auto;
        padding: 10px;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .bio-upload-warning {
        color: var(--bu-warning-color);
        background: #86868922;
        border-radius: 10px;
    }


    body.body-no-scroll {
        overflow: hidden;

    }

    .bio-upload-thanks-popup {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 999999;
        display: flex;
        color: #1d1d1f;
        padding: 0 22px;
        align-items: center;
        justify-content: center;
        background-color: rgba(0, 0, 0, 0);
        -webkit-backdrop-filter: blur(0px);
        backdrop-filter: blur(0px);
        visibility: hidden;
        transition: background-color 0.5s var(--bu-es), backdrop-filter 0.5s var(--bu-es), -webkit-backdrop-filter 0.5s var(--bu-es), visibility 0s linear 0.5s;
    }

    .bio-upload-thanks-popup.show {
        background-color: rgba(0, 0, 0, 0.3);
        -webkit-backdrop-filter: blur(24px);
        backdrop-filter: blur(24px);
        visibility: visible;
        transition: background-color 1s var(--bu-es), backdrop-filter 1s var(--bu-es), -webkit-backdrop-filter 1s var(--bu-es), visibility 0s linear 0s;
    }

    #bio-upload-thanks {
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
        min-height: 400px;
        min-width: 260px;
        padding: 40px;
        background: var(--bu-thanks-bg);
        border-radius: 20px;
        text-align: center;
        opacity: 0;
        transform: scale(0.95);
        transition: opacity 0.5s var(--bu-es), transform 0.5s var(--bu-es);
    }

    .bio-upload-thanks-popup.show #bio-upload-thanks {
        opacity: 1;
        transform: scale(1);
        transition: opacity 1s var(--bu-es) 0.3s, transform 1s var(--bu-es) 0.3s;
    }

    #bio-upload-thanks-text {
        font-size: 48px;
        letter-spacing: -0.008em;
        opacity: 0;
        transform: translateY(10px);
        transition: opacity 0.5s var(--bu-es) 0.5s, transform 0.5s var(--bu-es) 0.5s;
    }

    .bio-upload-thanks-popup.show #bio-upload-thanks-text {
        opacity: 1;
        transform: translateY(0);
        transition: opacity 1s var(--bu-es) 1s, transform 1s var(--bu-es) 1s;
    }

    .theme-dark #bio-upload-thanks-text {
        color: #fff;
    }

    .bio-upload-thanks-checkmark {
        width: 100px;
        height: 100px;
        margin-top: 20px;
        margin-bottom: 40px;
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

    .bio-upload-thanks-checkmark svg {
        display: block;
        stroke-width: 4;
        stroke-linecap: round;
        fill: none;
        stroke: var(--bu-success-color);
    }

    .bio-upload-thanks-popup:not(.show) .bio-upload-thanks-checkmark svg path,
    .bio-upload-thanks-popup:not(.show) .bio-upload-thanks-checkmark svg circle {
        stroke-dasharray: 1000;
        stroke-dashoffset: 1000;
        transition: stroke-dashoffset 2s var(--bu-es) 2s;
    }

    .bio-upload-thanks-popup.show .bio-upload-thanks-checkmark svg path,
    .bio-upload-thanks-popup.show .bio-upload-thanks-checkmark svg circle {
        stroke-dasharray: 1000;
        stroke-dashoffset: 0;
        transition: stroke-dashoffset 1.5s var(--bu-es) 0.8s;
    }

    .bio-upload-file-icon {
        width: 80px;
        height: 80px;
        display: inline-block;
        background: transparent;
        border-radius: 8px;
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-position: center;
        mask-position: center;
        -webkit-mask-size: contain;
        mask-size: contain;
    }

    .bio-icon-pdf { background-image: url("../icons/pdf-icon.svg"); }

    .bio-icon-word { background-image: url("../icons/word-icon.svg"); }

    .bio-icon-psd { background-image: url("../icons/psd-icon.svg"); }

    .bio-icon-ai { background-image: url("../icons/ai-icon.svg"); }

    .bio-icon-excel { background-image: url("../icons/excel-icon.svg"); }

    .bio-icon-ppt { background-image: url("../icons/ppt-icon.svg"); }

    .bio-icon-archive { background-image: url("../icons/archive-icon.svg"); }

    .bio-icon-audio { background-image: url("../icons/audio-icon.svg"); }

    .bio-icon-video { background-image: url("../icons/video-icon.svg"); }

    .bio-icon-code { background-image: url("../icons/code-icon.svg"); }

    .bio-icon-text { background-image: url("../icons/text-icon.svg"); }

    .bio-icon-font { background-image: url("../icons/font-icon.svg"); }

    .bio-icon-fig { background-image: url("../icons/fig-icon.svg"); }

    .bio-icon-sketch { background-image: url("../icons/sketch-icon.svg"); }

    .bio-icon-svg { background-image: url("../icons/svg-icon.svg"); }

    .bio-contact-form {
        display: flex;
        flex-direction: column;
        height: 100%;
    }

    .bio-contact-field {
        margin-bottom: 16px;
    }

    .bio-contact-input,
    .bio-contact-textarea {
        width: 100%;
        padding: 14px 16px;
        border: 2px solid var(--bu-drop-border);
        border-radius: 10px;
        background: var(--bu-drop-bg);
        color: var(--bu-text);
        font-family: inherit;
        resize: vertical;
    }

    .bio-contact-input:focus,
    .bio-contact-textarea:focus {
        outline: none;
        border-color: var(--bu-progress-bar);
        background: var(--bu-hover-bg);
        box-shadow: 0 0 0 4px rgba(0, 119, 182, .1);
    }

    .bio-contact-input::placeholder,
    .bio-contact-textarea::placeholder {
        color: var(--bu-info-color);
        opacity: .8;
    }

    @media (max-width: 1024px) {

        .bio-upload-title,
        #thanks-message {
            font-size: 24px;
        }

        .bio-upload-table-wrapper {
            padding: 56px 0 104px;
        }


        .uplaod-title {
            font-size: 64px;
            padding-top: 72px;
            letter-spacing: -0.016em;
        }

        .bio-upload-cell {
            padding: 24px;
        }
    }

    @media (max-width: 800px) {
        .bio-upload-cell {
            flex: 1 1 100%;
        }

        .uplaod-title {
            font-size: 48px;
            padding-top: 80px;
            line-height: 1.2em;
            letter-spacing: -0.008em;
        }

        .bio-upload-table-wrapper {
            padding: 48px 0 96px;
        }

        #bio-upload-thanks {
            padding: 24px;
        }
    }

    @media (max-width: 600px) {
        .share-linebreak {
            display: block;
        }
    }










    /* --- Fix: Prevent Scaling/Jumping on Focus --- */

    .bio-upload-cell {
        /* Ensure sizing is calculated including padding but NOT changing on focus */
        box-sizing: border-box;
        transition: background-color 0.3s var(--bu-es), box-shadow 0.3s var(--bu-es);
        /* Use a transparent shadow instead of a border to reserve no space */
        box-shadow: 0 0 0 0 transparent;
        border: none;
        /* Remove physical border to prevent layout shift */
    }

    /* Division/Box highlight using shadow (does not affect width/height) */
    .bio-upload-cell:focus-within {
        background-color: var(--bu-cell-focus-bg);
        /* 1st shadow is the 'border', 2nd is the 'glow/elevation' */
        box-shadow: 0 0 0 1px var(--bu-cell-focus-shadow), 0 12px 40px rgba(0, 0, 0, 0.1);
    }

    /* Input & Drop Area Focus */
    .bio-contact-input:focus-visible,
    .bio-contact-textarea:focus-visible,
    .bio-upload-drop-area:focus-visible {
        /* Use shadow for the inner border so the box doesn't resize */
        outline: none;
        box-shadow: 0 0 0 var(--bu-focus-thickness) var(--bu-focus-border-color) !important;
        border-color: transparent !important;
    }

    /* Buttons Focus */
    button.bio-upload-submit:focus-visible,
    button.bio-upload-submit-new:focus-visible,
    button.bio-contact-submit-btn:focus-visible {
        outline: var(--bu-focus-thickness) solid var(--bu-focus-border-color);
        outline-offset: var(--bu-focus-offset);
    }

    .bio-upload-remove-btn:focus-visible,
    .bio-upload-thanks-close:focus-visible {
        background: var(--bu-progress-bar) !important;
        box-shadow: 0 0 0 var(--bu-focus-thickness) var(--bu-focus-ring-color);
    }


/* Security honeypot: hidden from humans, visible to simple bots. */
.bb-upload-hp {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}
