:root{--font-sans:system-ui, -apple-system, "Segoe UI", sans-serif;--font-heading:system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;font-family:var(--font-sans);color:#171717;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;--surface:#fff;--subtle:#f7f7f7;--ink:#171717;--muted:#666;--line:#dedede;background:#fff;line-height:1.45}*{box-sizing:border-box}body{background:var(--surface);margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{background:var(--surface);flex-direction:column;min-height:100vh;display:flex}.topbar{border-bottom:1px solid var(--line);align-items:center;gap:18px;height:76px;padding:0 clamp(20px,5vw,76px);display:flex}.wordmark{font-family:var(--font-heading);color:var(--ink);align-items:center;gap:10px;font-size:1.1rem;font-weight:700;text-decoration:none;display:flex}.mark{background:var(--ink);color:var(--surface);border-radius:6px;place-items:center;width:31px;height:31px;font-weight:700;display:grid}.subtitle{font-family:var(--font-mono);color:var(--muted);letter-spacing:.05em;font-size:.7rem}.topbar nav{align-items:center;gap:15px;margin-left:auto;display:flex}.language select{border:1px solid var(--line);color:var(--ink);background:0 0;border-radius:4px;padding:7px}.language option{background:var(--surface)}.text-button{color:var(--muted);background:0 0;border:0;padding:8px}.text-button:hover{color:var(--ink)}.main-content{flex:1;width:min(960px,100% - 48px);margin:0 auto;padding:clamp(36px,7vw,82px) 0}.hero{max-width:800px;margin-bottom:45px}.eyebrow,.panel-kicker{font-family:var(--font-mono);color:var(--ink);letter-spacing:.13em;text-transform:uppercase;font-size:.7rem}.hero h1{font-family:var(--font-heading);letter-spacing:-.055em;max-width:730px;margin:18px 0 25px;font-size:clamp(2.8rem,7vw,6.2rem);line-height:.97}.hero p{color:var(--muted);max-width:530px;font-size:1.05rem}.single-tab-warning{transform-origin:0 0;animation:2.5s ease-in-out infinite tab-warning-pulse}@keyframes tab-warning-pulse{0%,to{opacity:.7;transform:scale(.99)}50%{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.single-tab-warning{animation:none}}.progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0 0 32px;display:grid}.progress-step{border-top:2px solid var(--line);color:var(--muted);align-items:center;gap:10px;padding-top:14px;font-size:.8rem;display:flex}.progress-step.active,.progress-step.done{border-color:var(--ink);color:var(--ink)}.progress-step.active{font-weight:700}.step-number{font-family:var(--font-mono);font-size:.7rem}.panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;max-width:900px;padding:clamp(24px,4vw,40px)}.panel.narrow{max-width:540px}.admin-access{margin:0 auto}.admin-access h2{margin-top:12px}.admin-access form{margin-top:28px}.admin-authenticated{position:relative}.admin-session-actions{justify-content:flex-end;min-height:36px;display:flex}.panel h2,.section-heading h2{font-family:var(--font-heading);margin:12px 0 10px;font-size:clamp(1.5rem,3vw,2rem);line-height:1}.muted{color:var(--muted)}form{gap:24px;margin-top:32px;display:grid}label{color:#333;gap:7px;font-size:.85rem;display:grid}input,select,textarea{background:var(--surface);color:var(--ink);border:1px solid #c8c8c8;border-radius:5px;width:100%;min-width:0;padding:12px 13px;transition:border-color .15s,box-shadow .15s}form label,.form-field{align-content:start}form input:not([type=checkbox]):not([type=radio]):not([type=file]),form select{appearance:none;height:48px;box-shadow:none;padding:10px 13px;font-size:1rem;line-height:1.4}form select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='m4 6 4 4 4-4' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 13px center;background-repeat:no-repeat;background-size:16px;padding-right:42px}form input[type=date]::-webkit-date-and-time-value{text-align:left;min-height:1.4em}input:focus,select:focus,textarea:focus{border-color:var(--ink);outline-offset:2px;outline:2px solid #171717}input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink);margin:1px 0 0}.primary,.secondary{border:0;border-radius:3px;padding:13px 18px;font-weight:700;transition:all .15s}.primary{background:var(--ink);color:var(--surface)}.primary:hover{background:#333}.primary:disabled{opacity:.5;cursor:not-allowed}.secondary{background:var(--subtle);color:var(--ink);border:1px solid var(--line)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wide{grid-column:1/-1}.check{grid-template-columns:20px 1fr;align-items:start;display:grid}.error,.notice,.offline-banner{border-radius:3px;margin-bottom:18px;padding:11px 16px;font-size:.9rem}.error{background:var(--subtle);border:1px solid var(--ink);color:var(--ink)}.notice{background:var(--subtle);border:1px solid var(--line)}.offline-banner{background:var(--ink);color:var(--surface);z-index:5;margin:0;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 5px 30px #0000001a}.section-heading{justify-content:space-between;align-items:end;margin-bottom:25px;display:flex}.race-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.race-selector,.invoice-details,.emergency-details{border:0;min-width:0;margin:0;padding:0}.race-selector legend,.invoice-details legend,.emergency-details legend{color:#333;margin-bottom:12px;padding:0;font-size:.85rem}.invoice-details,.emergency-details{gap:24px;display:grid}.invoice-details p,.emergency-details p{margin:0}.race-options{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;display:grid}.race-option{min-width:0;position:relative}.race-option-input{opacity:0;z-index:1;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.race-option-input:disabled{cursor:not-allowed}.race-option-body{background:var(--surface);height:100%;color:var(--ink);cursor:pointer;border:1px solid #c8c8c8;border-radius:6px;flex-direction:column;gap:8px;padding:18px;transition:border-color .15s,background .15s;display:flex}.race-option-heading{justify-content:space-between;align-items:center;gap:12px;font-size:1rem;display:flex}.race-option-indicator{border:1px solid;border-radius:50%;flex-shrink:0;width:16px;height:16px}.race-option-details{font-size:.8rem}.race-option-status{margin-top:auto;padding-top:8px;font-size:.75rem;line-height:1.5}@media (hover:hover){.race-option input:enabled:not(:checked):hover+.race-option-body{border-color:var(--ink)}}.race-option input:checked+.race-option-body{border-color:var(--ink);background:var(--subtle);box-shadow:inset 0 0 0 1px var(--ink)}.race-option input:checked+.race-option-body .race-option-indicator{box-shadow:inset 0 0 0 3px var(--subtle);background:currentColor}.race-option input:focus-visible+.race-option-body{outline:2px solid var(--ink);outline-offset:3px}.race-option input:disabled+.race-option-body{background:var(--subtle);color:var(--muted);border-color:var(--line);box-shadow:none;cursor:not-allowed}.race-card{background:var(--surface);border:1px solid #c8c8c8;border-radius:3px;flex-direction:column;min-height:265px;padding:22px;display:flex}.race-card:hover{border-color:var(--ink);transform:translateY(-2px)}.race-card.closed{opacity:.6}.race-top{justify-content:space-between;display:flex}.race-distance{font-family:var(--font-mono);color:var(--ink);letter-spacing:.08em;font-size:.7rem}.capacity{color:var(--muted);font-size:.7rem}.race-card h3{font-family:var(--font-heading);margin:22px 0 4px;font-size:1.55rem}.race-rule{color:var(--muted);margin:0;font-size:.85rem}.price{font-family:var(--font-heading);margin:auto 0 18px}.price span{font-size:1.7rem}.price small{color:var(--muted);font-size:.8rem}.closed-label{color:var(--muted);margin-top:auto;font-size:.8rem}.payment-panel{max-width:700px}.summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;margin:25px 0;padding:22px 0;display:flex}.summary strong{font-family:var(--font-heading);font-size:2rem}.price-breakdown{flex-direction:column;gap:12px}.price-breakdown-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.payment-status{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.state{font-family:var(--font-mono);text-transform:uppercase;color:var(--ink);background:#eee;border-radius:2px;padding:5px 8px;font-size:.7rem}.state-confirmed,.state-qualified{background:#e5e5e5}.state-failed,.state-expired,.state-not_qualified{background:#dedede}.state-review,.state-needs_review{background:#f2f2f2}.payment-element{min-height:5px;margin:20px 0}.success{border:1px solid var(--ink);color:var(--ink);margin:18px 0;padding:17px}.registrations{gap:12px;display:grid}.registration{border:1px solid var(--line);background:var(--surface);grid-template-columns:minmax(0,1fr) 180px;align-items:start;gap:24px;padding:20px;display:grid}.registration h3{margin:9px 0}.registration-reference{flex-wrap:wrap;align-items:center;gap:4px 12px;margin:16px 0;font-size:.8rem;display:flex}.registration-reference>span:first-child{color:var(--muted);flex-basis:100%}.registration-reference code{font-family:var(--font-mono);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:.95rem}.registration-reference .text-button{min-height:36px;padding:4px 0;font-size:.8rem}.registration-qr{text-align:center;width:180px;margin:0}.registration-qr svg{max-width:100%;height:auto;display:block}.registration-qr figcaption{color:var(--muted);margin-top:8px;font-size:.75rem}.submitted-details,.registration>.doc-upload{border-top:1px solid var(--line);grid-column:1/-1;min-width:0;padding-top:20px}.submitted-details>.muted{margin:8px 0 20px;font-size:.8rem}.submitted-detail-group+.submitted-detail-group{margin-top:24px}.submitted-detail-group h4{margin:0 0 12px;font-size:.85rem}.submitted-detail-group dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;margin:0;display:grid}.submitted-detail-group dt{color:var(--muted);margin-bottom:4px;font-size:.75rem}.submitted-detail-group dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.9rem}.registration-filter{overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:16px 0;font-size:.85rem;display:flex}.registration-lookup>.panel{margin-bottom:24px}.lookup-alternative{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px 12px;margin-top:20px;padding-top:20px;font-size:.85rem;display:flex}.lookup-alternative .text-button{padding:8px 0}.registration-status-access{border-top:1px solid var(--line);grid-column:1/-1;padding-top:16px;font-size:.85rem}.registration-status-access p{margin:0 0 16px}.registration-statuses{gap:8px;margin:16px 0;display:grid}.registration-statuses>div{flex-wrap:wrap;gap:4px 12px;display:flex}.registration-statuses dt{font-weight:600}.registration-statuses dd{margin:0}.attempt-history{border-top:1px solid var(--line);margin-top:24px;padding-top:16px}.attempt-history summary{cursor:pointer}.attempt-history ul{padding:0;list-style:none}.attempt-history li{border-bottom:1px solid var(--line);overflow-wrap:anywhere;padding:16px 0}.attempt-history p{margin:8px 0}.doc-upload{align-items:center;gap:14px;display:flex}.upload-button{background:var(--subtle);color:var(--ink);cursor:pointer;padding:9px 12px;display:inline-block}.upload-button input{display:none}.doc-upload a{color:var(--muted);font-size:.8rem}.empty{color:var(--muted)}.admin-tools{gap:14px;margin-bottom:25px;display:grid}.search-row{gap:10px;display:flex}.search-row input{flex:1}.admin-tools textarea{min-height:130px}.admin-row{border-bottom:1px solid var(--line);font-family:var(--font-mono);grid-template-columns:1fr 100px 130px 90px;align-items:center;gap:12px;padding:14px 0;font-size:.75rem;display:grid}.app-shell>footer{border-top:1px solid var(--line);color:var(--muted);font-family:var(--font-mono);justify-content:space-between;padding:20px clamp(20px,5vw,76px);font-size:.65rem;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:720px){.topbar{flex-wrap:wrap;height:auto;min-height:70px;padding:15px 20px}.subtitle{display:none}.topbar nav{margin-left:auto}.main-content{width:calc(100% - 30px);padding:45px 0}.progress{gap:12px;margin-bottom:24px}.progress-step{gap:6px;font-size:.7rem}.form-grid,.race-grid{grid-template-columns:1fr}.wide{grid-column:auto}.hero h1{font-size:3.35rem}.section-heading{align-items:start}.registration{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px}.registration-qr{justify-self:center}.submitted-detail-group dl{grid-template-columns:minmax(0,1fr)}.doc-upload{flex-wrap:wrap}.admin-row{grid-template-columns:1fr 80px}.admin-row .state,.admin-row button{grid-column:2}.app-shell>footer{flex-direction:column;gap:10px}}.registration-content{max-width:820px;padding-top:56px}.registration-hero{margin-bottom:36px}.registration-hero h1{max-width:680px;margin:16px 0;font-size:clamp(2rem,4.5vw,3.4rem);line-height:1.08}.form-field{gap:7px;min-width:0;display:grid}.form-field input{width:100%}a{color:inherit;text-underline-offset:3px}button:focus-visible,a:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.secondary:hover,.upload-button:hover{background:#ededed}.text-button{text-underline-offset:4px;text-decoration:underline}.panel>.text-button{padding-left:0}.panel>.muted{font-size:.9rem;line-height:1.6}.form-field small{font-size:.75rem;line-height:1.5}.itra-name-help{border:1px solid var(--line);border-radius:8px;gap:8px;padding:12px;display:grid}.check{gap:10px;line-height:1.5}.error{border-left-width:3px}.registration-hero p{max-width:600px;font-size:.95rem;line-height:1.7}@media (max-width:720px){.registration-content{padding-top:32px}.registration-hero h1{font-size:2.25rem}.panel{padding:24px 20px}}.field-error{color:#a32525;margin-top:4px;font-size:.85rem;display:block}.check>.field-error{grid-column:2/-1;margin-top:0}[aria-invalid=true]{border-color:#a32525;outline-color:#a32525}.completion-checklist{margin-bottom:24px}.returning-athlete{background:var(--subtle);border-radius:6px;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:16px;display:flex}.returning-athlete strong{font-size:.9rem}.prepared-summary{gap:20px;display:grid}.prepared-summary>div{overflow-wrap:anywhere;gap:4px;display:grid}.prepared-summary span{color:var(--muted);font-size:.85rem}.prepared-summary .text-button{justify-self:start;padding-left:0}.registration-actions>.primary{width:100%}.mobile-total{display:none}.draft-actions{gap:4px;display:grid}.draft-actions p{margin:0}.registration-form input,.registration-form select{scroll-margin-block:120px}@media (max-width:600px){.registration-content:has(.registration-actions){padding-bottom:170px}.returning-athlete{flex-direction:column;align-items:stretch}.registration-actions{z-index:20;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface);position:fixed;inset:auto 0 0;box-shadow:0 -4px 16px #00000008}.mobile-total{align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.mobile-total strong{margin-left:auto}.mobile-total small{color:var(--muted);font-size:.7rem}.registration-actions>.primary{min-height:48px;font-size:.9rem}}.registration-form .field-error{min-height:1.45em}.registration-content:has(.prepared-summary) .registration-hero{margin-bottom:24px}.registration-content:has(.prepared-summary) .registration-hero h1{margin:0;font-size:1.35rem}.registration-content:has(.prepared-summary) .registration-hero :is(.eyebrow,p){display:none}.main-content.admin-content{width:calc(100% - 48px);max-width:1920px;padding:16px 0}.admin-console{grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;display:grid}.admin-console>div{min-width:0}.admin-heading{grid-template-columns:minmax(185px,220px) minmax(400px,1fr) auto;align-items:center;gap:20px;margin:0;display:grid}@media (max-width:1099px){.admin-heading{grid-template-columns:minmax(0,1fr) auto;gap:12px}.admin-race-stats{grid-area:2/1/auto/-1}}.admin-heading p{margin:4px 0 0;font-size:.8rem}.admin-heading h2{margin:4px 0;font-size:1.6rem}@media (min-width:821px){.admin-shell .topbar{height:60px;padding:0 24px}.admin-content .admin-session-actions{min-height:0;position:absolute;top:10px;right:0}.admin-authenticated:has(.admin-session-actions button) .admin-heading{padding-right:90px}}.admin-console button{min-height:42px}.admin-console .primary,.admin-console .secondary{white-space:nowrap;flex-shrink:0;font-size:.85rem}.admin-console button:disabled{opacity:.45;cursor:not-allowed}.admin-availability{border:1px solid var(--line);border-left:4px solid var(--muted);background:var(--subtle);border-radius:8px;justify-content:space-between;align-items:center;gap:12px 24px;padding:12px 16px;display:flex}.admin-availability.is-active{border-left-color:#268251}.admin-availability h3{margin:0;font-size:.9rem}.admin-availability p{color:var(--muted);margin:4px 0 0;font-size:.78rem;line-height:1.4}@media (max-width:620px){.admin-availability{flex-direction:column;align-items:stretch}}.admin-nav{background:var(--subtle);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:6px;padding:5px;display:flex}.admin-nav button{color:var(--muted);background:0 0;border:1px solid #0000;border-radius:5px;flex:auto;padding:10px 14px;font-size:.85rem;font-weight:600}.admin-nav button[aria-pressed=true]{background:var(--surface);border-color:var(--line);color:var(--ink);box-shadow:0 1px 3px #00000008}.admin-card{border:1px solid var(--line);border-radius:8px;min-width:0;padding:24px}.admin-card-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.admin-card h3{font-family:var(--font-heading);margin:0;font-size:1.15rem}.admin-card-heading p,.admin-help{color:var(--muted);margin:6px 0 0;font-size:.8rem;line-height:1.6}.admin-settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.admin-race-registration .admin-card-heading{margin-bottom:8px}.admin-race-registration-list{margin:20px 0 12px}.admin-race-registration-row{border-top:1px solid var(--line);grid-template-columns:minmax(140px,1fr) minmax(320px,2fr) 110px;align-items:center;gap:16px;padding:16px 0;display:grid}.admin-race-registration-name h4{margin:0 0 6px}.admin-race-registration-row form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 12px;margin:0;display:grid}.admin-race-registration-row label{min-width:0;font-size:.78rem}.admin-race-registration-row input{width:100%;min-width:0}.admin-race-registration-row .field-error{grid-column:1/-1}.admin-race-global-note{background:var(--subtle);border-radius:6px;padding:10px 12px;font-size:.82rem}@media (max-width:760px){.admin-race-registration-row{grid-template-columns:minmax(0,1fr) auto}.admin-race-registration-row form{grid-area:2/1/auto/-1}}@media (max-width:520px){.admin-race-registration-row form{grid-template-columns:minmax(0,1fr)}.admin-race-registration-row form button{justify-self:end}}.admin-badge{border:1px solid var(--line);white-space:nowrap;background:var(--subtle);border-radius:20px;padding:4px 10px;font-size:.7rem}.admin-form{gap:20px;margin:0}.admin-capacities{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.admin-capacities legend{padding:0 0 12px;font-size:.75rem;font-weight:700}.admin-capacities label{border-bottom:1px solid #ededed;grid-template-columns:minmax(0,1fr) 100px;align-items:center;padding-bottom:10px}.admin-console textarea{resize:vertical;min-height:120px;line-height:1.6}.admin-card-footer{border-top:1px solid var(--line);padding-top:20px}.admin-console .search-row{margin:0;display:flex}.admin-empty{text-align:center;padding:48px 16px 24px;font-size:.9rem}.admin-empty p{max-width:400px;color:var(--muted);margin:8px auto;font-size:.8rem;line-height:1.6}.admin-result-count{color:var(--muted);padding:24px 0 12px;font-size:.75rem}.admin-registration{border-top:1px solid var(--line);padding:20px 0}.admin-registration-heading,.admin-registration-meta{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-registration-meta{flex-shrink:0;font-size:.8rem}.admin-athlete{overflow-wrap:anywhere;gap:4px;min-width:0;font-size:.85rem;display:grid}.admin-athlete span,.admin-athlete code{color:var(--muted);font-size:.75rem}.admin-note{border:1px solid var(--line);background:var(--subtle);border-radius:6px;padding:16px 20px;font-size:.8rem}.admin-note summary,.admin-review summary{cursor:pointer;font-weight:600}.admin-note summary span{color:var(--muted);margin-left:8px;font-size:.75rem;font-weight:400}.admin-note label{margin:16px 0 8px}.admin-note small{margin-top:8px;display:block}.admin-review{margin-top:16px;font-size:.8rem}.admin-actions,.admin-button-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.admin-actions .text-button{background:var(--subtle);border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:8px 12px;text-decoration:none}.admin-actions input,.admin-actions .evidence{flex-basis:100%}.admin-actions .evidence{background:var(--subtle);max-width:100%;padding:16px;font-size:.75rem;overflow:auto}.admin-review-note{flex-basis:100%;gap:8px;min-width:0;margin:8px 0;display:grid}.admin-console .admin-review-note textarea{min-height:80px}.admin-review-note p{margin:0}.admin-console .admin-row{overflow-wrap:anywhere;grid-template-columns:minmax(0,1fr) auto;font-size:.8rem}.admin-console .admin-row small{text-align:right}.admin-csv{font-family:var(--font-mono);font-size:.8rem;min-height:220px!important}.preview-result,.admin-feedback{background:#f3f7f3;border:1px solid #d6e1d6;border-radius:5px;padding:16px;font-size:.85rem}.profile-review-list{gap:8px;margin-top:16px;display:grid}.profile-review-item{border:1px solid var(--line);background:var(--subtle);text-align:left;width:100%;color:var(--ink);border-radius:6px;gap:4px;padding:12px;display:grid}.profile-review-item:hover,.profile-review-item:focus-visible{border-color:var(--accent);outline:2px solid color-mix(in srgb, var(--accent) 35%, transparent)}.profile-review-item span,.profile-review-detail small{color:var(--muted);font-size:.75rem}.profile-review-detail{border-top:1px solid var(--line);gap:8px;margin-top:20px;padding-top:18px;display:grid}.profile-review-detail h4{margin:0}.profile-review-detail textarea{min-height:90px}.profile-review-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.profile-review-fields dt{color:var(--muted);font-size:.7rem}.profile-review-fields dd{overflow-wrap:anywhere;margin:3px 0 0}@media (max-width:720px){.profile-review-fields{grid-template-columns:1fr}}.preview-result{margin-top:20px}@media (max-width:720px){.admin-console{gap:18px}.admin-heading{flex-direction:column;align-items:flex-start}.admin-settings-grid{grid-template-columns:1fr}.admin-card{padding:18px}.admin-console .search-row{flex-direction:column;gap:10px}.admin-card-heading{flex-wrap:wrap}.admin-note summary span{margin:6px 0 0;display:block}.admin-registration-heading{flex-direction:column;align-items:flex-start}.admin-registration-meta{flex-wrap:wrap}.admin-console .admin-row{grid-template-columns:minmax(0,1fr)}.admin-console .admin-row button{grid-column:auto;justify-self:start}.admin-console .admin-row small{text-align:left}}.wallet-unavailable{height:0;overflow:hidden}.express-payment{margin-top:1rem}.payment-divider{text-align:center;color:var(--muted,#65736e);font-size:.875rem}.payment-reference{overflow-wrap:anywhere;font-size:.875rem}.payment-diagnostic{overflow-wrap:anywhere;min-width:0}.payment-diagnostic p{margin:.25rem 0}.admin-race-stats{background:#f5f8f6;border:1px solid #dfe7e2;border-radius:8px;min-width:0;padding:10px 16px}.race-stats-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;display:flex}.race-stats-heading h3{color:#3e594c;margin:0;font-size:.7rem}.race-stats-heading h3 span{color:#738078;font-weight:400}.race-stats-status{color:#986723;align-items:center;gap:5px;font-size:.65rem;display:inline-flex}.race-stats-status.is-live{color:#27745f}.race-stats-status>span{background:currentColor;border-radius:50%;width:5px;height:5px}.race-stats-counts{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0;display:grid}.race-stats-counts dt{color:#6c7a71;font-size:.64rem}.race-stats-counts dd{font-variant-numeric:tabular-nums;color:#263f32;margin:0;font-size:1.4rem;font-weight:600;line-height:1.25}.race-stats-total{border-right:1px solid #d7e2da}.race-stats-total dd{color:#1c6950}.athlete-directory{background:#fff;border:1px solid #dce2e4;border-radius:10px;min-width:0;overflow:hidden}.directory-toolbar{background:#fbfcfc;flex-shrink:0;align-items:end;gap:12px;padding:16px;display:flex}.directory-search{flex:1;gap:8px;min-width:200px;margin:0;display:flex}.directory-search input{width:100%;min-width:0}.directory-filter{color:#657278;gap:4px;min-width:145px;font-size:.7rem;display:grid}.directory-toolbar input,.directory-toolbar select{background:#fff;border:1px solid #d3dbdf;border-radius:5px;min-height:40px;padding:9px 12px;font-size:.8rem}.directory-tabs{border-bottom:1px solid #dce2e4;flex-shrink:0;gap:4px;padding:0 12px;display:flex;overflow:auto}.directory-tabs button{color:#657278;background:0 0;border:0;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:8px;padding:12px 10px;font-size:.78rem;display:flex}.directory-tabs button[aria-pressed=true]{color:#174c41;border-bottom-color:#27745f;font-weight:700}.directory-tabs button span{font-variant-numeric:tabular-nums;background:#f0f3f3;border-radius:4px;padding:2px 6px;font-size:.68rem}.admin-workspace{grid-template-columns:minmax(0,1fr) 430px;height:max(340px,100dvh - 340px);display:grid}.directory-list{flex-direction:column;min-width:0;min-height:0;display:flex}.directory-table-scroll{scrollbar-gutter:stable;flex:1;min-height:0;overflow:auto}.athlete-table{border-collapse:separate;border-spacing:0;text-align:left;white-space:nowrap;width:100%;font-size:.78rem}.athlete-table th{z-index:1;color:#637177;letter-spacing:.03em;background:#f6f8f8;border-bottom:1px solid #dce2e4;padding:12px 14px;font-size:.67rem;font-weight:600;position:sticky;top:0}.athlete-table td{border-bottom:1px solid #edf0f1;height:64px;padding:12px 14px}.athlete-table tbody tr{cursor:pointer}.athlete-table tbody tr:hover{background:#f7faf9}.athlete-table tbody tr.is-selected{background:#eef6f2}.athlete-table tr.is-selected td:first-child{box-shadow:inset 3px 0 #27745f}.admin-console .athlete-name{color:#1f3030;text-align:left;background:0 0;border:0;min-height:0;padding:0;font-size:.8rem;font-weight:700;display:block}.athlete-name:focus-visible{outline-offset:4px;border-radius:2px;outline:2px solid #27745f}.athlete-email{color:#55646b;margin-top:4px;font-size:.69rem;display:block}.ops-badge{white-space:nowrap;border-radius:4px;align-items:center;gap:5px;padding:4px 7px;font-size:.65rem;font-weight:600;line-height:1.35;display:inline-flex}.ops-badge>span{background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.ops-good{color:#2e6648;background:#eaf5ed}.ops-attention{color:#8a601b;background:#fcf3df}.ops-bad{color:#a13a3a;background:#fbecec}.ops-neutral{color:#606f79;background:#eef1f3}.directory-pagination{color:#657278;background:#fff;border-top:1px solid #dce2e4;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;font-size:.7rem;display:flex}.directory-pagination>div{align-items:center;gap:6px;display:flex}.directory-pagination button{white-space:nowrap;font-size:.7rem}.directory-empty,.review-placeholder{text-align:center;color:#657278;padding:48px 24px}.directory-empty p,.review-placeholder p{font-size:.82rem;line-height:1.7}.review-placeholder{max-width:330px;margin:auto}.review-placeholder-icon{color:#648174;background:#eaf0ee;border-radius:14px;place-items:center;width:52px;height:52px;margin:0 auto 20px;font-size:1.5rem;display:grid}.review-placeholder h3{color:#30423c;font-size:1rem}.review-placeholder small{font-size:.7rem}.athlete-review-pane{background:#fbfcfc;border-left:1px solid #dce2e4;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.review-pane-heading{flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 22px 12px;display:flex}.review-pane-heading>div{min-width:0}.review-pane-heading .panel-kicker{letter-spacing:.09em;color:#738279;font-size:.6rem}.review-pane-heading h3{font:600 1.28rem var(--font-heading);overflow-wrap:anywhere;margin:7px 0 4px}.review-pane-heading a{color:#657278;overflow-wrap:anywhere;font-size:.76rem;text-decoration:none}.admin-console .review-close{color:#637177;background:0 0;border:0;border-radius:4px;flex-shrink:0;width:28px;min-height:28px;font-size:1.4rem}.review-close:hover{background:#e8eeeb}.review-pane-meta{flex-shrink:0;justify-content:space-between;align-items:center;padding:0 22px 16px;display:flex}.athlete-more{font-size:.72rem;position:relative}.athlete-more summary{cursor:pointer;color:#657278;padding:6px}.athlete-more>div{z-index:5;background:#fff;border:1px solid #dce2e4;border-radius:6px;width:220px;padding:6px;position:absolute;top:100%;right:0;box-shadow:0 8px 30px #173b271a}.athlete-more button,.athlete-more a{text-align:left;color:#30423c;background:0 0;border:0;border-radius:4px;width:100%;padding:10px;font-size:.75rem;text-decoration:none;display:block}.athlete-more button:hover,.athlete-more a:hover{background:#f0f5f2}.review-pane-tabs{border-bottom:1px solid #dce2e4;flex-shrink:0;padding:0 14px;display:flex}.review-pane-tabs button{color:#657278;background:0 0;border:0;border-bottom:2px solid #0000;flex:1;font-size:.75rem}.review-pane-tabs button[aria-pressed=true]{color:#174c41;border-bottom-color:#27745f;font-weight:700}.review-pane-body{scrollbar-gutter:stable;flex:1;min-height:0;padding:20px 22px;font-size:.78rem;overflow:auto}.review-pane-body h4{margin:0 0 14px;font-size:.82rem}.review-section-title{justify-content:space-between;align-items:center;gap:8px;margin-bottom:16px;display:flex}.review-section-title h4{margin:0}.review-facts{gap:10px;margin:0;display:grid}.review-facts>div{grid-template-columns:110px minmax(0,1fr);gap:12px;display:grid}.review-facts dt{color:#718087;font-size:.7rem}.review-facts dd{overflow-wrap:anywhere;margin:0;font-size:.73rem}.qualification-rule{color:#405b4f;background:#f0f4f2;border:1px solid #e0e8e3;border-radius:6px;margin:20px 0;padding:14px;font-size:.71rem}.qualification-rule p{margin:5px 0 0;line-height:1.65}.evidence-card{background:#fff;border:1px solid #dfe5e2;border-radius:6px;margin:10px 0;padding:14px}.evidence-card>div:first-child{justify-content:space-between;align-items:center;gap:8px;display:flex}.evidence-card small{color:#738179;font-size:.61rem}.evidence-card p{font-size:.75rem;line-height:1.65}.evidence-card .review-facts{margin-bottom:14px}.evidence-source{overflow-wrap:anywhere}.evidence-source a{color:#27745f}.earlier-evidence summary,.athlete-profile summary{cursor:pointer;color:#576b60;padding:10px 0;font-size:.73rem}.athlete-profile{border-top:1px solid #e2e7e4;margin-top:22px;padding-top:6px}.athlete-profile small{color:#718087;margin-top:16px;font-size:.65rem;display:block}.athlete-profile code{overflow-wrap:anywhere;font-size:.65rem}.review-empty{color:#6e7c74;background:#f2f5f3;border-radius:6px;padding:18px;font-size:.76rem;line-height:1.65}.document-meta{color:#718087;font-size:.69rem}.certificate-links{justify-content:space-between;margin:12px 0;font-size:.74rem;display:flex}.certificate-links a{color:#27745f}.certificate-preview{background:#fff;border:1px solid #dce2e4;border-radius:5px;width:100%;height:450px}.certificate-image{background:#fff;border:1px solid #dce2e4;border-radius:5px;width:100%;height:auto;display:block}.review-history{margin:16px 0;padding:0;list-style:none}.review-history li{border-left:2px solid #dce6df;padding:0 0 22px 16px;font-size:.76rem}.review-history p{color:#59695f;overflow-wrap:anywhere}.review-history span,.review-history time{color:#718087;font-size:.67rem;display:block}.review-pane-footer{background:#fff;border-top:1px solid #dce2e4;flex-shrink:0;max-height:55%;padding:16px 22px;overflow:auto}.review-decision-buttons{gap:8px;display:flex}.review-decision-buttons button{flex:1}.review-approve,.review-reject{border:1px solid;border-radius:5px;padding:10px 14px;font-size:.76rem;font-weight:600}.review-approve{color:#fff;background:#225c48;border-color:#225c48}.review-approve:hover:enabled{background:#164834}.review-reject{color:#a34848;background:#fff;border-color:#e0c7c7}.review-reject:hover:enabled{background:#fcf0f0}.review-audit-hint{text-align:center;color:#829087;padding:9px 0 0;font-size:.62rem;display:block}.review-next{color:#375948;background:#f5f7f6;border:1px solid #dfe6e1;border-radius:5px;justify-content:space-between;align-items:center;width:100%;margin-top:12px;padding:10px 14px;font-size:.76rem;display:flex}.review-success{color:#2e6648;background:#eaf5ed;border-radius:4px;margin:0 0 12px;padding:10px;font-size:.74rem}.review-pane-footer .field-error{margin:0 0 10px;font-size:.75rem}.review-reason-form{gap:8px;margin:0;font-size:.76rem;display:grid}.review-reason-form label{gap:5px;font-size:.72rem;display:grid}.admin-console .review-reason-form textarea{min-height:70px;max-height:120px;padding:8px;font-size:.76rem}.review-reason-form>div{justify-content:flex-end;gap:8px;display:flex}.review-reason-form p,.review-reason-form small{color:#718087;margin:0;font-size:.69rem}.directory-error{color:#963b3b;background:#fdf0ee;flex-shrink:0;padding:12px 16px;font-size:.78rem}.directory-error button{font-size:.74rem;text-decoration:underline;display:block}@media (min-width:1600px){.admin-workspace{grid-template-columns:minmax(0,1fr) 500px}}@media (max-width:1150px){.admin-workspace{grid-template-columns:minmax(0,1fr) 390px}.directory-pagination{flex-wrap:wrap;gap:0}.directory-toolbar{flex-wrap:wrap}.directory-search{flex-basis:45%}}@media (min-width:821px) and (max-width:1099px){.admin-workspace{height:max(340px,100dvh - 415px)}}@media (min-width:821px) and (max-height:800px){.review-pane-heading{padding:12px 18px 6px}.review-pane-heading .panel-kicker{display:none}.review-pane-heading h3{margin:0 0 2px;font-size:1.1rem}.review-pane-meta{padding:0 18px 4px}.review-pane-body{padding:12px 18px}.review-pane-footer{padding:10px 18px}.review-next{margin-top:8px}.review-audit-hint{padding-top:5px}}@media (max-width:820px){.admin-heading{width:100%}.admin-race-stats{width:100%;padding:10px}.race-stats-counts{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:12px}.race-stats-total{border-right:0}.main-content.admin-content{width:calc(100% - 24px)}.admin-workspace{flex-direction:column;height:auto;display:flex}.directory-list{height:450px}.athlete-review-pane{border-top:1px solid #dce2e4;border-left:0;height:740px}.athlete-directory.has-selection .directory-list{display:none}.athlete-directory.has-selection .athlete-review-pane{border-top:0;height:max(320px,100dvh - 24px);min-height:320px}.athlete-directory.has-selection .review-pane-body{padding:16px}.athlete-directory.has-selection .review-pane-footer{padding:12px 16px}.directory-search{flex-basis:100%}.directory-filter{flex:1;min-width:110px}.directory-refresh{width:100%}.directory-tabs{padding:0 6px}}@media (max-width:820px) and (max-height:520px){.athlete-directory.has-selection .review-pane-heading{padding:10px 16px 8px}.athlete-directory.has-selection .review-pane-heading .panel-kicker{display:none}.athlete-directory.has-selection .review-pane-heading h3{margin:0 0 2px;font-size:1.05rem}.athlete-directory.has-selection .review-pane-meta{padding:0 16px 8px}.athlete-directory.has-selection .review-pane-tabs button{min-height:38px}.athlete-directory.has-selection .review-pane-footer{max-height:58%}}
