/* === Step 1 Base Styling (unchanged) === */
.spa-form-wrap {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0,0,0,0.08);
    padding: 25px 30px;
    font-family: "Segoe UI", Arial, sans-serif;
    color: #222;
}

.spa-form-wrap label {
    font-weight: 600;
    display: block;
    margin-top: 10px;
}

.spa-form-wrap input,
.spa-form-wrap select,
.spa-form-wrap textarea {
    width: 100%;
    padding: 8px;
    margin-top: 5px;
    border-radius: 5px;
    border: 1px solid #ccc;
}

/* Required asterisk */
.spa-required {
    color: red;
}

/* =====================
   Buttons
===================== */
.spa-btn,
.spa-btn-light {
    background: #CC5500 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px !important;
    padding: 10px 25px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    margin-top: 15px !important;
    cursor: pointer !important;
    transition: background 0.3s ease !important;
}

.spa-btn:hover,
.spa-btn-light:hover {
    background: #AE0000 !important;
}

/* ===============================================
   STEP 2 PROGRESS OVERLAY (Cloned 100% for Step 1)
=============================================== */
#spa-upload-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.55);
    z-index: 999999;
    display: none;
    backdrop-filter: blur(3px);
}

#spa-upload-overlay-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #ffffff;
    padding: 30px 35px;
    border-radius: 10px;
    text-align: center;
    width: 420px;
    max-width: 95%;
    box-shadow: 0px 10px 30px rgba(0,0,0,0.25);
}

#spa-upload-overlay-text {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 18px;
    color: #00338d;
}

#spa-upload-overlay-bar {
    width: 0%;
    height: 14px;
    background: #1976d2;
    border-radius: 8px;
    transition: width 0.35s ease;
}

/* ============================================================
   STEP 1 — Position Save & Next button to the right & lower
============================================================ */
#spa-step1 form {
    display: block;
    width: 100%;
}

#spa-step1 .spa-btn {
    display: inline-block;
    float: right;
    margin-top: 55px !important;
    margin-bottom: 22px !important;
}

/* =====================
   Titles & Headers
===================== */
.spa-report-title {
    text-align: center;
    font-size: 22px;
    margin: 0 0 15px 0;
    font-weight: bold;
}

.spa-report-section-title {
    background: #001f5b;
    border-left: 4px solid #CC5500;
    padding: 8px 12px;
    margin: 30px 0 12px;
    font-size: 16px;
    font-weight: 600;            /* FIXED (was invalid) */
    color: #ffffff;
    border-radius: 6px;

    /* CRITICAL: prevent blocking dropdowns */
    position: relative;
    z-index: 1;
}

.spa-assessment-id {
    text-align: center;
    margin-bottom: 20px;
    font-weight: 600;
    color: #444;
}

/* ============================================================
   CRITICAL FIX — Ensure form controls stay above section bars
============================================================ */
#spa-step1 input,
#spa-step1 select,
#spa-step1 textarea {
    position: relative;
    z-index: 5;
}

/* ======================================================
   GLOBAL – MOBILE FLATTEN spa-form-wrap
   No padding / no shadow
   ====================================================== */
@media (max-width: 767px) {
    body .spa-form-wrap {
        padding: 0 !important;
        margin: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        background: transparent !important;
    }
}