/* ============================================================
   Плата за НВОС: страницы семейства nvos_*.

   Подключается ПОСЛЕ /calculators/calc.css и /calculators/unauthorized.css:
   оттуда берутся общий каркас калькулятора (форма, панель результата,
   .calc-intro, .input-help, .calc-error, .result-formula) и строки-репитеры.
   Здесь — только то, чего в них нет: чекбоксы признаков и строка вещества.
   ============================================================ */

/* --- признаки плательщика ---
   Флаги правовых режимов: два столбца на десктопе, один на узком экране.
   Скрытые пункты (Кпр для ЦСВ, ПП N 1831) убираются атрибутом hidden. */
.nvos-flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.checkline{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid var(--line-soft);border-radius:12px;background:rgba(255,255,255,.018);color:var(--muted);font-size:13px;line-height:1.45;cursor:pointer;transition:.18s}
.checkline:hover{border-color:var(--line)}
.checkline input{flex:0 0 auto;width:17px;height:17px;margin-top:1px;accent-color:var(--accent)}
.checkline:has(input:checked){border-color:var(--accent);background:rgba(201,163,107,.10);color:var(--cream)}
.checkline input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.checkline[hidden]{display:none}

/* --- строки веществ ---
   Пять полей в ряд: вещество занимает две колонки, потому что под ним живут
   подсказка справочника и чекбокс Кво. */
.nvos-rows{display:grid;gap:12px}
.nvos-row{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;padding:16px;border:1px solid var(--line-soft);border-radius:14px;background:rgba(255,255,255,.018)}
.nvos-row__title{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--accent-2);font-family:var(--serif);font-size:16px;font-weight:700}
.nvos-row .substance-field{grid-column:span 6}
.nvos-row .mass-field{grid-column:span 3}
.nvos-row .limit-field{grid-column:span 3}
.nvos-row__remove{position:absolute;top:14px;right:14px;min-height:32px;padding:0 12px;border:1px solid rgba(240,163,174,.24);border-radius:10px;background:var(--danger-bg);color:var(--danger);cursor:pointer;font:600 12px var(--sans);transition:.18s}
.nvos-row__remove:hover{border-color:var(--danger)}

/* Подсказка по позиции справочника: подтверждение того, что вещество опознано.
   Без неё пользователь не отличает «нашлось» от «принято как текст». */
.substance-note{margin-top:6px;color:var(--faint);font-size:12px;line-height:1.45}
.substance-note--ok{color:var(--accent-2)}
.substance-note--warn{color:var(--danger)}
.substance-suggest{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.substance-suggest button{padding:6px 10px;border:1px solid var(--line-soft);border-radius:999px;background:rgba(255,255,255,.02);color:var(--muted);cursor:pointer;font:500 12px var(--sans);transition:.18s}
.substance-suggest button:hover{border-color:var(--accent);color:var(--cream)}
.nvos-row .checkline{margin-top:10px}

/* --- хаб семейства --- */
.nvos-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.nvos-hub-card{display:flex;flex-direction:column;gap:10px;padding:24px}
.nvos-hub-card h3{margin:0;font-family:var(--serif);font-size:22px;color:var(--cream)}
.nvos-hub-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.6}
.nvos-hub-card .btn{margin-top:auto;align-self:flex-start}
.nvos-hub-card--soon{opacity:.72}
.nvos-status{display:inline-block;padding:4px 10px;border:1px solid var(--line-soft);border-radius:999px;color:var(--faint);font-size:11px;letter-spacing:.06em;text-transform:uppercase}
.nvos-status--ready{border-color:var(--accent);color:var(--accent-2)}

/* --- сравнение способов авансового платежа ---
   Панель результата узкая, поэтому таблица способов сделана двухколоночной:
   название способа и сумма. Выбранный подсвечивается акцентом. */
.nvos-methods{margin-top:14px;padding:16px}
.nvos-methods h4{margin:0 0 8px;font-family:var(--serif);font-size:16px;color:var(--cream)}
.nvos-methods h4+table{margin-bottom:14px}
.nvos-methods td:last-child{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--cream)}
.nvos-methods tr.is-selected td{color:var(--accent-2)}
.nvos-methods[hidden]{display:none}

/* --- сроки --- */
.nvos-deadlines{width:100%;border-collapse:collapse;margin-top:8px}
.nvos-deadlines th,.nvos-deadlines td{padding:12px 14px;border-bottom:1px solid var(--line-soft);text-align:left;font-size:14px;vertical-align:top}
.nvos-deadlines th{color:var(--accent-2);font-weight:600}
.nvos-deadlines td{color:var(--muted)}

.btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}

@media (max-width:900px){
  .nvos-hub-grid{grid-template-columns:1fr}
  .nvos-flags{grid-template-columns:1fr}
  .nvos-row{grid-template-columns:1fr}
  .nvos-row .substance-field,.nvos-row .mass-field,.nvos-row .limit-field{grid-column:1/-1}
  .nvos-row__remove{position:static;margin-top:4px;justify-self:start}
}
