:root { --jaune:#FFC21A; --brun:#2A1A14; --fond:#FFF6DC; --bleu:#1F4BB5; --rouge:#B3261E; }
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; background: var(--fond); color: var(--brun); font-size: 17px; line-height: 1.45; }
main { padding: 16px; max-width: 1100px; margin: 0 auto; }
main.etroit { max-width: 560px; padding-top: 40px; }
h1 { font-size: 32px; margin: 0 0 12px; }
.grand { font-size: 21px; }
.petit { font-size: 15px; color: #6A4A3C; }
.code { font-size: 24px; letter-spacing: 2px; }
.gros { display: inline-flex; align-items: center; justify-content: center; min-height: 64px; padding: 0 24px; border-radius: 24px; border: 3px solid var(--brun); background: var(--jaune); color: var(--brun); font-size: 21px; font-weight: 700; text-decoration: none; box-shadow: 0 5px 0 var(--brun); cursor: pointer; }
.entete { display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; background: var(--jaune); border-bottom: 3px solid var(--brun); }
nav { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 12px; }
nav button, button { font: inherit; border-radius: 12px; border: 2px solid var(--brun); background: #fff; padding: 8px 14px; cursor: pointer; color: var(--brun); }
nav button.actif { background: var(--brun); color: #fff; }
button.danger { border-color: var(--rouge); color: var(--rouge); }
button.lien { border: none; background: none; text-decoration: underline; }
table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 12px; overflow: hidden; }
th, td { text-align: left; padding: 8px; border-bottom: 1px solid #eadfc8; vertical-align: top; }
form { display: grid; gap: 12px; max-width: 420px; }
label { display: grid; gap: 4px; font-weight: 600; }
input, select, textarea { font: inherit; padding: 10px; border: 2px solid var(--brun); border-radius: 10px; width: 100%; }
#message { font-weight: 700; min-height: 1.5em; }
footer { text-align: center; padding: 24px; font-size: 14px; color: #6A4A3C; }
