.backend-page .tabs{display:flex;align-items:flex-end;gap:8px;margin:8px 0 30px;padding:6px 6px 0;background:#eef2ed;border:1px solid var(--line);border-radius:11px}.backend-page .tabs a,.backend-page .tabs button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:0;border-radius:8px 8px 0 0;background:transparent;color:var(--muted);font-weight:800;text-decoration:none;white-space:nowrap;cursor:pointer}.backend-page .tabs a:hover,.backend-page .tabs button:hover{color:var(--green);background:#f8faf8}.backend-page .tabs a.active,.backend-page .tabs button.active{color:#fff;background:var(--green);box-shadow:0 3px 12px rgba(59,129,40,.2)}
.media-picker-field{display:grid;gap:10px}.media-picker-current{display:flex;align-items:center;gap:12px;min-height:76px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#f8faf8}.media-picker-current img{width:86px;height:58px;object-fit:contain;background:#fff;border-radius:6px}.media-picker-dialog{width:min(1000px,calc(100vw - 32px));max-height:88vh;padding:0;border:0;border-radius:14px;box-shadow:0 24px 80px rgba(0,0,0,.3)}.media-picker-dialog::backdrop{background:rgba(20,30,24,.62)}.media-picker-inner{padding:24px;overflow:auto;max-height:88vh}.media-picker-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.media-picker-head h2{margin:0}.media-picker-close{border:0;background:transparent;font-size:1.8rem;cursor:pointer}.media-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.media-picker-card{display:grid;gap:8px;padding:8px;border:2px solid transparent;border-radius:9px;background:#f5f7f4;cursor:pointer}.media-picker-card:has(input:checked){border-color:var(--green);background:#e8f3e4}.media-picker-card input{position:absolute;opacity:0;pointer-events:none}.media-picker-card img{width:100%;height:110px;object-fit:contain;background:#fff;border-radius:6px}.media-picker-card span{font-size:.84rem;line-height:1.3}.media-picker-panel[hidden]{display:none}.media-picker-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}@media(max-width:700px){.backend-page .tabs{overflow:auto}.backend-page .tabs a,.backend-page .tabs button{padding:10px 13px}.media-picker-inner{padding:16px}}
.event-filter-form{display:flex;align-items:flex-end;gap:8px}.event-filter-form label{min-width:260px}.event-filter-form .button{white-space:nowrap}.list-count{display:inline-grid;place-items:center;min-width:30px;height:30px;padding:0 8px;margin-left:6px;border-radius:999px;background:#e8f3e4;color:var(--green);font-size:.82rem;vertical-align:middle}.registration-participants{min-width:230px;line-height:1.55}@media(max-width:760px){.event-filter-form{width:100%;align-items:stretch;flex-direction:column}.event-filter-form label{min-width:0}}
.sponsor-assignment-fieldset{display:grid;gap:16px}.sponsor-event-list{display:grid;gap:12px}.sponsor-event-assignment{padding:14px 16px;border:1px solid var(--line);border-radius:10px;background:#f7f9f6;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.sponsor-event-assignment.is-selected{border-color:#a7c69e;background:#fff;box-shadow:0 4px 14px rgba(35,73,27,.08)}.sponsor-event-toggle{align-items:flex-start!important}.sponsor-event-toggle span{display:grid;gap:2px}.sponsor-event-toggle small{color:var(--muted);font-weight:500}.sponsor-event-details{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,.55fr);gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.sponsor-event-details[hidden]{display:none}.sponsor-event-details .wide{grid-column:1/-1}@media(max-width:700px){.sponsor-event-details{grid-template-columns:1fr}}
.permission-matrix{display:grid;gap:14px}.permission-matrix table{min-width:760px}.permission-matrix th:first-child{min-width:190px;text-align:left}.permission-matrix td{text-align:center}.permission-choice{display:inline-grid!important;justify-items:center;gap:5px;font-weight:600!important}.permission-choice input{width:20px;height:20px;margin:0;accent-color:var(--green)}.permission-choice span{font-size:.76rem;color:var(--muted)}.permission-notice{margin-top:0}
.registration-header-tools{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}.registration-event-filter{margin:0}.registration-event-filter label{min-width:min(460px,42vw)}.registration-summary-bar{display:flex;align-items:center;gap:12px;margin:-8px 0 14px}.registration-summary-bar span{display:inline-flex;align-items:baseline;gap:6px;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:#f8faf8;color:var(--muted);font-size:.86rem}.registration-summary-bar strong{color:var(--ink);font-size:1.05rem}.registration-list-panel{padding-top:14px}.inline-status-select{min-width:145px;padding:9px 34px 9px 10px;font-size:.86rem}.registration-actions{display:flex;align-items:center;gap:6px}.payment-status-icon{font-weight:900}.payment-status-icon.is-paid{color:#2f7b25;border-color:#9bc492;background:#ecf7e9}.payment-status-icon.is-open{color:#a32626;border-color:#e2aaaa;background:#fff0f0}.payment-status-icon:disabled{opacity:.58;cursor:not-allowed}.admin-dialog{width:min(1180px,calc(100vw - 32px));max-width:none;max-height:92vh;padding:0;border:0;border-radius:16px;background:#fff;box-shadow:0 28px 90px rgba(20,30,24,.34)}.admin-dialog::backdrop{background:rgba(20,30,24,.62)}.admin-dialog-shell{padding:26px;max-height:92vh;overflow:auto}.admin-dialog-shell>header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.admin-dialog-shell>header h2{margin:4px 0 0;font-size:1.8rem}.dialog-close{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:1.7rem;cursor:pointer}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}.event-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.event-metric-grid article{padding:18px;border:1px solid var(--line);border-radius:10px;background:#f7f9f6}.event-metric-grid span{display:block;color:var(--muted);font-size:.82rem}.event-metric-grid strong{display:block;margin-top:6px;font-size:1.45rem}.event-details-dialog h3{margin:26px 0 12px}.event-comparison{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.event-comparison>label{max-width:480px}.event-comparison [data-event-comparison-result]:not(:empty){margin-top:20px;padding-top:4px}.registration-details-dialog form{display:grid;gap:22px}.registration-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:22px}.registration-detail-meta>div{padding:14px;border:1px solid var(--line);border-radius:9px;background:#f7f9f6}.registration-detail-meta span{display:block;color:var(--muted);font-size:.78rem}.registration-detail-meta strong{display:block;margin-top:5px;line-height:1.35}.registration-contact-detail,.registration-runners-detail,.registration-products-detail,.registration-history{padding-top:20px;border-top:1px solid var(--line)}.registration-details-dialog h3{margin:0 0 14px}.registration-item-detail{padding:18px;border:1px solid var(--line);border-radius:12px;background:#f7f9f6}.registration-item-detail+.registration-item-detail{margin-top:14px}.registration-item-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:16px}.registration-item-head h3{margin:3px 0}.registration-item-head>div>span,.runner-detail-head span,.runner-meta{color:var(--muted);font-size:.8rem}.registration-item-head>label{min-width:280px}.runner-detail-card{padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}.runner-detail-card+.runner-detail-card{margin-top:12px}.runner-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.runner-detail-head strong{display:block;margin-top:3px}.bib-chip{padding:6px 9px;border-radius:999px;background:#e8f3e4!important;color:var(--green)!important;font-weight:750}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.runner-meta{margin:12px 0 0}.detail-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px}.detail-card-grid article{display:grid;gap:5px;padding:15px;border:1px solid var(--line);border-radius:9px}.detail-card-grid article span,.detail-card-grid article small{color:var(--muted)}.registration-history ol{display:grid;gap:0;margin:0;padding:0;list-style:none;border:1px solid var(--line);border-radius:9px;overflow:hidden}.registration-history li{display:grid;grid-template-columns:150px minmax(180px,.6fr) 1fr;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line)}.registration-history li:last-child{border-bottom:0}.registration-history li span,.registration-history li small{color:var(--muted)}.dialog-loading{padding:38px;text-align:center;color:var(--muted)}.registration-live-notice{position:relative;z-index:5}@media(max-width:1050px){.registration-header-tools{justify-content:flex-start}.registration-event-filter label{min-width:min(520px,55vw)}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.registration-header-tools{width:100%;align-items:stretch}.registration-event-filter,.registration-event-filter label{width:100%;min-width:0}.registration-header-tools .button{flex:1;width:auto}.registration-summary-bar{margin-top:0}.event-metric-grid,.registration-detail-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.registration-item-head{align-items:stretch;flex-direction:column}.registration-item-head>label{width:100%;min-width:0}.registration-history li{grid-template-columns:1fr;gap:4px}}@media(max-width:560px){.admin-dialog{width:calc(100vw - 14px)}.admin-dialog-shell{padding:18px}.event-metric-grid,.registration-detail-meta,.grid.three{grid-template-columns:1fr}.registration-summary-bar{align-items:stretch;flex-direction:column}.registration-summary-bar span{justify-content:center}.registration-header-tools{display:grid;grid-template-columns:1fr 1fr}.registration-header-tools form{grid-column:1/-1}}
.runner-import-tabs button span{display:inline-grid;place-items:center;min-width:24px;height:24px;margin-left:6px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.75);color:var(--green);font-size:.76rem}.import-format-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.import-format-panel h2{margin:0 0 7px}.import-format-panel p{max-width:760px;margin:0;color:var(--muted);line-height:1.55}.import-column-guide{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:14px;border:1px solid var(--line);border-radius:9px;background:#f7f9f6}.import-column-guide strong{margin-right:3px}.import-column-guide strong:not(:first-child){margin-left:15px}.import-column-guide code{padding:5px 8px;border:1px solid #cad5c7;border-radius:6px;background:#fff;color:var(--green);font-weight:750}.import-preview{margin-top:18px}.import-preview .list-head form{min-width:0}.import-row-error{box-shadow:inset 4px 0 0 #b42323}.import-row-warning{box-shadow:inset 4px 0 0 #c88412}.import-message{display:block;max-width:330px;white-space:normal;line-height:1.35;font-size:.8rem}.import-message+.import-message{margin-top:4px}.import-message.error{color:#9b2c2c}.import-message.warning{color:#8b5a08}.import-message.valid{color:var(--green);font-weight:750}.import-link-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px;border:1px solid var(--line);border-radius:10px;background:#f7f9f6}.import-link-card p{margin:5px 0 0;color:var(--muted);line-height:1.45}@media(max-width:760px){.import-format-panel,.import-link-card{align-items:stretch;flex-direction:column}.import-format-panel .button,.import-link-card .button{width:100%}.import-column-guide strong{width:100%;margin:7px 0 0!important}}
.registration-filter-panel{padding:16px 18px;margin-bottom:14px}.registration-filter-panel form{display:grid;grid-template-columns:minmax(280px,1.4fr) minmax(220px,1fr) auto;align-items:end;gap:12px}.registration-filter-panel .button-row{margin:0;flex-wrap:nowrap}.registration-search-field input{min-width:0}@media(max-width:1000px){.registration-filter-panel form{grid-template-columns:1fr 1fr}.registration-filter-panel .button-row{grid-column:1/-1}}@media(max-width:650px){.registration-filter-panel form{grid-template-columns:1fr}.registration-filter-panel .button-row{grid-column:auto;align-items:stretch;flex-direction:column}.registration-filter-panel .button-row .button{width:100%}}
.registration-information{display:grid;gap:22px}.registration-readonly-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0}.registration-readonly-grid>div{min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:#fff}.registration-readonly-grid dt{color:var(--muted);font-size:.8rem}.registration-readonly-grid dd{margin:5px 0 0;color:var(--ink);font-weight:650;line-height:1.4;overflow-wrap:anywhere}@media(max-width:1050px){.registration-readonly-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.registration-readonly-grid{grid-template-columns:1fr}}

.landing-editor-section{display:grid;gap:18px;padding:24px 0;border-top:1px solid var(--line)}
.landing-editor-section:first-of-type{padding-top:0;border-top:0}
.landing-editor-section h3{margin:0}
.template-select-field{display:grid;align-content:start;gap:10px}
.button.compact{padding:10px 14px;font-size:.86rem}
.race-column-count{min-width:210px}
.race-layout-board{display:grid;gap:18px;align-items:start}
.race-layout-board.columns-1{grid-template-columns:1fr}
.race-layout-board.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.race-layout-column{min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:#eef2ed}
.race-layout-column[hidden]{display:none}
.race-layout-column h4{margin:0 0 12px;color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}
.race-layout-dropzone{display:grid;gap:12px;min-height:84px}
.race-layout-item{display:grid;gap:14px;padding:15px;border:1px solid #cfd8cc;border-radius:10px;background:#fff;box-shadow:0 3px 10px rgba(43,43,43,.04)}
.race-layout-item.dragging{opacity:.42}
.race-layout-item-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}
.race-layout-item-head strong,.race-layout-item-head small{display:block}
.race-layout-item-head small{margin-top:3px;color:var(--muted)}
.race-layout-actions{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.race-layout-actions button{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--green);cursor:pointer}
.race-layout-actions button:hover{background:#e8f3e4}
@media(max-width:900px){.race-layout-board.columns-2{grid-template-columns:1fr}.race-layout-item-head{grid-template-columns:auto minmax(0,1fr)}.race-layout-actions{grid-column:1/-1;justify-content:flex-start}}

.race-form-panel form{display:grid;gap:24px}
.race-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.race-form-grid>.wide{grid-column:1/-1}
.race-form-spacer{min-height:1px}
.race-field-group{min-width:0;margin:0;padding:0;border:0}
.race-field-group legend{display:block;width:100%;margin:0 0 8px;color:var(--ink);font-size:.9rem;font-weight:750}
.race-inline-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.race-inline-fields label span{display:block;margin-bottom:5px;color:var(--muted);font-size:.76rem;font-weight:700}
.race-distance-fields{grid-template-columns:minmax(0,1.35fr) minmax(105px,.65fr)}
.race-team-sizes .race-inline-fields{grid-template-columns:repeat(2,minmax(80px,110px))}
.race-team-sizes.is-disabled{opacity:.55}
.race-field-group label.is-disabled{opacity:.55}
@media(max-width:1050px){.race-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.race-form-spacer{display:none}}
@media(max-width:650px){.race-form-grid{grid-template-columns:1fr}.race-inline-fields,.race-distance-fields,.race-team-sizes .race-inline-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
