.niklo-form-container { max-width: 1130px; margin: 40px auto; font-family: "Saira", sans-serif; }
.hidden-panel { display: none !important; }
.form-step-panel { background: #fff; padding: 30px; border: 1px solid #dadce0; border-radius: 8px; margin-bottom: 20px; box-shadow: 0 1px 2px rgba(0,0,0,0.1); }
.mt-30 { margin-top: 30px; }
.cf7-row { margin-bottom: 24px; }
.cf7-row p { font-weight: 600; font-size: 16px; color: #202124; margin-bottom: 8px; }
.cf7-row p span { color: #d93025; }
.cf-input, .form-step-panel textarea { width: 100%; padding: 12px 16px; border: 1px solid #dadce0; border-radius: 6px; font-size: 15px; outline: none; transition: border 0.2s; box-sizing: border-box; }
.cf-input:focus, .form-step-panel textarea:focus { border-color: #eb0029; box-shadow: 0 0 0 3px rgba(235,0,41,0.1); }
.radio-group { display: flex; flex-direction: column; gap: 12px; margin-top: 10px; }
.radio-group.--wrap { flex-direction: row; flex-wrap: wrap; gap: 20px; }
.radio-group label { display: flex; align-items: center; gap: 8px; font-size: 15px; cursor: pointer; color: #202124; }
.radio-group input[type="radio"] { width: 18px; height: 18px; accent-color: #eb0029; cursor: pointer; }
.payment-qr { display: block; margin: 15px 0; border: 1px solid #dadce0; padding: 10px; border-radius: 6px; background: #f8f9fa; max-width: 250px; }
.drag-drop-zone { border: 2px dashed #dadce0; border-radius: 6px; padding: 30px; text-align: center; background: #f8f9fa; cursor: pointer; position: relative; transition: background 0.2s; }
.drag-drop-zone.dragover { background: rgba(235,0,41,0.05); border-color: #eb0029; }
.drag-drop-zone input[type="file"] { position: absolute; width: 100%; height: 100%; top:0; left:0; opacity: 0; cursor: pointer; }
.file-preview-area { margin-top: 15px; font-size: 14px; color: #202124; display: flex; flex-direction: column; align-items: center; gap: 10px; }
.img-render-preview { max-width: 100%; max-height: 180px; border-radius: 4px; border: 1px solid #dadce0; }
button#nextBtn, button.submitBtn { background: #eb0029; color:#fff; border:none; padding: 12px 32px; font-size:16px; font-weight:600; border-radius:4px; cursor:pointer; float:right; }
button#nextBtn:hover, button.submitBtn:hover { background: #c70024; }
button.prevBtn { background: #fff; color:#5f6368; border:1px solid #dadce0; padding: 12px 32px; font-size:16px; font-weight:600; border-radius:4px; cursor:pointer; }
button.prevBtn:hover { background: #f8f9fa; }
input.error { border-color: #d93025 !important; background: #fce8e6; }
.niklo-processing-overlay { display:none; position: fixed; top:0; left:0; width:100%; height:100%; background:rgba(255,255,255,0.9); z-index:999999; text-align:center; padding-top:20%; }
.niklo-spinner { display:inline-block; width: 50px; height:50px; border: 5px solid #f3f3f3; border-top: 5px solid #eb0029; border-radius:50%; animation: spin 1.0s linear infinite; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
.niklo-processing-overlay p { margin-top: 20px; font-weight: 600; font-size:18px; color:#202124; }
.niklo-form-header.mt-30 {
    /*background: #f2f2f2;*/
    padding: 20px;
    /*border-radius: 25px;*/
}

/*new css style*/
strong {
    color: #eb0029;
}

.niklo-form-header {
        background: #fff;
        border-top: 8px solid #673ab7;
        border-radius: 8px;
        border: 1px solid #dadce0;
        padding: 30px;
        margin-bottom: 18px;
    }

    .niklo-form-header h2 {
        margin: 0 0 15px;
        font-size: 36px;
        font-weight: 700;
        color: #202124;
        line-height: 1.3;
    }

    .niklo-form-header h5 {
        margin: 0 0 15px;
        font-size: 20px;
        font-weight: 600;
        color: #d93025;
        line-height: 1.3;
    }

    .niklo-form-header p {
        font-size: 18px;
        color: #202124;
        line-height: 1.7;
        margin-bottom: 25px;
    }
    
    .cf7-row input[type="text"],
    .cf7-row input[type="email"],
    .cf7-row input[type="tel"],
    .cf7-row input[type="date"],
    .cf7-row input[type="url"],
    .cf7-row input[type="number"],
    .cf7-row textarea {
        width: 100%;
        padding: 14px 16px;
        margin-top: 15px;
        border: 1px solid #dadce0;
        border-radius: 6px;
        font-size: 16px;
        color: #202124;
        background: #fff;
        outline: none;
        transition: border-color .3s ease, box-shadow .3s ease;
    }

    /* Common Focus Style */
    .cf7-row input[type="text"]:focus,
    .cf7-row input[type="email"]:focus,
    .cf7-row input[type="tel"]:focus,
    .cf7-row input[type="date"]:focus,
    .cf7-row input[type="url"]:focus,
    .cf7-row input[type="number"]:focus,
    .cf7-row textarea:focus {
        border-color: #eb0029;
        box-shadow: 0 0 0 2px rgba(235, 0, 41, .15);
    }
