/* ========================================================
   Installation Forms – Front-end styles
   ICT · https://ict.com.tn/ · Version 1.0.0
   ======================================================== */

.if-wrapper { max-width:100%; font-family:inherit; }

/* Two-column row (Full Name + Phone), collapses on mobile */
.if-row { display:flex; flex-wrap:wrap; gap:24px; }
.if-row > .if-field { flex:1 1 220px; }

.if-field { margin-bottom:20px; }

.if-field label {
    display:block;
    font-weight:600;
    margin-bottom:6px;
    color:#2b4a7e;
    font-size:.95rem;
}

.if-field input[type="text"],
.if-field input[type="tel"],
.if-field input[type="number"],
.if-field select {
    width:100%;
    padding:11px 12px;
    border:1px solid #cbd2dc;
    border-radius:6px;
    box-sizing:border-box;
    line-height:1.5;
    color:#333;
    background:#fff;
    font-size:1rem;
    font-family:inherit;
    transition:border-color .2s, box-shadow .2s;
}

.if-field input::placeholder { color:#9aa3af; }

.if-field input:focus,
.if-field select:focus {
    border-color:#1f3a93;
    outline:none;
    box-shadow:0 0 0 2px rgba(31,58,147,.18);
}

.if-field select {
    appearance:none;
    -webkit-appearance:none;
    -moz-appearance:none;
    background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%232b4a7e' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat:no-repeat;
    background-position:right 14px center;
    padding-right:38px;
}

/* RTL */
.if-wrapper[dir="rtl"] .if-field label { text-align:right; }
.if-wrapper[dir="rtl"] .if-field select {
    background-position:left 14px center;
    padding-right:12px;
    padding-left:38px;
}

.if-star { color:#c0392b; }

/* Submit button — full-width navy, matching the capture */
.if-submit { margin-top:8px; }

.if-btn-submit {
    width:100%;
    background:#1f3a93;
    color:#fff;
    border:none;
    padding:14px 24px;
    font-size:1rem;
    font-weight:700;
    border-radius:6px;
    cursor:pointer;
    font-family:inherit;
    transition:background .2s;
}

.if-btn-submit:hover    { background:#16306f; }
.if-btn-submit:disabled { background:#9aa3af; cursor:not-allowed; }

/* Messages */
.if-messages { margin-top:16px; margin-bottom:0; }

.if-messages.if-success {
    background:#d4edda; color:#155724; border:1px solid #c3e6cb;
    padding:10px 14px; border-radius:6px;
}

.if-messages.if-error {
    background:#f8d7da; color:#721c24; border:1px solid #f5c6cb;
    padding:10px 14px; border-radius:6px;
}
