:root{--color-orange:#ff8000;--color-navy:#0b3c5d;--color-black:#111;--color-white:#fff;--c-bg:#fafafa;--c-surface:#f2f2f2;--c-border:#e4e4e4;--c-text:#1a1a1a;--c-text-muted:#6b6b6b;--c-text-inverse:#fff;--c-heading:#1a1a1a;--c-accent:#ff8000;--c-nav-bg:transparent;--c-nav-border:#e4e4e4;--c-nav-link:#6b6b6b;--c-nav-link-hover:#1a1a1a;--c-nav-active:#ff8000;--c-table-header-bg:#0b3c5d;--c-table-header-sc:#0b3c5d;--c-table-row-alt:#f2f2f2;--c-table-hover:#e8e8e8;--c-table-border:#e4e4e4;--c-collapsible-text:#1a1a1a;--c-collapsible-hover-bg:#f2f2f2;--c-collapsible-active-text:#ff8000;--c-link:#0b3c5d;--c-link-hover:#ff8000;--c-btn-primary-bg:#1a1a1a;--c-btn-primary-text:#fff;--c-btn-secondary-bg:#e4e4e4;--c-btn-secondary-text:#1a1a1a;--c-status-success:#166534;--c-status-success-bg:#dcfce7;--c-status-error:#991b1b;--c-status-error-bg:#fee2e2;--c-status-warning:#92400e;--c-status-warning-bg:#fef3c7;--c-status-info:#1e40af;--c-status-info-bg:#dbeafe;--c-warning-bg:#fef3c7;--c-warning-border:#fcd34d;--c-footer-border:#e4e4e4;--c-footer-text:#6b6b6b;--c-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='%236b6b6b' d='M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8H32c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z'/%3E%3C/svg%3E");--max-width:900px;--nav-height:56px;--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:clamp(1.75rem, 3vw, 2.25rem);--leading:1.7;--tracking:0;--tracking-wide:.05em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--t-fast:.15s ease;--t-base:.25s ease;--t-slow:.35s cubic-bezier(.4, 0, .2, 1);--shadow-dropdown:0 8px 16px #0000001f}@media (prefers-color-scheme:dark){:root:not([data-color-scheme=light]){--c-bg:#111;--c-surface:#1c1c1c;--c-border:#2a2a2a;--c-text:#f0f0f0;--c-text-muted:#9a9a9a;--c-text-inverse:#fff;--c-heading:#f0f0f0;--c-nav-border:#2a2a2a;--c-nav-link:#9a9a9a;--c-nav-link-hover:#f0f0f0;--c-table-row-alt:#1c1c1c;--c-table-hover:#242424;--c-table-border:#2a2a2a;--c-collapsible-text:#f0f0f0;--c-collapsible-hover-bg:#1c1c1c;--c-btn-primary-bg:#f0f0f0;--c-btn-primary-text:#111;--c-btn-secondary-bg:#2a2a2a;--c-btn-secondary-text:#f0f0f0;--c-link:#9a9a9a;--c-link-hover:#ff8000;--c-status-success:#86efac;--c-status-success-bg:#052e16;--c-status-error:#fca5a5;--c-status-error-bg:#450a0a;--c-status-warning:#fbbf24;--c-status-warning-bg:#2d1b00;--c-status-info:#93c5fd;--c-status-info-bg:#0f1f4a;--c-footer-border:#2a2a2a;--c-footer-text:#9a9a9a;--c-warning-bg:#2a2800;--c-warning-border:#6b6800;--c-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='%239a9a9a' d='M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8H32c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z'/%3E%3C/svg%3E")}}:root[data-color-scheme=dark]{--c-bg:#111;--c-surface:#1c1c1c;--c-border:#2a2a2a;--c-text:#f0f0f0;--c-text-muted:#9a9a9a;--c-text-inverse:#fff;--c-heading:#f0f0f0;--c-nav-border:#2a2a2a;--c-nav-link:#9a9a9a;--c-nav-link-hover:#f0f0f0;--c-table-row-alt:#1c1c1c;--c-table-hover:#242424;--c-table-border:#2a2a2a;--c-collapsible-text:#f0f0f0;--c-collapsible-hover-bg:#1c1c1c;--c-btn-primary-bg:#f0f0f0;--c-btn-primary-text:#111;--c-btn-secondary-bg:#2a2a2a;--c-btn-secondary-text:#f0f0f0;--c-link:#9a9a9a;--c-link-hover:#ff8000;--c-status-success:#86efac;--c-status-success-bg:#052e16;--c-status-error:#fca5a5;--c-status-error-bg:#450a0a;--c-status-warning:#fbbf24;--c-status-warning-bg:#2d1b00;--c-status-info:#93c5fd;--c-status-info-bg:#0f1f4a;--c-footer-border:#2a2a2a;--c-footer-text:#9a9a9a;--c-warning-bg:#2a2800;--c-warning-border:#6b6800;--c-select-arrow:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'%3E%3Cpath fill='%239a9a9a' d='M137.4 374.6c12.5 12.5 32.8 12.5 45.3 0l128-128c9.2-9.2 11.9-22.9 6.9-34.9s-16.6-19.8-29.6-19.8H32c-12.9 0-24.6 7.8-29.6 19.8s-2.2 25.7 6.9 34.9l128 128z'/%3E%3C/svg%3E")}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--c-bg);color:var(--c-text);font-size:var(--text-base);line-height:var(--leading);letter-spacing:var(--tracking);margin:0}h1{font-size:var(--text-2xl);letter-spacing:var(--tracking-wide);color:var(--c-heading);margin-bottom:var(--space-2);margin-top:var(--space-4);font-weight:700}h2{font-size:var(--text-xl);color:var(--c-heading);margin-top:var(--space-8);margin-bottom:var(--space-4);font-weight:600}h3{font-size:var(--text-lg);color:var(--c-heading);margin-top:var(--space-6);font-weight:600}h5{margin-top:0}a{color:var(--c-link);transition:color var(--t-fast)}a:hover{color:var(--c-link-hover)}.custom-length{width:50%;margin-left:0}.site-nav{align-items:center;gap:var(--space-2);height:var(--nav-height);padding:0 var(--space-6);background:var(--c-nav-bg);border-bottom:1px solid var(--c-nav-border);z-index:9;-webkit-backdrop-filter:blur(8px);display:flex;position:sticky;top:0}.site-nav__logo-link{flex-shrink:0;align-items:center;text-decoration:none;display:flex}.site-nav__logo-text{font-size:var(--text-lg);letter-spacing:var(--tracking-wide);color:var(--c-text);font-weight:700}.site-nav__links{align-items:center;gap:var(--space-1);margin-left:auto;display:flex}.site-nav__link{color:var(--c-nav-link);font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);transition:color var(--t-fast);white-space:nowrap;align-items:center;text-decoration:none;display:inline-flex}.site-nav__link:hover{color:var(--c-nav-link-hover)}.site-nav__link.is-active{color:var(--c-nav-active);font-weight:600}.site-nav__burger{color:var(--c-nav-link);padding:var(--space-2);cursor:pointer;background:0 0;border:none;margin-left:auto;line-height:1;display:none}.site-nav__theme-toggle{color:var(--c-nav-link);padding:var(--space-2);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--t-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex}.site-nav__theme-toggle:hover{color:var(--c-nav-link-hover)}.site-nav__dropdown{position:relative}.site-nav__dropbtn{font-family:inherit;font-size:var(--text-sm);color:var(--c-nav-link);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:color var(--t-fast);white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;display:inline-flex}.site-nav__dropbtn:hover,.site-nav__dropbtn:focus{color:var(--c-nav-link-hover)}.site-nav__dropdown-menu{background-color:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius-md);min-width:240px;box-shadow:var(--shadow-dropdown);z-index:10;opacity:0;pointer-events:none;transition:opacity var(--t-fast), transform var(--t-fast);position:absolute;top:calc(100% + 4px);right:0;transform:translateY(-4px)}.site-nav__dropdown-menu a{color:var(--c-text);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);transition:background var(--t-fast), color var(--t-fast);text-decoration:none;display:block}.site-nav__dropdown-menu a:hover{background-color:var(--c-surface);color:var(--c-text)}.site-nav__dropdown-menu.is-open{opacity:1;pointer-events:auto;transform:translateY(0)}@media screen and (width<=600px){.site-nav{height:auto;min-height:var(--nav-height);padding:var(--space-3) var(--space-4);flex-wrap:wrap;align-items:center;gap:0}.site-nav__logo-link{order:1}.site-nav__theme-toggle{order:2;margin-left:auto}.site-nav__burger{order:3;margin-left:0;display:flex}.site-nav__links{padding-top:var(--space-2);border-top:1px solid var(--c-border);margin-left:0;margin-top:var(--space-2);flex-direction:column;flex:0 0 100%;order:4;align-items:stretch;gap:0;display:none}.site-nav.is-open .site-nav__links{display:flex}.site-nav__link{width:100%;font-size:var(--text-base);padding:var(--space-3) var(--space-2)}.site-nav__dropdown{width:100%}.site-nav__dropbtn{width:100%;font-size:var(--text-base);padding:var(--space-3) var(--space-2);justify-content:flex-start}.site-nav__dropdown-menu{opacity:1;pointer-events:auto;box-shadow:none;border:none;border-left:2px solid var(--c-border);margin-left:var(--space-4);border-radius:0;transition:none;display:none;position:static;transform:none}.site-nav__dropdown-menu.is-open{display:block}.scoresheet-controls{flex-wrap:wrap}}site-banner{top:var(--nav-height);z-index:8;display:block;position:sticky}site-banner[hidden]{display:none!important}.site-banner__inner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);background:var(--c-status-warning-bg);border-left:4px solid var(--c-accent);border-bottom:1px solid var(--c-border);display:flex}.site-banner__icon{color:var(--c-accent);flex-shrink:0;display:flex}.site-banner__text{font-size:var(--text-sm);color:var(--c-status-warning);margin:0;font-weight:600;line-height:1.5}.main{max-width:var(--max-width);padding:var(--space-10) var(--space-6);min-height:calc(100vh - var(--nav-height) - 80px);margin:0 auto}@media screen and (width<=600px){.main{padding-left:var(--space-4);padding-right:var(--space-4);padding-top:var(--space-8)}}.footer{border-top:1px solid var(--c-footer-border);padding:var(--space-8) var(--space-6);text-align:center;font-size:var(--text-xs);color:var(--c-footer-text)}.footer a,.footer__admin-link{color:var(--c-footer-text);transition:color var(--t-fast);text-decoration:none}.footer a:hover,.footer__admin-link:hover{color:var(--c-accent)}.standing-table{border-collapse:collapse;width:100%;font-size:var(--text-sm);white-space:nowrap;border-radius:var(--radius-md);border:1px solid var(--c-table-border);display:block;overflow-x:auto}.standing-table th{background:var(--c-table-header-bg);color:var(--c-text-inverse);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:var(--space-3) var(--space-4);text-align:left;font-weight:600}.standing-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--c-table-border);color:var(--c-text)}.standing-table tr:hover td{background:var(--c-table-hover)}.standing-table td:nth-child(n+2):nth-child(-n+16),.standing-table th:nth-child(n+2):nth-child(-n+16){width:5%}.standing-table th:first-child,.standing-table td:first-child{white-space:nowrap;width:1%}.standing-table tr:last-child td{border-bottom:none}.collapsible{width:100%;padding:var(--space-4) var(--space-2);border:none;border-bottom:1px solid var(--c-border);color:var(--c-collapsible-text);font-family:inherit;font-size:var(--text-base);cursor:pointer;transition:color var(--t-fast), background var(--t-fast);background:0 0;justify-content:space-between;align-items:center;font-weight:600;display:flex}.collapsible:hover{background:var(--c-collapsible-hover-bg)}.collapsible.active{color:var(--c-collapsible-active-text)}.collapsible__chevron{transition:transform var(--t-base);color:currentColor;flex-shrink:0}.collapsible.active .collapsible__chevron{transform:rotate(180deg)}.scorecard{max-height:0;transition:max-height var(--t-slow);overflow:hidden}.scorecard-tables{font-size:var(--text-sm);text-align:center;border-collapse:collapse;table-layout:auto;width:100%;margin-top:var(--space-5);white-space:nowrap;border-radius:var(--radius-md);border:1px solid var(--c-table-border);display:block;overflow-x:auto}.scorecard-tables tr{height:28px}.scorecard-tables th{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);background-color:var(--c-table-header-sc);color:var(--c-text-inverse);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:600}.scorecard-tables td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--c-table-border);color:var(--c-text)}.scorecard-tables td:first-child{text-align:left;width:20%;font-size:var(--text-xs)}.scorecard-tables td:nth-child(n+2):nth-child(-n+20),.scorecard-tables th:nth-child(n+2):nth-child(-n+20){width:4%;font-size:var(--text-xs)}.scorecard-tables tr:hover td{background-color:var(--c-table-hover)}.scorecard-tables tr:nth-last-child(-n+3) td{text-align:center;font-size:var(--text-xs);color:var(--c-text-inverse);background-color:var(--c-table-header-sc);border-bottom:1px solid #ffffff1a}.scorecard-tables tr:nth-last-child(-n+3):hover td{background-color:var(--c-table-hover);color:var(--c-text)}.scorecard-tables tr:last-child td{border-bottom:none}.scorecard-tables tr.dummy-row td{color:var(--c-text-muted);font-style:italic}.scoresheets-table{font-size:var(--text-base);border-collapse:collapse;text-transform:uppercase}.scoresheets-table td,.scoresheets-table th{border-bottom:1px solid var(--c-border);padding:var(--space-3) var(--space-5)}.scoresheets-table tr:hover td{background-color:var(--c-table-hover)}.scoresheets-table th{text-align:left;background-color:var(--c-table-header-bg);color:var(--c-text-inverse);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:600}.bonus-tables{font-size:var(--text-sm);text-align:center;border-collapse:collapse;table-layout:auto;white-space:nowrap;width:100%;margin-left:auto;margin-right:auto;display:block;overflow-x:auto}.bonus-tables tr{height:35px}.bonus-tables th{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);background-color:var(--c-table-header-bg);color:var(--c-text-inverse);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:600}.bonus-tables td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--c-table-border);color:var(--c-text)}.bonus-tables td:first-child{text-align:center;width:5%;font-size:var(--text-sm)}.bonus-tables td:nth-child(n+2):nth-child(-n+16),.bonus-tables th:nth-child(n+2):nth-child(-n+16){width:5%}.bonus-tables tr:hover td{background-color:var(--c-table-hover)}.btn-primary{background-color:var(--c-btn-primary-bg);color:var(--c-btn-primary-text);padding:var(--space-2) var(--space-5);cursor:pointer;border-radius:var(--radius-md);font-size:var(--text-sm);transition:opacity var(--t-fast), transform var(--t-fast);border:none;font-family:inherit;font-weight:500}.btn-primary:hover{opacity:.88;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background-color:var(--c-btn-secondary-bg);color:var(--c-btn-secondary-text);padding:var(--space-2) var(--space-5);cursor:pointer;border-radius:var(--radius-md);font-size:var(--text-sm);transition:opacity var(--t-fast), transform var(--t-fast);border:none;font-family:inherit;font-weight:500}.btn-secondary:hover{opacity:.88;transform:translateY(-1px)}.btn-secondary:active{transform:translateY(0)}.btn-danger{background-color:var(--c-status-error-bg);color:var(--c-status-error);padding:var(--space-2) var(--space-5);cursor:pointer;border-radius:var(--radius-md);font-size:var(--text-sm);transition:opacity var(--t-fast), transform var(--t-fast);border:none;font-family:inherit;font-weight:500}.btn-danger:hover{opacity:.88;transform:translateY(-1px)}.btn-danger:active{transform:translateY(0)}.admin-header{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background-color:var(--c-surface);margin-bottom:var(--space-6);border-radius:var(--radius-md);display:flex}.admin-status{margin:var(--space-3) 0 0;font-size:var(--text-sm);border-radius:var(--radius-sm);min-height:1.25em}.admin-status--success{color:var(--c-status-success);background-color:var(--c-status-success-bg);padding:var(--space-2) var(--space-3)}.admin-status--error{color:var(--c-status-error);background-color:var(--c-status-error-bg);padding:var(--space-2) var(--space-3)}.admin-actions{align-items:center;gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.admin-shooters-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-sm)}.admin-shooters-table th{background:var(--c-table-header-bg);color:var(--c-text-inverse);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:var(--space-2) var(--space-3);text-align:left;font-weight:600}.admin-shooters-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--c-table-border);vertical-align:middle}.admin-shooters-table tr:last-child td{border-bottom:none}.ap-shooter-total{font-variant-numeric:tabular-nums;color:var(--c-text-muted);text-align:center;font-weight:600}.ap-score-input{text-align:center;width:4.5rem;padding:var(--space-1) var(--space-2);border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-bg);color:var(--c-text);font-size:var(--text-sm);transition:border-color var(--t-fast)}.ap-score-input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-accent) 15%, transparent);outline:none}.ap-remove-shooter{cursor:pointer;color:var(--c-status-error);font-size:var(--text-sm);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);opacity:.6;transition:opacity var(--t-fast), background-color var(--t-fast);background:0 0;border:none;line-height:1}.ap-remove-shooter:hover{opacity:1;background-color:var(--c-status-error-bg)}.admin-saved-list{margin:var(--space-3) 0 0;font-size:var(--text-sm);padding:0;list-style:none}.admin-saved-item{padding:var(--space-2) 0;border-bottom:1px solid var(--c-table-border);color:var(--c-text)}.admin-saved-item:last-child{border-bottom:none}.admin-saved-key{color:var(--c-heading);font-weight:600}.admin-publish-section{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--c-border)}.admin-publish-note{font-size:var(--text-sm);color:var(--c-text-muted);margin:0 0 var(--space-4);line-height:var(--leading)}.ap-date-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin:var(--space-3) 0 var(--space-4)}.ap-date-card--editing{border-color:var(--c-accent)}.ap-date-card__header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.ap-date-card__label{font-size:var(--text-sm);color:var(--c-heading);font-weight:600}.ap-date-card__body{align-items:center;gap:var(--space-3);display:flex}.ap-date-display{font-size:var(--text-base);color:var(--c-text);flex:1}.ap-date-display--cancelled{color:#dc2626;letter-spacing:var(--tracking-wide);flex:1;font-weight:700}.ap-date-edit-btn{align-items:center;gap:var(--space-1);font-size:var(--text-sm);white-space:nowrap;display:inline-flex}.ap-date-lock{align-items:center;gap:var(--space-1);font-size:var(--text-xs);color:var(--c-text-muted);cursor:default;display:inline-flex}.ap-date-warning{align-items:flex-start;gap:var(--space-2);background:color-mix(in srgb, var(--c-accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--c-accent) 30%, transparent);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--c-text);margin-bottom:var(--space-3);display:flex}.ap-date-warning svg{color:var(--c-accent);flex-shrink:0;margin-top:1px}.ap-date-edit-row{align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.ap-date-input{padding:var(--space-1) var(--space-2);border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-bg);color:var(--c-text);font-size:var(--text-sm);transition:border-color var(--t-fast)}.ap-date-input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-accent) 15%, transparent);outline:none}.ap-date-input:disabled{opacity:.45;cursor:not-allowed}.ap-cancelled-label{align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--c-text);cursor:pointer;display:flex}.ap-date-edit-actions{gap:var(--space-2);display:flex}.ap-date-badge{font-size:var(--text-xs);background:var(--c-accent);color:#fff;border-radius:var(--radius-sm);padding:2px 6px}.ap-date-badge--cancelled{background:#dc2626}.admin-divider{border:none;border-top:1px solid var(--c-border);margin:var(--space-6) 0}.map-container{text-align:center}#toast-container{bottom:var(--space-6);right:var(--space-6);gap:var(--space-3);z-index:200;pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-sm);pointer-events:auto;border-left:3px solid;width:max-content;max-width:420px;font-weight:500;animation:.3s cubic-bezier(.22,1,.36,1) forwards toast-in;display:flex}.toast__msg{flex:1}.toast__close{cursor:pointer;font-size:var(--text-xs);color:inherit;opacity:.55;transition:opacity var(--t-fast);background:0 0;border:none;flex-shrink:0;padding:0;line-height:1}.toast__close:hover{opacity:1}.toast--success{background:var(--c-status-success-bg);color:var(--c-status-success);border-color:var(--c-status-success)}.toast--error{background:var(--c-status-error-bg);color:var(--c-status-error);border-color:var(--c-status-error)}.toast--info{background:var(--c-status-info-bg);color:var(--c-status-info);border-color:var(--c-status-info)}.toast--warning{background:var(--c-status-warning-bg);color:var(--c-status-warning);border-color:var(--c-status-warning)}@keyframes toast-in{0%{opacity:0;transform:translateY(32px)translate(12px)}to{opacity:1;transform:translateY(0)translate(0)}}.toast--out{animation:.25s cubic-bezier(.4,0,1,1) forwards toast-out}@keyframes toast-out{0%{opacity:1;transform:translateY(0)translate(0)}to{opacity:0;transform:translateY(20px)translate(8px)}}.confirm-dialog{border-radius:var(--radius-lg);background:var(--c-surface);width:90%;max-width:440px;color:var(--c-text);border:none;padding:2rem;box-shadow:0 20px 60px #0000004d}.confirm-dialog::backdrop{background:#0000008c}.confirm-dialog__title{color:var(--c-status-error);margin:0 0 .75rem;font-size:1.25rem}.confirm-dialog__warning{color:var(--c-text-muted);margin:0 0 1rem;font-size:.9rem;line-height:1.5}.confirm-dialog__instruction{margin:0 0 .5rem;font-size:.9rem}.confirm-dialog__input{box-sizing:border-box;width:100%;margin-bottom:1.25rem}.confirm-dialog__actions{justify-content:flex-end;gap:.75rem;display:flex}.roster-dialog{border-radius:var(--radius-lg);background:var(--c-bg);width:90%;max-width:600px;color:var(--c-text);border:none;padding:2rem;box-shadow:0 8px 32px #0000002e}.roster-dialog::backdrop{background:#0000008c}.roster-dialog__header{margin-bottom:var(--space-4)}.roster-dialog__title{color:var(--c-heading);margin:0;font-size:1.1rem;font-weight:700}.roster-dialog__footer{margin-top:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-icon-btn--danger{color:var(--c-status-error)}.admin-icon-btn--danger:hover:not(:disabled){background:var(--c-status-error-bg)}select{appearance:none;background-color:var(--c-bg);background-image:var(--c-select-arrow);background-repeat:no-repeat;background-position:right var(--space-3) center;border:1px solid var(--c-border);border-radius:var(--radius-md);color:var(--c-text);cursor:pointer;font-family:inherit;font-size:var(--text-sm);padding:var(--space-2) calc(var(--space-3) + 22px) var(--space-2) var(--space-3);transition:border-color var(--t-fast), box-shadow var(--t-fast);background-size:10px;min-width:120px}select:hover{border-color:var(--c-text-muted)}select:focus{border-color:var(--c-accent);outline:none;box-shadow:0 0 0 3px #ff800026}.ann-section{margin-bottom:var(--space-4)}.ann-section__heading{font-size:var(--text-lg);color:var(--c-heading);margin:0 0 var(--space-3);font-weight:700}.ann-card-list{gap:var(--space-3);flex-direction:column;display:flex}.ann-card{background:var(--c-bg);border:1px solid var(--c-table-border);border-radius:var(--radius-md);padding:var(--space-4)}.ann-card__header{margin-bottom:var(--space-3)}.ann-card__title{font-size:var(--text-base);color:var(--c-heading);margin:0 0 4px;font-weight:600}.ann-card__meta{gap:var(--space-3);font-size:var(--text-xs);color:var(--c-text-muted);flex-wrap:wrap;display:flex}.ann-card__edited{font-style:italic}.ann-card__body{font-size:var(--text-sm);color:var(--c-text);line-height:1.6}.ann-card__body p{margin:0 0 .5rem}.ann-card__body p:last-child{margin-bottom:0}.ann-card__body ul,.ann-card__body ol{margin:.25rem 0 .5rem;padding-left:1.5rem}.ann-card__body strong{font-weight:600}.ann-card__body a{color:var(--c-accent)}.ann-card__body code{background:var(--c-table-border);border-radius:3px;padding:.1em .3em;font-size:.9em}.accolades-section{margin-bottom:var(--space-4)}.accolades-section__heading{font-size:var(--text-base);color:var(--c-heading);margin:0 0 var(--space-3);font-weight:700}.accolades-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.accolades-item{align-items:center;gap:var(--space-3);font-size:var(--text-sm);display:flex}.accolades-badge{padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;white-space:nowrap;font-weight:700;display:inline-block}.accolades-badge--50{background:var(--c-accent);color:var(--c-text-inverse)}.accolades-badge--25{background:var(--c-table-header-bg);color:var(--c-text-inverse)}.accolades-item__name{color:var(--c-text);font-weight:600}.accolades-item__team{color:var(--c-text-muted)}.hs-subtitle{font-size:var(--text-sm);color:var(--c-text-muted);margin:0 0 var(--space-4)}.home-standings-controls,.season-scorecards-controls,.admin-form-row{align-items:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.home-standings-controls label,.season-scorecards-controls label,.admin-form-row label{font-size:var(--text-sm);color:var(--c-text-muted);font-weight:500}input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.admin-tabs{border-bottom:1px solid var(--c-border);margin-bottom:var(--space-6);display:flex}.admin-tab-btn{padding:var(--space-3) var(--space-5);color:var(--c-text-muted);font-size:var(--text-sm);cursor:pointer;transition:color var(--t-fast), border-color var(--t-fast);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;font-weight:500}.admin-tab-btn:hover{color:var(--c-text)}.admin-tab-btn.is-active{color:var(--c-accent);border-bottom-color:var(--c-accent)}.admin-tab-panel--hidden,.admin-form-row--hidden{display:none}.admin-roster-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-sm)}.admin-roster-table th{background:var(--c-table-header-bg);color:var(--c-text-inverse);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:var(--space-2) var(--space-3);text-align:left;font-weight:600}.admin-roster-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--c-table-border)}.admin-roster-table tr:last-child td{border-bottom:none}.users-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-sm)}.users-table th{background:var(--c-table-header-bg);color:var(--c-text-inverse);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:var(--space-2) var(--space-3);text-align:left;font-weight:600}.users-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--c-table-border);vertical-align:middle}.users-table tr:last-child td{border-bottom:none}.users-table td:nth-child(4),.users-table td:nth-child(5){font-variant-numeric:tabular-nums;color:var(--c-text-muted);white-space:nowrap}.users-table__role-select{padding:var(--space-1) var(--space-2);border:1px solid var(--c-border);border-radius:var(--radius-sm);background:var(--c-bg);color:var(--c-text);font-size:var(--text-sm)}.users-table__role-select:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-accent) 15%, transparent);outline:none}.users-panel__status,.users-panel__empty,.users-panel__error{padding:var(--space-3) 0;color:var(--c-text-muted);font-size:var(--text-sm)}.users-panel__load-more{margin-top:var(--space-3)}input[type=text].admin-input,input[type=text].ap-shooter-name,input[type=text].ap-roster-name{padding:var(--space-2) var(--space-3);border:1px solid var(--c-border);border-radius:var(--radius-md);background:var(--c-bg);color:var(--c-text);font-size:var(--text-sm);width:100%;transition:border-color var(--t-fast)}input[type=text].admin-input:focus,input[type=text].ap-shooter-name:focus,input[type=text].ap-roster-name:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-accent) 15%, transparent);outline:none}.ac-wrapper{position:relative}.ac-dropdown{background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--radius-md);max-height:180px;box-shadow:var(--shadow-dropdown);z-index:400;margin-top:2px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.ac-dropdown--open{display:block}.ac-dropdown__item{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--c-text);cursor:pointer;transition:background var(--t-fast)}.ac-dropdown__item--active,.ac-dropdown__item:hover{background:var(--c-table-hover)}td:has(>.ac-wrapper){white-space:normal;overflow:visible!important}.admin-section{margin-bottom:var(--space-8)}.admin-section h3{margin-top:0;margin-bottom:var(--space-4);font-size:var(--text-base);color:var(--c-heading);font-weight:600}.admin-new-team-form{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;display:flex}.admin-new-team-form .admin-field{gap:var(--space-1);flex-direction:column;flex:1;min-width:160px;display:flex}.admin-new-team-form label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--c-text-muted);font-weight:600}.admin-team-heading{font-size:var(--text-base);color:var(--c-heading);margin:0 0 var(--space-3);font-weight:600}.admin-table-wrapper{border-radius:var(--radius-md);border:1px solid var(--c-table-border);margin-bottom:var(--space-4);overflow:visible}.admin-table-wrapper table thead th:first-child{border-top-left-radius:var(--radius-md)}.admin-table-wrapper table thead th:last-child{border-top-right-radius:var(--radius-md)}.admin-table-wrapper table tbody tr:last-child td:first-child{border-bottom-left-radius:var(--radius-md)}.admin-table-wrapper table tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius-md)}.roster-dialog .admin-table-wrapper{margin-bottom:0}.ann-editor{border:1px solid var(--c-table-border);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.ann-editor__field{margin-bottom:var(--space-3);flex-direction:column;gap:4px;display:flex}.ann-editor__field label{font-size:var(--text-sm);color:var(--c-heading);font-weight:500}.ann-editor__input,.ann-editor__textarea{border:1px solid var(--c-table-border);border-radius:var(--radius-md);width:100%;font-size:var(--text-sm);background:var(--c-bg);color:var(--c-text);box-sizing:border-box;padding:6px 10px}.ann-editor__textarea{resize:vertical;min-height:120px;font-family:monospace}.ann-editor__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.ann-admin-card{border:1px solid var(--c-table-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3)}.ann-admin-card__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:4px;margin-bottom:6px;display:flex}.ann-admin-card__title{color:var(--c-heading);font-weight:600}.ann-admin-card__meta{font-size:var(--text-xs);color:var(--c-text-muted)}.ann-admin-card__body{font-size:var(--text-sm);white-space:pre-wrap;background:var(--c-table-border);padding:var(--space-3);border-radius:var(--radius-md);margin-bottom:var(--space-3);font-family:monospace;overflow-x:auto}.ann-admin-card__actions{gap:var(--space-3);display:flex}.admin-team-table{table-layout:fixed;border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-sm)}.admin-team-table th{background:var(--c-table-header-bg);color:var(--c-text-inverse);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:var(--space-2) var(--space-3);text-align:left;font-weight:600}.admin-team-table th:last-child{width:196px}.admin-team-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--c-table-border);vertical-align:middle}.admin-team-table tr:last-child td{border-bottom:none}.admin-team-table td:not(.admin-team-actions){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-team-row--editing td input{box-sizing:border-box;width:100%;min-width:0}.admin-team-row--editing td{background:color-mix(in srgb, var(--c-accent) 6%, var(--c-bg));border-bottom-color:var(--c-accent)}.admin-team-empty{font-size:var(--text-sm);color:var(--c-text-muted);margin:var(--space-4) 0}.admin-team-actions{text-align:right;white-space:nowrap;padding-left:var(--space-5)}.admin-team-actions--edit{gap:var(--space-2);white-space:nowrap;justify-content:flex-end;align-items:center;display:flex}.admin-icon-btn{border-radius:var(--radius-md);width:2rem;height:2rem;color:var(--c-text-muted);cursor:pointer;transition:color var(--t-fast), background var(--t-fast), border-color var(--t-fast);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.admin-icon-btn:hover:not(:disabled){color:var(--c-accent);background:color-mix(in srgb, var(--c-accent) 10%, transparent);border-color:var(--c-accent)}.admin-icon-btn:disabled{opacity:.35;cursor:not-allowed}.admin-icon-btn svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);white-space:normal;text-align:center;background:var(--c-heading);width:max-content;max-width:320px;color:var(--c-bg);font-size:var(--text-xs);border-radius:var(--radius-md);pointer-events:none;opacity:0;transition:opacity var(--t-fast);z-index:300;padding:4px 10px;font-weight:500;line-height:1.3;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000002e}[data-tooltip]:before{content:"";border:4px solid #0000;border-top-color:var(--c-heading);pointer-events:none;opacity:0;transition:opacity var(--t-fast);z-index:300;position:absolute;bottom:calc(100% + 2px);left:50%;transform:translate(-50%)}[data-tooltip]:hover:after,[data-tooltip]:hover:before,[data-tooltip]:focus-visible:after,[data-tooltip]:focus-visible:before{opacity:1}.tooltip-icon{cursor:default;opacity:.55;vertical-align:middle;-webkit-user-select:none;user-select:none;border:1.5px solid;border-radius:50%;justify-content:center;align-items:center;width:1.1em;height:1.1em;margin-left:.35em;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.tooltip-icon:hover,.tooltip-icon:focus-visible{opacity:1}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--c-surface) 25%, var(--c-border) 50%, var(--c-surface) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer;display:block}.skeleton--sm{height:.75rem}.skeleton--md{height:1.1rem}.skeleton--lg{height:1.75rem}.skeleton--xl{height:2.5rem}.skeleton-group{gap:var(--space-2);flex-direction:column;display:flex}.skeleton-row{gap:var(--space-2);align-items:center;display:flex}.admin-add-team-btn{margin-top:var(--space-2)}.scoresheet-header{align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.scoresheet-heading{font-size:var(--text-xl);margin:0}.scoresheet-controls{align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.scoresheet-controls p{color:var(--c-text-muted);font-size:var(--text-sm);margin:0}.scoresheet-card{background:var(--c-surface);border-radius:var(--radius-md);padding:var(--space-6);margin-bottom:var(--space-8);box-shadow:0 1px 4px #00000014}.scoresheet-team-name{margin:0 0 var(--space-4) 0;color:var(--c-heading)}.scoresheet-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.scoresheet-table th{background:var(--c-table-header-bg);color:var(--c-text-inverse);text-transform:uppercase;font-size:var(--text-xs,.75rem);letter-spacing:.05em;padding:var(--space-2) var(--space-3);text-align:left;-webkit-print-color-adjust:exact;print-color-adjust:exact}.scoresheet-table td{padding:2px var(--space-3);border-bottom:1px solid var(--c-table-border)}.scoresheet-table td.fill{border:1px solid var(--c-border);min-width:60px}.scoresheet-table th:nth-child(2),.scoresheet-table td:nth-child(2){text-align:center}.scoresheet-table td.scoresheet-dummy-note{font-size:var(--text-sm,.875rem);color:var(--c-text-muted);vertical-align:middle;padding:var(--space-2) var(--space-3);font-style:italic;line-height:1.4}.scoresheet-season-label{font-size:var(--text-sm);color:var(--c-text-muted)}.scoresheet-date-label{font-size:var(--text-sm);color:var(--c-text-muted);margin:0}.scoresheet-date-cancelled{color:#dc2626;letter-spacing:var(--tracking-wide);font-weight:700}.scoresheet-print-header,.scoresheet-print-footer,#sg-cards{display:none}.yardage-section{margin-bottom:var(--space-8)}.yardage-controls{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column;display:flex}.yardage-heading{font-size:var(--text-xl);margin:0}.yardage-card{background:var(--c-surface);border-radius:var(--radius-md);padding:var(--space-6);box-shadow:0 1px 4px #00000014}.yardage-instructions{margin:0 0 var(--space-3)}.yardage-steps{margin:0 0 var(--space-4);padding-left:var(--space-6)}.yardage-steps li{margin-bottom:var(--space-1)}.yardage-table{border-collapse:collapse;width:100%;max-width:28rem;font-size:var(--text-sm);margin:0 auto}.yardage-table th{background:var(--c-table-header-bg);color:var(--c-text-inverse);text-transform:uppercase;padding:var(--space-2) var(--space-3);text-align:center;-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:.75rem}.yardage-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--c-table-border);text-align:center}@media print{.site-nav,.footer,#toast-container,.home-standings-controls,.season-scorecards-controls{display:none}.main{max-width:100%;padding:0}body{color:#000;background:#fff;font-size:11pt}.standing-table,.scorecard-tables{page-break-inside:avoid;font-size:9pt}.standing-table th,.scorecard-tables th{-webkit-print-color-adjust:exact;print-color-adjust:exact;color:#fff!important;background:#000!important}.collapsible~.scorecard{max-height:none!important;overflow:visible!important}body.print-scoresheets yardage-table,.scoresheet-header,body.print-yardage .downloads-scoresheet-section,.yardage-controls{display:none}.yardage-section{flex-direction:column;align-items:center;display:flex}.yardage-card{width:100%;max-width:none;box-shadow:none}.yardage-table th{color:#fff!important;background:#000!important}.scoresheet-controls{display:none}.scoresheet-card{page-break-after:always;box-shadow:none}.scoresheet-table td,.scoresheet-table td.fill{vertical-align:middle;height:11pt;padding:1pt 6pt;border:1px solid #000!important}.scoresheet-table td.fill{min-width:40pt}.scoresheet-table td.scoresheet-dummy-note{vertical-align:middle;height:auto;padding:5pt 8pt;font-size:9pt;font-style:italic}#sg-cards,.scoresheet-print-header,.scoresheet-print-footer{display:block}.scoresheet-league-title{text-align:center;margin:0 0 4pt;font-size:18pt;font-weight:700}.scoresheet-week-label{text-align:center;margin:0 0 12pt;font-size:11pt}.scoresheet-print-footer{color:#555;border-top:1px solid #ccc;margin-top:16pt;padding-top:6pt;font-size:8pt}}.season-calendar{margin-bottom:var(--space-8)}.calendar-months{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,260px));justify-content:center;display:grid}.calendar-month{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--radius-md);padding:var(--space-3)}.calendar-month-title{font-size:var(--text-base);color:var(--c-heading);margin-bottom:var(--space-2);font-weight:600}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.calendar-day-header{text-align:center;color:var(--c-text-muted);padding-bottom:2px;font-size:.7rem;font-weight:600}.calendar-cell{aspect-ratio:1;border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--c-text);justify-content:center;align-items:center;display:flex}.calendar-cell--shoot{background:var(--c-table-header-bg);color:#fff;font-weight:600}.calendar-cell--practice{background:var(--c-accent);color:#fff;font-weight:600}.calendar-cell--holiday{color:#fff;background:#dc2626;font-weight:600}.calendar-cell--cancelled{color:var(--c-text-muted);text-decoration:line-through}.calendar-cell--today{outline:2px solid var(--c-accent);outline-offset:-2px}@media (prefers-color-scheme:dark){.calendar-cell--shoot{background:#1e5f8e}}.calendar-legend{gap:var(--space-4);margin-top:var(--space-4);font-size:var(--text-sm);color:var(--c-text-muted);flex-wrap:wrap;align-items:center;display:flex}.calendar-legend-item{align-items:center;gap:var(--space-1);display:flex}.calendar-legend-swatch{border-radius:var(--radius-sm);width:14px;height:14px}
