:root{--color-black:#000;--color-charcoal:#1c1c1c;--color-warm-white:#e4e2dd;--color-white:#fafafa;--color-background:#e4e2dd;--color-surface:#fafafa;--color-ink:#000;--color-muted:#5c5c5c;--color-accent:#000;--color-accent-strong:#1c1c1c;--color-on-accent:#fafafa;--color-border:#a9a9a9;--color-error:#a32424;--color-success:#1d6434;--color-focus:#2457d6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:56px;--space-8:88px;--radius-control:0px;--radius-card:0px;--font-body:"Space Mono", "Courier New", monospace;--font-ui:Arial, Helvetica, ui-sans-serif, system-ui, sans-serif;--font-display:"Arial Narrow", "Roboto Condensed", Impact, sans-serif;--text-body:16px;--text-small:14px;--text-title:clamp(42px, 10vw, 82px);--touch-min:44px;--content-max:1180px;--sticky-height:96px}
*{box-sizing:border-box}html{background:var(--color-background)}body{color:var(--color-ink);background:var(--color-background);font:var(--text-body)/1.5 var(--font-body);margin:0}button,input,textarea,select{font:inherit}a{color:inherit}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.page-container{width:100%;max-width:var(--content-max);padding:var(--space-4);margin-inline:auto}.narrow{max-width:680px}.brand{min-width:var(--touch-min);min-height:var(--touch-min);align-items:center;text-decoration:none;display:inline-flex}.brand-logo{width:68px;height:auto;display:block}.eyebrow{margin:0 0 var(--space-2);color:currentColor;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}h1,h2{font-family:var(--font-display);text-transform:uppercase;font-weight:800}h1{margin:0 0 var(--space-3);font-size:var(--text-title);letter-spacing:-.03em;line-height:.88}h2{margin-block:var(--space-5) var(--space-3);letter-spacing:-.02em;font-size:clamp(30px,6vw,52px);line-height:.95}p{margin-block:0 var(--space-4)}.muted{color:var(--color-muted)}.stack{gap:var(--space-4);display:grid}.cluster{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}label.cluster{min-height:var(--touch-min);cursor:pointer}label.cluster input[type=checkbox]{width:20px;height:20px}.header{border-bottom:1px solid var(--color-charcoal);background:var(--color-black);min-height:76px;color:var(--color-warm-white);justify-content:space-between;align-items:center;display:flex}.header nav{gap:var(--space-4);text-transform:uppercase;font-size:12px;display:flex}.header nav a{min-height:var(--touch-min);align-items:center;display:inline-flex}.header :focus-visible{outline-color:#fff}.hero{padding-block:var(--space-8) var(--space-6)}.race-directory-hero{max-width:680px}.home-race-page{background:var(--color-black)}.home-race-hero{min-height:clamp(560px,100svh - 76px,880px);color:var(--color-warm-white);background:var(--color-black);place-items:center;display:grid;position:relative;overflow:hidden}.home-race-hero-image{object-fit:cover;object-position:50% 54%}.home-race-hero-shade{background:linear-gradient(#00000057,#00000080);position:absolute;inset:0}.home-race-selector{z-index:1;width:min(100% - 32px,560px);padding:var(--space-5);text-align:center;text-shadow:0 2px 18px #000000eb;position:relative}.home-race-selector h1{font-size:clamp(48px,11vw,82px)}.home-race-selector>p:not(.eyebrow){max-width:460px;margin-inline:auto}.home-race-form{gap:var(--space-3);width:min(100%,420px);margin:var(--space-5) auto 0;display:grid}.home-race-select,.home-race-submit.button{width:100%;min-height:52px;color:var(--color-warm-white);text-transform:uppercase;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000014;border:1px solid #e4e2ddd1;border-radius:0;font-weight:700}.home-race-select{cursor:pointer;padding:13px 44px 13px 16px}.home-race-select option{color:var(--color-black);background:var(--color-warm-white);text-transform:none}.home-race-select:hover,.home-race-submit.button:not(:disabled):hover{color:var(--color-white);border-color:var(--color-white);background:#0000006b}.home-race-select:focus-visible,.home-race-submit.button:focus-visible{outline:3px solid var(--color-white);outline-offset:3px}.home-race-submit.button:disabled{color:#e4e2dd94;opacity:1;background:#0003;border-color:#e4e2dd6b}.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}.race-context{min-height:var(--touch-min);justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);display:flex}.race-context a{min-height:var(--touch-min);color:var(--color-accent);align-items:center;font-weight:750;display:inline-flex}.staff-portal-bar{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:64px;padding-block:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.staff-portal-bar>div:first-child{display:grid}.staff-portal-bar a{min-height:var(--touch-min);color:var(--color-accent);align-items:center;font-weight:750;display:inline-flex}.staff-portal-bar form{margin:0}.demo-login-panel{margin-top:var(--space-5)}.demo-login-panel h2{margin-top:0}.project-grid{gap:var(--space-4);padding-bottom:var(--space-7);display:grid}.project-card{justify-content:space-between;gap:var(--space-4);min-height:172px;padding:var(--space-5);color:inherit;background:var(--color-surface);border:1px solid var(--color-black);border-radius:var(--radius-card);flex-direction:column;text-decoration:none;display:flex}.project-card>span:first-child{gap:var(--space-2);display:grid}.project-card strong{font-size:24px;line-height:1.15}.project-card-status{color:var(--color-muted);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.project-card-action{min-height:var(--touch-min);color:var(--color-accent);align-items:center;font-weight:800;display:flex}.project-card:hover{border-color:var(--color-accent)}.race-access-table .plain-list{gap:var(--space-3);display:grid}.password-reveal{gap:var(--space-3);padding:var(--space-4);border:2px solid var(--color-accent);background:var(--color-highlight);display:grid}.password-reveal code{overflow-wrap:anywhere;font-size:16px}.project-breadcrumb{padding-top:var(--space-4)}.project-breadcrumb a{min-height:var(--touch-min);color:var(--color-accent);align-items:center;font-weight:750;display:inline-flex}.project-hero{padding-top:var(--space-5)}.project-nav{z-index:5;gap:var(--space-2);padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-control);scrollbar-width:thin;display:flex;position:sticky;top:0;overflow-x:auto}.project-nav a{min-height:var(--touch-min);padding-inline:var(--space-3);color:var(--color-accent);flex:none;align-items:center;font-weight:750;text-decoration:none;display:inline-flex}.project-sections{gap:var(--space-5);padding-block:var(--space-5) var(--space-7);display:grid}.project-section{scroll-margin-top:72px}.project-section h2{margin-top:0}.stat-grid{gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.stat{align-content:center;gap:var(--space-1);min-height:88px;padding:var(--space-3);background:var(--color-background);border-radius:var(--radius-control);display:grid}.revenue-grid{gap:var(--space-3);margin-block:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.revenue-secondary{gap:var(--space-2);margin-block:var(--space-5);padding:var(--space-4);background:var(--color-background);display:grid}.revenue-secondary div{justify-content:space-between;gap:var(--space-3);display:flex}.revenue-secondary span{color:var(--color-muted)}.stat strong{font-size:22px}.stat span{color:var(--color-muted);font-size:var(--text-small)}.plain-list{gap:var(--space-2);padding:0;list-style:none;display:grid}.plain-list li{gap:var(--space-1);padding-block:var(--space-3);border-bottom:1px solid var(--color-border);display:grid}.plain-list span{color:var(--color-muted)}.panel{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-black);border-radius:var(--radius-card)}.demo-banner{padding:var(--space-2) var(--space-4);text-align:center;font-size:var(--text-small);background:#fff0d8;border-bottom:1px solid #e6c994;font-weight:700}.field{gap:var(--space-2);display:grid}.field label{font-weight:750}.input{width:100%;min-height:48px;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--color-black);border-radius:var(--radius-control);padding:12px 14px;font-size:16px}.textarea{resize:vertical}.button{justify-content:center;align-items:center;gap:var(--space-2);border:1.5px solid var(--color-black);border-radius:var(--radius-control);background:var(--color-black);min-height:48px;color:var(--color-on-accent);letter-spacing:.02em;text-transform:uppercase;cursor:pointer;padding:13px 20px;font-weight:700;text-decoration:none;display:inline-flex}.button:hover{background:var(--color-accent-strong)}.button.secondary{color:var(--color-ink);border-color:var(--color-black);background:0 0}.button.secondary:hover{background:var(--color-background)}.button:disabled{opacity:.55;cursor:not-allowed}.status{padding:var(--space-3) var(--space-4);border-left:4px solid var(--color-focus);background:var(--color-surface)}.status.error{border-color:var(--color-error)}.status.success{border-color:var(--color-success)}.photo-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.photo-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);min-width:0;overflow:hidden}.photo-frame{aspect-ratio:4/5;background:#e6e1db;place-items:center;display:grid;position:relative;overflow:hidden}.photo-open{width:100%;color:inherit;cursor:zoom-in;border:0;padding:0}.photo-frame img{object-fit:contain;width:100%;height:100%}.photo-card-body{padding:var(--space-3)}.photo-card-body p{font-size:var(--text-small);margin:0}.photo-card-body a{color:var(--color-accent);font-weight:750}.photo-credit{color:var(--color-muted);font-size:var(--text-small);flex-wrap:wrap;align-items:center;gap:2px;line-height:1.4;display:flex}.photo-credit a{min-height:var(--touch-min);color:var(--color-accent);align-items:center;font-weight:750;display:inline-flex}.photo-credit-copy{min-height:var(--touch-min);margin-left:var(--space-2);padding:2px var(--space-2);color:var(--color-muted);border:1px solid var(--color-border);font:inherit;cursor:pointer;background:0 0;border-radius:999px}.photo-credit-copy:hover{color:var(--color-black);border-color:var(--color-black)}.photo-credit-copy:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.photo-card-body label{min-height:var(--touch-min);cursor:pointer}.photo-card-body input[type=checkbox]{width:20px;height:20px}.has-sticky-action{padding-bottom:calc(var(--sticky-height) + env(safe-area-inset-bottom) + var(--space-5))}.sticky-action{z-index:10;background:var(--color-surface);border-top:1px solid var(--color-border);padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #00000014}.sticky-action-inner{max-width:var(--content-max);gap:var(--space-3);justify-content:space-between;align-items:center;margin:auto;display:flex}.sticky-action p{margin:0}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{padding:var(--space-3);border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap}.admin-location-grid{gap:var(--space-5);margin-top:var(--space-5);display:grid}.admin-race-cards h2{margin-top:0}.admin-card-grid{gap:var(--space-5);display:grid}.admin-card-form{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:grid}.album-editor{margin-bottom:var(--space-7)}.album-editor h2{margin-top:0}.album-fields-grid,.album-focal-grid{gap:var(--space-4);display:grid}.field-help,.file-note{margin-top:calc(var(--space-3) * -1);color:var(--color-muted);font-size:12px}.album-preview-grid{align-items:end;gap:var(--space-3);grid-template-columns:minmax(0,.62fr) minmax(0,1fr);display:grid}.album-preview{min-width:0;min-height:0;padding:var(--space-3);color:#fff;background-color:var(--color-charcoal);border:1px solid var(--color-black);text-shadow:0 1px 8px #000000d9;background-size:cover;flex-direction:column;justify-content:space-between;display:flex;position:relative;overflow:hidden}.album-preview.mobile{aspect-ratio:4/5}.album-preview.desktop{aspect-ratio:16/9}.album-preview-label{width:max-content;color:var(--color-black);background:var(--color-warm-white);text-transform:uppercase;text-shadow:none;padding:3px 6px;font-size:10px}.album-preview small,.album-preview strong{display:block}.album-preview strong{font-family:var(--font-display);text-transform:uppercase;font-size:clamp(22px,4vw,42px);line-height:.9}.race-album-hero{min-height:410px;margin-top:var(--space-4);color:#fff;background:var(--color-charcoal);align-items:flex-end;display:flex;position:relative;overflow:hidden}.race-album-hero>img{object-fit:cover}.race-album-hero-shade{background:linear-gradient(#0000002e,#000000d1);position:absolute;inset:0}.race-album-hero-copy{z-index:1;padding:var(--space-5);text-shadow:0 1px 12px #000c;position:relative}.race-album-hero-copy h1{font-size:clamp(48px,12vw,84px)}.race-album-hero-copy p:last-child{max-width:540px;margin-bottom:0}.search-intro{padding-block:var(--space-6) var(--space-3)}.search-intro h2{margin-top:0}.selfie-search-page{font-family:var(--font-ui)}.selfie-search-hero{padding-block:var(--space-6) var(--space-4);text-align:center}.selfie-search-hero h1{font-size:clamp(38px,8vw,60px)}.selfie-search-form{gap:var(--space-4);width:min(100%,520px);padding-bottom:var(--space-7);margin-inline:auto;display:grid}.selfie-choice-grid,.selfie-actions{gap:var(--space-2);display:grid}.selfie-search-form .button{min-height:48px;font-family:var(--font-ui);letter-spacing:0;text-transform:none;border-width:1px}.selfie-camera,.selfie-preview{gap:var(--space-3);display:grid}.selfie-camera video,.selfie-preview img{object-fit:contain;background:var(--color-charcoal);border:1px solid var(--color-border);width:100%;max-height:min(58svh,560px);display:block}.selfie-camera video{transform:scaleX(-1)}.selfie-consent{padding-block:var(--space-2);align-items:flex-start}.selfie-consent span{flex:1}.selfie-privacy-note{color:var(--color-muted);font-size:var(--text-small);text-align:center;margin:0}.admin-locations h2{margin-top:0}.location-list{gap:var(--space-2);counter-reset:location;padding:0;list-style:none;display:grid}.location-list li{min-height:var(--touch-min);justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);counter-increment:location;display:flex}.location-list li>strong:before{content:counter(location) ". ";color:var(--color-muted)}.location-list .button{min-width:var(--touch-min);padding-inline:var(--space-3)}.location-add{gap:var(--space-3);margin-top:var(--space-5);display:grid}dialog{border-radius:var(--radius-card);border:0;max-width:min(92vw,760px);padding:0}dialog::backdrop{background:#000000b3}.photo-explorer{max-width:1240px;font-family:var(--font-ui)}.photo-search-header{min-height:132px;margin-block:var(--space-3);color:#fff;background:var(--color-charcoal);align-items:flex-end;display:flex;position:relative;overflow:hidden}.photo-search-header>img{object-fit:cover}.photo-search-shade{background:linear-gradient(#00000014,#000000d1);position:absolute;inset:0}.photo-search-heading{z-index:1;padding:var(--space-3) var(--space-4);text-shadow:0 1px 10px #000c;position:relative}.photo-search-header h1{margin-bottom:0;font-size:clamp(30px,5vw,46px)}.race-search-controls{justify-items:center;gap:var(--space-2);width:min(100%,760px);margin:0 auto var(--space-4);display:grid}.race-search-primary,.race-search-secondary{gap:var(--space-2);width:100%;display:grid}.race-search-primary{grid-template-columns:minmax(0,1fr) auto}.race-search-primary .race-selfie-link{grid-column:1/-1}.race-search-secondary{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.race-search-controls .input,.race-search-controls .button{min-height:var(--touch-min);border-width:1px;border-color:var(--color-border);font-family:var(--font-ui);letter-spacing:0;text-transform:none;border-radius:0;padding-block:9px;font-weight:600}.race-search-controls .button{color:var(--color-ink);background:var(--color-surface)}.race-search-controls .button:hover{background:color-mix(in srgb, var(--color-surface) 55%, transparent);border-color:var(--color-black)}.race-search-controls .button.secondary{border-color:var(--color-border)}.race-search-controls .race-see-all{text-underline-offset:3px;background:0 0;border-color:#0000;font-weight:500;text-decoration:underline}.race-search-controls .race-see-all:hover{background:0 0;border-color:#0000}.race-bib-input{text-align:center}.race-location-select{cursor:pointer}.browse-grid{margin-top:var(--space-3)}.gallery-pagination{justify-content:center;align-items:center;gap:var(--space-3);padding-block:var(--space-5);text-align:center;flex-wrap:wrap;display:flex}.gallery-pagination p{margin:0}.no-results{max-width:520px;margin:var(--space-5) auto;padding:var(--space-4);text-align:center}.no-results h2{margin:0 0 var(--space-2);font-family:var(--font-ui);letter-spacing:-.01em;text-transform:none;font-size:clamp(22px,4vw,28px);line-height:1.15}.no-results p{margin-bottom:var(--space-3);color:var(--color-muted)}.no-results .button{min-height:var(--touch-min);border-width:1px;border-color:var(--color-border);font-family:var(--font-ui);letter-spacing:0;text-transform:none}.dialog-backdrop{z-index:30;padding:var(--space-3);background:#000000c7;place-items:center;display:grid;position:fixed;inset:0}.dialog-panel{width:min(100%,920px);max-height:calc(100svh - 32px);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-black);position:relative;overflow:auto}.dialog-close{z-index:2;float:right;margin-bottom:var(--space-2);position:sticky;top:0}.photo-preview-content{clear:both;gap:var(--space-3);display:grid}.photo-preview-image{background:#e6e1db;min-height:min(70svh,820px);position:relative}.photo-preview-image img{object-fit:contain}.photo-preview-content p{margin:0}.photo-preview-content .photo-credit{padding-inline:2px}.purchase-summary{gap:var(--space-2);min-width:min(100%,430px);display:grid}.selection-summary{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.clear-selection{min-height:36px;color:var(--color-muted);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:13px;text-decoration:underline}.clear-selection:hover{color:var(--color-black)}.checkout-fields{gap:var(--space-2);grid-template-columns:minmax(180px,1fr) minmax(160px,.8fr);display:grid}.checkout-fields .input{min-height:44px}.checkout-code-status{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-muted);font-size:13px;display:flex}.checkout-code-status .quiet-action{min-height:36px;color:var(--color-accent);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:3px 5px;font-weight:700;text-decoration:underline}.purchase-summary>.status{margin:0;padding:8px 10px;font-size:13px}.purchase-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.checkout-product-action{align-content:start;gap:4px;display:grid}.checkout-product-action small{max-width:240px;color:var(--color-muted);font-size:12px;line-height:1.3}.order-recovery h1{font-size:clamp(42px,9vw,72px)}.order-download-page{font-family:var(--font-ui)}.order-download-page .order-recovery{padding-block:var(--space-5) var(--space-4)}.order-download-page .order-recovery h1{font-family:var(--font-ui);letter-spacing:-.02em;text-transform:none;font-size:clamp(34px,7vw,54px)}.order-downloads{padding-bottom:var(--space-7)}.order-download-primary{gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);display:grid}.order-download-primary h2,.order-downloads h3{font-family:var(--font-ui);letter-spacing:-.01em;text-transform:none;margin:0}.order-zip-button{width:100%;min-height:52px;font-family:var(--font-ui);letter-spacing:0;text-transform:none}.order-photo-list{gap:var(--space-2);margin-top:var(--space-3);display:grid}.order-photo-item{align-items:center;gap:var(--space-3);padding:var(--space-2);border-bottom:1px solid var(--color-border);grid-template-columns:84px minmax(0,1fr);display:grid}.order-photo-thumb{aspect-ratio:4/5;background:#e6e1db;width:84px;position:relative;overflow:hidden}.order-photo-thumb img{object-fit:cover}.order-photo-item>div:last-child{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.order-photo-item .button{min-height:44px;font-family:var(--font-ui);letter-spacing:0;text-transform:none;padding:9px 12px}.order-return-navigation{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);flex-wrap:wrap;display:flex}.order-return-navigation .order-race-return{min-height:44px;font-family:var(--font-ui);letter-spacing:0;text-transform:none;padding:10px 14px}.order-all-races{min-height:44px;color:var(--color-accent);align-items:center;font-weight:700;display:inline-flex}.find-order-form{max-width:520px;padding-bottom:var(--space-5)}.home-order-recovery-link{color:inherit;text-underline-offset:3px}.admin-email-action{gap:4px;min-width:100px;display:grid}.admin-email-action small,.email-delivery-status+small{color:var(--color-muted);margin-top:4px;font-size:12px;display:block}.email-delivery-status{text-transform:capitalize;font-weight:700}.email-delivery-status.sent{color:#216b37}.email-delivery-status.failed{color:#9a2828}.code-table-help{margin:var(--space-3) 0 var(--space-2)}.codes-table .code-cell{align-items:center;gap:var(--space-2);min-width:150px;display:flex}.codes-table code{font-size:13px;font-weight:700}.codes-table .quiet-action{min-height:36px;color:inherit;border:1px solid var(--staff-border);font:inherit;cursor:pointer;background:0 0;border-radius:4px;padding:4px 8px;font-size:12px}.codes-table .code-status{text-transform:capitalize;font-weight:700;display:block}.codes-table .code-status.deactivated,.codes-table .code-status.expired,.codes-table .code-status.used{color:var(--color-muted)}.codes-table td small{color:var(--color-muted);white-space:nowrap;margin-top:3px;font-size:12px;display:block}@media (max-width:520px){.order-photo-item>div:last-child{flex-direction:column;align-items:stretch}.order-photo-item .button{width:100%}}@media (min-width:700px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-grid,.revenue-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.album-fields-grid,.album-focal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:768px){.page-container{padding-inline:var(--space-5)}.photo-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:760px){.race-search-primary{grid-template-columns:minmax(220px,1fr) auto minmax(180px,auto)}.race-search-primary .race-selfie-link{grid-column:auto}.race-search-secondary{grid-template-columns:auto minmax(190px,1fr);width:min(100%,460px)}}@media (min-width:560px){.selfie-choice-grid{grid-template-columns:1fr 1fr}.selfie-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:900px){.admin-location-grid,.admin-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-add{grid-template-columns:minmax(0,1fr) auto;align-items:end}}@media (max-width:700px){.sticky-action-inner{flex-direction:column;align-items:stretch}.checkout-fields{grid-template-columns:1fr}.checkout-code-status{align-items:flex-start}.purchase-actions{grid-template-columns:1fr;display:grid}.purchase-actions .button{width:100%}.photo-explorer.has-sticky-action{padding-bottom:calc(390px + env(safe-area-inset-bottom))}}@media (max-width:520px){.home-race-hero{min-height:calc(100svh - 76px)}.home-race-selector{padding-inline:0}.album-preview-grid{grid-template-columns:minmax(0,.72fr) minmax(0,1fr)}.album-preview{padding:var(--space-2)}.race-album-hero{min-height:360px}.photo-card-body{padding:var(--space-2)}.photo-preview-image{min-height:60svh}.photo-search-header{min-height:112px}}@media (max-width:390px){.race-search-secondary{grid-template-columns:1fr}}.staff-page{--staff-border:#d8d8d4;--staff-bg:#f6f6f3;--staff-surface:#fff;color:#202020;background:var(--staff-bg);max-width:1120px;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.45}main:has(>.staff-portal-bar){--staff-border:#d8d8d4;--staff-bg:#f6f6f3;--staff-surface:#fff;color:#202020;background:var(--staff-bg);max-width:1120px;font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.45}.staff-page h1,.staff-page h2,.staff-page h3{letter-spacing:-.015em;text-transform:none;font-family:inherit;font-weight:700;line-height:1.2}main:has(>.staff-portal-bar) h1{letter-spacing:-.015em;text-transform:none;font-family:inherit;font-weight:700;line-height:1.2}main:has(>.staff-portal-bar) h2{letter-spacing:-.015em;text-transform:none;font-family:inherit;font-weight:700;line-height:1.2}main:has(>.staff-portal-bar) h3{letter-spacing:-.015em;text-transform:none;font-family:inherit;font-weight:700;line-height:1.2}.staff-page h1{margin-bottom:var(--space-2);font-size:clamp(26px,4vw,28px)}main:has(>.staff-portal-bar) h1{margin-bottom:var(--space-2);font-size:clamp(26px,4vw,28px)}.staff-page h2{margin-block:var(--space-3) var(--space-2);font-size:24px}main:has(>.staff-portal-bar) h2{margin-block:var(--space-3) var(--space-2);font-size:24px}.staff-page h3{margin-block:var(--space-4) var(--space-2);font-size:18px}main:has(>.staff-portal-bar) h3{margin-block:var(--space-4) var(--space-2);font-size:18px}.staff-page .hero{padding-block:var(--space-5) var(--space-4)}main:has(>.staff-portal-bar) .hero{padding-block:var(--space-5) var(--space-4)}.staff-page .panel{padding:var(--space-4);background:var(--staff-surface);border:1px solid var(--staff-border);border-radius:6px}main:has(>.staff-portal-bar) .panel{padding:var(--space-4);background:var(--staff-surface);border:1px solid var(--staff-border);border-radius:6px}.staff-page .stack{gap:var(--space-3)}main:has(>.staff-portal-bar) .stack{gap:var(--space-3)}.staff-page .project-sections{gap:var(--space-4);padding-block:var(--space-4)}.staff-page .project-nav{padding:var(--space-1);border-color:var(--staff-border);border-radius:6px;flex-wrap:wrap;position:static;overflow:visible}.staff-page .project-nav a,.staff-page .project-nav button{min-height:40px;padding-inline:var(--space-3);color:var(--color-ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:4px;flex:none;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.staff-page .project-nav a:hover,.staff-page .project-nav button:hover{background:var(--staff-bg)}.staff-page .project-tabs{width:max-content;max-width:100%;margin-bottom:var(--space-3)}.staff-page .project-tabs button.active{color:var(--color-on-accent);background:var(--color-black)}.staff-page .project-tab-intro{padding-block:var(--space-3) var(--space-1)}.staff-page .project-tab-intro h2{margin:0 0 var(--space-1)}.staff-page .project-tab-intro p{margin-bottom:0}.staff-page .processing-progress{gap:var(--space-2);margin-block:var(--space-4);display:grid}.staff-page .processing-progress>div{justify-content:space-between;gap:var(--space-3);display:flex}.staff-page .processing-progress span{color:var(--color-muted)}.staff-page .processing-progress progress{width:100%;height:10px;accent-color:var(--color-black)}.staff-page .input{border-color:#8c8c88;border-radius:4px;min-height:44px;padding:9px 11px}main:has(>.staff-portal-bar) .input{border-color:#8c8c88;border-radius:4px;min-height:44px;padding:9px 11px}.staff-page .button{letter-spacing:0;text-transform:none;border-radius:4px;min-height:44px;padding:10px 16px}main:has(>.staff-portal-bar) .button{letter-spacing:0;text-transform:none;border-radius:4px;min-height:44px;padding:10px 16px}.staff-page th,.staff-page td{border-color:var(--staff-border);padding:10px 12px}main:has(>.staff-portal-bar) th{border-color:var(--staff-border);padding:10px 12px}main:has(>.staff-portal-bar) td{border-color:var(--staff-border);padding:10px 12px}.staff-page th{color:#555;background:#f5f5f2;font-size:13px;font-weight:700}main:has(>.staff-portal-bar) th{color:#555;background:#f5f5f2;font-size:13px;font-weight:700}.staff-page .eyebrow{margin-bottom:var(--space-1);color:#666;font-size:11px}main:has(>.staff-portal-bar) .eyebrow{margin-bottom:var(--space-1);color:#666;font-size:11px}.staff-page .project-card{gap:var(--space-2);min-height:0;padding:var(--space-4);border-color:var(--staff-border);border-radius:6px}.staff-page .project-card strong{font-size:18px}.staff-page .table-action{white-space:nowrap;align-items:center;min-height:44px;font-weight:700;display:inline-flex}.staff-page .project-hero{padding-top:var(--space-3)}.staff-page .field-help,.staff-page .file-note{margin-top:0;font-size:13px}main:has(>.staff-portal-bar) .field-help{margin-top:0;font-size:13px}main:has(>.staff-portal-bar) .file-note{margin-top:0;font-size:13px}.staff-page .stat{background:var(--staff-bg);border-radius:4px;min-height:76px}.staff-page .album-editor{margin-bottom:var(--space-5)}.staff-page .staff-form-grid{gap:var(--space-3);display:grid}main:has(>.staff-portal-bar) .staff-form-grid{gap:var(--space-3);display:grid}.staff-page .album-cover-layout{gap:var(--space-4);display:grid}.staff-page .publication-control{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3);background:var(--staff-bg);border:1px solid var(--staff-border);border-radius:4px;display:flex}.staff-page .publication-control p,.staff-page .publication-control .field-help{margin:0}.staff-page .publication-control strong{margin-bottom:2px;font-size:18px;display:block}.staff-page .section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}main:has(>.staff-portal-bar) .section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.staff-page .section-heading h2{margin:0}main:has(>.staff-portal-bar) .section-heading h2{margin:0}.staff-page .admin-dashboard-hero{padding-bottom:var(--space-3)}.staff-page .admin-race-list-heading{margin-bottom:var(--space-2);align-items:end}.staff-page .admin-race-list-heading h1{margin-bottom:0}.staff-page .create-race-toggle{min-height:40px;padding:8px 13px}.staff-page .create-race-form{margin-top:var(--space-4)}.staff-page .create-race-actions{justify-content:flex-start}.staff-page .codes-table th,.staff-page .codes-table td{padding:6px 8px}.staff-page .codes-table td:last-child .button{min-height:40px;padding:6px 10px}.staff-page .code-table-toolbar{justify-content:space-between;align-items:end;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.staff-page .code-table-toolbar p{margin:0}.staff-page .code-filter{min-width:160px}.staff-page .code-filter label{font-size:12px}.staff-page .code-filter .input{min-height:40px;padding-block:6px}.staff-page .code-pagination,.staff-page .order-pagination{flex-wrap:wrap}.staff-page .code-pagination span,.staff-page .order-pagination span{color:var(--color-muted);text-align:center;font-size:13px}.staff-page .editable-table .input{min-width:110px}.staff-page .money-input{align-items:center;gap:var(--space-2);grid-template-columns:auto minmax(110px,1fr);display:grid}.staff-page .compact-field{align-items:end;gap:var(--space-2);grid-template-columns:minmax(180px,320px) auto;display:grid}.staff-page .compact-field>span{align-items:center;min-height:44px;display:flex}.staff-page .password-settings-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.staff-page .password-settings-heading h2{margin-bottom:var(--space-2)}.staff-page .password-replacement-toggle{flex:none;min-height:40px;padding:7px 11px}.staff-page .saved-password-field{max-width:620px}.staff-page .saved-password-field .input{font-family:var(--font-ui)}.staff-page .saved-password-actions{flex-wrap:nowrap}.staff-page .saved-password-actions .button{min-width:70px}.staff-page .password-settings-form{gap:var(--space-3);max-width:520px;display:grid}.staff-page .password-entry-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.staff-page .password-entry-row .button{min-width:72px}.staff-page .password-settings-form>.button{width:max-content}.staff-page .code-form{gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-4);background:var(--staff-bg);border:1px solid var(--staff-border);border-radius:4px;display:grid}.staff-page .empty-state{padding:var(--space-5);text-align:center;color:var(--color-muted);background:var(--staff-bg)}.staff-page .upload-drop{place-content:center;gap:var(--space-1);min-height:150px;padding:var(--space-4);text-align:center;cursor:pointer;border:1.5px dashed #777;border-radius:6px;display:grid}main:has(>.staff-portal-bar) .upload-drop{place-content:center;gap:var(--space-1);min-height:150px;padding:var(--space-4);text-align:center;cursor:pointer;border:1.5px dashed #777;border-radius:6px;display:grid}.staff-page .upload-drop:hover{background:var(--staff-bg);border-color:#111}main:has(>.staff-portal-bar) .upload-drop:hover{background:var(--staff-bg);border-color:#111}.staff-page .photographer-upload-form{gap:var(--space-4);display:grid}.staff-page .photographer-upload-form h2,.staff-page .upload-batch-draft h2{margin-top:0}.staff-page .upload-batch-draft{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--staff-border);display:grid}.staff-page .upload-draft-summary{gap:var(--space-2);flex-wrap:wrap;display:flex}.staff-page .upload-draft-summary span{align-items:center;gap:var(--space-1);min-height:40px;padding:var(--space-2) var(--space-3);background:var(--staff-bg);display:inline-flex}.staff-page .submitted-batches{margin-bottom:var(--space-7)}.staff-page .upload-batch-table td small{margin-top:var(--space-1);color:var(--color-muted);display:block}.staff-page .upload-batch-table progress{width:150px;max-width:22vw;accent-color:var(--color-black)}.staff-page .batch-status-summary{max-width:260px;line-height:1.35}.staff-page .retry-file-label{width:max-content}.staff-page .upload-summary{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}main:has(>.staff-portal-bar) .upload-summary{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.staff-page .upload-summary span{justify-content:space-between;gap:var(--space-2);padding:var(--space-2);background:var(--staff-bg);display:flex}main:has(>.staff-portal-bar) .upload-summary span{justify-content:space-between;gap:var(--space-2);padding:var(--space-2);background:var(--staff-bg);display:flex}.staff-page .upload-table-section{margin-top:var(--space-4)}main:has(>.staff-portal-bar) .upload-table-section{margin-top:var(--space-4)}.staff-page .upload-table-section td small{color:var(--color-muted);display:block}main:has(>.staff-portal-bar) .upload-table-section td small{color:var(--color-muted);display:block}.staff-page progress{width:140px;max-width:28vw}main:has(>.staff-portal-bar) progress{width:140px;max-width:28vw}.staff-page .upload-status{text-transform:capitalize;background:#ececea;border-radius:999px;padding:3px 7px;font-size:13px;display:inline-flex}main:has(>.staff-portal-bar) .upload-status{text-transform:capitalize;background:#ececea;border-radius:999px;padding:3px 7px;font-size:13px;display:inline-flex}.staff-page .upload-status.ready,.staff-page .upload-status.duplicate{color:var(--color-success);background:#e5f2e8}main:has(>.staff-portal-bar) .upload-status.ready{color:var(--color-success);background:#e5f2e8}main:has(>.staff-portal-bar) .upload-status.duplicate{color:var(--color-success);background:#e5f2e8}.staff-page .upload-status.failed{color:var(--color-error);background:#f7e4e4}main:has(>.staff-portal-bar) .upload-status.failed{color:var(--color-error);background:#f7e4e4}.staff-page .pagination{justify-content:flex-end;align-items:center;gap:var(--space-3);padding-top:var(--space-3);display:flex}main:has(>.staff-portal-bar) .pagination{justify-content:flex-end;align-items:center;gap:var(--space-3);padding-top:var(--space-3);display:flex}.staff-page .compact-tabs{width:max-content;max-width:100%;margin-bottom:var(--space-3);background:var(--staff-bg);border:1px solid var(--staff-border);border-radius:4px;gap:4px;padding:4px;display:flex}.staff-page .compact-tabs button{min-height:40px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:3px;padding:7px 12px;font-weight:700}.staff-page .compact-tabs button.active{color:#fff;background:#202020}.staff-page .compact-table td{padding-block:7px}.staff-page .table-actions{align-items:center;gap:var(--space-2);min-width:max-content;display:flex}.staff-page .text-action{min-height:40px;color:inherit;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:5px 7px;font-weight:700;text-decoration:underline}.staff-page .text-action.danger,.staff-page .purge-button{color:#8b2020}.staff-page .text-action:disabled{opacity:.5;cursor:wait}.staff-page .destructive-dialog{clear:both;max-width:680px;padding-top:var(--space-2)}.staff-page .destructive-dialog h2{margin-top:0}.staff-page .storage-summary{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.staff-page .storage-summary>div{padding:var(--space-3);background:var(--staff-bg);gap:2px;display:grid}.staff-page .storage-summary strong{text-transform:capitalize;font-size:20px}.staff-page .storage-summary span{color:var(--color-muted);font-size:13px}.staff-page .purge-state.failed{color:var(--color-error)}.staff-page .purge-state.purged{color:var(--color-muted)}.staff-page .retention-control{align-items:end;gap:var(--space-2);max-width:520px;margin-top:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.staff-page .purge-button{margin-top:var(--space-3)}.staff-page .admin-tabs{margin-bottom:var(--space-4)}.staff-page .cost-heading{align-items:end}.staff-page .cost-heading h2{margin:0 0 var(--space-1)}.staff-page .cost-heading p{margin:0}.staff-page .cost-month{min-width:180px}.staff-page .cost-summary{margin-block:var(--space-4)}.staff-page .cost-table{margin-top:var(--space-4)}.staff-page .cost-table th,.staff-page .cost-table td{vertical-align:top;padding:8px}.staff-page .cost-table td:first-child a{font-weight:700}.staff-page .cost-table td:first-child small{color:var(--color-muted);margin-top:3px;display:block}.staff-page .cost-table .input{min-width:118px;min-height:40px;padding:7px 9px}.staff-page .cost-table td:nth-child(5) .input{min-width:180px}.staff-page .cost-table .button{min-height:40px;padding:7px 11px}.staff-page .cost-money{grid-template-columns:auto minmax(80px,110px)}.staff-page .cost-not-entered{color:var(--color-muted)}.staff-page .cost-note{white-space:normal;max-width:240px}.staff-page .cost-help{margin-top:var(--space-3)}@media (min-width:760px){.staff-page .staff-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}main:has(>.staff-portal-bar) .staff-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.staff-page .album-cover-layout{grid-template-columns:minmax(280px,.75fr) minmax(360px,1.25fr);align-items:start}.staff-page .upload-summary{grid-template-columns:repeat(6,minmax(0,1fr))}main:has(>.staff-portal-bar) .upload-summary{grid-template-columns:repeat(6,minmax(0,1fr))}}@media (max-width:620px){.staff-page .staff-portal-bar{align-items:flex-start}main:has(>.staff-portal-bar) .staff-portal-bar{align-items:flex-start}.staff-page .staff-portal-bar .cluster{justify-content:flex-end}main:has(>.staff-portal-bar) .staff-portal-bar .cluster{justify-content:flex-end}.staff-page .race-access-table th:nth-child(2),.staff-page .race-access-table td:nth-child(2){display:none}.staff-page .publication-control{flex-direction:column;align-items:stretch}.staff-page .publication-control .button{width:100%}.staff-page .admin-race-list-heading{flex-direction:column;align-items:stretch}.staff-page .admin-race-list-heading .button,.staff-page .create-race-actions .button{width:100%}.staff-page .create-race-actions,.staff-page .password-settings-heading{flex-direction:column;align-items:stretch}.staff-page .password-replacement-toggle{width:max-content}.staff-page .saved-password-field .password-entry-row{grid-template-columns:1fr}.staff-page .saved-password-actions{justify-content:flex-start}.staff-page .code-table-toolbar{flex-direction:column;align-items:stretch}.staff-page .code-filter{width:100%}.staff-page .table-actions{flex-direction:column;align-items:flex-start;min-width:0}.staff-page .storage-summary,.staff-page .retention-control{grid-template-columns:1fr}.staff-page .cost-heading{flex-direction:column;align-items:stretch}.staff-page .cost-month{width:100%}.staff-page .cost-table{overflow:visible}.staff-page .cost-table table,.staff-page .cost-table tbody,.staff-page .cost-table tr,.staff-page .cost-table td{width:100%;display:block}.staff-page .cost-table thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.staff-page .cost-table tr{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--staff-surface);border:1px solid var(--staff-border)}.staff-page .cost-table td{gap:var(--space-2);padding:var(--space-2) 0;white-space:normal;grid-template-columns:minmax(105px,.7fr) minmax(0,1fr);display:grid}.staff-page .cost-table td:before{content:attr(data-label);color:var(--color-muted);font-size:13px;font-weight:700}.staff-page .cost-table .input,.staff-page .cost-table td:nth-child(5) .input{min-width:0}.staff-page .submitted-batches .section-heading{flex-direction:column;align-items:stretch}.staff-page .submitted-batches .section-heading .button{width:100%}.staff-page .upload-batch-table{overflow:visible}.staff-page .upload-batch-table table,.staff-page .upload-batch-table tbody,.staff-page .upload-batch-table tr,.staff-page .upload-batch-table td{width:100%;display:block}.staff-page .upload-batch-table thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.staff-page .upload-batch-table tr{margin-bottom:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--staff-bg);border:1px solid var(--staff-border)}.staff-page .upload-batch-table td{align-items:start;gap:var(--space-2);padding:var(--space-2) 0;white-space:normal;grid-template-columns:minmax(100px,.65fr) minmax(0,1fr);display:grid}.staff-page .upload-batch-table td:before{content:attr(data-label);color:var(--color-muted);font-size:13px;font-weight:700}.staff-page .upload-batch-table progress{max-width:100%}}
