/* RNOR status checker. Builds on /home/home.css and /shared/css/col.css. */
.rnor-layout { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 20px; align-items: start; }
.rnor-form { display: flex; flex-direction: column; gap: 18px; }
.rnor-form h2, .rnor-result h2 { font-size: 20px; font-weight: 800; color: var(--ink); }
.rnor-q { border: 0; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.rnor-q[hidden] { display: none; } /* questions that don't apply to these answers */
.rnor-q legend { font-weight: 700; font-size: 15px; padding: 0; margin-bottom: 4px; }
.rnor-choices { display: flex; flex-wrap: wrap; gap: 8px; }
.rnor-choices label { min-height: 44px; display: inline-flex; align-items: center; gap: 8px; padding: 0 14px; border: 1px solid var(--field-line); border-radius: var(--radius); background: var(--surface); cursor: pointer; font-weight: 600; }
.rnor-choices label:has(input:checked) { border-color: var(--accent); background: var(--accent-soft); color: var(--accent-deep); }
.rnor-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
.rnor-field { display: flex; flex-direction: column; gap: 6px; }
.rnor-field label { font-weight: 700; font-size: 14px; }
.rnor-field input { min-height: 46px; padding: 0 12px; border-radius: var(--radius); border: 1px solid var(--field-line); background: var(--surface); color: var(--ink); }
.req { color: var(--warn); margin-left: 2px; }
.hint { font-size: 13px; color: var(--muted); margin: 0; }
.rnor-years summary { font-weight: 700; cursor: pointer; color: var(--accent); }
.rnor-years[open] summary { margin-bottom: 8px; }
.rnor-years-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(110px, 1fr)); gap: 10px; margin-top: 10px; }
.rnor-result { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 12px; }
.rnor-headline { font-size: 18px; font-weight: 750; color: var(--ink); line-height: 1.4; }
.rnor-error { color: var(--warn-ink); background: var(--warn-soft); border: 1px solid var(--warn-line); border-radius: var(--radius); padding: 10px 14px; }
.rnor-table tbody th small, .rnor-table .why small { display: block; font-weight: 400; color: var(--muted); font-size: 12px; margin-top: 2px; }
.rnor-table tbody th { min-width: 84px; white-space: nowrap; }
.rnor-table thead th { white-space: nowrap; }
.rnor-table td.num { min-width: 0; }
.rnor-table .why { font-size: 14px; color: var(--ink-2); min-width: 180px; }
.rnor-table tr.move td { font-weight: 400; }
.rnor-table tr.move td.num { font-weight: 750; }
.rnor-table tr.move th { color: var(--accent-deep); }
.rnor-chip { display: inline-block; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 800; white-space: nowrap; }
.rnor-chip.nr { background: var(--ground); border: 1px solid var(--line); color: var(--ink-2); }
.rnor-chip.rnor { background: var(--ok-soft); color: var(--ok-ink); }
.rnor-chip.ror { background: var(--accent-soft); color: var(--accent-deep); }
.rnor-rules { margin: 8px 0 12px; padding-left: 20px; display: flex; flex-direction: column; gap: 8px; color: var(--ink-2); max-width: 900px; }
@media (min-width: 641px) { .rnor-rules li { text-align: justify; } }
@media (max-width: 900px) { .rnor-layout { grid-template-columns: 1fr; } .rnor-result { position: static; } }
