/* MrWebFeeder-FOSSTPL - formulario de contacto (reusa las variables de order.css y los paneles de kb.css) */

.cf-grid { grid-template-columns: minmax(0, 1fr) 360px; }

/* ------------------------------------------------------------ formulario */
.cf-form { padding: 1.6rem 1.8rem 1.8rem; background: #fff; }
.cf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.3rem; }
.cf-field { margin-bottom: 1.15rem; }
.cf-field label { display: block; margin-bottom: .4rem; font-size: .9rem; font-weight: 700; color: var(--ord-text); }
.cf-field input[type="text"],
.cf-field input[type="email"],
.cf-field select,
.cf-field textarea {
    width: 100%; padding: .8rem 1rem;
    border: 1px solid #b9c7e6; border-radius: .6rem;
    background: #fff; color: var(--ord-text); font-size: 1rem; line-height: 1.4;
    transition: border-color .15s ease, box-shadow .15s ease;
}
.cf-field textarea { min-height: 170px; resize: vertical; }
.cf-field input:focus, .cf-field select:focus, .cf-field textarea:focus {
    outline: 0; border-color: var(--ord-blue); box-shadow: 0 0 0 3px rgba(28, 79, 156, .18);
}
.cf-actions { display: flex; align-items: center; gap: 1.2rem; flex-wrap: wrap; margin-top: .4rem; }
.cf-actions .ord-btn { width: auto; min-width: 190px; display: inline-flex; align-items: center; justify-content: center; gap: .6rem; }
.cf-note { font-size: .85rem; color: var(--ord-muted); }

/* sugerencias de la base de conocimientos (aparecen al escribir el asunto) */
.cf-form .fb-kb-suggestions { margin-bottom: 1.15rem; border-radius: .6rem; background: var(--ord-card); border-color: var(--ord-border) !important; }

/* ------------------------------------------------------------ lateral */
.cf-info { list-style: none; margin: 0; padding: 0; }
.cf-info li { display: flex; align-items: center; gap: 1rem; padding: 1rem 1.4rem; }
.cf-info li + li { border-top: 1px solid #e3e9f6; }
.cf-info small { display: block; font-size: .8rem; font-weight: 600; color: var(--ord-muted); }
.cf-info span:not(.cf-ico), body.order-page .ord-main .cf-info a { font-size: 1.02rem; color: var(--ord-text); text-decoration: none; word-break: break-word; }
body.order-page .ord-main .cf-info a:hover { color: var(--ord-blue); text-decoration: underline; }

.cf-ico {
    flex: 0 0 40px; width: 40px; height: 40px; border-radius: 10px;
    display: inline-flex; align-items: center; justify-content: center;
    background: var(--ord-tint); color: var(--ord-blue);
}
.cf-ico-lg { width: 44px; height: 44px; flex-basis: 44px; margin-bottom: .9rem; }

.cf-kb { padding: 1.4rem; background: var(--ord-card); }
.cf-kb h3 { margin: 0 0 .5rem; font-size: 1.2rem; font-weight: 800; color: var(--ord-navy); }
.cf-kb p { margin: 0 0 1.1rem; color: var(--ord-muted); font-size: .92rem; line-height: 1.55; }
.cf-kb .kb-more { margin-top: 0; }

@media (max-width: 900px) {
    .cf-grid { grid-template-columns: 1fr; }
    .cf-row { grid-template-columns: 1fr; }
    .cf-form { padding: 1.3rem 1.1rem; }
}
