/********************************************************************************************
 *                                                                                           *
 *   ██████╗░██╗░░░██╗░██████╗░█████╗░██████╗░███████╗░█████╗░████████╗██╗██╗░░░██╗███████╗  *
 *   ██╔══██╗██║░░░██║██╔════╝██╔══██╗██╔══██╗██╔════╝██╔══██╗╚══██╔══╝██║██║░░░██║██╔════╝  *
 *   ██████╔╝██║░░░██║╚█████╗░██║░░╚═╝██████╔╝█████╗░░███████║░░░██║░░░██║╚██╗░██╔╝█████╗░░  *
 *   ██╔══██╗██║░░░██║░╚═══██╗██║░░██╗██╔══██╗██╔══╝░░██╔══██║░░░██║░░░██║░╚████╔╝░██╔══╝░░  *
 *   ██║░░██║╚██████╔╝██████╔╝╚█████╔╝██║░░██║███████╗██║░░██║░░░██║░░░██║░░╚██╔╝░░███████╗  *
 *   ╚═╝░░╚═╝░╚═════╝░╚═════╝░░╚════╝░╚═╝░░╚═╝╚══════╝╚═╝░░╚═╝░░░╚═╝░░░╚═╝░░░╚═╝░░░╚══════╝  *
 *                                                                              © 2013-2026  *
 * ----------------------------------------------------------------------------------------- *
 * This is commercial software, only users who have purchased a valid license and accept     *
 * to the terms of the License Agreement can install and use this program.                   *
 * ----------------------------------------------------------------------------------------- *
 * www: https://ruscreative.com                                                              *
 * email: info@ruscreative.com                                                               *
 * @license       Commercial                                                                 *
 * @copyright (C) 2013-2026 RusCreative.com | All rights reserved.                           *
 ********************************************************************************************/
/**
 * mod_rcmforms preset: "loxley" — тема контактной формы под шаблон saddlesb3
 * сайта loxleysaddles.ru (сёдла Loxley by Bliss).
 *
 * Эталон — родная форма сайта (templates/saddlesb3/css/styles.css):
 *   акцент-бирюза #4F9393 (hover #46b9b4), заголовки #1E9994, текст #4F4F4F,
 *   бордюр полей #CCCCCC, радиус ~4px, шрифт Helvetica, крупные (21px)
 *   бирюзовые подписи с лёгкой светлой тенью, раскладка label-left
 *   (.form-horizontal). Светлая тема (фон сайта — белый с текстурой).
 *
 * Scope: .rcmforms--preset-loxley (класс добавляется к <form> диспетчером).
 * Чистые CSS-переменные поверх нейтральной базы rcmforms.css + точечные правила.
 */

.rcmforms--preset-loxley {
    --rcmf-accent: #4F9393;            /* бирюза кнопки/акцента сайта */
    --rcmf-accent-text: #ffffff;
    --rcmf-radius: 4px;                /* как border-radius полей родной формы */
    --rcmf-control-bg: #ffffff;
    --rcmf-control-border: #cccccc;
    --rcmf-control-text: #4f4f4f;
    --rcmf-label-text: #4f9393;        /* бирюзовые подписи как в родной форме */
    --rcmf-muted: #8a8a8a;
    --rcmf-error: #cc0000;
    --rcmf-success: #468847;
    --rcmf-gap: 1rem;
    --rcmf-control-padding: 0.5rem 0.75rem;   /* + height:auto ниже → высота поля ~35px как у родной формы */
    --rcmf-font-size: 14px;

    /* Точно тот же стек, что у инпутов старой формы (bootstrap-наследие),
       чтобы шрифт полей совпадал. */
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

/* Заголовок формы — как заголовки сайта (#1E9994), по центру как «Отправить сообщение». */
.rcmforms--preset-loxley .rcmforms__title {
    color: #1e9994;
    font-weight: 600;
    text-align: center;
    text-shadow: 1px 0 0 #f5f5f5;
}

/* ── Горизонтальный layout label-left, как у родной формы (.form-horizontal) ──
 * Адаптивность без жёстких брейкпоинтов: row + wrap. Пока подпись (170px) и поле
 * (min 280px) помещаются в строку — они рядом; как только контейнер уже —
 * поле переносится под подпись (естественный стек). Доп. media-правило ниже
 * лишь убирает отступ кнопки и растягивает подпись на узких экранах. */
.rcmforms--preset-loxley .rcmforms__field {
    flex-flow: row wrap;
    align-items: flex-start;
    column-gap: 1rem;
    row-gap: 0.3rem;
}

/* Подписи — крупные бирюзовые 21px с лёгкой светлой тенью (как `form label`
   родной формы); фикс-колонка слева ~170px, выровнены по верху строки поля. */
.rcmforms--preset-loxley .rcmforms__label {
    flex: 0 0 170px;
    max-width: 170px;
    padding-top: 0.4rem;        /* совместить с верхом поля */
    font-size: 21px;
    font-weight: 400;
    line-height: 1.2;
    text-align: left;
    text-shadow: 1px 1px 0 #fff;
}

.rcmforms--preset-loxley .rcmforms__control {
    flex: 1 1 280px;       /* растягивается рядом с подписью; переносится под неё при нехватке места */
    min-width: 0;
    /* Шаблон навязывает input[type=text]{height:25px} (специфичнее .rcmforms__control);
       сбрасываем и задаём min-height 35px — ровно как высота поля родной формы. */
    height: auto;
    min-height: 35px;
}

/* Текстовое поле — выше, ближе к родной форме (textarea height ~169px). */
.rcmforms--preset-loxley textarea.rcmforms__control {
    min-height: 160px;
}

/* Кнопка — под колонкой полей (как .form-button с отступом у родной формы);
   радиус 2px как у родной .form-button. */
.rcmforms--preset-loxley .rcmforms__submit {
    margin-left: calc(170px + 1rem);
    border-radius: 2px;
}

/* На узких экранах: подпись на всю ширину (поле уже и так перенеслось вниз
   за счёт wrap), кнопка без отступа. */
@media (max-width: 600px) {
    .rcmforms--preset-loxley .rcmforms__label {
        flex-basis: 100%;
        max-width: none;
        padding-top: 0;
    }
    .rcmforms--preset-loxley .rcmforms__submit {
        margin-left: 0;
    }
}

.rcmforms--preset-loxley .rcmforms__control:focus {
    outline: 0;
    border-color: #4f9393;
    box-shadow: 0 0 0 0.2rem rgba(79, 147, 147, 0.2);
}

/* ── Блок согласия ПД ──────────────────────────────────────────────────────
 * rcmconsent отдаёт BS5-разметку (.form-check d-flex … / .invalid-feedback),
 * но шаблон сайта на Bootstrap 3 — утилиты d-flex/w-100/ps-2 и правило
 * скрытия .invalid-feedback отсутствуют, а глобальное правило шаблона `input`
 * растягивает чекбокс. Стилизуем нейтрально: чекбокс фикс-размера слева,
 * подпись рядом, сообщение об ошибке скрыто до пометки невалидным.
 */
.rcmforms--preset-loxley .form-check {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 0.6rem;
    margin: 0;
    padding: 0;
    font-size: 15px;                  /* заметнее обычного fine-print */
}

/* Кастомный чекбокс (appearance:none) — заметный, выровнен, виден на любом фоне:
   белый бокс с бирюзовой рамкой, при выборе — заливка бирюзой + белая галочка. */
.rcmforms--preset-loxley .form-check-input {
    appearance: none;
    -webkit-appearance: none;
    box-sizing: border-box;
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    padding: 0;                       /* перебить глобальный form input{padding:17px 30px} шаблона */
    margin: 1px 0 0;                  /* совместить с первой строкой текста */
    border: 2px solid var(--rcmf-accent);
    border-radius: 4px;
    background: #ffffff;
    cursor: pointer;
    transition: background-color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.rcmforms--preset-loxley .form-check-input:hover {
    border-color: #3c7a7a;
}

.rcmforms--preset-loxley .form-check-input:checked {
    background-color: var(--rcmf-accent);
    border-color: var(--rcmf-accent);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px;
}

.rcmforms--preset-loxley .form-check-input:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(79, 147, 147, 0.35);
}

.rcmforms--preset-loxley .form-check-label {
    flex: 1 1 auto;
    width: auto;
    margin: 0;
    padding: 0;
    color: #3a3a3a;                   /* тёмный, заметный текст */
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;  /* как шрифт формы */
    font-size: 15px;                  /* перебить глобальный form label{font-size:21px} */
    font-weight: 400;
    text-shadow: none;                /* у form label шаблона есть тень — убираем */
    line-height: 1.45;
    cursor: pointer;
}

.rcmforms--preset-loxley .form-check-label a {
    color: var(--rcmf-accent);
    text-decoration: underline;
}

.rcmforms--preset-loxley .invalid-feedback {
    display: none;            /* BS5 по умолчанию скрывает — дублируем для BS3 */
    flex: 0 0 100%;
    margin: 0.25rem 0 0;
    color: var(--rcmf-error);
    font-size: 0.85em;
}

.rcmforms--preset-loxley .form-check-input.is-invalid ~ .invalid-feedback,
.rcmforms--preset-loxley .form-check.is-invalid .invalid-feedback {
    display: block;
}

.rcmforms--preset-loxley .rcmforms__submit {
    text-transform: none;
}

.rcmforms--preset-loxley .rcmforms__submit:hover {
    filter: none;
    background: #46b9b4;        /* hover-бирюза сайта */
}
