/* ══════════════════════════════════════════════════════════════════════════
   Контраст органов управления
   ──────────────────────────────────────────────────────────────────────────
   Замер всех тем на живом сайте (13.08.2026) показал, что с текстом всё
   хорошо: основной 11–16:1, приглушённый 5.9–10:1 — заметно выше AA. А вот
   границы полей, списков и переключателей давали **1.8–2.0:1** при норме 3:1
   для органов управления. На глаз это выглядит как «поле сливается с
   карточкой»: не видно, где можно нажать, а где просто текст.

   Здесь границы таких элементов переводятся на `--tp-control-edge`
   (rewards-themes.css) — 38% цвета текста, то есть 3.1:1 на карточке. Мягкие
   рамки самих карточек и разделители не трогаем: у них другая работа — они
   должны быть еле видны.

   Лист подключён последним: он перекрывает settings-glass.css и другие
   владельцы поверхностей, которые ставили сюда стеклянный край.
   ══════════════════════════════════════════════════════════════════════════ */

:where(
    #screen-settings .tp-settings-row select,
    #screen-settings .tp-settings-row input[type="text"],
    #screen-settings .tp-settings-row input[type="number"],
    .tp-settings select,
    .tp-product-page select,
    .tp-product-page input[type="text"],
    .tp-product-page input[type="search"],
    .tp-product-page input[type="email"],
    .tp-product-page input[type="password"],
    .tp-product-page textarea
) {
    border-color: var(--tp-control-edge, rgba(245, 235, 216, 0.38));
}

/* Дорожка переключателя в выключенном состоянии — тоже орган управления:
   именно по ней человек понимает, что настройку можно нажать. */
.tp-toggle > span {
    border-color: var(--tp-control-edge, rgba(245, 235, 216, 0.38));
}

/* Включённый переключатель залит акцентом — рамка ему не нужна и добавляла
   лишний контур поверх золотой заливки. */
.tp-toggle input:checked + span {
    border-color: var(--tp-product-gold, var(--tp-color-primary));
}

/* Кнопки-призраки намеренно оставлены без рамки: их узнают по подписи и
   золотому цвету текста, а обводка каждой такой кнопки превратила бы спокойный
   экран в сетку прямоугольников. Правило 3:1 распространяется на элементы,
   которые без контура не опознать, — поля и переключатели выше.

   Всплывающее сообщение о рейтинге — единственный текст, который не прошёл
   проверку: подписи в нём брали цвет из старого слоя переменных (#8a7860 на
   тёмно-синей плашке — 2.2:1). Отдаём их теме, где приглушённый цвет проверен
   на всех поверхностях. `!important` — потому что premium.css задаёт цвет так же. */
.rating-toast-label,
.rating-toast-current {
    color: var(--tp-product-muted, var(--tp-color-text-muted, #ada69b)) !important;
}

/* Плашка «рейтинг изменён» осталась из старого слоя стилей: тёмно-синяя
   (#1a1a28) на любой из тем и с `opacity: .65` на строке текущего рейтинга —
   вместе это давало 2.2:1. Цвет плашки берём из темы, прозрачность снимаем:
   приглушённость уже передана цветом, а не полупрозрачностью. */
.rating-toast {
    background: var(--tp-product-surface-raised, var(--tp-color-surface-raised, #232120)) !important;
    border-color: var(--tp-product-border-strong, var(--tp-color-border-strong, rgba(236, 231, 223, 0.28))) !important;
}

.rating-toast-current { opacity: 1 !important; }

/* Знак изменения рейтинга — из палитры темы: прежние #4caf50 и #d15b5b
   принадлежали ещё материальной палитре и на новой плашке смотрелись чужими. */
.rating-toast-value.positive { color: var(--tp-product-success, var(--tp-color-success, #82b36b)) !important; }
.rating-toast-value.negative { color: var(--tp-product-danger, var(--tp-color-danger, #e0776f)) !important; }
