.elementor-235029 .elementor-element.elementor-element-39a25b84{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget .tippy-tooltip .tippy-content{text-align:center;}/* Start custom CSS for container, class: .elementor-element-39a25b84 */.hlbw-upload-form {
    max-width: 500px;
    margin: 0 auto;
    padding: 30px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

    .hlbw-notice {
        padding: 12px 15px;
        margin-bottom: 25px;
        border-radius: 4px;
        font-size: 14px;
    }

    .hlbw-notice.success {
        background-color: #edf7ed;
        color: #1e4620;
        border-left: 4px solid #4caf50;
    }

    .form-group {
        margin-bottom: 20px;
    }

    .form-group label {
        display: block;
        margin-bottom: 8px;
        font-weight: 500;
        color: #333333;
        font-size: 15px;
    }

    .form-group input[type="text"],
    .form-group input[type="email"],
    .form-group input[type="number"],
    .form-group select,
    .form-group textarea,
    .form-group input[type="file"] {
        width: 100%;
        padding: 10px 12px;
        border: 1px solid #ddd;
        border-radius: 4px;
        font-size: 15px;
        transition: border-color 0.3s;
    }

    .form-group input[type="file"] {
        padding: 8px 0;
        border: none;
    }

    .form-group input:focus,
    .form-group select:focus,
    .form-group textarea:focus {
        border-color: #2271b1;
        outline: none;
        box-shadow: 0 0 0 1px #2271b1;
    }

    .form-group textarea {
        min-height: 100px;
    }

    .character-count {
        font-weight: normal;
        color: #666;
        font-size: 0.85em;
        display: inline-block;
        margin-left: 5px;
    }

    .character-counter {
        font-size: 0.85em;
        color: #666;
        text-align: right;
        margin-top: 5px;
    }

    .character-counter.warning {
        color: #d63638;
    }

    .required {
        color: #d63638;
        margin-left: 3px;
    }

    .hlbw-submit {
        background: #2271b1;
        color: white;
        border: none;
        padding: 12px 20px;
        border-radius: 4px;
        cursor: pointer;
        font-size: 16px;
        font-weight: 500;
        width: 100%;
        margin-top: 30px; /* Increased space above button */
        transition: background 0.3s;
    }

    .hlbw-submit:hover {
        background: #135e96;
    }

    .hlbw-submit:disabled {
        background: #a0a0a0;
        cursor: not-allowed;
    }

    .loading-spinner {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .spinner {
        animation: rotate 2s linear infinite;
    }

    .spinner .path {
        stroke: #ffffff;
        stroke-dasharray: 1, 200;
        stroke-dashoffset: 0;
        animation: dash 1.5s ease-in-out infinite;
    }

    @keyframes rotate {
        100% { transform: rotate(360deg); }
    }

    @keyframes dash {
        0% {
            stroke-dasharray: 1, 200;
            stroke-dashoffset: 0;
        }
        50% {
            stroke-dasharray: 89, 200;
            stroke-dashoffset: -35px;
        }
        100% {
            stroke-dasharray: 89, 200;
            stroke-dashoffset: -124px;
        }
    }

    .hlbw-upload-progress {
        margin-top: 20px;
    }

    .progress-bar {
        height: 6px;
        background: #f0f0f0;
        border-radius: 3px;
        overflow: hidden;
        margin-bottom: 8px;
    }

    .progress-fill {
        height: 100%;
        width: 0%;
        background: #2271b1;
        transition: width 0.3s ease;
    }

    .progress-text {
        font-size: 0.9em;
        color: #666;
        text-align: center;
    }/* End custom CSS */