/* ============================================================
   Згода на email-дайджест подій у збережених парках — RECRE-542.

   ЧОМУ ОКРЕМИЙ ФАЙЛ, А НЕ main.css: правка main.css заблокована
   паралельним незакоміченим WIP (той самий випадок і та сама причина,
   що вже дали army-banner.css та route-card.css — див. коментар у
   base.html). Перевизначень наявних селекторів тут немає, лише нові
   класи .ndg-optin*, тому перенесення в main.css буде механічним.

   Токени — з main.css (:root). Власної палітри файл не вводить.
   ============================================================ */

.ndg-optin {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 18px;
    padding: 14px 16px;
    border: 1px solid var(--border-2);
    /* Пунктир свідомо НЕ використовується: блок не «порожній стан» і не
       заглушка — це діюча форма, і суцільна межа читається саме так. */
    border-radius: 14px;
    background: var(--surface);
}

.ndg-optin__row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    flex: 1 1 320px;
    cursor: pointer;
}

/* Чекбокс не стискається у флексі й не «стрибає» відносно першого рядка
   тексту (line-height тексту 1.45 при 14px ≈ 20px). */
.ndg-optin__row input[type="checkbox"] {
    flex: 0 0 auto;
    width: 17px;
    height: 17px;
    margin-top: 2px;
    accent-color: var(--green);
    cursor: pointer;
}

.ndg-optin__text {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.ndg-optin__text b {
    font-size: 14px;
    font-weight: 600;
    color: var(--ink);
}

.ndg-optin__text small {
    font-size: 12.5px;
    line-height: 1.45;
    color: var(--muted);
}

.ndg-optin__save {
    flex: 0 0 auto;
    padding: 9px 18px;
    border: 0;
    border-radius: 10px;
    background: var(--green);
    color: var(--surface-2);
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s ease;
}

.ndg-optin__save:hover { background: var(--green-hover); }

/* Підтвердження збереження. Прийшло з ?notify=saved, тобто живе рівно
   до наступної навігації — окремого таймера/JS не потребує. */
.ndg-optin__done {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12.5px;
    font-weight: 600;
    color: var(--sage);
}

.ndg-optin__done i {
    width: 15px;
    height: 15px;
}

@media (max-width: 680px) {
    /* На вузькому екрані кнопка стає повноширинною під текстом —
       інакше вона тиснеться в 60px і промахнутись легше, ніж влучити. */
    .ndg-optin { align-items: stretch; }
    .ndg-optin__save { width: 100%; }
}
