:root { font-family: Arial, Helvetica, sans-serif; color: #243044; background: #f2f5f7; }
* { box-sizing: border-box; }
body { margin: 0; }
.page { min-height: 100vh; padding: 32px 16px; }
.content { width: 100%; max-width: 750px; margin: 0 auto; padding: 32px; background: #fff; border: 1px solid #e1e7ec; border-radius: 12px; box-shadow: 0 8px 28px rgba(29, 49, 68, .08); }
h1 { margin: 0 0 20px; font-size: clamp(1.5rem, 4vw, 2rem); line-height: 1.25; }
h2 { margin: 28px 0 16px; font-size: 1.3rem; }
p { line-height: 1.6; }
a { color: #126b78; }
a:hover { color: #084d57; }
.page-links { display: flex; flex-wrap: wrap; gap: 10px 20px; margin: 20px 0 28px; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.field label { display: block; margin-bottom: 7px; font-weight: 600; }
.field input { display: block; width: 100%; min-width: 0; padding: 11px 12px; border: 1px solid #aebbc7; border-radius: 6px; background: #fff; color: inherit; font: inherit; }
.field input:focus { outline: 2px solid #126b78; outline-offset: 1px; }
.actions { margin-top: 24px; }
.button { display: inline-block; padding: 12px 22px; border: 0; border-radius: 6px; background: #126b78; color: #fff; font: inherit; font-weight: 700; cursor: pointer; text-decoration: none; }
.button:hover { background: #084d57; color: #fff; }
.results-table { width: 100% !important; table-layout: fixed; }
.results-table th, .results-table td { padding: 9px 10px; overflow-wrap: anywhere; vertical-align: top; }
.results-table th { background: #eaf2f3; }
table.dataTable.results-table thead th { padding: 9px 6px; background-image: none; text-align: left; }
.results-table th:first-child, .results-table td:first-child { width: 54px; padding-left: 4px; padding-right: 4px; text-align: center; }
table.dataTable.results-table thead th:first-child { padding-left: 4px; padding-right: 4px; text-align: center; background-image: none; }
.results-table th:last-child, .results-table td:last-child { width: 115px; }
.participant-name { font-weight: 600; }
.dataTables_wrapper { width: 100%; }
.dataTables_filter { margin-bottom: 12px; }
.dataTables_filter input { max-width: 100%; padding: 7px 9px; }
.status { padding: 16px 20px; border-radius: 8px; background: #eaf5f1; }
.status h2 { margin-top: 0; }
.footer { max-width: 750px; margin: 16px auto 0; color: #63717e; text-align: center; }
@media (max-width: 600px) {
  .page { padding: 12px; }
  .content { padding: 22px 18px; border-radius: 8px; }
  .form-grid { grid-template-columns: 1fr; gap: 16px; }
  .button { width: 100%; text-align: center; }
  .dataTables_filter { float: none !important; text-align: left !important; }
  .dataTables_filter input { width: 100%; margin: 6px 0 0 !important; }
  .results-table { font-size: .82rem; }
  .results-table th, .results-table td { padding: 8px 4px; }
  table.dataTable.results-table thead th { padding: 8px 2px; }
  .results-table th:first-child, .results-table td:first-child { width: 44px; padding-left: 2px; padding-right: 2px; }
  table.dataTable.results-table thead th:first-child { padding-left: 2px; padding-right: 2px; }
  .results-table th:last-child, .results-table td:last-child { width: 83px; }
}
