@import url("https://fonts.googleapis.com/css2?family=Great+Vibes&family=Playfair+Display:wght@400;500;600;700;800&family=Montserrat:wght@400;500;600;700&display=swap");*{margin:0;padding:0;box-sizing:border-box}:root{--primary:#0b1f3a;--secondary:#9ec5fe;--accent:#f2c94c;--dark:#102033;--light:#eef6ff;--surface:#ffffff;--danger:#c0392b;--danger-hover:#d85b4f;--border-radius:10px;--transition:0.3s ease}body{font-family:Playfair Display,Georgia,Times New Roman,serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#eaf4ff;color:var(--dark);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:Playfair Display,Georgia,serif;font-weight:700}a,button,input,li,p,span{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.navbar{background:var(--primary);padding:0;box-shadow:0 2px 12px rgba(0,0,0,.18);position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-container{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.nav-logo{display:inline-flex;align-items:center;gap:.6rem;font-family:Great Vibes,Brush Script MT,cursive;font-size:2rem;font-weight:400;letter-spacing:0;color:white;text-decoration:none;transition:transform var(--transition)}.nav-logo:hover{transform:scale(1.04)}.logo-icon{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}.nav-menu{list-style:none;gap:2rem}.nav-menu,.nav-menu .nav-item{display:flex;align-items:center}.nav-link{font-family:Playfair Display,Georgia,serif;color:white;text-decoration:none;font-weight:500;transition:opacity var(--transition)}.nav-link-with-indicator{display:inline-flex;align-items:center;gap:.4rem}.nav-notification-indicator{min-width:1.2rem;height:1.2rem;padding:0 .2rem;font-size:.72rem}.mobile-menu-notification-indicator,.nav-notification-indicator{border-radius:999px;background:var(--danger);color:white;font-weight:700;display:inline-flex;align-items:center;justify-content:center;line-height:1}.mobile-menu-notification-indicator{position:absolute;top:-.3rem;right:-.3rem;min-width:1rem;height:1rem;padding:0 .15rem;font-size:.6rem;border:1px solid var(--bg-primary)}.mobile-menu-toggle,.nav-account{position:relative}.nav-account{display:flex;align-items:center}.profile-avatar{width:40px;height:40px;padding:0;line-height:1;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:2px solid rgba(255,255,255,.7);background:rgba(255,255,255,.18);color:white;font-weight:700;cursor:pointer;transition:background var(--transition),transform var(--transition)}.profile-avatar:hover{background:rgba(255,255,255,.28);transform:translateY(-1px)}.profile-dropdown{position:absolute;right:0;top:calc(100% + .5rem);min-width:160px;background:white;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.16);padding:.4rem;display:flex;flex-direction:column;z-index:2000}.profile-dropdown-item{font-family:Playfair Display,Georgia,serif;border:none;background:transparent;color:var(--dark);text-align:left;padding:.6rem .75rem;border-radius:8px;text-decoration:none;cursor:pointer;font-size:.95rem}.profile-dropdown-item:hover{background:#eef6ff}.logout-dropdown{color:#9d1a1a}.mobile-menu-toggle{display:none;background:transparent;border:1px solid rgba(255,255,255,.8);color:white;border-radius:8px;padding:.45rem .75rem;font-size:1.1rem;line-height:1;cursor:pointer}@media (max-width:768px){.mobile-menu-toggle{display:block}.nav-menu{display:none;flex-direction:column;width:100%;gap:.8rem;padding:.75rem 0;background:rgba(255,255,255,.06);border-radius:8px;margin-top:.5rem}.nav-menu.open{display:flex}.nav-menu .nav-item{width:100%}.nav-account{display:flex;justify-content:center}.profile-dropdown{width:100%;position:static;margin-top:.5rem}.admin-link,.logout-btn,.nav-link{width:100%;padding:.75rem 1rem;border-radius:8px;font-size:1rem;text-align:center}.nav-link-with-indicator{justify-content:center}.admin-link:hover,.logout-btn:hover,.nav-link:hover{background:rgba(255,255,255,.18)}.nav-user{width:100%;text-align:center;font-size:.95rem;padding:.5rem 0;background:rgba(255,255,255,.05);border-radius:8px}.navbar{position:-webkit-sticky;position:sticky;top:0;z-index:10000}.nav-container{flex-direction:column;align-items:stretch;gap:.5rem}}.nav-link:hover{opacity:.8}.nav-user{color:white;font-weight:500;font-size:.9rem}.logout-btn{font-family:Playfair Display,Georgia,serif;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:.5rem 1rem;cursor:pointer;transition:background var(--transition)}.logout-btn:hover{background:rgba(255,255,255,.3)}.admin-link{font-family:Playfair Display,Georgia,serif;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:.5rem 1rem}.main-content{padding:2rem}.invite-notice{background-color:var(--accent);color:var(--dark);padding:1rem;border-radius:var(--border-radius);margin:1.5rem 0;text-align:center;border:2px solid var(--primary)}.invite-notice p{margin:.5rem 0;font-size:.9rem}.invite-notice strong{color:var(--primary)}.hero h1{font-size:3rem;margin-bottom:.35rem;color:var(--dark);letter-spacing:.2em}.hero h1,.hero-subtitle{font-family:Playfair Display,Georgia,serif;text-transform:uppercase}.hero-subtitle{font-size:1rem;color:#405a78;margin-bottom:1rem;letter-spacing:.08em;font-weight:700}.hero p{font-size:1.1rem;color:#666;margin-bottom:2rem}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{font-size:1rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(11,31,58,.3)}.btn-secondary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(11,31,58,.25)}.btn-danger{background-color:var(--danger);color:white}.btn-danger:hover{background-color:var(--danger-hover);transform:translateY(-2px);box-shadow:0 4px 12px rgba(192,57,43,.35)}.btn:disabled{opacity:.6;cursor:not-allowed}.create-schedule-page{max-width:1040px;margin:0 auto;padding:2rem 0}.create-schedule-page .page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:2rem}.create-schedule-page .page-header h1{margin-bottom:.6rem;font-size:clamp(2rem,2.4vw,2.6rem);letter-spacing:.02em}.create-schedule-page .page-header p{max-width:44rem;color:#405a78;line-height:1.8;font-size:1rem}.schedule-form{background:rgba(255,255,255,.96);border:1px solid rgba(11,31,58,.14);border-radius:var(--border-radius);padding:2rem;box-shadow:0 18px 45px rgba(11,31,58,.08)}.schedule-form label{display:block;margin-bottom:1.25rem;font-weight:600;color:var(--dark)}.schedule-form input[type=date],.schedule-form input[type=file],.schedule-form input[type=number],.schedule-form input[type=text],.schedule-form select{width:100%;padding:1rem 1.1rem;margin-top:.65rem;border-radius:var(--border-radius);border:1px solid #c9d8ea;background:#f8fbff;color:var(--dark);font-size:1rem}.schedule-form fieldset{border:1px solid rgba(11,31,58,.12);border-radius:var(--border-radius);padding:1.4rem;margin-bottom:1.5rem;background:#f8fbff}.schedule-form legend{margin-bottom:.75rem;font-weight:700;color:var(--primary);letter-spacing:.05em;text-transform:uppercase}.player-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem;margin-top:1rem}.player-card{display:flex;align-items:center;gap:1.4rem;padding:1rem 1.1rem;border-radius:var(--border-radius);background:rgba(255,255,255,.95);border:1px solid rgba(11,31,58,.12);box-shadow:0 10px 24px rgba(11,31,58,.08);transition:transform var(--transition),border-color var(--transition),background var(--transition);cursor:pointer}.player-card input{width:1.2rem;height:1.2rem;accent-color:var(--primary);margin-right:1rem;align-self:center}.player-card span{color:var(--dark);font-weight:500;line-height:1.5}.player-card:hover{transform:translateY(-1px);background:#f3f8ff;border-color:rgba(11,31,58,.2)}.form-actions{flex-wrap:wrap;margin-top:1.5rem}.error-message,.success-message{border-radius:var(--border-radius);padding:1rem 1.1rem;margin-bottom:1rem;font-weight:600}.error-message{background:#fee9e7;color:#8f1b1b;border:1px solid #f4b0aa}.success-message{background:#e8f2ff;color:#0b3a66;border:1px solid #9ec5fe}.schedule-page{max-width:1080px;margin:0 auto;padding:2rem 0}.schedule-page .page-header{margin-bottom:1.75rem}.schedule-page .match-list{display:grid;grid-gap:1.25rem;gap:1.25rem}.schedule-layout{align-items:start;display:grid;grid-gap:1.5rem;gap:1.5rem;grid-template-columns:minmax(0,1fr) minmax(280px,360px)}.schedule-mobile-toggle{display:none}.match-card{background:white;border-radius:var(--border-radius);border:1px solid rgba(11,31,58,.12);box-shadow:0 12px 28px rgba(0,0,0,.08);padding:1.5rem}.match-card h2{margin-bottom:.75rem;color:var(--dark)}.match-card p{margin:.35rem 0;color:#405a78}.schedule-standings{background:white;border:1px solid rgba(11,31,58,.12);border-radius:var(--border-radius);box-shadow:0 12px 28px rgba(0,0,0,.08);padding:1.25rem;position:-webkit-sticky;position:sticky;top:1rem}.standings-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.standings-header h2{color:var(--dark);font-size:1.25rem;margin:0 0 .2rem}.standings-header p{color:#405a78;margin:0}.standings-table-wrap{overflow-x:auto}.standings-table{border-collapse:collapse;width:100%}.standings-table td,.standings-table th{border-bottom:1px solid rgba(11,31,58,.12);padding:.7rem .4rem;text-align:left;white-space:nowrap}.standings-table th{color:var(--dark);font-size:.8rem;text-transform:uppercase}.standings-table td{color:#102033;font-weight:600}.standings-table td:nth-child(2){white-space:normal}@media (max-width:780px){.create-schedule-page .page-header,.schedule-page .page-header{flex-direction:column}.schedule-form{padding:1.5rem}.schedule-mobile-toggle{background:#e8f2ff;border:1px solid rgba(11,31,58,.16);border-radius:var(--border-radius);display:grid;grid-gap:.25rem;gap:.25rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1rem;padding:.25rem}.schedule-mobile-toggle button{background:transparent;border:0;border-radius:calc(var(--border-radius) - 4px);color:#405a78;cursor:pointer;font-weight:700;min-height:2.5rem}.schedule-mobile-toggle button.active{background:white;color:var(--primary);box-shadow:0 2px 8px rgba(0,0,0,.08)}.schedule-layout{display:block}.schedule-layout .match-list,.schedule-layout .schedule-standings{display:none}.schedule-layout .match-list.mobile-active{display:grid}.schedule-layout .schedule-standings.mobile-active{display:block;position:static}}.fun-metrics{background:rgba(255,255,255,.9);border-radius:var(--border-radius);padding:2rem;margin:2rem 0;box-shadow:0 4px 20px rgba(0,0,0,.1)}.fun-metrics h2{text-align:center;color:var(--primary);margin-bottom:1.5rem;font-size:1.8rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.metric-card{background:white;border-radius:var(--border-radius);padding:1.5rem;box-shadow:0 2px 10px rgba(0,0,0,.1);border:2px solid transparent;transition:all var(--transition)}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,.15)}.best-partner{border-color:var(--accent);background:linear-gradient(135deg,rgba(242,219,118,.1),white)}.kryptonite{border-color:var(--danger);background:linear-gradient(135deg,rgba(192,57,43,.1),white)}.metric-card h3{font-size:1.2rem;margin-bottom:1rem;color:var(--dark)}.metric-card h3,.metric-content{text-align:center}.opponent-name,.partner-name{font-size:1.3rem;font-weight:600;color:var(--primary);margin-bottom:.5rem}.record{font-size:1.1rem;font-weight:500;margin-bottom:.5rem;color:var(--dark)}.win-percentage{color:#666;font-size:.9rem;font-weight:400}.point-deficit{font-size:1rem;color:var(--danger);margin-bottom:.5rem;font-weight:500}.games-played{font-size:.9rem}.games-played,.no-metrics{color:#666;font-style:italic}.no-metrics{text-align:center;padding:2rem;background:rgba(255,255,255,.7);border-radius:var(--border-radius);grid-column:1/-1}.auth-container{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:2rem}.auth-form{background:white;padding:2rem;border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);width:100%;max-width:400px}.auth-form h1{margin-bottom:1.5rem;color:var(--dark)}.auth-form input{width:100%;padding:.75rem;margin-bottom:1rem;border:1px solid #ddd;border-radius:var(--border-radius);font-size:1rem;transition:border-color var(--transition)}.auth-form input:focus{outline:none;border-color:var(--primary)}.auth-form form button{width:100%;padding:.75rem;background-color:var(--primary);color:white;border:none;border-radius:var(--border-radius);font-size:1rem;font-weight:600;cursor:pointer;transition:background-color var(--transition)}.auth-form form button:hover{background-color:var(--secondary);color:var(--dark)}.auth-form p{text-align:center;margin-top:1.5rem;font-size:.9rem}.auth-form a{color:var(--primary);text-decoration:none;font-weight:600}.auth-form a:hover{text-decoration:underline}.error{background-color:#fee;color:#c33;padding:.75rem;border-left:4px solid #c33}.dashboard h1{margin-bottom:2rem}.dashboard-home-cta{margin:-1rem 0 1.5rem}.dashboard-stats-cta{display:flex;justify-content:center;margin:-.5rem 0 1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.stat-card{background:white;padding:1.5rem;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);text-align:center;transition:transform var(--transition)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.stat-card h3{color:#666;font-size:.9rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}.stat-value{font-size:2rem;font-weight:700;color:var(--primary)}.dashboard-section{background:white;padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1)}.dashboard-section h2{margin-bottom:1rem}.player-stats-page .page-header{align-items:flex-start;display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.player-stats-page .page-header p{color:#405a78;margin-top:.35rem}.player-record-grid{display:grid;grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.player-record-section{min-width:0}.player-record-table{min-width:420px}.stats-page h1{margin-bottom:1rem}.leaderboard-controls{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.leaderboard-sort-label{color:var(--text-light);font-weight:600}.leaderboard-controls .match-type-toggle{max-width:240px}.leaderboard-mode-toggle{max-width:280px}.leaderboard{width:100%;background:white;border-collapse:collapse;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.leaderboard thead{background-color:var(--primary);color:white}.leaderboard td,.leaderboard th{padding:1rem;text-align:left;border-bottom:1px solid #eee}.leaderboard tbody tr:hover{background-color:#f9f9f9}.leaderboard tbody tr:last-child td{border-bottom:none}.leaderboard-player-name{align-items:center;display:inline-flex;gap:.4rem}.leaderboard-player-link{color:var(--primary);font-weight:700;text-decoration:none}.leaderboard-player-link:hover{text-decoration:underline}.leaderboard-team-name{flex-wrap:wrap}.champion-crown,.leaderboard-team-name{align-items:center;display:inline-flex;gap:.1rem}.champion-crown{color:var(--primary);font-size:1.05rem;line-height:1;text-shadow:0 1px 0 rgba(255,255,255,.7)}.champion-crown.latest{color:#c99700}.champion-crown.previous{color:var(--primary)}.champion-count{font-size:.72rem;font-weight:800;line-height:1}.member-profile-crown{display:inline-block;margin-left:.5rem;vertical-align:.08em}.leaderboard-table-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.leaderboard{min-width:640px}.tournament-champions-page{font-family:Playfair Display,Georgia,serif;max-width:1120px;margin:0 auto}.tournament-champions-header{margin-bottom:2rem}.tournament-champions-header h1{color:var(--text-dark);font-family:Playfair Display,Georgia,serif;font-size:2.4rem;margin:0}.champion-card-grid{display:grid;grid-template-columns:minmax(0,760px);justify-content:center;grid-gap:1.5rem;gap:1.5rem}.champion-card{background:white;border:8px solid #f6df72;border-radius:var(--border-radius);box-shadow:0 0 0 2px var(--primary),0 8px 24px rgba(11,31,58,.16);overflow:hidden;padding:.35rem}.champion-photo,.champion-photo-placeholder{aspect-ratio:4/3;display:block;width:100%}.champion-photo{object-fit:cover}.champion-photo-placeholder{align-items:center;background:linear-gradient(135deg,rgba(11,31,58,.16),rgba(242,201,76,.34)),#f8fbff;color:var(--primary);display:flex;font-size:4rem;font-weight:800;justify-content:center}.champion-card-body{padding:1.25rem}.champion-date{color:var(--text-light);font-weight:700;margin-bottom:.5rem}.champion-card h2,.champion-date{font-family:Playfair Display,Georgia,serif}.champion-card h2{color:var(--text-dark);font-size:1.75rem;margin:0 0 .35rem}.champion-title{color:var(--primary);font-family:Playfair Display,Georgia,serif;font-weight:700;margin:0}.champion-toggle{border:1px solid #c9d8ea;border-radius:999px;background:#f3f8ff;color:var(--dark);cursor:pointer;font-weight:700;padding:.4rem .75rem;transition:all .2s ease;white-space:nowrap}.champion-toggle.active{background:#f6df72;border-color:#c99700;color:#4d3b00}.champion-toggle:disabled{cursor:not-allowed;opacity:.65}@media (max-width:768px){.stats-page,.stats-page h1{padding-inline:.25rem}.stats-page h1{margin-bottom:1rem}.leaderboard-controls{align-items:flex-start;flex-direction:column;padding-inline:.25rem}.leaderboard-controls .match-type-toggle{max-width:none}.leaderboard-table-container{margin-inline:.25rem;border-radius:var(--border-radius)}.tournament-champions-header h1{font-size:2rem}}.schedule-page h1{margin-bottom:1.5rem}.schedule-page .btn{margin-bottom:2rem}.schedule-page .match-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem}.schedule-page .match-actions .btn{margin-bottom:0}.schedule-page .match-actions .error-message{flex-basis:100%;margin:0}.schedule-page .schedule-matchup-editor{background:#f3f8ff;border:1px solid rgba(11,31,58,.15);border-radius:var(--border-radius);display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1rem;padding:1rem}.schedule-page .schedule-matchup-editor label{color:var(--dark);display:grid;font-size:.9rem;font-weight:700;grid-gap:.35rem;gap:.35rem}.schedule-page .schedule-matchup-editor select{border:1px solid rgba(11,31,58,.25);border-radius:var(--border-radius);font:inherit;min-height:2.6rem;padding:.45rem .55rem}.schedule-page .schedule-matchup-editor .match-actions{grid-column:1/-1;margin-top:.25rem}.schedule-page .matchup-edit-button{margin:.75rem 0 0}@media (max-width:560px){.schedule-page .schedule-matchup-editor{grid-template-columns:1fr}}.events-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1.5rem;gap:1.5rem}.event-card{background:white;padding:1.5rem;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);transition:transform var(--transition)}.event-card:hover{transform:translateY(-4px)}.event-card h3{margin-bottom:1rem;color:var(--dark)}.event-card p{margin:.5rem 0;color:#666}.event-card button{width:100%;margin-top:1rem}.event-form{background:white;padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);max-width:600px;margin:0 auto}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--dark)}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:var(--border-radius);font-size:1rem;transition:border-color var(--transition)}.form-group input[type=date],.form-group input[type=datetime-local]{min-width:0;max-width:100%}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.admin-dashboard{max-width:100%}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}.admin-stat-card{background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);color:white;padding:1.5rem;border-radius:var(--border-radius);box-shadow:0 4px 12px rgba(0,0,0,.1);text-align:center;transition:transform var(--transition)}.admin-stat-card:hover{transform:translateY(-4px)}.admin-stat-card h3{margin-bottom:.5rem;font-size:.9rem;opacity:.9}.admin-actions{background:white;padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);margin-bottom:2rem}.admin-actions h2{margin-bottom:1rem}.action-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem}.btn-outline{background-color:var(--primary);color:white;border:2px solid var(--primary)}.btn-outline:hover{background-color:var(--secondary);color:var(--dark)}.btn-accent{background-color:var(--primary);color:white}.btn-accent:hover{background-color:var(--secondary);color:var(--dark)}.btn{padding:.75rem 1.5rem;border:none;border-radius:var(--border-radius);font-weight:600;cursor:pointer;transition:all var(--transition);text-decoration:none;display:inline-block;text-align:center}.btn-primary{background-color:var(--primary);color:white}.btn-primary:hover{background-color:var(--secondary);color:var(--dark);transform:translateY(-1px)}.btn-secondary{background-color:var(--primary);color:white}.btn-secondary:hover{background-color:var(--secondary);color:var(--dark);transform:translateY(-1px)}.btn-sm{padding:.5rem 1rem;font-size:.9rem}.invitations-table,.users-table{width:100%;border-collapse:collapse;background:white;border-radius:var(--border-radius);overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.invitations-table td,.invitations-table th,.users-table td,.users-table th{padding:1rem;text-align:left;border-bottom:1px solid #eee}.invitations-table th,.users-table th{background-color:#f8f9fa;font-weight:600;color:var(--dark)}.invitations-table-container,.users-table-container{overflow-x:auto;margin-top:2rem}.manage-matches .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.match-edit-panel{background:white;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);padding:1.25rem;margin-bottom:1.5rem}.match-edit-panel h2{margin-top:0;margin-bottom:1rem}.match-form{background:white;padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);max-width:600px;margin:0 auto}.score-inputs{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1.5rem}.match-type-toggle{display:inline-flex;width:100%;border:1px solid #dfe6e9;border-radius:999px;background:#f1f3f5;padding:.2rem;gap:.2rem}.match-type-option{flex:1 1;border:none;border-radius:999px;background:transparent;color:#5f6b73;font-weight:600;padding:.5rem .8rem;cursor:pointer;transition:all .2s ease}.match-type-option.active{background:var(--primary);color:white}.team-selector-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1.5rem}.team-selector-panel{border:1px solid #dfe6e9;border-radius:var(--border-radius);padding:1rem;background:#fafbfc}.team-selector-panel h3{margin:0;color:var(--dark)}.team-selector-help{margin:.5rem 0 .75rem;color:#636e72;font-size:.9rem}.team-player-list{display:flex;flex-direction:column;gap:.5rem;max-height:280px;overflow-y:auto}.team-selector-status{margin:0;padding:.5rem;color:#636e72;font-size:.92rem}.team-selector-status.error-text{color:#c0392b}.team-player-option{display:flex;align-items:center;gap:.6rem;border:1px solid #dfe6e9;border-radius:10px;padding:.55rem .65rem;background:white;cursor:pointer;transition:all .2s ease}.team-player-option:hover{border-color:var(--primary)}.team-player-option input{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.team-player-option.selected{border-color:var(--primary);background:#eef6ff}.team-player-option.disabled{background:#f1f3f5;color:#9aa2a8;border-color:#e2e6ea;cursor:not-allowed}.team-player-option.disabled input{cursor:not-allowed}.request-list{display:grid;grid-template-columns:1fr;grid-gap:.9rem;gap:.9rem}.request-card{border:1px solid #dfe6e9;border-radius:var(--border-radius);background:#fafbfc;padding:.9rem}.request-card-row{display:flex;align-items:flex-start;gap:.45rem;margin-bottom:.35rem}.request-card-row strong{min-width:86px;color:var(--dark)}.request-card-row span{overflow-wrap:anywhere}.request-card-actions{display:flex;gap:.6rem;margin-top:.65rem}.admin-pending-matches{max-width:760px;margin:0 auto 1.5rem}.admin-pending-matches h2{margin-bottom:1rem}.admin-pending-matches .request-card-row strong{min-width:112px}.match-mode-page .dashboard-section,.match-mode-page .match-form{max-width:600px;margin-left:auto;margin-right:auto}.match-mode-page .dashboard-section,.match-mode-page .match-form{margin-top:1.5rem}.membership-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.membership-badge.admin{background-color:var(--primary);color:white}.membership-badge.member{background-color:var(--secondary);color:white}.membership-badge.guest{background-color:#95a5a6;color:white}.status-badge{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-badge.active{background-color:var(--secondary);color:white}.status-badge.used{background-color:#2563eb;color:white}.status-badge.expired{background-color:#e74c3c;color:white}.invitation-code{font-family:monospace;font-weight:600;color:var(--primary)}.create-invitation-form{background:white;padding:2rem;border-radius:var(--border-radius);box-shadow:0 2px 8px rgba(0,0,0,.1);margin-bottom:2rem;max-width:600px}.add-match h1,.create-event h1,.manage-invitations h1,.manage-matches h1,.manage-users h1{margin-bottom:2rem;color:var(--dark)}.manage-invitations .header,.manage-users .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.error{color:#e74c3c;background-color:#fdf2f2;border:1px solid #f5c6cb;border-radius:var(--border-radius);padding:1rem;margin-bottom:1rem}.no-invitations,.no-users{text-align:center;color:#666;font-style:italic;margin-top:2rem}@media (max-width:768px){.nav-container{padding:1rem}.nav-menu{gap:1rem}.admin-stats-grid{grid-template-columns:1fr}.player-stats-page .page-header{flex-direction:column}.player-record-grid{grid-template-columns:1fr}.action-buttons,.form-actions{flex-direction:column}.score-inputs,.team-selector-grid{grid-template-columns:1fr}.manage-invitations .header,.manage-users .header{flex-direction:column;align-items:flex-start;gap:1rem}}.main-content{max-width:1200px;margin:0 auto;padding:2rem 1.5rem}@media (max-width:1024px){.main-content{padding:1.5rem 1rem}.navbar .nav-container{padding:.75rem 1rem}.nav-menu{gap:.8rem;flex-wrap:wrap;justify-content:center}.hero h1{font-size:2rem}.cta-buttons{flex-direction:column;align-items:stretch}.cta-buttons .btn{width:100%}.add-match,.admin-actions,.create-event,.manage-invitations,.manage-users{padding:1.2rem}}@media (max-width:768px){.main-content{padding:1rem}.form-group input[type=date],.form-group input[type=datetime-local]{display:block;width:100%}.hero h1{font-size:1.7rem}.hero p{font-size:1rem}.auth-form,.create-invitation-form,.event-form,.match-form{width:100%;padding:1rem}.form-actions{flex-direction:column}.form-actions .btn{width:100%}.score-inputs{grid-template-columns:1fr}.invitations-table td,.invitations-table th,.users-table td,.users-table th{padding:.7rem}}.champion-banner{font-family:Playfair Display,Georgia,serif;background:linear-gradient(135deg,var(--accent) 0,#ffe885 100%);border:2px solid var(--primary);border-radius:var(--border-radius);padding:1.25rem 1.5rem;text-align:center;font-size:1.15rem;color:var(--dark);margin-top:1.5rem}.error-text,.loading-text{padding:2rem;text-align:center;color:#666}.form-error{background:#fdecea;color:#b71c1c;border:1px solid #f5c6cb;border-radius:var(--border-radius);padding:.75rem 1rem;margin-bottom:1rem;font-size:.9rem}.form-hint{font-size:.8rem;color:#888;margin-top:.3rem}