.vf-saisie { display: grid; gap: 12px; margin-top: 18px; }
@media (min-width: 640px) { .vf-saisie { grid-template-columns: minmax(0, 1fr) auto; align-items: end; } }
.vf-saisie input { width: 100%; }
#vf-res { margin-top: 22px; }
.vf-carte { margin-bottom: 18px; padding: 18px 19px; background: var(--surface); border-top: 4px solid var(--ink); border-radius: var(--radius); }
.pxe-bg-s .vf-carte { background: var(--paper); }
.vf-verdicts { list-style: none; margin: 8px 0 14px; padding: 0; display: grid; gap: 8px; }
.vf-verdicts li { padding: 9px 12px; border-left: 6px solid var(--ink); background: var(--paper); font-weight: 600; }
.vf-ok { border-left-color: var(--accent) !important; }
.vf-ferme, .vf-pp { border-left-style: dashed !important; }
.vf-dl { display: grid; grid-template-columns: minmax(0, 11rem) minmax(0, 1fr); gap: 6px 14px; margin: 0; font-size: 15px; }
.vf-dl dt { font-weight: 700; }
.vf-dl dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 480px) { .vf-dl { grid-template-columns: minmax(0, 1fr); gap: 0; } .vf-dl dd { margin-bottom: 8px; } }
.vf-msg, .vf-src { font-size: 14.5px; }
.vf-src { color: var(--mut); }
