:root{color-scheme:light;--bg: #edf3ff;--bg-accent: #d8e6ff;--ink: #0b214f;--muted: #3d5487;--primary: #003da5;--primary-dark: #002d7a;--accent: #ffc72c;--card: #f7fbff;--ring: #ffc72c;font-family:Sora,Avenir Next,Trebuchet MS,sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,var(--bg-accent),var(--bg));color:var(--ink)}.page{min-height:100vh;padding:2.5rem 6vw 6rem;display:grid;gap:4rem}.data-page{padding:1.2rem 6vw 3rem;display:grid;gap:1rem;align-content:start;grid-auto-rows:max-content}.data-page .top-nav{margin-bottom:0}.data-table-page{gap:.8rem}.data-table-page .table-toolbar{margin-top:-.4rem;margin-bottom:0}.data-table-page .table-section{margin-top:-.2rem}.top-nav{display:grid;grid-template-columns:1.2fr auto auto;gap:1.5rem;align-items:center}.brand{display:flex;gap:1rem;align-items:center;text-decoration:none;color:inherit}.brand-mark-link{text-decoration:none;color:inherit}.brand-mark{width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#00338d,#0057d9);color:#fff;display:grid;place-items:center;font-weight:700;letter-spacing:.1em}.brand-name{margin:0;font-weight:600}.brand-tagline{margin:.2rem 0 0;color:var(--muted);font-size:.85rem}.nav-links{display:flex;gap:1.5rem}.nav-links a{color:var(--ink);text-decoration:none;font-weight:600}.nav-links.muted{color:var(--muted);font-weight:500}.user-menu{position:relative}.user-toggle{background:transparent;border:none;font:inherit;color:inherit;cursor:pointer;padding:0}.user-dropdown{position:absolute;right:0;top:2.2rem;background:#fff;border:1px solid rgba(27,26,23,.1);border-radius:12px;padding:.4rem;min-width:160px;box-shadow:0 12px 24px #1b1a171f;display:none;z-index:10}.user-dropdown.open{display:grid}.user-dropdown a,.user-dropdown button{text-decoration:none;color:var(--ink);background:none;border:none;font:inherit;text-align:left;padding:.5rem .7rem;border-radius:8px;cursor:pointer}.user-dropdown a:hover,.user-dropdown button:hover{background:#1b1a170f}.link-button{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;height:44px}.hero{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:2.5rem;align-items:center}.hero-text{display:grid;gap:1.5rem}.hero-panel{display:grid;gap:1.2rem}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.75rem;color:var(--muted);margin:0}h1{font-size:clamp(2.5rem,4vw,3.8rem);margin:0}.lede{font-size:1.1rem;line-height:1.6;color:var(--muted);margin:0}.cta-row{display:flex;flex-wrap:wrap;gap:1rem}.status{font-size:.9rem;color:var(--muted);margin:.5rem 0 0}button{font:inherit;padding:.85rem 1.6rem;border-radius:999px;border:2px solid transparent;cursor:pointer}.primary{background:var(--primary);color:#fff;box-shadow:0 12px 30px #003da54d;min-height:46px}.primary:hover{background:var(--primary-dark)}.ghost{background:transparent;border-color:#18428f;color:var(--ink);min-height:46px}.panel-card{background:#fff;border-radius:22px;padding:1.8rem;border:1px solid rgba(27,26,23,.08);box-shadow:0 20px 40px #152c6224;display:grid;gap:.75rem}.panel-card.alt{background:var(--card);border:1px solid rgba(27,26,23,.06)}.panel-title{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;color:var(--muted);margin:0}.panel-meta{margin:0;color:var(--muted)}.panel-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;font-weight:600}.panel-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.login-page{padding:1.2rem 6vw 3rem;gap:1rem;align-content:start;grid-auto-rows:max-content}.login-card{background:#fff;border-radius:24px;padding:2rem;border:1px solid rgba(27,26,23,.08);box-shadow:0 20px 40px #1b1a171f;display:grid;gap:1.5rem;max-width:680px}.login-form{display:grid;gap:1rem}.login-form label{display:grid;gap:.4rem;font-weight:600}.login-form input{border-radius:12px;border:1px solid rgba(27,26,23,.2);padding:.75rem .9rem;font:inherit;width:100%;height:46px}.login-form select{border-radius:12px;border:1px solid rgba(27,26,23,.2);padding:.7rem .9rem;font:inherit;width:100%;height:46px;background:#fff}.login-form select[multiple]{height:auto;min-height:120px}.login-form textarea{border-radius:12px;border:1px solid rgba(27,26,23,.2);padding:.75rem .9rem;font:inherit;width:100%;resize:vertical}.checkbox-row{display:flex;align-items:center;justify-content:flex-start;gap:.6rem;font-weight:600;padding:.4rem .2rem}.checkbox-inline{margin-top:1.6rem}.checkbox-plain{padding:0;border:none;background:transparent}.checkbox-row input{width:18px;height:18px;margin:0;accent-color:var(--primary);flex:0 0 auto}.error{color:#b2362a;margin:0}.app-shell{gap:3rem}.club-dashboard{gap:1.6rem;align-content:start;grid-auto-rows:max-content}.data-page.app-shell{gap:1rem}.app-hero{display:grid;gap:.8rem;max-width:600px}.app-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.2rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.stat-card{background:#fff;border-radius:18px;padding:1.2rem;border:1px solid rgba(27,26,23,.08);box-shadow:0 12px 24px #1b1a1714;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease}.stat-card p{margin:0;color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}.stat-card h3{margin:.5rem 0 0;font-size:1.6rem}.stat-card:hover{transform:translateY(-2px);box-shadow:0 18px 30px #1b1a1724}.stat-card.grouped{display:grid;gap:.35rem}.stat-breakdown{display:flex;gap:.65rem;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.compact-stats-grid{gap:.7rem}.compact-stats-grid .stat-card.compact{padding:.85rem .95rem}.compact-stats-grid .stat-card.compact p{font-size:.78rem;margin:0}.compact-stats-grid .stat-card.compact h3{margin:.2rem 0 0;font-size:1.35rem}.stat-card-clickable{cursor:pointer}.superuser-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;align-items:start}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;align-items:start}.form-row.align-end{align-items:end}.form-row label{min-width:0}.form-divider{font-weight:600;color:var(--muted);border-top:1px solid rgba(27,26,23,.1);padding-top:1rem}.table-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:.75rem;margin-top:0}.table-section.single-column{grid-template-columns:minmax(0,1fr)}.table-toolbar{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;margin-top:0;margin-bottom:0}.data-page .table-toolbar{margin-top:-.4rem}.table-toolbar h1{margin:0}.table-filters{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.table-filters input,.table-filters select{border-radius:12px;border:1px solid rgba(27,26,23,.2);padding:.65rem .9rem;font:inherit;height:44px;background:#fff}.table-card{background:#fff;border-radius:20px;padding:1.5rem;border:1px solid rgba(27,26,23,.08);box-shadow:0 12px 24px #152c621f;overflow:hidden}.col-number{width:56px;text-align:center}.table-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.inline-edit{margin:0}.inline-edit input{width:100%;height:38px;padding:.4rem .6rem;border-radius:10px;border:1px solid rgba(27,26,23,.2);font:inherit}.inline-actions{display:flex;gap:.6rem;margin-top:.4rem}.toolbar-actions{display:flex;gap:.6rem;flex-wrap:wrap}.quick-links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9rem}.quick-link-card{display:grid;gap:.4rem;text-decoration:none;color:inherit;background:linear-gradient(135deg,#152c6214,#152c6205);border:1px solid rgba(21,44,98,.2);border-radius:14px;padding:.95rem 1rem;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.quick-link-card h3{margin:0;font-size:1rem}.quick-link-card p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.35}.quick-link-card:hover{transform:translateY(-1px);box-shadow:0 10px 24px #152c621f;border-color:#152c6259}.ghost.active{background:var(--ink);color:#fff;border-color:var(--ink)}.table-card table{width:100%;border-collapse:collapse;font-size:.95rem;table-layout:fixed}.table-card th,.table-card td{text-align:left;padding:.6rem 0;border-bottom:1px solid rgba(27,26,23,.08);word-break:break-word}.table-card th{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.table-card td{vertical-align:top;line-height:1.4;padding-top:.8rem;padding-bottom:.8rem}.table-card td+td{padding-left:.6rem}.clickable-row{cursor:pointer}.clickable-row:hover{background:#1b1a170d}.public-section,.feature-section{display:grid;gap:1.5rem}.section-header{display:grid;gap:.4rem;max-width:600px}.section-header p{margin:0;color:var(--muted)}.link-grid,.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1.25rem}.link-card,.feature-card{background:var(--card);border:1px solid rgba(27,26,23,.08);padding:1.5rem;border-radius:20px;box-shadow:0 10px 24px #1b1a1714}.link-card h3,.feature-card h3{margin-top:0;margin-bottom:.5rem}.text-link{border:none;background:none;padding:0;font-weight:600;color:var(--accent);cursor:pointer}.feature-heading{display:grid;gap:.4rem;max-width:520px}.contact-banner{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;justify-content:space-between;padding:2rem;border-radius:24px;background:#fff;border:1px solid rgba(27,26,23,.08);box-shadow:0 18px 40px #1b1a171a}@media (max-width: 600px){.page{padding:2rem 8vw 4rem}.cta-row{flex-direction:column;align-items:stretch}.top-nav{grid-template-columns:1fr;justify-items:start}.nav-links{flex-wrap:wrap}}.panel-card{align-self:start}.panel-toggle{border:none;background:transparent;padding:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;font:inherit;cursor:pointer}.panel-toggle span{color:var(--accent);font-weight:600}.panel-toggle h2{margin:0}.panel-toggle p{margin:.4rem 0 0;color:var(--muted);font-size:.95rem}.public-site{gap:2rem;align-content:start;grid-auto-rows:max-content}.public-nav{grid-template-columns:1.2fr auto auto}.public-nav .nav-links{flex-wrap:wrap}.active-link{color:var(--primary);border-bottom:2px solid var(--accent);padding-bottom:.2rem}.home-hero .panel-card h2,.home-hero .panel-card p{margin:0}.fields-map-image{display:block;width:100%;height:auto;border-radius:12px}.field-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width: 900px){.field-info-grid{grid-template-columns:minmax(0,1fr)}}
