:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#252528;background:#f5f6f8;font-size:15px;letter-spacing:0}*{box-sizing:border-box}body{margin:0}header{background:#fff;border-bottom:1px solid #d9dce2;min-height:72px;padding:16px 32px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}header strong{font-size:24px}header strong span{font-size:15px;color:#666}header form{margin-left:auto}.environment{color:#9b361e;font-size:12px}nav{display:flex;gap:8px;padding:12px 24px;background:#fff;border-bottom:1px solid #d9dce2;flex-wrap:wrap}a{color:#215c7b;text-decoration:none}nav a{padding:10px 12px;color:#525660;border-bottom:3px solid transparent}nav a[aria-current]{color:#ad1827;border-bottom-color:#ad1827}main{max-width:1400px;margin:auto;padding:28px 32px;min-height:70vh}h1{font-size:24px;margin:0 0 28px}button,input{font:inherit;border:1px solid #b9bdc5;border-radius:5px;padding:10px 14px}button{cursor:pointer;background:white;color:#27272b}button:hover{background:#f0f1f3}.primary{background:#af1525;color:white;border-color:#af1525}.primary:hover{background:#911220}.signin{max-width:380px;margin:60px auto}.signin label{display:block;margin:20px 0 0}.signin input{display:block;width:100%;margin-top:8px}.signin button{width:100%;margin-top:26px}[role=alert]{color:#ac1825}.table{overflow-x:auto}table{width:100%;border-collapse:collapse;background:white}th,td{text-align:left;padding:16px;border-bottom:1px solid #e0e2e7}th{font-size:13px;color:#5a5f69}.empty{padding:48px 16px;color:#6b7079}.setting{border-bottom:1px solid #d9dce2;padding:18px 0;max-width:640px}.setting a{display:flex;justify-content:space-between}dl{display:grid;grid-template-columns:160px 1fr;gap:20px;margin-top:32px}dd{margin:0;color:#6b7079}footer{padding:24px 32px;color:#70747c;font-size:12px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #2695bf;outline-offset:3px}@media(max-width:600px){header{padding:16px}main{padding:24px 16px}nav{padding:8px}nav a{padding:10px 8px}th,td{padding:12px}.signin{margin:30px auto}}
:root{--rule:#d9dce2}.account{padding:24px 0;border-bottom:1px solid var(--rule)}h2{font-size:18px;overflow-wrap:anywhere}.account-form{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:16px 0}.account-form label{display:flex;flex-direction:column;gap:8px;max-width:100%}.account-form label:has([type=checkbox]){flex-direction:row;align-self:center}.account-form input:not([type=checkbox]),select{max-width:100%;font:inherit;padding:10px;border:1px solid #b9bdc5;border-radius:5px;background:white}summary{cursor:pointer;color:#215c7b}main>a+h1{margin-top:22px}[role=status]{color:#206048}
.cost-trigger{display:block;border:0;background:transparent;padding:6px 0;color:#215c7b;font-size:13px}.cost-popover{position:fixed;inset:0;margin:auto;width:min(420px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #c9cdd4;border-radius:8px;padding:20px;background:white;color:#252528;box-shadow:0 12px 48px #0003}.cost-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.cost-heading h2{margin:0}.cost-heading button{width:36px;height:36px;padding:0;font-size:24px;flex-shrink:0}.cost-popover p{color:#656b74;font-size:13px}.cost-popover ul{list-style:none;padding:0;margin:20px 0}.cost-popover li,.cost-total{display:flex;justify-content:space-between;gap:24px;padding:12px 0;border-bottom:1px solid #e0e2e7}.cost-popover li span{overflow-wrap:anywhere}.cost-popover strong{white-space:nowrap}.cost-total{border-bottom:0}
.catalog-actions{display:flex;gap:24px;align-items:center;margin:20px 0}.product-form{max-width:850px}.product-form label{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.product-form input,.product-form textarea,.product-form select{width:100%;min-width:0;font:inherit;border:1px solid #b9bdc5;border-radius:5px;padding:10px;background:white}.component-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.component-grid label{flex-direction:row;align-items:center;justify-content:space-between;border-bottom:1px solid #d9dce2;padding-bottom:12px}.component-grid input{width:80px;flex-shrink:0}@media(max-width:600px){.form-grid,.component-grid{grid-template-columns:1fr}}
.page-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.event-select{display:flex;align-items:end;gap:12px;margin-bottom:28px}.event-select label{display:flex;flex-direction:column;gap:8px;min-width:0}.event-select select{max-width:100%}.row-actions{display:flex;gap:14px;align-items:center}.row-actions form{display:flex;gap:8px}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:32px}.report-grid article{background:white;border:1px solid #e0e2e7;border-radius:6px;padding:18px}.report-grid span{display:block;font-size:13px;color:#636973}.report-grid strong{display:block;font-size:22px;margin-top:12px}.product-form fieldset{border:0;border-top:1px solid #ddd;padding:18px 0;margin:20px 0}.product-form .check-label{display:flex;flex-direction:row;align-items:center;gap:10px}.product-form .check-label input{width:18px;height:18px;flex-shrink:0}@media(max-width:600px){.page-heading{flex-wrap:wrap}.row-actions{flex-wrap:wrap}.event-select select{width:100%}}
[hidden]{display:none!important}p,td,label{overflow-wrap:anywhere}details{margin:16px 0}details[open]>summary{margin-bottom:16px}
.roster-table td{vertical-align:top}.roster-action{display:block;width:fit-content;margin-top:12px;font-size:13px;text-decoration:underline;text-underline-offset:3px}
.orders-table td{vertical-align:top}.order-name{display:block;font-weight:600}.order-secondary{display:block;color:#646a73;font-size:13px;margin-top:5px}.order-product{display:block;margin-bottom:5px}.order-athlete+.order-athlete{margin-top:14px}
.athlete-editor{width:min(700px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #c9cdd4;border-radius:8px;padding:24px;background:#fff;color:#252528}.athlete-editor::backdrop{background:#11182766}.athlete-editor h2{margin:0 0 24px}.editor-actions{position:sticky;bottom:-24px;display:flex;justify-content:flex-end;align-items:center;gap:24px;padding:16px 0;background:#fff;border-top:1px solid #d9dce2}
.order-panel{width:min(900px,calc(100vw - 32px));max-height:calc(100dvh - 40px);overflow:auto;border:1px solid #c9cdd4;border-radius:8px;padding:0 24px 24px;background:white;color:#252528}.order-panel::backdrop{background:#11182766}.order-panel-heading{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:16px;background:white;border-bottom:1px solid #d9dce2;padding:16px 0;z-index:1}.order-panel-heading h2{margin:0}.order-panel-heading button{width:36px;height:36px;padding:0;font-size:24px}.order-panel .page-heading{margin-top:16px;flex-wrap:wrap}
button,.button{font:inherit;line-height:1.25;border:1px solid #b9bdc5;border-radius:5px;padding:10px 14px;background:#fff;color:#27272b;cursor:pointer;vertical-align:middle}
.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-align:center;text-decoration:none;max-width:100%;overflow-wrap:anywhere}
.button:hover,button:hover{background:#f0f1f3}.button:focus-visible{outline:3px solid #2695bf;outline-offset:3px}
button.primary,.button.primary{background:#af1525;color:#fff;border-color:#af1525}button.primary:hover,.button.primary:hover{background:#911220}
button:disabled{opacity:.5;cursor:not-allowed}.button.roster-action{font-size:13px;margin-top:12px;padding:8px 12px;text-decoration:none}
.cost-trigger{display:block;margin-top:8px;padding:8px 12px;border:1px solid #b9bdc5;background:#fff;color:#27272b;font-size:13px}
button+.button,.button+button,.button+.button{margin-left:10px}.catalog-actions,.row-actions{flex-wrap:wrap}
.catalog-actions>.button,.row-actions>.button,.editor-actions>.button,.editor-actions>button{margin-left:0}
.action-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.action-bar>.button,.action-bar>button{margin-left:0}.action-bar form{margin:0}
.product-form input.order-quantity{width:80px}.pending-change{border-top:2px solid #ac7220;border-bottom:1px solid #d9dce2;padding:12px 0;margin:20px 0}
.payment-due{font-size:32px;font-weight:700;margin:20px 0}
.roster-person{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:150px}
.roster-contact{display:flex;flex-direction:column;gap:5px;line-height:1.4}
.roster-person-actions{display:flex;flex-wrap:wrap;gap:8px}
.roster-person-actions .button.roster-action{margin:0;min-height:36px}
#add-order-athlete{display:block;margin:0 0 24px}
.parent-mode{margin-bottom:12px}
