:root{--bg:#F4F7F5;--bg-mesh:radial-gradient(1200px circle at 10% -10%,rgba(21,128,61,.06),transparent 55%),radial-gradient(900px circle at 100% 0%,rgba(37,99,235,.05),transparent 50%);--surface:#FFFFFF;--surface-raised:#F8FAF9;--surface-glass:rgba(255,255,255,.72);--border:#E4E9E6;--border-strong:#CBD5D1;--text:#0B1210;--text-muted:#64756E;--accent:#15803D;--accent-2:#22C55E;--accent-gradient:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);--accent-hover:#16913F;--accent-soft:rgba(21,128,61,.10);--accent-soft-border:rgba(21,128,61,.30);--on-accent:#fff;--warn:#B45309;--warn-soft:rgba(217,119,6,.10);--warn-soft-border:rgba(217,119,6,.30);--danger:#DC2626;--danger-soft:rgba(220,38,38,.10);--danger-soft-border:rgba(220,38,38,.30);--blue:#2563EB;--blue-soft:rgba(37,99,235,.08);--blue-soft-border:rgba(37,99,235,.25);--radius:12px;--radius-sm:8px;--shadow-xs:0 1px 2px rgba(15,23,20,.04);--shadow:0 1px 2px rgba(15,23,20,.04),0 8px 24px -8px rgba(15,23,20,.10);--shadow-lg:0 4px 12px rgba(15,23,20,.06),0 20px 40px -16px rgba(15,23,20,.16);--ease-spring:cubic-bezier(.22,1,.36,1);--font-ui:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-heading:"Oswald",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg-mesh),var(--bg);background-attachment:fixed;color:var(--text);font-family:var(--font-ui);line-height:1.5;overflow-x:hidden}html{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px}::-webkit-scrollbar-button{display:none;width:0;height:0}.scroll-clean{scrollbar-width:none;-ms-overflow-style:none}.scroll-clean::-webkit-scrollbar{display:none}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}.brand,h1,h2,h3{font-family:var(--font-heading);letter-spacing:.02em}::selection{background:var(--accent-soft);color:var(--accent)}.container{max-width:640px;margin:0 auto;padding:0 20px}@media (min-width:768px){.container{max-width:900px;padding:0 32px}}@media (min-width:1024px){.container{max-width:1180px;padding:0 40px}}@media (min-width:1440px){.container{max-width:1320px}}.top-nav{border-bottom:1px solid var(--border);padding:14px 0;background:var(--surface-glass);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);position:-webkit-sticky;position:sticky;top:0;z-index:20}.top-nav:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--accent-gradient);opacity:.5}.top-nav .container{display:flex;align-items:center;justify-content:space-between;position:relative}.brand{font-weight:700;font-size:16px;background:var(--accent-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.brand .accent{-webkit-text-fill-color:initial;color:var(--text);background:none}.page{padding:40px 0 80px;animation:fadeInUp .5s var(--ease-spring) both}.page-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:28px;gap:16px;flex-wrap:wrap}.page-header h1{font-size:23px;font-weight:700;letter-spacing:.01em}.page-header p.subtitle{margin-top:4px}.btn,.page-header p.subtitle{color:var(--text-muted);font-size:13px}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:0;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-family:var(--font-heading);font-weight:600;text-transform:uppercase;letter-spacing:.03em;text-decoration:none;position:relative;overflow:hidden;transition:transform .2s var(--ease-spring),background .2s ease,box-shadow .2s ease,border-color .2s ease,color .2s ease;-webkit-clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);clip-path:polygon(8px 0,100% 0,calc(100% - 8px) 100%,0 100%);box-shadow:var(--shadow-xs)}.btn:hover{border-color:var(--border-strong);color:var(--text);transform:translateY(-1px);box-shadow:var(--shadow)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent-gradient);border-color:var(--accent);color:var(--on-accent);font-weight:600;box-shadow:0 4px 14px -2px var(--accent-soft-border)}.btn-primary:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.35) 45%,transparent 60%);transform:translateX(-100%);transition:transform .6s ease}.btn-primary:hover:after{transform:translateX(100%)}.btn-primary:hover{box-shadow:0 6px 20px -2px var(--accent-soft-border);transform:translateY(-2px);color:var(--on-accent);border-color:var(--accent)}.btn-full{width:100%;justify-content:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);transition:box-shadow .3s var(--ease-spring),border-color .3s ease,transform .3s var(--ease-spring)}.card+.card{margin-top:12px}.stat-tile{display:flex;flex-direction:column;gap:2px}.stat-tile .stat-value{font-family:var(--font-heading);font-size:26px;font-weight:700;letter-spacing:-.01em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-tile .stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.list-row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--border);gap:12px;transition:padding-left .2s var(--ease-spring),background .2s ease}.list-row:hover{padding-left:4px}.list-row:last-child{border-bottom:none}.list-row-main{min-width:0}.list-row-title{font-weight:600;font-size:14.5px}.list-row-meta{font-size:12.5px;margin-top:2px;font-family:var(--font-mono)}.chip,.list-row-meta{color:var(--text-muted)}.chip{font-family:var(--font-heading);font-size:10.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;padding:3px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-raised);white-space:nowrap;transition:transform .15s var(--ease-spring)}.chip-club_admin{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-soft-border)}.chip-staff{color:var(--text-muted)}.chip-coach{color:var(--warn);background:var(--warn-soft);border-color:var(--warn-soft-border)}.chip-team_manager{color:var(--blue);background:var(--blue-soft);border-color:var(--blue-soft-border)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:600;margin-bottom:6px;color:var(--text-muted)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-raised);color:var(--text);font-size:14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 4px var(--accent-soft)}.form-row{display:flex;gap:10px;align-items:flex-end}.form-row .form-group{flex:1 1;margin-bottom:0}.error-text{color:var(--danger);font-size:13px;margin-top:10px}.empty-state{text-align:center;padding:48px 20px;color:var(--text-muted)}.empty-state p{font-size:14px;margin-bottom:16px}.section-label{font-family:var(--font-heading);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:10px;display:flex;align-items:center;gap:8px}.section-label:before{content:"";width:3px;height:12px;border-radius:2px;background:var(--accent-gradient);display:inline-block}.back-link{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);font-size:13px;margin-bottom:16px;text-decoration:none;font-weight:500;transition:gap .2s var(--ease-spring),color .2s ease}.back-link:hover{color:var(--accent);gap:7px}.progress-track{height:6px;background:var(--border)}.progress-fill,.progress-track{border-radius:999px;overflow:hidden;position:relative}.progress-fill{height:100%;background:var(--accent-gradient);transition:width .6s var(--ease-spring)}.progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 2s ease-in-out infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}