:root{--ocean: #0047ab;--ocean-light: #1a6bc7;--ocean-dark: #003380;--sunset: #000000;--sunset-light: #1a1a1a;--sand: #f5f7fa;--sand-dark: #e8ecf1;--text: #111827;--text-muted: #4b5563;--bg: #f5f7fa;--surface: #ffffff;--surface-raised: #f0f2f5;--border: #e2e5ea;--teal: #0047ab;--teal-dim: #003380;--amber: #000000;--text-admin: #111827;--text-admin-muted: #6b7280;--radius: 6px;--radius-lg: 12px;--font: system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, monospace}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font);font-size:16px;-webkit-text-size-adjust:100%}body{line-height:1.6}img,svg{display:block;max-width:100%}a{color:inherit}button{cursor:pointer;font:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}body.public{background:var(--sand);color:var(--text)}.public-header{background:var(--ocean);color:#fff;padding:0 1.5rem}.public-header nav{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:1rem;height:60px}.public-header .logo{font-weight:700;font-size:1.1rem;text-decoration:none;color:#fff;flex:1}.public-header .season{font-size:.85rem;opacity:.8}.public-header .btn-cta{background:var(--sunset);color:#fff;text-decoration:none;padding:.4rem 1rem;border-radius:var(--radius);font-weight:600;font-size:.9rem}.public-header .btn-cta:hover{background:var(--sunset-light)}.public-main{max-width:1100px;margin:0 auto;padding:2rem 1.5rem}.public-footer{background:var(--text);color:#ccc;text-align:center;padding:2rem 1.5rem;font-size:.85rem;margin-top:4rem}.public-footer a{color:var(--ocean-light);text-decoration:none}.public-footer a:hover{text-decoration:underline}.public-footer p+p{margin-top:.4rem}body.admin{background:var(--bg);color:var(--text-admin)}.admin-header{background:var(--surface);border-bottom:1px solid var(--border);padding:0 1.5rem;height:56px;display:flex;align-items:center;gap:1rem;position:sticky;top:0;z-index:10}.admin-header .logo{font-weight:700;font-size:1rem;text-decoration:none;color:var(--teal);flex:1}.admin-header .role-badge{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .5rem;border-radius:var(--radius)}.admin-header .role-badge[data-role=master_admin]{background:var(--amber);color:#fff}.admin-header .role-badge[data-role=coach]{background:var(--teal-dim);color:#fff}.admin-header .user-name{font-size:.85rem;color:var(--text-admin-muted)}.admin-header .btn-signout{background:none;border:1px solid var(--border);color:var(--text-admin-muted);padding:.25rem .75rem;border-radius:var(--radius);font-size:.8rem}.admin-header .btn-signout:hover{border-color:var(--text-admin-muted);color:var(--text-admin)}.admin-body{display:flex;min-height:calc(100vh - 56px)}.admin-sidebar{width:200px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:1.5rem 0}.admin-sidebar a{display:block;padding:.5rem 1.5rem;text-decoration:none;color:var(--text-admin-muted);font-size:.9rem}.admin-sidebar a:hover,.admin-sidebar a[aria-current=page]{color:var(--teal);background:var(--surface-raised)}.admin-main{flex:1;padding:2rem;min-width:0}.admin-main h1{font-size:1.4rem;font-weight:600;color:var(--text-admin);margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.35rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:var(--radius);font:inherit;font-size:.95rem;background:var(--surface);color:var(--text-admin)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:2px solid var(--teal);outline-offset:-1px;border-color:transparent}body.public .form-group input,body.public .form-group select,body.public .form-group textarea{background:#fff;color:var(--text);border-color:#c8c4bf}body.public .form-group input:focus,body.public .form-group select:focus,body.public .form-group textarea:focus{outline-color:var(--ocean)}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1.25rem;border-radius:var(--radius);font-weight:600;font-size:.9rem;text-decoration:none;border:none}.btn-primary{background:var(--ocean);color:#fff}.btn-primary:hover{background:var(--ocean-dark)}body.admin .btn-primary{background:var(--teal);color:#fff}body.admin .btn-primary:hover{background:var(--teal-dim)}.btn-secondary{background:transparent;color:var(--ocean);border:1px solid var(--ocean)}body.admin .btn-secondary{color:var(--teal);border-color:var(--teal)}.alert{padding:.75rem 1rem;border-radius:var(--radius);font-size:.9rem;margin-bottom:1rem}.alert-error{background:#fef2f2;color:#b91c1c;border:1px solid #fca5a5}.alert-success{background:#f0fdf4;color:#15803d;border:1px solid #86efac}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--border);color:var(--text-admin-muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:.6rem .75rem;border-bottom:1px solid var(--border)}.data-table tr:hover td{background:var(--surface-raised)}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.status-new{background:#dbeafe;color:#1d4ed8}.status-contacted{background:#e0f2fe;color:#0369a1}.status-evaluating{background:#ede9fe;color:#6d28d9}.status-invited{background:#d1fae5;color:#065f46}.status-rostered{background:#dcfce7;color:#15803d}.status-passed{background:#fee2e2;color:#b91c1c}.status-declined{background:#fef9c3;color:#854d0e}.blog-editor-wrap{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.editor-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:.5rem;background:var(--surface-raised);border-bottom:1px solid var(--border)}.tbtn{background:none;border:1px solid transparent;border-radius:4px;padding:.25rem .5rem;font-size:.85rem;color:var(--text-admin);cursor:pointer;min-width:32px}.tbtn:hover{background:var(--surface);border-color:var(--border)}.tsep{display:inline-block;width:1px;background:var(--border);margin:.2rem .25rem;align-self:stretch}.editor-canvas{min-height:320px;padding:1rem;background:var(--surface);color:var(--text-admin);font-size:.95rem;line-height:1.7;cursor:text}.editor-canvas:focus-within{outline:2px solid var(--teal);outline-offset:-2px}.editor-canvas .ProseMirror{outline:none;min-height:280px}.editor-canvas .ProseMirror p{margin-bottom:.75rem}.editor-canvas .ProseMirror h2{font-size:1.3rem;font-weight:700;margin:1.25rem 0 .5rem}.editor-canvas .ProseMirror h3{font-size:1.1rem;font-weight:700;margin:1rem 0 .4rem}.editor-canvas .ProseMirror ul,.editor-canvas .ProseMirror ol{padding-left:1.5rem;margin-bottom:.75rem}.editor-canvas .ProseMirror li{margin-bottom:.25rem}.editor-canvas .ProseMirror blockquote{border-left:3px solid var(--teal);padding-left:1rem;color:var(--text-admin-muted);margin:.75rem 0}.editor-canvas .ProseMirror hr{border:none;border-top:1px solid var(--border);margin:1.5rem 0}.editor-canvas .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--text-admin-muted);pointer-events:none;float:left;height:0}.prose{line-height:1.75;color:var(--text);font-size:1rem}.prose p{margin-bottom:1rem}.prose h2{font-size:1.4rem;font-weight:700;color:var(--ocean);margin:1.75rem 0 .6rem}.prose h3{font-size:1.15rem;font-weight:700;color:var(--text);margin:1.5rem 0 .5rem}.prose ul,.prose ol{padding-left:1.5rem;margin-bottom:1rem}.prose li{margin-bottom:.35rem}.prose blockquote{border-left:3px solid var(--ocean);padding-left:1.25rem;color:var(--text-muted);font-style:italic;margin:1.25rem 0}.prose hr{border:none;border-top:1px solid var(--sand-dark);margin:2rem 0}.prose strong{font-weight:700}.prose em{font-style:italic}.prose s{text-decoration:line-through}
