@font-face{font-family:Onest;src:url('/static/fonts/onest-regular.ttf') format('truetype');font-weight:100 500;font-display:swap}@font-face{font-family:Onest;src:url('/static/fonts/onest-bold.ttf') format('truetype');font-weight:600 900;font-display:swap}
:root{font-family:Onest,'Segoe UI',Arial,sans-serif;color:#2d082a;background:#fffaf0;--plum:#2d082a;--pink:#d91b6b;--paper:#fff;--gold:#ffc83b}*{box-sizing:border-box}body{margin:0;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,.table-scroll:focus-visible{outline:3px solid var(--pink);outline-offset:3px}[hidden]{display:none!important}h1,h2,p{margin:0}input{border:1px solid #bdb3bb;border-radius:4px;background:white;padding:10px 12px;min-width:0;color:var(--plum)}
.button{display:inline-flex;justify-content:center;align-items:center;padding:10px 18px;border:1px solid var(--plum);border-radius:4px;font-size:13px;font-weight:600;min-height:44px}.primary{background:var(--plum);color:white}.secondary{background:white;color:var(--plum)}.danger{background:var(--pink);color:white}.button:hover{filter:brightness(.93)}.admin-header{background:var(--plum);color:white;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.wordmark{font-size:16px;font-weight:800;line-height:1.2}.wordmark span{display:block;font-size:9px;letter-spacing:1px;margin-top:4px;color:var(--gold)}.header-links{display:flex;gap:22px;align-items:center;font-size:12px}.text-button{background:none;border:0;padding:6px 0;color:inherit;text-decoration:underline;text-underline-offset:4px}.admin-main{max-width:1800px;margin:auto;padding:30px 28px}.page-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.page-intro h1{font-size:28px;line-height:1.3}.intro-actions{display:flex;gap:10px}.table-toolbar{display:flex;gap:18px;align-items:center;margin-bottom:14px;flex-wrap:wrap}.search-label{flex:1;max-width:420px;min-width:200px}.search-label input{width:100%;font-size:13px}.archive-filter{display:flex;align-items:center;gap:8px;font-size:12px}.archive-filter input{width:16px;height:16px;margin:0;accent-color:var(--plum)}.live-status{font-size:11px;color:#685966;margin-left:auto}
.table-scroll{max-height:70vh;overflow:auto;border:1px solid #9c9099;background:white;isolation:isolate}.registration-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1510px;text-align:left;font-size:12px}.registration-table th,.registration-table td{border-right:1px solid #c4bbc2;border-bottom:1px solid #c4bbc2;padding:12px;vertical-align:top;overflow-wrap:anywhere}.registration-table thead th{position:sticky;top:0;z-index:3;background:#eee8ec;font-weight:700;font-size:11px;vertical-align:middle}.registration-table th:last-child,.registration-table td:last-child{border-right:0}.registration-table .team-start>*{border-top:2px solid #8a7a87}.registration-table .team-start:first-child>*{border-top:0}.registration-table .team-name{min-width:180px;max-width:240px;font-size:13px;font-weight:700;background:#faf6f8;vertical-align:middle}.team-name small{display:block;color:#8f576c;font-weight:400;margin-top:6px}.registration-table .captain-cell{text-align:center;vertical-align:middle;width:75px}.captain-cell input{height:18px;width:18px;margin:0;padding:0;accent-color:var(--plum);opacity:1}.registration-table td{max-width:260px}.registration-table tr.archived>*{background:#f2eeee;color:#776c72}.registration-table tr:not(.archived):hover td{background:#fffbef}.small-action{background:none;border:0;color:var(--pink);font-size:11px;padding:4px 0;text-decoration:underline;text-underline-offset:3px}.empty{text-align:center!important;padding:36px!important;color:#6f626c}.table-note{font-size:11px;color:#71636e;margin-top:14px}.notice{background:#edf7ed;border:1px solid #b4cfb5;padding:12px 16px;font-size:12px;margin-bottom:16px;border-radius:4px}.notice.error{background:#fff0ed;border-color:#d29c96}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
dialog{width:calc(100% - 36px);max-width:480px;padding:26px;background:white;color:var(--plum);border:1px solid #ac9ba8;border-radius:6px}dialog::backdrop{background:#2d082a88}dialog h2{font-size:24px}dialog p{font-size:13px;margin-top:14px;overflow-wrap:anywhere}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{background:white;border:1px solid #c4bbc2;border-radius:6px;max-width:440px;width:100%;padding:32px}.back-link{font-size:12px;text-decoration:underline}.login-card>.eyebrow{margin-top:28px}.login-emblem{font-size:44px;color:var(--pink)}.login-card h1{font-size:28px}.login-card>p{font-size:13px;margin:12px 0 24px}.login-card form{display:flex;flex-direction:column;gap:10px}.login-card label{font-size:12px;font-weight:600}.login-card .button{margin-top:8px}.login-card>small{font-size:10px;display:block;text-align:center;margin-top:18px}
.captain-cell input{appearance:none;display:inline-grid;place-content:center;border:1.5px solid #8e808b;background:#fff;border-radius:2px;cursor:default}.captain-cell input:checked{background:var(--plum);border-color:var(--plum)}.captain-cell input:checked::after{content:'✓';font-size:14px;line-height:1;color:#fff;font-weight:700}
@media(max-width:650px){.admin-header{padding:14px 16px}.wordmark{font-size:13px}.header-links{gap:12px;font-size:11px}.admin-main{padding:24px 16px}.page-intro{align-items:stretch;flex-direction:column;gap:16px}.page-intro h1{font-size:25px}.intro-actions .button{flex:1}.table-toolbar{gap:12px}.search-label{max-width:none;flex-basis:100%}.search-label input{font-size:16px}.live-status{margin-left:0}.table-scroll{max-height:65vh}.login-card{padding:26px 22px}.login-card input{font-size:16px}}
