/* Mise en page commune à toutes les pages (essai navigateur du 27.10.2026 : pages sans style).
   Aucun style en ligne : la CSP le refuse. */
body { font: 14px/1.4 system-ui, sans-serif; color: #1f2933; background: #fff; margin: 0; }
header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 16px; border-bottom: 1px solid #e5e9ee; background: #f7f9fb; }
header form { margin: 0; }
main { padding: 12px 16px; }
h1 { font-size: 18px; margin: 6px 0 10px; }
h2 { font-size: 15px; margin: 18px 0 8px; }
a { color: #2952cc; }
table { border-collapse: collapse; }
td, th { padding: 4px 8px; border-bottom: 1px solid #e5e9ee; text-align: left; vertical-align: middle; }
th { font-size: 12px; color: #6b7785; font-weight: 600; }
small { color: #6b7785; }
button, .btn { background: #2952cc; color: #fff; border: 0; border-radius: 4px; padding: 4px 10px; font: inherit; font-size: 13px; cursor: pointer; text-decoration: none; }
button.second { background: #eef2f6; color: #1f2933; }
button:disabled { background: #e5e9ee; color: #9aa5b1; cursor: default; }
input[type="text"], input[type="password"], select { font: inherit; padding: 4px 6px; border: 1px solid #c5ced8; border-radius: 4px; }
main > form, main form p { margin: 8px 0; }
main > form input[type="text"], main > form input[type="password"] { margin: 2px 0 8px; min-width: 18em; }
.ok { color: #1a7f37; }
.bad { color: #b42318; }
textarea { font: 13px/1.3 ui-monospace, monospace; padding: 4px 6px; border: 1px solid #c5ced8; border-radius: 4px; max-width: 100%; }
/* numéros de compte : champ court, les deux comptes Nexi tiennent sur une ligne (essai navigateur du 27.10.2026) */
main form input.court[type="text"] { min-width: 0; width: 6em; }
