/* Пилот самопроверки: подключается только на страницах с form[data-answer-pilot]. Цвета — из
   токенов оформления v2 (светлая и тёмная тема), без новых палитр. */
.answer-pilot { border: 1px solid var(--line, #e3e6ec); border-radius: var(--r-lg, 16px); background: var(--surface, #fff); padding: 18px 20px; margin: 18px 0; }
.answer-pilot label { display: block; font-weight: 600; font-size: 17px; margin: 0 0 6px; color: var(--ink, #141a2a); }
.answer-pilot .answer-format { display: block; font-size: 14px; line-height: 1.5; color: var(--muted, #5c6a7a); margin: 0 0 12px; }
.answer-pilot .answer-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; }
.answer-pilot input { width: 160px; max-width: 100%; min-height: 44px; font: 17px/1.4 var(--font, inherit); padding-inline: 12px; border: 1px solid var(--line-2, #cfd4dd); border-radius: var(--r, 10px); background: var(--surface, #fff); color: var(--ink, #141a2a); }
.answer-pilot input[aria-invalid="true"] { border-color: var(--bad, #a33a2a); }
.answer-pilot input:focus-visible { outline: 2px solid var(--accent, #2457d6); outline-offset: 2px; }
.answer-pilot .answer-row .button { min-height: 44px; }
.answer-pilot .answer-feedback { margin: 12px 0 0; font-size: 16px; line-height: 1.55; }
.answer-pilot .answer-feedback:empty { display: none; }
.answer-pilot .answer-feedback[data-result="correct"] { color: var(--ok, #1f7a4b); font-weight: 600; }
.answer-pilot .answer-feedback[data-result="incorrect"] { color: var(--bad, #a33a2a); }
.answer-pilot .answer-feedback[data-result="format"] { color: var(--warn, #8a5a00); }
.answer-pilot .answer-attempts { font-size: 13px; color: var(--muted, #5c6a7a); margin: 6px 0 0; }
.answer-pilot .answer-tools { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.answer-pilot .answer-hint { margin: 12px 0 0; padding: 12px 14px; border-left: 3px solid var(--warn, #8a5a00); background: var(--warn-soft, #fff3d6); border-radius: 0 var(--r, 10px) var(--r, 10px) 0; font-size: 16px; line-height: 1.55; }
.answer-pilot .answer-after { margin: 12px 0 0; padding: 12px 14px; border: 1px dashed var(--line-2, #cfd4dd); border-radius: var(--r, 10px); font-size: 15px; line-height: 1.55; }
.answer-pilot .answer-after p { margin: 0 0 8px; }
.answer-pilot .answer-after a { font-weight: 600; }
@media (max-width: 360px) { .answer-pilot { padding: 14px; } .answer-pilot .answer-row { flex-direction: column; } .answer-pilot input { width: 100%; } }
@media print { .answer-pilot { display: none !important; } }
