/* Раздел «Родителям выпускников» (tools/build-roditelyam.mjs): инструменты
   страниц — план с отметками, памятка и лист для печати, калькуляторы.
   Цвета — только переменные ege.css, поэтому тёмная тема работает без
   отдельных правил. */

.rod-tool{margin-top:16px}
.rod-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 16px}
.rod-actions{display:flex;flex-wrap:wrap;gap:10px}
.rod-actions .btn{padding:11px 16px;font-size:14.5px}
.rod-progress{font-size:14.5px;color:var(--ink-2)}
.rod-progress b{color:var(--ink)}
.rod-hint{font-size:13.5px;color:var(--ink-3);margin-top:14px;line-height:1.55}
.rod-print-title{display:none}

/* ── План по месяцам ─────────────────────────────────────────── */
.rod-months{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.rod-month{border:1px solid var(--line-2);border-radius:18px;padding:16px 18px;background:var(--surface-2)}
.rod-month.is-now{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-soft)}
.rod-month-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin-bottom:10px}
.rod-month-h h3{font-size:17px}
.rod-focus{font-size:13.5px;font-weight:600;color:var(--ink-3)}
.rod-now{display:inline-block;padding:3px 9px;border-radius:999px;background:var(--brand);color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.04em}
.rod-checks{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rod-checks label{display:flex;gap:11px;align-items:flex-start;cursor:pointer;font-size:15.5px;line-height:1.55;color:var(--ink-2)}
.rod-checks input{flex-shrink:0;width:20px;height:20px;margin:2px 0 0;accent-color:var(--brand)}
.rod-checks input:checked + span{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--line-2)}
.rod-checks a,.rod-memo-list a{color:var(--brand-ink);font-weight:600;border-bottom:1px solid currentColor}
.rod-qlist{counter-reset:q}
.rod-qlist li{counter-increment:q}
.rod-qlist label span::before{content:counter(q) ". ";font-weight:700;color:var(--ink)}

/* ── Лист для печати: памятка и лист ознакомления ───────────── */
.rod-sheet{border:1px dashed var(--line-2);border-radius:18px;padding:22px 24px;background:var(--surface)}
.rod-sheet h3{font-size:19px;line-height:1.25;margin:4px 0 14px}
.rod-sheet-kicker{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-ink)}
.rod-memo-list{margin:0;padding-left:22px;display:grid;gap:9px}
.rod-memo-list li{font-size:15px;line-height:1.55;color:var(--ink-2)}
.rod-memo-list li strong{color:var(--ink)}
.rod-sheet-foot{font-size:12.5px;color:var(--ink-3);margin-top:14px}
.rod-sheet-text{font-size:14.5px;line-height:1.55;color:var(--ink-2);margin:12px 0}
.rod-sheet-wrap + .step-list,.rod-memo + p{margin-top:18px}
.rod-memo .rod-actions,.rod-sheet-wrap .rod-actions{margin-top:14px}
.rod-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}
.rod-sign{width:100%;border-collapse:collapse;font-size:14px;margin-top:6px}
.rod-sign caption{text-align:left;font-weight:700;color:var(--ink-2);padding:6px 0 8px;font-size:14px}
.rod-sign th,.rod-sign td{border:1px solid var(--line-2);padding:0 8px;height:30px;text-align:left;vertical-align:middle}
.rod-sign thead th{font-weight:700;font-size:12.5px;color:var(--ink-3);height:auto;padding:8px}
.rod-sign th[scope="row"]{width:36px;text-align:center;font-weight:600;color:var(--ink-3)}
.rod-sign td:last-child{width:22%}
/* На телефоне лист подписей только для печати: 25 пустых строк на экране не нужны. */
@media(max-width:640px){
  .rod-fields{grid-template-columns:1fr}
  .rod-sign tbody tr:nth-child(n+4){display:none}
  .rod-sign td:nth-child(3),.rod-sign thead th:nth-child(3){display:none}
}

/* ── Калькуляторы ────────────────────────────────────────────── */
.rod-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.rod-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.rod-field span{font-size:13.5px;font-weight:600;color:var(--ink-2)}
.rod-field input,.rod-field select{
  width:100%;min-width:0;font:inherit;font-size:16px;color:var(--ink);background:var(--surface);
  border:1px solid var(--line-2);border-radius:12px;padding:11px 12px
}
.rod-field input:focus,.rod-field select:focus{outline:3px solid rgba(223,153,91,.45);outline-offset:1px;border-color:var(--brand)}
.rod-wide{grid-column:1 / -1}
.rod-check{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;color:var(--ink-2);line-height:1.5}
.rod-check input{width:20px;height:20px;margin:1px 0 0;flex-shrink:0;accent-color:var(--brand)}
.rod-result{margin-top:18px;border-radius:18px;padding:18px 20px;background:var(--brand-soft);border:1px solid var(--line)}
.rod-result.is-no{background:var(--surface-2)}
.rod-big{font-family:'Unbounded','Manrope',sans-serif;font-weight:700;font-size:clamp(24px,4vw,32px);color:var(--ink);line-height:1.15}
.rod-sub{font-size:15px;line-height:1.55;color:var(--ink-2);margin-top:8px}
.rod-split{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:4px;font-size:14.5px;color:var(--ink-2)}
.rod-split:empty{display:none}
.rod-split b{color:var(--ink)}
@media(max-width:560px){.rod-form{grid-template-columns:1fr}}

/* ── Календарь хаба ──────────────────────────────────────────── */
.rod-cal tr.is-next th,.rod-cal tr.is-next td{background:var(--brand-soft)}
.rod-cal tr.is-past th,.rod-cal tr.is-past td{color:var(--ink-3)}
.rod-cal .rod-now{margin-left:6px;vertical-align:middle}

/* ── Следующий шаг ───────────────────────────────────────────── */
.rod-next{border-color:var(--brand);background:linear-gradient(160deg,var(--surface) 0%,var(--brand-soft) 140%)}
.rod-next .cta-row{margin-top:16px}
@media(max-width:560px){.rod-next .btn,.final-cta .btn{width:100%;justify-content:center}}

/* ── Печать одного блока ─────────────────────────────────────────
   Кнопка ставит на <body> data-printing="<id блока>", блоку — класс
   rod-printing, его предкам — rod-print-path: печатается только этот блок,
   без шапки, меню, баннера и кнопок. Обычная печать страницы (Ctrl+P)
   печатает всё, кроме навигации. */
@media print{
  #shared-header,.theme-toggle,.theme-fab,.final-cta,footer,.nm-footer,[data-noprint],.rod-actions,.faq-sec,.crumbs{display:none !important}
  body{background:#fff !important;color:#000}
  .card{box-shadow:none;border-color:#ccc;break-inside:auto}
  .reveal{opacity:1 !important;transform:none !important}
  /* Печать одного блока: всё, что не блок и не его предки, убирается из раскладки. */
  body[data-printing] *:not(.rod-print-path):not(.rod-printing):not(.rod-printing *){display:none !important}
  body[data-printing] .rod-print-path{display:block !important;padding:0 !important;margin:0 !important;border:0 !important;box-shadow:none !important;background:none !important;max-width:none !important}
  body[data-printing] .rod-printing{margin:0}
  .rod-print-title{display:block;font-weight:700;font-size:14pt;margin:0 0 10pt}
  .rod-sheet{border:none;padding:0}
  .rod-month{break-inside:avoid;background:none;border-color:#bbb;padding:8pt 10pt}
  .rod-months{gap:6pt}
  .rod-checks label{font-size:10.5pt;line-height:1.35;color:#000}
  .rod-checks input{width:12pt;height:12pt}
  .rod-checks input:checked + span{text-decoration:line-through}
  .rod-memo-list li{font-size:11pt;color:#000}
  .rod-sign tbody tr{display:table-row !important}
  .rod-sign td,.rod-sign thead th{display:table-cell !important}
  .rod-sign th,.rod-sign td{border-color:#000;height:22pt}
  .rod-field input{border:none;border-bottom:1px solid #000;border-radius:0;padding:2pt 0;background:none}
  .rod-field input::placeholder{color:transparent}
  .rod-sign thead{display:table-header-group}
  .rod-fields{grid-template-columns:repeat(2,1fr) !important}
  a{color:#000 !important;border:none !important}
  .cite{display:none}
}

/* Ссылки в тексте карточек и пояснениях — как в теле статей раздела /ege/. */
.card > p a:not(.btn),.card .status-note a,.card .step-list a,.card .bullet-list a{color:var(--brand-ink);font-weight:600;border-bottom:1px solid currentColor}

/* Таблицы из трёх колонок: ширины задаёт строка заголовков (table-layout:fixed),
   последняя колонка — пояснение обычным начертанием (в ege.css все ячейки
   таблицы фактов жирные). */
@media(min-width:561px){
  .facts-table.gia-stack{table-layout:fixed}
  .facts-table.gia-stack thead th:first-child{width:24%}
  .facts-table.gia-stack thead th:nth-child(2){width:28%}
  .facts-table.gia-stack th[scope="row"]{width:auto}
  .facts-table.rod-cal thead th:first-child{width:22%}
  .facts-table.rod-cal thead th:nth-child(2){width:auto}
  .facts-table.rod-cal thead th:last-child{width:17%}
}
.facts-table.gia-table.gia-stack td:last-child{font-weight:500;color:var(--ink-2)}
.facts-table.rod-cal td:nth-child(2){font-weight:600;color:var(--ink)}


/* Лист подписей на экране — первые восемь строк, при печати — все. */
.rod-sign tbody tr:nth-child(n+9){display:none}
.rod-screen-note{font-weight:500;color:var(--ink-3)}
.rod-protocol{margin:6px 0 14px}
