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

/* RTL */
.cf-wrapper[dir="rtl"] .cf-field label { text-align:right; }
.cf-wrapper[dir="rtl"] .cf-submit      { text-align:left; }
.cf-wrapper[dir="rtl"] input,
.cf-wrapper[dir="rtl"] textarea        { direction:rtl; text-align:right; }

.cf-wrapper { font-family:inherit; }

.cf-field { margin-bottom:16px; }

.cf-field label {
    display:block; font-weight:600; margin-bottom:4px; color:#222; font-size:.95rem;
}

.cf-field input[type="text"],
.cf-field input[type="email"],
.cf-field input[type="tel"],
.cf-field textarea {
    width:100%; padding:8px 10px; border:1px solid #ccc; border-radius:3px;
    box-sizing:border-box; font-size:.95rem; line-height:1.5; color:#333;
    background:#fff; transition:border-color .2s;
}

.cf-field input:focus,
.cf-field textarea:focus {
    border-color:#5ba4cf; outline:none;
    box-shadow:0 0 0 2px rgba(91,164,207,.25);
}

/* Blue-highlighted fields (Phone, Subject, Message) */
.cf-field input.cf-highlight,
.cf-field textarea.cf-highlight {
    background-color:#7ec8e3; border-color:#5ba4cf; color:#fff;
}

.cf-field input.cf-highlight::placeholder,
.cf-field textarea.cf-highlight::placeholder { color:rgba(255,255,255,.7); }

.cf-field textarea { resize:vertical; min-height:120px; }

/* File upload wrapper */
.cf-file-wrapper {
    width:100%; box-sizing:border-box;
    border:1px solid #ccc; border-radius:3px;
    padding:8px 10px; background:#f9f9f9;
    transition:border-color .2s;
}

.cf-file-wrapper:focus-within {
    border-color:#5ba4cf;
    box-shadow:0 0 0 2px rgba(91,164,207,.25);
}

.cf-file-wrapper input[type="file"] {
    width:100%; font-size:.9rem; cursor:pointer;
    border:none; background:transparent; outline:none;
}

.cf-allowed-types { margin:4px 0 0; font-size:.82rem; color:#555; }

.cf-submit { text-align:right; margin-top:8px; }

.cf-btn-submit {
    background:#3a3a3a; color:#fff; border:none; padding:10px 24px;
    font-size:.95rem; border-radius:3px; cursor:pointer; transition:background .2s;
}
.cf-btn-submit:hover    { background:#222; }
.cf-btn-submit:disabled { background:#999; cursor:not-allowed; }

.cf-messages { margin-bottom:14px; }

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

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