section { background: white; border: 1px solid #dbe5e1; border-radius: 12px; padding: 24px; margin: 24px 0; overflow-wrap: anywhere; }
label { display: block; margin: 12px 0; font-weight: 600; }
input, textarea { display: block; box-sizing: border-box; width: 100%; padding: 12px; border: 1px solid #9caeaa; border-radius: 6px; font: inherit; }
input[type="checkbox"] { width: auto; display: inline-block; margin-right: 10px; }
button { border: 1px solid #126455; border-radius: 6px; background: #126455; color: white; padding: 10px 16px; font: inherit; cursor: pointer; margin: 6px 6px 6px 0; }
button.secondary { background: white; color: #126455; }
button:disabled { opacity: .5; cursor: wait; }
button:focus-visible, input:focus-visible, textarea:focus-visible, summary:focus-visible { outline: 3px solid #d49b2f; outline-offset: 3px; }
.seat { padding: 16px 0; border-bottom: 1px solid #dbe5e1; margin-bottom: 16px; }
code { display: block; overflow-wrap: anywhere; padding: 10px; background: #f1f6f4; }
dt { font-weight: 600; } dd { margin: 0 0 10px; }
#message { min-height: 1.5em; font-weight: 600; }
[hidden] { display: none !important; }
footer { margin-top: 32px; font-size: .9em; }
@media (max-width: 500px) { main { padding: 0 16px 32px; } section { padding: 16px; } }
