/* Numtrail (domain Numtrail, refonte/DEV-rf-mini-c.md): the home card, the sequences and the pad. Prefixed classes,
   colours from the tokens of neurostim.css only. Keys of 44 px at least on a phone of 390 px. */
.nt-sub { font-size: var(--ns-size-md); font-weight: 400; }
.nt-card { display: flex; flex-direction: column; gap: var(--ns-space-2); max-width: 30rem; margin: 0 0 var(--ns-space-5); }
.nt-card h2 { margin: var(--ns-space-2) 0 0; font-size: var(--ns-size-lg); }
.nt-card p, .nt-card form { margin: 0; }
.nt-time { font-size: var(--ns-size-2xl); font-weight: 700; font-variant-numeric: tabular-nums; color: var(--ns-text-strong); }
.nt-boards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 26rem), 1fr)); gap: 0 var(--ns-space-5); }
.nt-rules { margin-top: var(--ns-space-6); }
.nt-clock { margin: 0 0 var(--ns-space-3); text-align: center; font-size: var(--ns-size-xl); font-weight: 700; font-variant-numeric: tabular-nums; }
.nt-progress { text-align: center; color: var(--ns-muted); }

.nt-terms { display: flex; flex-wrap: wrap; gap: 4px; justify-content: center; margin: 0 0 var(--ns-space-2); font-size: clamp(0.95rem, 4.2vw, var(--ns-size-xl)); font-weight: 700; font-variant-numeric: tabular-nums; }
.nt-terms span { min-width: 1.9em; padding: 0.15em 0.25em; text-align: center; background: var(--ns-tint); border: 1px solid var(--ns-border-strong); border-radius: var(--ns-radius-sm); }
/* The last term and the gap on one line: the « ? » never alone below the others. */
.nt-terms .nt-tail { display: inline-flex; gap: 4px; min-width: 0; padding: 0; background: none; border: 0; }
.nt-terms .nt-gap { color: var(--ns-accent-darker); background: var(--ns-accent-soft); border-style: dashed; }
.nt-list { display: grid; gap: var(--ns-space-3); max-width: 30rem; margin: 0 auto var(--ns-space-4); padding: 0; list-style: none; }
.nt-seq { padding: var(--ns-space-3); background: var(--ns-page); border: 1px solid var(--ns-border); border-radius: var(--ns-radius); }
.nt-seq p { margin: 0; }
.nt-answer { display: flex; flex-wrap: wrap; gap: var(--ns-space-2); align-items: center; justify-content: center; }
.nt-answer input[type="text"] { flex: 1 1 8rem; max-width: 12rem; font-size: var(--ns-size-xl); font-variant-numeric: tabular-nums; text-align: center; }
.nt-skip { white-space: nowrap; }
.nt-skip[hidden] { display: none; }
.nt-seq.nt-bad { border-color: var(--ns-error); background: var(--ns-error-soft); }
.nt-seq.nt-ok { border-color: var(--ns-ok-line); background: var(--ns-ok-soft); }
.nt-seq.nt-passed { border-style: dashed; }
.nt-js .nt-seq:not(.nt-cur), .nt-js .nt-actions { display: none; }
.nt-pad { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--ns-space-2); margin-top: var(--ns-space-3); }
.nt-pad button { min-height: var(--ns-target); padding: 0; font-size: var(--ns-size-lg); font-variant-numeric: tabular-nums; }
.nt-actions { display: flex; justify-content: center; }
.nt-solution { columns: 2 14rem; margin: var(--ns-space-3) 0; font-variant-numeric: tabular-nums; }
