:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:1.5rem;margin-top:1.5rem;padding:1rem;background-color:var(--surface-color);border-radius:12px}.pagination-controls span{font-weight:500;color:var(--text-color)}.pagination-controls .btn{min-width:120px}.dashboard-header{background:linear-gradient(135deg,#1b4332,#40916c);color:#fff;padding:5px 0;box-shadow:0 2px 10px #0000001a}.header-content{width:100%;margin:0;padding:0 10px;display:flex;justify-content:space-between;align-items:center}.header-content h1{font-size:20px;font-weight:700;margin:0}.header-actions{display:flex;align-items:center;gap:15px}.welcome-text{font-weight:500;margin-right:10px}.btn{padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;border:none;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background:linear-gradient(135deg,#1b4332,#40916c);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1b43324d}.btn-secondary{background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3)}.btn-secondary:hover{background:#ffffff4d}.btn-outline{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}.btn-outline:hover{background:#ffffff1a}.dashboard-main{width:100%;padding:10px 2.625%;box-sizing:border-box;height:calc(100vh - 132px);display:flex;flex-direction:column;gap:.25rem}.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.dashboard-card{background:#188400;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.dashboard-card h2{color:#1b4332;font-size:20px;font-weight:700;margin:0 0 8px}.dashboard-card p{color:#6b7280;margin:0 0 20px;line-height:1.5}.card-stats{display:flex;gap:24px}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-value{font-size:28px;font-weight:700;color:gold;margin-bottom:4px;background:transparent!important;padding:.5rem;border-radius:6px}.stats-card .stat-value,.dashboard-card .stat-value,p.stat-value{background:transparent!important;background-color:transparent!important}.stat-label{font-size:12px;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.card-content{margin-top:16px}.leaderboard-preview{text-align:center;padding:20px;background:#f8fafc;border-radius:8px;color:#6b7280}.no-activity{text-align:center;color:#9ca3af;font-style:italic;margin:20px 0}@media (max-width: 768px){.header-content{flex-direction:column;gap:15px;text-align:center}.header-actions{flex-wrap:wrap;justify-content:center}.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:12px}}@media (max-width: 480px){.dashboard-grid{grid-template-columns:repeat(4,1fr);gap:8px}.stats-card{padding:.25rem .5rem}.stats-card h3{font-size:.8rem}.stat-value{font-size:.9rem}}.stats-summary-bar{margin-bottom:.25rem!important;padding:.25rem 0!important}.stats-summary-bar h2{margin:.05rem 0!important;padding:.025rem 0!important}.dashboard-grid{margin-bottom:.25rem!important}.session-list-container{margin-top:.25rem!important}.session-list-container>div:first-child{margin-bottom:.05rem!important;padding:.05rem 0!important;justify-content:space-between!important}.session-list-container .btn{padding:.375rem 1rem!important}.session-list-container h3{margin:.025rem 0!important;padding:0!important;text-align:left!important}.session-table-wrapper{margin-bottom:.25rem!important}.dashboard-main .session-table{border-collapse:separate!important;border-spacing:0!important}.dashboard-main .session-table th,.dashboard-main .session-table td{border-right:1px solid var(--surface-color)!important;border-bottom:1px solid var(--surface-color)!important}.dashboard-main .session-table th:last-child,.dashboard-main .session-table td:last-child{border-right:none!important}.dashboard-main .session-table tbody tr:last-child td{border-bottom:none!important}.dashboard-main .session-table th:nth-child(1),.dashboard-main .session-table td:nth-child(1){width:1%;white-space:nowrap}.dashboard-main .session-table th:nth-child(2),.dashboard-main .session-table td:nth-child(2){width:120px}.dashboard-main .session-table th:nth-child(3),.dashboard-main .session-table td:nth-child(3){width:80px}.dashboard-main .session-table th:nth-child(4),.dashboard-main .session-table td:nth-child(4){width:80px}.dashboard-main .session-table th:nth-child(5),.dashboard-main .session-table td:nth-child(5){width:60px}.dashboard-main .session-table th:nth-child(6),.dashboard-main .session-table td:nth-child(6){width:60px}.dashboard-main .session-table th:nth-child(7),.dashboard-main .session-table td:nth-child(7){width:80px}.dashboard-main .session-table th:nth-child(8),.dashboard-main .session-table td:nth-child(8){width:80px}.dashboard-main .session-table th:nth-child(9),.dashboard-main .session-table td:nth-child(9){width:60px}.dashboard-main .session-table th:nth-child(10),.dashboard-main .session-table td:nth-child(10){width:60px}.dashboard-main .session-table th:nth-child(11),.dashboard-main .session-table td:nth-child(11){width:80px}.modal-content{background-color:var(--surface-color);padding:2rem;border-radius:12px;width:100%;max-width:500px;box-shadow:0 5px 15px #0000004d}.slider-labels{display:flex;justify-content:space-between;font-size:1rem;color:#fff!important;margin-top:8px}.slider-labels span{font-weight:700;color:#fff!important}.search-results{list-style:none;padding:0;margin:0;border:1px solid var(--border-color);border-radius:4px;max-height:150px;overflow-y:auto;background-color:var(--background-color)}.search-results li{padding:.75rem;cursor:pointer;border-bottom:1px solid var(--border-color);background-color:#f4f1e8;border:2px solid #2d5016;color:#2d5016;font-weight:500;margin-bottom:2px}.search-results li:last-child{border-bottom:none;margin-bottom:0}.search-results li:hover{background-color:#ede8db;border-color:#1a3009}.search-results li.selected{background-color:#e6dfc8;border-color:#1a3009;color:#1a3009}.search-results li.new-player-invite{background-color:#f4f1e8;border:2px solid #2d5016;color:#2d5016;font-weight:500}.search-results li.new-player-invite:hover{background-color:#ede8db;border-color:#1a3009}.search-results li.new-player-invite.selected{background-color:#e6dfc8;border-color:#1a3009;color:#1a3009}.new-player-contact{font-size:.9rem;color:#4a6b2a}.player-info{display:flex;flex-direction:column;gap:.25rem}.player-name{font-weight:600;color:#2d5016}.player-email{font-size:.85rem;color:#4a6b2a;opacity:.9}.selection-info{background-color:var(--background-color);padding:1rem;border-radius:6px;border:1px solid var(--border-color);margin:1rem 0}.selection-info.new-player-selection{background-color:#f9f7f0;border-color:#2d5016;color:#2d5016}.selected-email{font-size:.9rem;color:var(--text-muted);margin-top:.25rem}.invite-method{font-size:.9rem;color:#4a6b2a;font-style:italic;margin-top:.5rem}.search-section{margin-bottom:2rem}.search-section form{display:flex;flex-direction:column;gap:1rem}.search-button{align-self:flex-start;padding:.75rem 1.5rem;background-color:var(--primary-color);color:var(--background-color);border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:background-color .2s}.search-button:hover:not(:disabled){background-color:var(--primary-color-hover)}.search-button:disabled{opacity:.6;cursor:not-allowed}.search-results{margin-top:.5rem;margin-bottom:1.5rem}.rematch-info{background-color:var(--background-color);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color);margin-bottom:1.5rem}.selected-opponent{font-size:1.1rem;color:var(--primary-color);margin-bottom:.75rem}.rematch-description{color:var(--text-muted);margin:0;font-size:.95rem;line-height:1.4}.modal-overlay .modal-content .form-group label,.modal-overlay .modal-content label,.modal-overlay .modal-content .form-label,.modal-overlay .modal-content .label-base,div.modal-content.modal-content .form-group label,div.modal-content.modal-content label{color:#fff!important;font-weight:700!important;font-size:1.1rem!important}.modal-overlay .modal-content .slider-labels,.modal-overlay .modal-content .slider-labels span,.modal-overlay .modal-content .distance-slider+.slider-labels,.modal-overlay .modal-content .distance-slider+.slider-labels span,div.modal-content.modal-content .slider-labels,div.modal-content.modal-content .slider-labels span{color:#fff!important;font-weight:700!important}.duel-results{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:2rem;margin-bottom:1.5rem}.duel-results-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e5e5e5}.duel-title h3{margin:0;font-size:1.5rem;color:#333}.duel-title a{color:#2c5234;text-decoration:none;font-weight:600}.duel-title a:hover{text-decoration:underline}.duel-meta{text-align:right;font-size:.9rem;color:#666}.duel-date,.duel-completed{margin-bottom:.5rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-pending{background:#fff3cd;color:#856404}.status-active{background:#d1ecf1;color:#0c5460}.status-completed{background:#d4edda;color:#155724}.status-declined,.status-expired{background:#f8d7da;color:#721c24}.winner-announcement{text-align:center;padding:1.5rem;margin-bottom:2rem;border-radius:8px;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.winner-you{color:#28a745;font-size:1.8rem;font-weight:700;text-shadow:0 1px 2px rgba(40,167,69,.3)}.winner-opponent{color:#dc3545;font-size:1.8rem;font-weight:700;text-shadow:0 1px 2px rgba(220,53,69,.3)}.performance-comparison h4{text-align:center;color:#333;margin-bottom:1.5rem;font-size:1.3rem}.player-headers{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;margin-bottom:2rem;padding:1rem;background:#f8f9fa;border-radius:8px}.player-header{text-align:center;font-weight:600;font-size:1.1rem}.player-header.current a{color:#2c5234}.player-header.opponent a{color:#5a6268}.vs-divider{font-size:1.2rem;font-weight:700;color:#6c757d;text-align:center}.stats-grid{display:grid;gap:1.5rem;margin-bottom:2rem}.stat-comparison{background:#f8f9fa;padding:1rem;border-radius:8px;border-left:4px solid #e9ecef}.stat-label{font-weight:600;color:#333;margin-bottom:.5rem;text-align:center}.stat-values{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center}.stat-value{text-align:center;font-size:1.5rem;font-weight:700;color:#666;padding:.5rem;border-radius:6px;background:#fff}.stat-value.better{color:#28a745;background:#d4edda;border:2px solid #c3e6cb}.stat-vs{font-size:1rem;font-weight:600;color:#6c757d;text-align:center}.detailed-breakdown{margin-top:2rem;padding-top:2rem;border-top:1px solid #e5e5e5}.detailed-breakdown h5{text-align:center;color:#333;margin-bottom:1.5rem}.breakdown-comparison{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.breakdown-section h6{text-align:center;color:#2c5234;margin-bottom:1rem;font-size:1.1rem}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;margin-bottom:.5rem;background:#fff;border-radius:6px;border-left:3px solid #2c5234}.breakdown-item .location{font-weight:500;color:#333}.breakdown-item .count{font-weight:600;color:#2c5234}.active-duel-info,.inactive-duel-info{text-align:center;padding:2rem;background:#f8f9fa;border-radius:8px;color:#495057}.submission-status{margin-top:1rem;font-weight:600;padding:1rem;border-radius:6px;background:#fff}@media (max-width: 768px){.duel-results{padding:1rem}.duel-results-header{flex-direction:column;gap:1rem}.duel-meta{text-align:left}.player-headers{grid-template-columns:1fr;text-align:center}.vs-divider{order:2;margin:.5rem 0}.stat-values{grid-template-columns:1fr;gap:.5rem}.stat-vs{order:2}.breakdown-comparison{grid-template-columns:1fr;gap:1.5rem}.winner-announcement{padding:1rem}.winner-you,.winner-opponent{font-size:1.4rem}}.duels-page .container{margin:0 11%;width:78%}.duel-actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-start}.duel-actions .btn{margin:0;white-space:nowrap}.duels-page{display:flex;flex-direction:column}.duels-page .loading-state,.duels-page .error-state{text-align:center;padding:3rem 1rem}.duels-page .loading-spinner{margin:1rem auto;width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.duels-page .empty-state{text-align:center;padding:2rem;background-color:var(--background-color, #1a1a1a);border:1px solid var(--border-color, #333);border-radius:12px;color:#fff!important;width:100%;box-sizing:border-box}.duels-page .empty-state p{margin:0;font-weight:500;color:#fff!important}.status-badge{color:#fff;padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em;display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box}.opponent-link{color:var(--primary-color);text-decoration:none;font-weight:500}.opponent-link:hover{text-decoration:underline}.winner-text{font-weight:600;color:var(--success-color, #10b981)}.expiration-box{background-color:var(--warning-bg, #fef3c7);color:var(--warning-text, #d97706);padding:.25rem .35rem;border-radius:6px;font-size:.75rem;font-weight:500;text-align:center;border:1px solid var(--warning-border, #fcd34d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;box-sizing:border-box}.duels-page .page-header .btn-primary{background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316);border:none;color:#1a1a1a;font-weight:600;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;transition:all .3s ease;text-shadow:none;box-shadow:0 2px 4px #fbbf244d}.duels-page .page-header .btn-primary:hover{background:linear-gradient(135deg,#f59e0b,#f97316,#ea580c);transform:translateY(-1px);box-shadow:0 4px 8px #fbbf2466}.duels-page .page-header .btn-primary:active{transform:translateY(0);box-shadow:0 2px 4px #fbbf244d}.duel-category-section{margin-bottom:2.5rem;width:100%;box-sizing:border-box}.duel-category-title{color:var(--primary-color);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:1px;font-size:1.1rem}.duels-table-container{max-height:60vh;overflow-y:auto;overflow-x:auto;border:1px solid var(--border-color);border-radius:12px;width:100%;box-sizing:border-box;position:relative;scroll-behavior:smooth;scrollbar-width:thin}.duels-table-container::-webkit-scrollbar{height:8px;width:8px}.duels-table-container::-webkit-scrollbar-track{background:var(--background-color, #1a1a1a);border-radius:4px}.duels-table-container::-webkit-scrollbar-thumb{background:var(--border-color, #333);border-radius:4px}.duels-table-container::-webkit-scrollbar-thumb:hover{background:var(--primary-color, #fbbf24)}.duels-table{width:100%;min-width:750px;table-layout:auto;border-collapse:collapse}.duels-table th,.duels-table td{padding:.75rem .5rem;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duels-table .score-cell{text-align:center;white-space:nowrap;width:80px}.duels-table .actions-cell{white-space:nowrap;text-align:center;width:140px}.duels-table th[data-col=opponent],.duels-table td[data-cell=opponent]{min-width:120px;width:auto;padding-right:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duels-table th[data-col=your-score],.duels-table td[data-cell=your-score],.duels-table th[data-col=opponent-score],.duels-table td[data-cell=opponent-score]{min-width:85px;width:auto;text-align:center;white-space:nowrap}.duels-table th[data-col=result],.duels-table td[data-cell=result]{min-width:80px;width:auto;text-align:center}.duels-table th[data-col=completed],.duels-table td[data-cell=completed]{min-width:90px;width:auto;white-space:nowrap}.duels-table th[data-col=actions],.duels-table td[data-cell=actions]{min-width:140px;width:auto;text-align:center}.duels-table th:nth-child(2),.duels-table td:nth-child(2){min-width:90px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duels-table th:nth-child(3),.duels-table td:nth-child(3),.duels-table th:nth-child(4),.duels-table td:nth-child(4){min-width:85px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.875rem}.duels-table th:nth-child(5),.duels-table td:nth-child(5){min-width:75px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.duels-table thead th{position:-webkit-sticky;position:sticky;top:0;background-color:var(--background-color);z-index:2}.duels-table thead th[style*="cursor: pointer"]{transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.duels-table thead th[style*="cursor: pointer"]:hover{background-color:#fbbf241a}.duels-table th:not(:last-child),.duels-table td:not(:last-child){border-right:1px solid var(--border-color)}.score-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-weight:600;font-size:.875rem;min-width:30px;text-align:center}.score-badge.your-score{background-color:#10b98133;color:#10b981;border:1px solid rgba(16,185,129,.3)}.score-badge.opponent-score{background-color:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.duels-table .actions-cell{text-align:center}.duel-actions{display:flex;justify-content:center;gap:.5rem}.duels-page .page-header{width:100%;box-sizing:border-box}@media (max-width: 768px){.duels-table th{font-size:.7rem;padding:.4rem .3rem}.duels-table td{padding:.4rem .3rem;font-size:.75rem}.duels-table-container{overflow-x:auto;overflow-y:visible;max-height:70vh}.duels-table{min-width:750px}.duels-page .container{margin:0 2%;width:96%;padding:.5rem}.duels-page .page-header{flex-direction:column;gap:.75rem;margin-top:1rem;margin-bottom:1rem}.duels-page .page-header h2{font-size:1.5rem;text-align:center}.duels-page .page-header .btn-primary{width:100%;text-align:center}.duel-category-title{font-size:.95rem;margin-bottom:.75rem}.status-badge{font-size:.65rem;padding:.2rem .4rem}.expiration-box{font-size:.65rem;padding:.2rem .3rem}}.duels-table .actions-cell .btn{margin:.125rem;padding:.375rem .75rem;font-size:.875rem;white-space:nowrap}.duels-table .actions-cell .btn-primary{background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316);border:none;color:#1a1a1a;font-weight:600;font-size:.875rem;transition:all .3s ease;text-shadow:none;box-shadow:0 2px 4px #fbbf244d;cursor:pointer}.duels-table .actions-cell .btn-primary:hover{background:linear-gradient(135deg,#f59e0b,#f97316,#ea580c);transform:translateY(-1px);box-shadow:0 4px 8px #fbbf2466}.duels-table .actions-cell .btn-primary:active{transform:translateY(0);box-shadow:0 2px 4px #fbbf244d}.duels-table .expiration-cell{padding:.25rem .5rem;vertical-align:middle}.settings-page{width:100%;padding:1rem 10.5%;box-sizing:border-box}.settings-page h2{grid-column:1 / -1;text-align:center;margin-bottom:2rem;color:var(--primary-color)}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.settings-section{background-color:var(--surface-color);padding:1.5rem;border-radius:12px;margin-bottom:0}.settings-section h3{margin-top:0;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;margin-bottom:1rem}.notification-toggles{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.notification-toggles label{display:flex;align-items:center;gap:.75rem;font-weight:500;cursor:pointer}.full-width-section{grid-column:1 / -1;margin-top:2rem}.settings-section .form-hint{font-size:.85rem;color:var(--text-color);margin-top:.5rem}.settings-section form .btn{margin-top:1rem}.subscription-actions{margin-top:1rem;display:flex;flex-direction:column;gap:1.5rem}.coupon-form{display:flex;gap:.5rem;align-items:center}.coupon-input{flex-grow:1;padding:.75rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-size:1rem}.upgrade-section{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border-color);text-align:center}.upgrade-section h2{font-size:2.5rem;color:var(--primary-color);margin-bottom:1rem}.upgrade-section>p{font-size:1.2rem;color:var(--text-color);margin-bottom:3rem}.features-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;text-align:left}.feature-card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.feature-card h3{margin-top:0;font-size:1.5rem;color:var(--primary-color);border-bottom:1px solid var(--border-color);padding-bottom:.5rem;margin-bottom:1rem}.feature-card ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.feature-card li{font-size:1rem}.upgrade-action{background-color:var(--surface-color);padding:1.5rem;border-radius:12px;text-align:center}.upgrade-action .coupon-form{justify-content:center;max-width:700px;margin:0 auto 1.5rem}.upgrade-action .coupon-form label{font-weight:700}.upgrade-options{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.or-divider{font-weight:700;color:var(--text-color)}.subscription-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:1.5rem}.subscription-status-column,.upgrade-column{background-color:var(--background-color);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color)}.subscription-status-column h4,.upgrade-column h4{margin-top:0;margin-bottom:.5rem;color:var(--primary-color)}.upgrade-subtitle,.bundles-subtitle{color:var(--text-color);font-size:.9rem;margin-bottom:1.5rem}.subscription-plans{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.plan-card{background-color:var(--surface-color);border:2px solid var(--border-color);border-radius:8px;padding:1.5rem;text-align:center;transition:all .3s ease;position:relative}.plan-card:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.plan-card.featured{border-color:var(--primary-color);background:linear-gradient(135deg,var(--surface-color) 0%,rgba(var(--primary-color-rgb, 52, 211, 153),.05) 100%)}.plan-badge{position:absolute;top:-12px;right:10px;background-color:var(--primary-color);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700}.plan-card h5{margin:0 0 1rem;font-size:1.25rem;color:var(--text-color)}.plan-price{margin-bottom:.5rem}.plan-price .amount{font-size:2rem;font-weight:700;color:var(--primary-color)}.plan-price .period{font-size:.9rem;color:var(--text-color)}.plan-savings{background-color:rgba(var(--primary-color-rgb, 52, 211, 153),.1);color:var(--primary-color);padding:.25rem .5rem;border-radius:4px;font-size:.85rem;font-weight:600;margin-bottom:1rem}.plan-features{list-style:none;padding:0;margin:1rem 0 1.5rem;text-align:left}.plan-features li{padding:.5rem 0;border-bottom:1px solid var(--border-color);font-size:.9rem}.plan-features li:last-child{border-bottom:none}.plan-card .btn{width:100%;margin-top:auto}.btn-featured{background:linear-gradient(135deg,var(--primary-color) 0%,rgba(var(--primary-color-rgb, 52, 211, 153),.8) 100%);font-weight:700}.bundles-column{background-color:var(--background-color);padding:1.5rem;border-radius:8px;border:1px solid var(--border-color)}.bundles-column h4{margin-top:0;margin-bottom:.5rem;color:var(--primary-color)}.bundles-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.bundle-card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem;transition:all .3s ease}.bundle-card:hover{border-color:var(--primary-color);box-shadow:0 4px 8px #0000001a}.bundle-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.bundle-header h5{margin:0;font-size:1.1rem;color:var(--text-color)}.bundle-discount{background-color:var(--primary-color);color:#000;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:700}.bundle-details{margin-bottom:1rem}.bundle-quantity{font-size:.9rem;color:var(--text-color);margin:.25rem 0}.bundle-price{font-size:1.5rem;font-weight:700;color:var(--primary-color);margin:.5rem 0 .25rem}.bundle-unit-price{font-size:.8rem;color:var(--text-color);margin:0}.bundle-card .btn{width:100%}.btn-bundle-orange{background:linear-gradient(135deg,#ff8c00,#ff6b00);border:none;color:#fff;font-weight:700}.btn-bundle-orange:hover{background:linear-gradient(135deg,#ff9500,#f70);transform:translateY(-2px);box-shadow:0 4px 12px #ff8c004d}.coupon-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.coupon-header{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.coupon-section .coupon-form{display:flex;flex-direction:column;gap:.5rem;flex:1;min-width:250px}.coupon-section label{font-size:.9rem;font-weight:600;color:var(--text-color)}.coupon-header .btn-secondary{white-space:nowrap;align-self:flex-end}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:700}.status-badge.status-active{background-color:rgba(var(--primary-color-rgb, 52, 211, 153),.2);color:var(--primary-color)}.status-badge.status-free{background-color:#80808033;color:var(--text-color)}.gift-invites-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.gift-invites-section h4{margin-top:0;margin-bottom:.5rem;color:var(--primary-color)}.gift-invites-intro{color:var(--text-color);font-size:.9rem;margin-bottom:1rem}.gift-invite-row{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem;margin-bottom:1rem}.gift-code-label{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.gift-code-text{font-family:monospace;font-size:1rem;font-weight:600;color:var(--primary-color);background-color:var(--background-color);padding:.5rem .75rem;border-radius:4px}.redeemed-badge{background-color:#34d39933;color:var(--primary-color);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.gift-send-form{display:flex;gap:.5rem;align-items:center}.gift-recipient-input{flex:1;padding:.5rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-size:.9rem}.gift-recipient-input:focus{outline:none;border-color:var(--primary-color)}.btn-sm{padding:.5rem 1rem;font-size:.9rem}.no-gift-codes{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;text-align:center}.no-gift-codes p{color:var(--text-color);margin:0;font-size:.95rem}.association-intro{color:var(--text-color);margin-bottom:2rem;font-size:1rem;line-height:1.5}.association-form{display:flex;flex-direction:column;gap:1.5rem}.association-form-two-col{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.form-col-left,.form-col-right{display:flex;flex-direction:column;gap:1.5rem}.form-group-compact{gap:.75rem;margin-bottom:.75rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;font-weight:700;margin-bottom:.5rem;color:var(--text-color)}.form-group .required{color:#e74c3c}.form-group input,.form-group textarea{width:100%;padding:.5rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-size:1rem;font-family:inherit;box-sizing:border-box;transition:border-color .2s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group textarea{resize:vertical;min-height:100px}.btn-large{padding:1rem 2rem;font-size:1.1rem;width:auto;align-self:flex-start}.btn-send-orange{background:linear-gradient(135deg,#ff8c00,#ff6b00);border:none;color:#fff;font-weight:700;margin-top:1.75rem}.btn-send-orange:hover{background:linear-gradient(135deg,#ff9500,#f70);transform:translateY(-1px);box-shadow:0 4px 12px #ff8c004d}.checkbox-group{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start;width:100%}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.95rem;cursor:pointer;font-weight:400;justify-content:flex-start;width:100%;text-align:left}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer;margin:0;flex-shrink:0;align-self:flex-start}.checkbox-label span{color:var(--text-color);text-align:left;line-height:1.2;flex:1}@media (max-width: 1200px){.subscription-layout{grid-template-columns:1fr}.bundles-grid{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.subscription-plans,.bundles-grid,.form-row,.association-form-two-col{grid-template-columns:1fr}.btn-large{width:100%}}.referrals-stats{display:flex;flex-direction:column;gap:2rem}.stats-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.stat-card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;text-align:center;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card-highlight{border-color:var(--primary-color);background:linear-gradient(135deg,var(--surface-color) 0%,rgba(var(--primary-color-rgb, 52, 211, 153),.05) 100%)}.stat-number{font-size:2.5rem;font-weight:700;color:var(--primary-color);margin-bottom:.5rem}.stat-label{font-size:.9rem;color:var(--text-color);font-weight:500}.referrals-list{margin-top:2rem}.referrals-list h4{margin-bottom:1rem;color:var(--primary-color)}.referrals-table{width:100%;border-collapse:collapse;background-color:var(--surface-color);border-radius:8px;overflow:hidden}.referrals-table th,.referrals-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--border-color)}.referrals-table th{background-color:var(--background-color);font-weight:600;color:var(--text-color);font-size:.9rem}.referrals-table tbody tr:hover{background-color:var(--background-color)}.referrals-table tbody tr:last-child td{border-bottom:none}.referrals-table td{font-size:.95rem;color:var(--text-color)}.status-pending{background-color:#ffc10733;color:#ff9800}.status-viewed{background-color:#2196f333;color:#2196f3}.status-rejected{background-color:#f4433633;color:#f44336}.status-accepted{background-color:#4caf5033;color:#4caf50}.loading-stats{text-align:center;padding:3rem;color:var(--text-color)}.empty-referrals{text-align:center;padding:2rem;color:var(--text-color);background-color:var(--background-color);border-radius:8px;margin-top:1.5rem}.empty-referrals p{margin:0;font-size:1rem}@media (max-width: 768px){.stats-summary{grid-template-columns:1fr 1fr}.referrals-table{font-size:.85rem}.referrals-table th,.referrals-table td{padding:.75rem .5rem}.stat-number{font-size:2rem}}.inline-invite-form{background-color:#f4f1e8;border:2px solid #2d5016;border-radius:8px;padding:1.5rem;margin:1rem 0;color:#2d5016;width:100%;max-width:500px;box-sizing:border-box}.search-input-wrapper{position:relative;margin-bottom:.75rem;width:100%}.inline-invite-input{width:100%;max-width:400px;padding:.5rem;border:1px solid #4a6b2a;border-radius:4px;background-color:#fffc;color:#2d5016;font-size:.9rem}.inline-invite-input:focus{outline:none;border-color:#1a3009;background-color:#fffffff2}.inline-invite-input::placeholder{color:#4a6b2a}.inline-invite-form .search-results{list-style:none;padding:0;margin:0;border:1px solid #4a6b2a;border-radius:4px;max-height:120px;overflow-y:auto;background-color:#fffffff2;position:absolute;top:100%;left:0;width:100%;z-index:10;margin-top:.25rem}.inline-invite-form .search-results li{padding:.5rem .75rem;cursor:pointer;border-bottom:1px solid rgba(74,107,42,.2);color:#2d5016}.inline-invite-form .search-results li:last-child{border-bottom:none}.inline-invite-form .search-results li:hover{background-color:#ede8db}.inline-invite-form .search-results li.selected{background-color:#e6dfc8;font-weight:500}.inline-invite-form .search-results li.new-player-invite{background-color:#f9f7f0;border:1px solid #2d5016;border-radius:4px;margin:.25rem;font-weight:500}.inline-invite-form .search-results li.new-player-invite:hover{background-color:#ede8db;border-color:#1a3009}.new-player-info{display:flex;flex-direction:column;gap:.25rem}.new-player-label{font-weight:600;color:#2d5016}.new-player-contact{font-size:.85rem;color:#4a6b2a}.player-info{display:flex;flex-direction:column;gap:.2rem}.player-name{font-weight:500}.player-email{font-size:.8rem;color:#4a6b2a;opacity:.9}.selection-info{background-color:#ffffff80;padding:.75rem;border-radius:4px;border:1px solid #4a6b2a;margin:.5rem 0;font-size:.9rem}.selection-info.new-player-selection{background-color:#ffffffb3;border-color:#2d5016;color:#2d5016}.selected-email{font-size:.85rem;color:#4a6b2a;margin-top:.25rem}.invite-method{font-size:.85rem;color:#4a6b2a;font-style:italic;margin-top:.5rem}.inline-invite-form .btn{background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316);color:#1a1a1a;border:none;padding:.5rem 1rem;border-radius:4px;font-weight:600;cursor:pointer;box-shadow:0 2px 4px #fbbf244d;transition:all .2s ease}.inline-invite-form .btn:hover:not(:disabled){background:linear-gradient(135deg,#f59e0b,#f97316,#ea580c);transform:translateY(-1px);box-shadow:0 4px 8px #fbbf2466}.inline-invite-form .btn.valid-input{background:linear-gradient(135deg,#f59e0b,#f97316,#ea580c)}.inline-invite-form .btn.valid-input:hover:not(:disabled){background:linear-gradient(135deg,#ea580c,#dc2626,#b91c1c)}.inline-invite-form .btn:disabled{background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316)!important;color:#1a1a1a!important;cursor:not-allowed;opacity:.7;transform:none;box-shadow:0 2px 4px #fbbf2433}.inline-error{color:#8b0000;font-size:.85rem;margin-top:.5rem;margin-bottom:0}.invite-form-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;margin-top:1rem;width:100%}.leagues-page{width:100%;margin:0 auto;padding:0 10.5%;box-sizing:border-box}.league-round-actions{display:flex;gap:.5rem;align-items:center;justify-content:flex-start}.league-round-actions .btn{margin:0;white-space:nowrap}.leagues-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.leagues-page .page-header .btn-primary{background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316);border:none;color:#1a1a1a;font-weight:600;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;transition:all .3s ease;text-shadow:none;box-shadow:0 2px 4px #fbbf244d}.leagues-page .page-header .btn-primary:hover{background:linear-gradient(135deg,#f59e0b,#f97316,#ea580c);transform:translateY(-1px);box-shadow:0 4px 8px #fbbf2466}.leagues-page .page-header .btn-primary:active{transform:translateY(0);box-shadow:0 2px 4px #fbbf244d}.leagues-section{margin-bottom:2.5rem}.leagues-section h3{margin-bottom:1rem;color:var(--text-color-primary)}.league-detail-page{display:flex;flex-direction:column;gap:1.5rem;width:100%;margin:0 auto;padding:0 10.5%;box-sizing:border-box}.league-detail-page .page-header{margin-top:.5rem;margin-bottom:.4rem}.leagues-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.league-card{display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.league-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.league-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.league-card-header h3{margin:0;color:var(--primary-color)}.league-card-description{flex-grow:1;margin:.5rem 0 1.5rem;color:var(--text-color-secondary);font-size:.9rem}.league-card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.95rem;color:var(--text-color-secondary)}.round-header,.section-header{display:flex;justify-content:space-between;align-items:center}.round-start-time{font-size:.95rem;color:var(--text-color-secondary);font-weight:400;margin-left:.75rem}.round-details{border-top:1px solid var(--border-color);padding:1rem 0}.round-details:first-of-type{border-top:none}.round-submission-table{width:100%;margin-top:1rem;border-collapse:collapse}.round-submission-table th,.round-submission-table td{padding:.5rem;text-align:left;border-bottom:1px solid var(--border-color)}.round-submission-table th{font-weight:700;color:var(--text-color-secondary);font-size:.95rem}.round-submission-table tbody tr:last-child td{border-bottom:none}.round-submission-score{display:flex;align-items:center;gap:.75rem}.points-badge{background-color:var(--primary-color);color:var(--masters-green-dark);padding:.15rem .5rem;border-radius:8px;font-size:.9rem;font-weight:700}.league-leaderboard{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.league-leaderboard li{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0}.league-leaderboard strong{color:var(--primary-color)}.checkbox-group{display:flex;align-items:center;gap:.5rem;cursor:pointer}.inline-invite-form{display:flex;align-items:center;gap:.5rem;flex-grow:1;max-width:350px}.search-input-wrapper{position:relative;flex-grow:1}.inline-invite-input{width:100%;padding:.5rem;font-size:.9rem;background-color:var(--surface-color);border:1px solid var(--border-color);color:var(--text-color);border-radius:6px}.inline-invite-input::placeholder{color:var(--text-white);opacity:.7}.inline-invite-form .btn.btn-secondary{background-color:var(--highlighter-yellow);color:var(--masters-green-dark);border:1px solid var(--masters-green-dark);opacity:.9}.inline-invite-form .btn.btn-secondary:hover{background-color:var(--highlighter-yellow-hover);opacity:1}.inline-invite-form .btn.btn-secondary:disabled{opacity:1}.member-actions{display:flex;gap:.75rem}.league-table-wrapper{overflow-x:auto;padding-bottom:1rem}.league-pivot-table{border-collapse:collapse;width:100%;margin-top:1.5rem;background-color:var(--sand-color);color:var(--masters-green-dark)}.league-pivot-table th,.league-pivot-table td{border:1px solid var(--border-color);text-align:center;padding:.5rem;min-width:35px}.league-pivot-table tbody td{color:var(--primary-color);font-weight:700;background-color:var(--surface-color)}.league-pivot-table thead th{border-bottom:2px solid var(--primary-color)}.league-pivot-table .round-label-cell{text-align:left;font-weight:700;white-space:nowrap;display:flex;justify-content:space-between;align-items:center;vertical-align:middle;min-height:38px;gap:1rem;background-color:var(--sand-color);color:var(--masters-green-dark);min-width:200px}.round-status-group{display:flex;align-items:center;gap:.75rem}.round-start-time-label{font-size:.9rem;font-weight:400;color:var(--masters-green-dark);opacity:.8}.round-label-cell .countdown-timer{background-color:var(--surface-color);border:none;padding:0;font-size:.9rem;text-align:right;color:var(--masters-green-dark)}.league-pivot-table .round-label-cell span{flex-grow:1}.league-pivot-table .player-name-header{text-align:left;vertical-align:bottom;padding-bottom:.5rem;background-color:var(--sand-color);color:var(--masters-green-dark)}.league-pivot-table .player-name{padding-bottom:140px;white-space:nowrap;vertical-align:bottom;position:relative;min-width:35px;max-width:35px;background-color:var(--sand-color)}.league-pivot-table .player-name div{transform:translate(-50%) rotate(-90deg);transform-origin:bottom center;position:absolute;bottom:24px;left:50%;width:130px;text-align:center}.league-pivot-table .player-name div a{color:var(--masters-green-dark);text-decoration:none;font-weight:700}.league-pivot-table .player-name div a:hover{text-decoration:underline;color:var(--highlighter-yellow-hover)}.league-pivot-table .sort-column{border:none;padding:0 .25rem;background-color:var(--surface-color);width:1%}.sort-button{background-color:var(--highlighter-yellow);color:var(--masters-green-dark);border:1px solid var(--masters-green-dark);cursor:pointer;padding:.2rem .4rem;border-radius:4px;transition:background-color .2s,color .2s;font-size:.9rem;opacity:.8}.sort-button:hover,.sort-button.active{background-color:var(--highlighter-yellow-hover);color:var(--masters-green-dark);opacity:1}.league-pivot-table tfoot td{background-color:var(--sand-color-hover);font-weight:700;color:var(--masters-green-dark);border-top:2px solid var(--border-color)}.league-pivot-table tfoot .summary-row .round-label-cell{background-color:var(--sand-color);color:var(--masters-green-dark)}.league-pivot-table tfoot tr:last-child td{border-bottom:none}.card h3{margin:0 0 1rem;color:var(--text-color-secondary);font-size:1.2rem;font-weight:600;border-bottom:1px solid var(--border-color);padding-bottom:.75rem}.league-description{margin:.5rem 0 .75rem;color:var(--text-color-secondary);font-style:italic}.league-info-grid{display:flex;justify-content:space-between;width:90%;margin:1.5rem auto 0}.league-info-table{width:45%;border-collapse:collapse;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;border-spacing:0;background-color:var(--sand-color);color:var(--masters-green-dark)}.league-info-table thead th{background-color:var(--masters-green-light);color:#fff;text-transform:uppercase;font-size:.9rem;font-weight:700;text-align:center;border-bottom:1px solid var(--border-color)}.league-info-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.league-info-table tr:last-child td{border-bottom:none}.league-info-table tbody tr:hover{background-color:var(--sand-color-hover)}.league-info-table td:first-child{color:var(--masters-green-dark);font-weight:600;background-color:transparent;border-right:1px solid var(--border-color)}.league-info-table td:last-child{font-weight:700;text-align:left}.member-list{list-style:none;padding:0;margin:1rem 0 0;columns:2;-webkit-columns:2;-moz-columns:2}.member-list li a{color:var(--sand-color);text-decoration:none;font-weight:500;transition:color .2s}.member-list li a:hover{color:var(--sand-color-hover)}.countdown-timer{background-color:var(--background-color);padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border-color);color:var(--text-color-secondary);font-size:.9rem;text-align:center}.countdown-timer strong{color:var(--primary-color);font-weight:700;margin-left:.5rem;font-family:monospace}.privacy-badge{padding:.25rem .6rem;border-radius:12px;font-size:.95rem;font-weight:700;text-transform:uppercase}.privacy-badge.public{background-color:var(--masters-green-light);color:var(--masters-green-dark)}.privacy-badge.private{background-color:#eef2ff;color:#ff0a0a}.invite-actions{display:flex;justify-content:flex-end;gap:.5rem}.leagues-table-container{width:100%;background-color:var(--surface-color);border-radius:12px;padding:1.5rem;box-shadow:0 10px 25px #00000014;box-sizing:border-box;border:1px solid var(--border-color);overflow-x:auto}.leagues-table{width:100%;border-collapse:collapse;min-width:800px}.leagues-table th,.leagues-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle;white-space:nowrap}.leagues-table tbody tr:last-child td{border-bottom:none}.leagues-table thead{position:relative}.leagues-table thead tr{background-color:transparent}.leagues-table th{background-color:var(--primary-color);color:var(--masters-green-dark);text-transform:uppercase;font-size:.85rem;letter-spacing:.5px;font-weight:600;padding:.5rem .75rem;border:none}.leagues-table th:first-child{border-top-left-radius:8px;border-bottom-left-radius:8px}.leagues-table th:last-child{border-top-right-radius:8px;border-bottom-right-radius:8px}.leagues-table tbody tr:hover{background-color:var(--masters-green-light)}.leagues-table .actions-cell{text-align:right;width:1%;white-space:nowrap}.leagues-table .btn-small{padding:.25rem .75rem;font-size:.9rem;font-weight:600;text-transform:none}.leagues-table .league-description-cell{color:var(--text-color-secondary);font-size:.9rem;max-width:300px;white-space:normal;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.leagues-table a{color:var(--masters-green-light);text-decoration:none;font-weight:500}.leagues-table a:hover{text-decoration:underline}.leagues-table tbody td:first-child,.leagues-table tbody td:first-child a{font-weight:700;color:var(--text-white)}.loading-indicator{display:inline-block;margin-left:.5rem;animation:spin 1s linear infinite;color:var(--masters-green-light);font-size:1.2em}.league-members-section{background-color:var(--surface-color);border-radius:12px;padding:1.5rem;margin-top:2rem;margin-bottom:3rem;border:1px solid var(--border-color)}.league-members-section h3{margin-top:0;margin-bottom:1.5rem;color:var(--text-color-primary);font-size:1.25rem;font-weight:600}.league-members-section .section-content{background-color:var(--bg-color);border-radius:8px;padding:1rem;border:1px solid var(--border-color-light, rgba(255, 255, 255, .1))}.league-members-section table{margin-bottom:0}.league-members-section .inline-invite-form{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.leagues-table .column-separator{border-right:2px solid var(--masters-green-light)}.leagues-table th.column-separator{border-right:2px solid var(--masters-green-light)!important}.leagues-table .column-separator:last-child{border-right:none}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.radio-group{display:flex;gap:1rem;margin-top:.5rem}.radio-option{display:flex;align-items:center;padding:.5rem 1rem;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.radio-option:hover{border-color:var(--primary-color);background-color:#ffffff0d}.radio-option input[type=radio]{margin-right:.5rem}.radio-option input[type=radio]:checked+span{font-weight:700;color:var(--primary-color)}.modal-content{background-color:var(--surface-color);padding:2rem;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 5px 15px #0000004d}.modal-content h2{margin-top:0;text-align:center;color:var(--primary-color)}.distance-slider{width:100%;height:6px;border-radius:3px;background:#ddd;outline:none;opacity:.7;transition:opacity .2s;margin:10px 0}.distance-slider:hover{opacity:1}.distance-slider::-webkit-slider-thumb{appearance:none;width:20px;height:20px;border-radius:50%;background:var(--primary-color, #2d6e3e);cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.distance-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--primary-color, #2d6e3e);cursor:pointer;border:2px solid white;box-shadow:0 2px 4px #0003}.slider-labels{display:flex;justify-content:space-between;font-size:.85em;color:#fbbf24;margin-top:5px}.slider-labels span{font-weight:500}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-color);font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--background-color);color:var(--text-color);font-size:1rem}.form-group textarea{min-height:80px;resize:vertical}.privacy-toggle-group{display:flex;gap:.5rem;margin-top:.5rem}.privacy-toggle-btn{flex:1;padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--background-color);color:var(--text-color);font-size:.9rem;cursor:pointer;transition:all .2s ease}.privacy-toggle-btn.active{background-color:var(--primary-color);color:var(--masters-green-dark);border-color:var(--primary-color)}.privacy-toggle-btn:hover{border-color:var(--primary-color)}.form-help{display:block;margin-top:.5rem;color:#fff;font-size:.85rem;line-height:1.4}.form-group input[type=checkbox]{width:auto;margin-right:.5rem;transform:scale(1.1)}.error-message{color:var(--error-color, #ef4444);background-color:#ef44441a;padding:.75rem 1rem;border-radius:6px;border:1px solid rgba(239,68,68,.3);margin:1rem 0;font-size:.9rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;border-top:1px solid var(--border-color);padding-top:1.5rem}.modal-actions button{padding:.75rem 1.5rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.modal-actions button[type=button]{background-color:var(--background-color);color:var(--text-color);border:1px solid var(--border-color)}.modal-actions button[type=button]:hover:not(:disabled){background-color:var(--surface-color);border-color:var(--primary-color)}.modal-actions button[type=submit]{background:linear-gradient(135deg,#fbbf24,#f59e0b,#f97316);border:none;color:#1a1a1a;font-weight:600;box-shadow:0 2px 4px #fbbf244d}.modal-actions button[type=submit]:hover:not(:disabled){background:linear-gradient(135deg,#f59e0b,#f97316,#ea580c);transform:translateY(-1px);box-shadow:0 4px 8px #fbbf2466}.modal-actions button:disabled{opacity:.6;cursor:not-allowed}.session-history-page{display:flex;flex-direction:column;height:100%;width:100%;margin:0 auto;padding:0 10.5%;box-sizing:border-box;max-width:none!important}.session-history-page .page-header{margin-bottom:.5rem!important;padding-bottom:.25rem!important}.session-history-page .page-header h2{margin:.25rem 0!important}.session-list-container.full-height{flex-grow:1;display:flex;flex-direction:column;min-height:0}.session-table-wrapper{flex-grow:1;overflow-y:auto;border:1px solid var(--border-color);border-radius:12px;background-color:var(--surface-color);width:100%;min-height:400px}.session-history-page .session-table{width:100%;min-width:1200px}.session-history-page .session-table th,.session-history-page .session-table td{padding:1rem .75rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.session-history-page .session-table th{background-color:var(--surface-color);color:var(--primary-color);text-transform:uppercase;font-size:.9rem;font-weight:700;letter-spacing:.5px;text-align:center;position:sticky;top:0;z-index:10}.session-history-page .session-table th:first-child{text-align:left}.session-history-page .session-table tbody tr{cursor:pointer;transition:background-color .15s ease-in-out}.session-history-page .session-table tbody tr:hover{background-color:var(--masters-green-light)}.session-history-page .session-table tbody tr:nth-child(2n){background-color:#ffffff05}.session-history-page .session-table tbody tr:nth-child(2n):hover{background-color:var(--masters-green-light)}.session-history-page .session-table tbody tr.is-locked{opacity:.6;position:relative}.session-history-page .session-table tbody tr.is-locked:after{content:"🔒";position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:1.2rem;opacity:.7}.session-history-page .session-table tbody tr.is-locked:hover{opacity:.8;background-color:#1884004d}.session-history-page .session-table th:nth-child(1),.session-history-page .session-table td:nth-child(1){width:120px}.session-history-page .session-table th:nth-child(2),.session-history-page .session-table td:nth-child(2){width:120px}.session-history-page .session-table th:nth-child(3),.session-history-page .session-table td:nth-child(3){width:80px}.session-history-page .session-table th:nth-child(4),.session-history-page .session-table td:nth-child(4){width:80px}.session-history-page .session-table th:nth-child(5),.session-history-page .session-table td:nth-child(5){width:60px}.session-history-page .session-table th:nth-child(6),.session-history-page .session-table td:nth-child(6){width:60px}.session-history-page .session-table th:nth-child(7),.session-history-page .session-table td:nth-child(7){width:80px}.session-history-page .session-table th:nth-child(8),.session-history-page .session-table td:nth-child(8){width:80px}.session-history-page .session-table th:nth-child(9),.session-history-page .session-table td:nth-child(9){width:60px}.session-history-page .session-table th:nth-child(10),.session-history-page .session-table td:nth-child(10){width:60px}.session-history-page .session-table th:nth-child(11),.session-history-page .session-table td:nth-child(11){width:80px}.session-history-page .session-details-content{padding:2rem}.session-history-page .details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;max-width:none;margin-left:21%;grid-template-rows:1fr;grid-auto-flow:column}.session-history-page .details-grid .details-section:first-child{margin-left:2rem}.session-details-header{text-align:center!important;color:var(--primary-color)!important;font-size:1.25rem!important;font-weight:700!important;margin:.4rem 0!important;padding-bottom:.5rem!important;border-bottom:3px solid var(--masters-green-medium)!important;width:100%!important;position:relative!important}.upgrade-prompt-sessions{background-color:var(--surface-color);border:1px solid var(--primary-color);border-radius:12px;padding:3rem;text-align:center;margin-top:2rem}.upgrade-prompt-sessions h3{color:var(--primary-color);margin-top:0;font-size:1.5rem}.upgrade-prompt-sessions .btn{margin-top:1.5rem}@media (max-width: 1400px){.session-history-page .session-table{min-width:1100px}.session-history-page .session-table th,.session-history-page .session-table td{padding:.75rem .5rem;font-size:.9rem}}.session-history-page .session-table{border-collapse:separate!important;border-spacing:0!important}.session-history-page .session-table th,.session-history-page .session-table td{border-right:1px solid var(--surface-color)!important;border-bottom:1px solid var(--surface-color)!important}.session-history-page .session-table th:last-child,.session-history-page .session-table td:last-child{border-right:none!important}.session-history-page .session-table tbody tr:last-child td{border-bottom:none!important}@media (max-width: 768px){.session-history-page{padding:0 2%}.session-history-page .page-header{margin-top:1rem;margin-bottom:.5rem}.session-history-page .page-header h2{font-size:1.5rem}.session-history-page .session-table{min-width:1000px}.session-history-page .session-table th,.session-history-page .session-table td{padding:.4rem .3rem;font-size:.7rem}.session-history-page .session-table th:nth-child(2){width:140px}.session-table-wrapper{min-height:300px;max-height:70vh}.session-details-content{padding:1rem}.session-history-page .details-grid{grid-template-columns:1fr;gap:1.5rem;margin-left:0}.session-history-page .details-grid .details-section:first-child{margin-left:0}.session-details-header{font-size:1rem!important}}.league-achievement{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin:1.5rem 0}.performance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.performance-header h4{margin:0;color:var(--primary-color);font-size:1.2rem}.rounds-completed{background-color:var(--primary-color);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:700}.performance-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1rem}.stat-group{background-color:var(--background-color);border-radius:8px;padding:1rem}.stat-group h5{margin:0 0 1rem;color:var(--primary-color);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.stat-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:.25rem 0}.stat-row:last-child{margin-bottom:0}.stat-label{font-weight:500;color:var(--text-color-secondary);font-size:.9rem}.stat-value{font-weight:700;color:var(--text-color-primary);font-size:1rem;font-family:monospace}.performance-note{text-align:center;color:var(--text-color-secondary);font-style:italic;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.performance-note small{font-size:.8rem}.performance-loading,.performance-error{text-align:center;padding:2rem;color:var(--text-color-secondary)}.performance-error{color:var(--error-color, #dc3545)}.no-performance-data{text-align:center;padding:2rem;color:var(--text-color-secondary)}.no-performance-data p{margin:0 0 .5rem;color:var(--text-color-primary)}.no-performance-data small{font-size:.85rem;color:var(--text-color-secondary)}@media (max-width: 768px){.performance-header{flex-direction:column;align-items:stretch;text-align:center;gap:1rem}.performance-stats-grid{grid-template-columns:1fr;gap:1rem}.stat-group{padding:.75rem}.stat-row{padding:.5rem 0;border-bottom:1px solid var(--border-color)}.stat-row:last-child{border-bottom:none}}.league-achievement.compact{padding:1rem;margin:1rem 0}.league-achievement.compact .performance-header{margin-bottom:1rem}.league-achievement.compact .performance-header h4{font-size:1rem}.league-achievement.compact .performance-stats-grid{grid-template-columns:1fr 1fr;gap:1rem}.league-achievement.compact .stat-group{padding:.75rem}.league-achievement.compact .stat-group h5{font-size:.9rem;margin-bottom:.75rem}.league-achievement.compact .stat-row{margin-bottom:.5rem}.league-achievement.compact .stat-label,.league-achievement.compact .stat-value{font-size:.85rem}@media (max-width: 480px){.league-achievement.compact .performance-stats-grid{grid-template-columns:1fr}}.achievement-certificates{margin-top:2rem}.certificates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.certificates-header h3{margin:0;color:var(--primary-color)}.certificates-count{color:var(--text-color-secondary);font-size:.9rem}.certificates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem;margin-bottom:1.5rem}.certificate-card{background-color:var(--surface-color);border:2px solid;border-radius:12px;overflow:hidden;transition:transform .2s ease}.certificate-card:hover{transform:translateY(-2px)}.certificate-header{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--background-color) 0%,var(--surface-color) 100%);border-bottom:1px solid var(--border-color)}.achievement-icon{font-size:2rem;display:flex;align-items:center;justify-content:center;width:50px;height:50px}.achievement-info{flex:1}.achievement-title{margin:0 0 .25rem;color:var(--primary-color);font-size:1.1rem}.achievement-category{margin:0;color:var(--text-color-secondary);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.rarity-badge{padding:.25rem .75rem;border-radius:20px;color:#fff;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.certificate-body{padding:1.5rem}.achievement-value{font-size:2rem;font-weight:700;color:var(--primary-color);text-align:center;margin-bottom:.5rem}.achievement-description{text-align:center;color:var(--text-color-secondary);margin-bottom:1.5rem;font-style:italic}.certificate-dates{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;padding:1rem;background-color:var(--background-color);border-radius:8px}.date-item{text-align:center}.date-label{display:block;font-size:.8rem;color:var(--text-color-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.date-value{display:block;font-weight:700;color:var(--text-color-primary)}.blockchain-info{margin-bottom:1rem}.blockchain-status{text-align:center;margin-bottom:.5rem}.verified{color:var(--success-color, #28a745);font-weight:700}.pending{color:var(--warning-color, #ffc107);font-weight:700}.blockchain-details{text-align:center;font-size:.85rem;color:var(--text-color-secondary)}.block-height{font-family:monospace;background-color:var(--background-color);padding:.25rem .5rem;border-radius:4px;display:inline-block}.details-toggle{width:100%;padding:.75rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:6px;color:var(--text-color-primary);cursor:pointer;font-size:.9rem;transition:all .2s ease}.details-toggle:hover{background-color:var(--masters-green-light)}.certificate-details{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.detail-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.detail-item:last-child{margin-bottom:0}.detail-label{font-size:.85rem;color:var(--text-color-secondary)}.detail-value{font-family:monospace;font-size:.85rem;color:var(--text-color-primary)}.cert-id{color:var(--primary-color)}.hash{color:var(--text-color-secondary)}.certificates-footer{text-align:center;margin-top:2rem}.blockchain-note{color:var(--text-color-secondary);font-size:.85rem;font-style:italic}.certificates-upgrade-prompt,.certificates-empty{text-align:center;padding:2rem;background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:12px}.certificates-upgrade-prompt h3,.certificates-empty h3{margin-top:0;color:var(--primary-color)}.upgrade-info{margin:1.5rem 0;text-align:left;max-width:500px;margin-left:auto;margin-right:auto}.upgrade-info ul{list-style-position:inside;padding-left:0}.upgrade-info li{margin-bottom:.5rem}.upcoming-achievements{margin:1.5rem 0;text-align:left;max-width:400px;margin-left:auto;margin-right:auto}.upcoming-achievements h4{color:var(--primary-color);text-align:center}.upcoming-achievements ul{list-style-position:inside;padding-left:0}.upcoming-achievements li{margin-bottom:.5rem}.certificates-loading,.certificates-error{text-align:center;padding:2rem;color:var(--text-color-secondary)}.certificates-error{color:var(--error-color, #dc3545)}.career-stats-page{margin-left:10%;margin-right:10%;display:flex;flex-direction:column;gap:1.5rem}.career-stats-page .career-stats-table{border:1px solid var(--border-color);background-color:var(--surface-color);border-radius:12px;overflow:hidden;margin-top:1.5rem;margin-bottom:2.1rem;border-spacing:0;border-collapse:collapse}.career-stats-page .career-stats-table th:not(:last-child),.career-stats-page .career-stats-table td:not(:last-child){border-right:1px solid var(--border-color)}.career-stats-page .career-stats-table th,.career-stats-page .career-stats-table td{padding:1.6rem 1.8rem}.career-stats-page .career-stats-table thead th{background-color:var(--background-color);color:var(--primary-color);text-transform:uppercase;font-size:.9rem;font-weight:700;text-align:center;border-bottom:2px solid var(--primary-color)}.career-stats-page .career-stats-table thead th:first-child{text-align:left;font-size:1.1rem;text-transform:none;color:var(--primary-color)}.career-stats-page .career-stats-table .table-category-header td{background-color:var(--background-color);color:var(--primary-color);font-weight:700;text-align:center;border-top:1px solid var(--border-color)}.career-stats-page .career-stats-table tbody tr:not(.table-category-header):hover{background-color:var(--masters-green-light)}.career-stats-page .career-stats-table tbody tr:last-child td{border-bottom:none}.career-stats-page .career-stats-table td[style*=italic]{text-align:center;color:var(--text-color-secondary);opacity:.7;padding:1rem .8rem}.stats-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem;align-items:start}.upgrade-prompt{background-color:var(--surface-color);border:1px solid var(--primary-color);border-radius:12px;padding:2rem;text-align:center}.upgrade-prompt h3{color:var(--primary-color);margin-top:0}.summary-tables-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem;margin-bottom:2rem;align-items:start}.summary-table-container{width:100%;box-sizing:border-box}.summary-table-container .career-stats-table{width:100%;margin-top:1.5rem;margin-bottom:0}.summary-table-container h3{margin-top:0;margin-bottom:0;color:var(--primary-color);text-align:center;font-size:1.2rem;font-weight:700;padding:.75rem 0}.summary-table-container .career-stats-table a{color:var(--sand-color);font-weight:700;text-decoration:none}.summary-table-container .career-stats-table a:hover{color:var(--sand-color-hover);text-decoration:underline}.summary-table-container .career-stats-table th,.summary-table-container .career-stats-table td{text-align:left;vertical-align:middle;padding:.75rem 1rem}.summary-table-container .career-stats-table th:not(:first-child),.summary-table-container .career-stats-table td:not(:first-child){text-align:center}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase;white-space:nowrap}.status-won{background-color:#22c55e;color:#fff}.status-lost{background-color:#ef4444;color:#fff}.status-draw{background-color:#6b7280;color:#fff}.status-pending{background-color:#f59e0b;color:#fff}.status-active{background-color:#3b82f6;color:#fff}.status-completed{background-color:#10b981;color:#fff}@media (max-width: 768px){.summary-tables-grid{grid-template-columns:1fr;gap:1rem}.summary-table-container h3{font-size:1.1rem;padding:.5rem 0}}.certificates-section{margin-top:2rem;padding:1.5rem;background-color:var(--surface-color);border-radius:12px;border:1px solid var(--border-color)}.certificates-section h3{margin-top:0;margin-bottom:1.5rem;color:var(--primary-color);text-align:center;font-size:1.4rem;border-bottom:2px solid var(--primary-color);padding-bottom:.75rem}.certificates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.certificate-card{background-color:var(--background-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem;text-align:center;transition:transform .2s ease,box-shadow .2s ease}.certificate-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}@media (max-width: 1200px){.career-stats-page{margin-left:7%;margin-right:7%}}@media (max-width: 1024px){.career-stats-page{margin-left:5%;margin-right:5%}.stats-split-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width: 768px){.career-stats-page{margin-left:2%;margin-right:2%;gap:1rem}.certificates-grid{grid-template-columns:1fr;gap:1rem}}.coach-page-layout{display:flex;height:calc(100vh - 100px)}.conversation-sidebar{width:22%;border-right:1px solid var(--border-color);padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem;background-color:var(--background-color)}.new-chat-button{width:100%;margin-bottom:1rem}.conversation-list{display:flex;flex-direction:column;gap:.5rem}.conversation-item{padding:.75rem;border-radius:6px;cursor:pointer;transition:background-color .2s;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conversation-item:hover{background-color:var(--surface-color)}.conversation-item.selected{background-color:var(--primary-color);color:var(--masters-green-dark)}.chat-panel{width:78%;display:flex;flex-direction:column;background-color:var(--surface-color)}.chat-container{flex-grow:1;display:flex;flex-direction:column;overflow:hidden}.chat-messages{flex-grow:1;padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.empty-chat-message{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;color:var(--text-color-secondary);text-align:center}.message{display:flex;max-width:85%}.message.bot{justify-content:flex-start}.message.user{justify-content:flex-end;align-self:flex-end}.message-bubble{padding:.75rem 1.25rem;border-radius:18px;color:var(--text-color);background-color:var(--background-color);border:1px solid var(--border-color)}.message.bot .message-bubble{border-top-left-radius:4px}.message.user .message-bubble{background-color:var(--primary-color);color:var(--masters-green-dark);border-bottom-right-radius:4px;border-color:var(--primary-color)}.message-bubble p{margin:0}.chat-input-area{display:flex;flex-direction:column;padding:1rem;border-top:1px solid var(--border-color);background-color:var(--background-color)}.chat-input-area form{display:flex;width:100%}.chat-input-area input{flex-grow:1;margin-right:1rem}.rate-limit-error{color:var(--warning-color);font-size:.875rem;margin-bottom:.5rem;text-align:center;width:100%}.typing-indicator{display:flex;align-items:center;gap:5px}.typing-indicator span{height:8px;width:8px;background-color:var(--primary-color);border-radius:50%;animation:typing 1.4s infinite both}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.pvp-page{padding:2rem;margin:2rem auto}.pvp-page h2{text-align:center;margin-bottom:2rem;color:#0a0f0a;font-weight:600}.player-selection-area{display:flex;justify-content:space-around;align-items:flex-start;margin-bottom:2rem;gap:2rem}.player-search-container{width:45%;position:relative}.player-search-container label{font-weight:600;color:#0a0f0a;margin-bottom:.5rem;display:block}.player-search-container input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-size:16px;box-sizing:border-box}.search-results{position:absolute;width:100%;background:#fff;border:1px solid #ccc;border-top:none;border-radius:0 0 4px 4px;z-index:1000;max-height:200px;overflow-y:auto}.search-result-item{padding:.75rem;cursor:pointer}.search-result-item:hover{background-color:#f0f2f5}.comparison-area{display:flex;justify-content:center;align-items:stretch;gap:1rem}.player-card{flex:1;padding:1.5rem;background-color:#fff;border-radius:8px;box-shadow:0 2px 10px #0000000d;text-align:center}.player-card h3{font-size:22px;margin-bottom:1.5rem}.player-card .stat-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #eee;font-size:16px}.player-card .stat-item:last-child{border-bottom:none}.player-card .stat-label{color:#0a0f0a;font-weight:500}.player-card .stat-value{font-weight:700;color:#0a0f0a}.h2h-results{flex:0 0 150px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.h2h-results h4{margin:0;font-size:18px;color:#0a0f0a;font-weight:600}.h2h-score{font-size:48px;font-weight:700;margin:1rem 0;color:#0a0f0a}.pvp-loading,.pvp-error{text-align:center;margin-top:3rem;font-size:18px;color:#0a0f0a;font-weight:500}.pvp-error{color:#d93025;font-weight:600}.duels-leaderboard-container{margin:3rem 0;padding:2rem;background-color:#f8f9fa;border-radius:12px;border:1px solid #e9ecef}.duels-leaderboard-container h3{color:#0a0f0a;font-weight:600;margin-bottom:.5rem;text-align:center}.duels-leaderboard-container p{color:#0a0f0a;text-align:center;margin-bottom:2rem;opacity:.8}.leaderboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.duel-history-container{margin:3rem 0}.duel-history-container h3{color:#0a0f0a;font-weight:600;margin-bottom:1.5rem;text-align:center}.duel-table-wrapper{background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #00000014;border:1px solid #e9ecef}.duel-history-table{width:100%;border-collapse:collapse;font-size:14px}.duel-history-table th{background-color:#f8f9fa;color:#0a0f0a;font-weight:600;padding:1rem .75rem;text-align:left;border-bottom:2px solid #e9ecef}.duel-history-table td{padding:1rem .75rem;border-bottom:1px solid #f1f3f4;color:#0a0f0a}.duel-history-table tbody tr:hover{background-color:#f8f9fa}.duel-history-table tbody tr:last-child td{border-bottom:none}.score-cell{font-weight:600;text-align:center}.winner-cell{font-weight:600;color:#0d7a0d}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-completed{background-color:#d1e7dd;color:#0d5229}.status-active{background-color:#fff3cd;color:#664d03}.status-pending{background-color:#cff4fc;color:#055160}.status-expired{background-color:#f8d7da;color:#721c24}.empty-state{text-align:center;padding:3rem 1rem;color:#0a0f0a;opacity:.7}.empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}@media (max-width: 768px){.comparison-area{flex-direction:column;gap:2rem}.h2h-results{order:2;flex:1}.duel-table-wrapper{overflow-x:auto}.duel-history-table{min-width:600px}.leaderboard-grid{grid-template-columns:1fr;gap:1rem}}.notifications-page{margin:2rem auto}.notifications-list{display:flex;flex-direction:column;gap:1rem}.notification-item{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;transition:background-color .3s,border-left-color .3s;border-left:4px solid transparent}.notification-item.unread{border-left-color:var(--primary-color);background-color:var(--masters-green-light)}.notification-content p{margin:0;font-weight:500}.notification-timestamp{font-size:.85rem;color:var(--text-color-secondary);margin-top:.25rem}.notification-actions{display:flex;gap:.75rem;flex-shrink:0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.empty-state{text-align:center;padding:3rem 1.5rem;max-width:900px;margin:0 auto}.empty-state-icon{margin-bottom:1.5rem;animation:bellPulse 2s ease-in-out infinite}.empty-state-icon svg{display:inline-block;opacity:.8}@keyframes bellPulse{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.05);opacity:.6}}.empty-state-title{font-size:2rem;font-weight:700;margin-bottom:1rem;color:var(--text-color)}.empty-state-subtitle{font-size:1.1rem;color:var(--text-color-secondary);margin-bottom:3rem;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.connection-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:20px;font-size:.9rem;font-weight:600}.connection-badge.live{background-color:#00c8531a;color:#00c853;border:1px solid rgba(0,200,83,.3)}.connection-badge.offline{background-color:#ff98001a;color:#ff9800;border:1px solid rgba(255,152,0,.3)}.notification-types{margin-bottom:3rem}.notification-types h4{font-size:1.2rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-color)}.notification-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;max-width:800px;margin:0 auto}.notification-type-card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;transition:transform .2s,box-shadow .2s,border-color .2s;text-align:left}.notification-type-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary-color)}.type-icon{font-size:2rem;flex-shrink:0;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background-color:var(--background-color);border-radius:10px}.type-content{flex:1}.type-content strong{display:block;font-size:1rem;font-weight:600;margin-bottom:.25rem;color:var(--text-color)}.type-content p{margin:0;font-size:.9rem;color:var(--text-color-secondary);line-height:1.4}.empty-state-actions{margin-bottom:2rem}.empty-state-actions h4{font-size:1.2rem;font-weight:600;margin-bottom:1rem;color:var(--text-color)}.action-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.action-buttons .btn{padding:.75rem 1.5rem;font-size:1rem;text-decoration:none;display:inline-block}.connection-warning{background-color:#ff98001a;border:1px solid rgba(255,152,0,.3);border-radius:10px;padding:1.25rem;max-width:500px;margin:0 auto}.connection-warning p{margin:.5rem 0 0;font-size:.95rem;color:var(--text-color-secondary)}@media (max-width: 768px){.empty-state{padding:2rem 1rem}.empty-state-title{font-size:1.5rem}.empty-state-subtitle{font-size:1rem;margin-bottom:2rem}.notification-type-grid{grid-template-columns:1fr;gap:.75rem}.notification-type-card{padding:1rem}.type-icon{font-size:1.5rem;width:40px;height:40px}.action-buttons{flex-direction:column;align-items:stretch}.action-buttons .btn{width:100%}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.notification-item{flex-direction:column;align-items:flex-start}.notification-actions{width:100%;justify-content:flex-end}}.contacts-page{max-width:1200px;margin:0 auto;padding:2rem;background:var(--background-color);color:var(--text-color);min-height:100vh}.contacts-header{text-align:center;margin-bottom:2rem}.contacts-header h1{font-size:2.5rem;margin-bottom:.5rem;color:var(--primary-color)}.contacts-header p{font-size:1.1rem;opacity:.9;color:var(--text-color-secondary)}.contacts-content{background:var(--surface-color);border-radius:12px;padding:2rem;box-shadow:0 4px 6px #0000004d}.friends-section{max-width:800px;margin:0 auto}.search-container{margin-bottom:2rem}.search-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.search-header h2{margin:0;color:var(--primary-color);font-size:1.8rem}.privacy-info{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-color-secondary);background:#ffd7001a;padding:.5rem 1rem;border-radius:6px;border:1px solid rgba(255,215,0,.3)}.privacy-icon{font-size:1.1rem}.search-box{display:flex;gap:1rem;max-width:600px}.search-input{flex:1;padding:.75rem 1rem;background:var(--background-color);border:2px solid var(--border-color);border-radius:8px;color:var(--text-color);font-size:1rem}.search-input:focus{outline:none;border-color:var(--primary-color)}.search-button{padding:.75rem 1.5rem;background:var(--primary-color);border:none;border-radius:8px;color:var(--masters-green-dark);font-weight:600;cursor:pointer;transition:background .3s ease}.search-button:hover{background:var(--primary-color-hover)}.friends-lists{display:grid;gap:2rem}.friends-list-section h3{margin-bottom:1rem;color:var(--primary-color);font-size:1.4rem}.friends-list,.requests-list{background:var(--background-color);border-radius:8px;padding:1.5rem;min-height:150px}.empty-state{text-align:center;color:var(--text-color-secondary);padding:2rem}.empty-icon{font-size:3rem;margin-bottom:1rem}.empty-state p{margin:.5rem 0}.import-contacts-section{margin-top:1rem;text-align:center}.import-contacts-btn{padding:.75rem 1.5rem;font-size:1rem;font-weight:600}.contacts-list{max-height:400px;overflow-y:auto;border:1px solid var(--border-color);border-radius:8px;margin:1rem 0}.contact-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background-color .2s ease}.contact-item:last-child{border-bottom:none}.contact-item:hover{background-color:var(--masters-green-light)}.contact-item.selected{background-color:var(--primary-color);color:var(--masters-green-dark)}.contact-info{flex:1;text-align:left}.contact-name{font-weight:600;margin-bottom:.25rem}.contact-details{font-size:.9rem;opacity:.8}.contact-details span{display:block;margin:.1rem 0}.contact-checkbox{font-size:1.5rem;font-weight:700;margin-left:1rem}.contact-import-modal{max-width:800px;max-height:90vh;overflow-y:auto}.modal-header{text-align:center;margin-bottom:2rem;border-bottom:1px solid var(--border-color);padding-bottom:1rem}.modal-header h3{margin:0 0 .5rem;font-size:1.8rem;color:var(--primary-color)}.modal-header p{margin:0;color:var(--text-color-secondary);font-size:1.1rem}.platform-guides{display:grid;gap:1.5rem;margin-bottom:2rem}.platform-guide{border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;background:var(--background-color);transition:all .3s ease}.platform-guide:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.platform-header h4{margin:0 0 .5rem;font-size:1.3rem;color:var(--primary-color)}.platform-header p{margin:0 0 1rem;color:var(--text-color-secondary);font-style:italic}.platform-steps ol{margin:0 0 1rem;padding-left:1.5rem}.platform-steps li{margin:.5rem 0;color:var(--text-color);line-height:1.5}.platform-action{margin:1rem 0;text-align:center}.platform-action .btn{padding:.6rem 1.2rem;font-size:.9rem}.platform-note{display:flex;align-items:flex-start;gap:.5rem;background:#ffd7001a;border:1px solid rgba(255,215,0,.3);border-radius:6px;padding:.75rem;font-size:.9rem;color:var(--text-color)}.note-icon{font-size:1.1rem;flex-shrink:0}.import-help{background:var(--surface-color);border-radius:8px;padding:1.5rem;margin-bottom:2rem;border:1px solid var(--border-color)}.help-section{margin-bottom:1.5rem}.help-section:last-child{margin-bottom:0}.help-section h4{margin:0 0 .75rem;font-size:1.2rem;color:var(--primary-color)}.help-section p{margin:0 0 .5rem;color:var(--text-color);line-height:1.5}.help-section ul{margin:.5rem 0 1rem;padding-left:1.5rem}.help-section li{margin:.3rem 0;color:var(--text-color)}.copy-link-btn{margin-top:.5rem;padding:.5rem 1rem;font-size:.9rem}.modal-actions{text-align:center;border-top:1px solid var(--border-color);padding-top:1.5rem}.modal-actions .btn{min-width:140px;padding:.75rem 1.5rem;font-size:1rem}@media (max-width: 768px){.contacts-page{padding:1rem}.contacts-header h1{font-size:2rem}.search-header{flex-direction:column;text-align:center}.search-box{flex-direction:column}.contact-import-modal{max-width:95vw;margin:1rem}.platform-guides{gap:1rem}.platform-guide{padding:1rem}.modal-header h3{font-size:1.5rem}.platform-header h4,.help-section h4{font-size:1.1rem}}.profile-button{background-color:transparent;border:1px solid var(--border-color);color:var(--text-white);padding:.25rem 1rem;display:flex;align-items:center;gap:8px}.profile-button:hover{background-color:var(--surface-color)}.dropdown-menu .dropdown-item.unread{color:var(--primary-color);font-weight:700}.oauth-button{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.75rem 1rem;border:2px solid var(--provider-color, #e5e7eb);border-radius:8px;background:#fff;color:var(--provider-color, #374151);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;min-height:48px;position:relative}.oauth-button:hover:not(:disabled){background:var(--provider-color, #f3f4f6);color:#fff;border-color:var(--provider-color, #d1d5db);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.oauth-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #0000001a}.oauth-button:disabled{opacity:.6;cursor:not-allowed;background:#f9fafb;color:#9ca3af;border-color:#e5e7eb}.oauth-button.loading{cursor:wait}.oauth-button-google{--provider-color: #4285f4}.oauth-button-linkedin{--provider-color: #0077b5}.oauth-button-nostr{--provider-color: #8b5cf6}.oauth-icon{font-size:1.25rem;flex-shrink:0}.oauth-text{flex:1;text-align:center;white-space:nowrap}.oauth-spinner{position:absolute;right:1rem;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.oauth-button:focus{outline:none;ring:2px;ring-color:var(--provider-color, #3b82f6);ring-offset:2px}@media (max-width: 480px){.oauth-button{padding:.625rem .75rem;font-size:.9rem;gap:.5rem}.oauth-icon{font-size:1.1rem}}@media (prefers-color-scheme: dark){.oauth-button{background:#1f2937;color:#fff;border-color:var(--provider-color, #4b5563)}.oauth-button:hover:not(:disabled){background:var(--provider-color, #374151)}.oauth-button:disabled{background:#111827;color:#6b7280;border-color:#374151}}.oauth-buttons{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0}.oauth-divider{display:flex;align-items:center;text-align:center;margin:1.5rem 0}.oauth-divider:before,.oauth-divider:after{content:"";flex:1;height:1px;background:var(--border-color, #e5e7eb)}.oauth-divider:before{margin-right:1rem}.oauth-divider:after{margin-left:1rem}.oauth-divider-text{color:var(--text-muted, #6b7280);font-size:.9rem;font-weight:500}.oauth-button.link-mode{border-style:dashed;background:transparent}.oauth-button.unlink-mode{background:#fee2e2;border-color:#dc2626;color:#dc2626}.oauth-button.unlink-mode:hover:not(:disabled){background:#dc2626;color:#fff}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--background-color, hsl(137, 92%, 10%));background-image:linear-gradient(135deg,var(--masters-green-dark, hsl(137, 92%, 10%)) 0%,var(--masters-green-medium, hsl(105, 100%, 18%)) 100%);padding:20px}.login-card{background-color:var(--surface-color, hsl(105, 100%, 18%));color:var(--text-color, #ffffff);border:1px solid var(--border-color, #188400);border-radius:12px;padding:40px;box-shadow:0 10px 25px #0000004d;width:100%;max-width:400px}.login-header{text-align:center;margin-bottom:30px}.login-header h1{color:var(--primary-color, #FFD700);font-size:28px;margin-bottom:8px;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.login-header p{color:var(--text-color-secondary, #ffffff);font-size:16px;margin:0}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{color:var(--text-color, #ffffff);font-weight:500;font-size:14px}.form-group input{padding:12px 16px;border:1px solid var(--border-color, #188400);background-color:var(--background-color, hsl(137, 92%, 10%));color:var(--text-color, #ffffff);border-radius:8px;font-size:16px;transition:border-color .2s ease,box-shadow .2s ease}.form-group input::placeholder{color:var(--text-color-secondary, #ffffff)}.form-group input:focus{outline:none;border-color:var(--primary-color, #FFD700);box-shadow:0 0 0 3px #ffd70033}.form-group input:disabled{background-color:var(--surface-color, hsl(105, 100%, 18%));color:var(--text-color-secondary, #ffffff);opacity:.7}.login-button{background:linear-gradient(135deg,var(--primary-color, #FFD700) 0%,var(--primary-color-hover, #d58114) 100%);color:var(--background-color, hsl(137, 92%, 10%));border:none;padding:14px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;text-shadow:none}.login-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #ffd70066;background:var(--primary-color-hover, #d58114)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background:#f443361a;color:var(--error-color, #f44336);padding:12px 16px;border-radius:8px;font-size:14px;border:1px solid rgba(244,67,54,.3)}.success-message{background:#4caf501a;color:var(--success-color, #4caf50);padding:12px 16px;border-radius:8px;font-size:14px;border:1px solid rgba(76,175,80,.3)}.login-links{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color, #188400)}.link-button{background:none;border:none;color:var(--primary-color, #FFD700);cursor:pointer;font-size:14px;padding:4px 8px;text-decoration:underline;transition:color .2s ease,transform .2s ease}.link-button:hover{color:var(--primary-color-hover, #d58114);transform:translateY(-1px)}.link-button:disabled{opacity:.6;cursor:not-allowed}.register-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#f7fafc,#edf2f7)}.register-container{background:var(--surface-color, #ffffff);border-radius:12px;box-shadow:0 8px 32px #0000001a;padding:2rem;width:100%;max-width:500px}.register-header{text-align:center;margin-bottom:2rem}.register-header h1{color:var(--primary-color, #2d5016);font-size:2rem;font-weight:700;margin-bottom:1rem}.welcome-text{color:var(--text-color-secondary);font-size:1rem;margin:0}.invitation-context{background:linear-gradient(135deg,#f0f8f0,#e6f7e6);border:2px solid var(--primary-color);border-radius:8px;padding:1.5rem;margin:1.5rem 0;text-align:center}.invitation-context p{margin:0 0 .5rem;color:var(--primary-color);font-weight:600}.invitation-context .invitation-subtitle{color:var(--text-color-secondary);font-weight:400;font-size:.9rem}.duel-invitation{border-color:#f97316;background:linear-gradient(135deg,#fff7ed,#fed7aa)}.duel-invitation p{color:#c2410c}.league-invitation{border-color:#7c3aed;background:linear-gradient(135deg,#f3e8ff,#e9d5ff)}.league-invitation p{color:#6b21a8}.register-form{margin-bottom:2rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-color);font-weight:500;font-size:.9rem}.form-group input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:6px;background-color:var(--background-color);color:var(--text-color);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #2d50161a}.form-group input:read-only{background-color:#f8fafc;color:#64748b}.form-help{display:block;margin-top:.25rem;color:var(--text-color-secondary);font-size:.85rem;line-height:1.4}.form-help.prefilled{color:var(--primary-color);font-weight:500}.error-message{color:var(--error-color, #ef4444);background-color:#ef44441a;padding:.75rem;border-radius:6px;border:1px solid rgba(239,68,68,.3);margin-bottom:1rem;font-size:.9rem}.register-btn{width:100%;background:linear-gradient(135deg,var(--primary-color) 0%,#2d5016 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #2d50164d}.register-btn:hover:not(:disabled){background:linear-gradient(135deg,#1a3009,#0a5d1a);transform:translateY(-1px);box-shadow:0 4px 8px #2d501666}.register-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.oauth-divider{position:relative;text-align:center;margin:1.5rem 0}.oauth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:var(--border-color)}.oauth-divider-text{position:relative;background-color:var(--surface-color, #ffffff);padding:0 1rem;color:var(--text-color-secondary);font-size:.85rem;font-weight:500}.oauth-buttons{margin-bottom:1rem}.login-link{text-align:center;padding-top:1rem;border-top:1px solid var(--border-color)}.login-link p{margin:0;color:var(--text-color-secondary);font-size:.9rem}.login-link a{color:var(--primary-color);text-decoration:none;font-weight:500}.login-link a:hover{text-decoration:underline}.next-steps-preview{background:var(--background-color);border-radius:8px;padding:1.5rem;border:1px solid var(--border-color)}.next-steps-preview h3{color:var(--primary-color);font-size:1.1rem;margin:0 0 1rem;font-weight:600}.next-steps-preview ul{margin:0;padding-left:1.2rem;list-style:none}.next-steps-preview li{color:var(--text-color);margin-bottom:.5rem;font-size:.9rem;line-height:1.4;position:relative}.next-steps-preview li:last-child{margin-bottom:0}@media (max-width: 768px){.register-page{padding:1rem}.register-container{padding:1.5rem}.register-header h1{font-size:1.5rem}.invitation-context{padding:1rem}}.reset-password-page-container{display:flex;justify-content:center;align-items:center;height:100vh;width:100%;background-color:#f0f2f5}.reset-password-form-container{padding:2rem 3rem;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:100%;max-width:420px;text-align:center}.reset-password-form-container h2{margin-bottom:1.5rem;color:#333;font-size:24px}.reset-password-form-container p{color:#555;margin-bottom:1.5rem}.reset-password-form-group{margin-bottom:1rem;text-align:left}.reset-password-form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#555}.reset-password-form-group input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:4px;font-size:16px;box-sizing:border-box}.reset-password-button{width:100%;padding:.75rem;border:none;border-radius:4px;background-color:#007bff;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .3s ease}.reset-password-button:hover{background-color:#0056b3}.reset-password-button:disabled{background-color:#a0c8f0;cursor:not-allowed}.reset-password-message{color:#28a745;margin-top:1rem;padding:1rem;border:1px solid #c3e6cb;background-color:#d4edda;border-radius:4px}.reset-password-error{color:#d93025;margin-top:1rem}.back-to-login-link{display:inline-block;margin-top:1.5rem;font-size:14px;color:#007bff;text-decoration:none}.back-to-login-link:hover{text-decoration:underline}:root{--masters-green-dark: hsl(137, 92%, 10%);--masters-green-medium: hsl(105, 100%, 18%);--masters-green-light: #188400;--highlighter-yellow: #FFD700;--highlighter-yellow-hover: #d58114;--text-white: #ffffff;--sand-color: #f0e6d6;--sand-color-hover: #e1d5c3;--text-white-secondary: #ffffff;--background-color: var(--masters-green-dark);--surface-color: var(--masters-green-medium);--primary-color: var(--highlighter-yellow);--primary-color-hover: var(--highlighter-yellow-hover);--text-color: var(--text-white);--text-color-secondary: var(--text-white-secondary);--border-color: var(--masters-green-light);--error-color: #f44336;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}body{margin:0;font-family:var(--font-family);background-color:var(--background-color);color:var(--text-color);line-height:1.5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:auto}.App{display:flex;flex-direction:column;min-height:100vh}.container{width:100%;margin:0 auto;padding:.75rem;box-sizing:border-box}@media (max-width: 768px){.container{padding:.5rem}}.container-fluid{width:100%;height:100%}.app-header{background-color:var(--surface-color);padding:1.5rem 2rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.logo-link{display:flex;align-items:center}.logo-img{height:84px;width:auto}.app-header nav{display:flex;align-items:center;gap:1rem}.app-header nav .btn{padding-top:.25rem;padding-bottom:.25rem}.app-header nav a.btn:hover{background-color:#ff8c00;color:#000}@media (max-width: 768px){.app-header{flex-direction:column;align-items:stretch;gap:.75rem;padding:.75rem 1rem}.logo-link{justify-content:center}.logo-img{height:60px}.app-header nav{flex-direction:column;gap:.5rem;width:100%}.app-header nav .btn{width:100%;text-align:center;padding:.6rem .75rem;font-size:.9rem}}@media (max-width: 920px) and (min-width: 769px){.app-header{padding:1rem 1.5rem}.app-header nav{gap:.5rem}.app-header nav .btn{padding:.5rem .75rem;font-size:.9rem}}.user-info button{margin-left:1rem}main{flex-grow:1;display:flex;flex-direction:column;*/ justify-content: flex-start;overflow-x:auto}.auth-container{background-color:var(--surface-color);padding:2rem;border-radius:8px;box-shadow:0 4px 25px #00000014;width:100%;max-width:400px}.auth-page-wrapper{display:flex;justify-content:center;align-items:center;width:100%;flex-grow:1}.auth-container h2{margin-top:0;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:0rem;color:var(--text-color-secondary)}.form-group input{width:100%;padding:.75rem;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:4px;color:var(--text-color);font-size:1rem;box-sizing:border-box}.error-message{color:var(--error-color);margin-top:.5rem;text-align:center}.dashboard-actions{margin-bottom:1rem;display:flex;gap:1rem;width:100%;background-color:var(--surface-color);padding:1rem;border-radius:12px;justify-content:center;box-sizing:border-box}.dashboard-grid{display:grid;grid-template-columns:repeat(4,180px);justify-content:center;gap:1rem}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:repeat(2,1fr);max-width:500px;margin:0 auto}.stats-card{padding:.75rem 1rem}}@media (max-width: 540px){.dashboard-grid{grid-template-columns:1fr;max-width:300px;gap:.75rem}.dashboard-actions{flex-direction:column;gap:.75rem;padding:.75rem}.dashboard-actions .btn{width:100%}}.stats-summary-bar{display:flex;justify-content:center;width:100%;margin-top:0}.stats-summary-bar h2{margin:0}.stats-card,.session-list-container{background-color:var(--surface-color);border-radius:12px;box-shadow:0 20px 25px #00000014}.stats-card{padding:.5rem .75rem;text-align:center}.stats-card h3{margin:0;color:var(--primary-color);font-size:1rem;font-weight:600;border-bottom:1px solid var(--border-color);padding-bottom:.25rem;margin-bottom:.25rem}.stat-value{font-size:1.1rem;font-weight:700;color:var(--text-white);margin:0;background:transparent!important;padding:.25rem;border-radius:6px}.session-list-container{grid-column:1 / -1;margin-top:1rem;padding:1rem 1.5rem;display:flex;flex-direction:column;position:relative;flex-grow:1;min-height:0}.session-table-wrapper{flex-grow:1;overflow-y:auto;margin-top:1rem;transition:max-height .4s ease-in-out;background-color:var(--surface-color);border-radius:12px;border:1px solid var(--border-color);min-height:300px;position:relative}.session-table-wrapper:after{content:"";position:absolute;inset:0;background-color:#ffffff05;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.01) 10px,rgba(255,255,255,.01) 20px);pointer-events:none;z-index:0}.session-table{width:100%;border-collapse:collapse;position:relative;z-index:1;background-color:var(--masters-green-light)}.session-table th,.session-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-color)}.session-table th{color:var(--primary-color);position:-webkit-sticky;position:sticky;top:0;background-color:var(--surface-color);z-index:10}.session-table tbody tr{cursor:pointer;transition:background-color .15s ease-in-out}.session-table tbody tr:not(.session-details-row):hover{background-color:var(--masters-green-light)}.profile-dropdown{position:relative;display:inline-block}.profile-button{background-color:transparent;border:1px solid var(--border-color);color:var(--text-white);padding:.25rem 1rem;display:flex;align-items:center;gap:8px;text-transform:uppercase}.profile-button svg{width:24px;height:24px;flex-shrink:0}.dropdown-header{padding:12px 16px;font-weight:700;border-bottom:1px solid var(--border-color)}.dropdown-menu{display:block;position:absolute;top:100%;right:0;background-color:var(--sand-color);min-width:160px;box-shadow:0 8px 16px #0003;z-index:100;border-radius:8px;overflow:hidden;border:1px solid var(--border-color);margin-top:8px}.dropdown-menu .dropdown-item{display:block;width:100%;padding:12px 16px;text-align:left;font-size:1rem;font-weight:500;cursor:pointer;background:none;border:none;text-decoration:none;text-transform:none;letter-spacing:normal;color:var(--masters-green-dark);transition:background-color .2s}.dropdown-menu .dropdown-item:hover{background-color:var(--sand-color-hover)}.dropdown-menu .dropdown-item.unread{color:var(--error-color);font-weight:700}.dropdown-divider{height:1px;margin:.5rem 0;background-color:var(--border-color);opacity:.5}.session-details-row td{padding:0!important;background-color:var(--masters-green-dark);border-bottom:2px solid var(--primary-color)}.session-details-content{padding:1.5rem;background-color:var(--masters-green-dark);min-height:400px;display:flex;flex-direction:column}.session-details-content h3{margin-top:0;color:var(--primary-color)}.details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;grid-template-rows:1fr;grid-auto-flow:column;flex-grow:1;align-content:start;justify-content:center;text-align:center;margin-bottom:2rem}.details-section h4{margin-top:0;margin-bottom:.5rem;color:var(--primary-color);font-size:1.3rem;font-weight:600;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;text-align:center}.details-section h5{margin-top:1rem;margin-bottom:.5rem;font-size:1.1rem;color:var(--text-white);font-weight:500;text-align:center}.details-section ul{list-style-type:none;padding:0;margin:0;text-align:center}.details-section ul.putt-list{font-family:monospace}.btn{background-color:var(--primary-color);color:var(--masters-green-dark);border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease;text-transform:uppercase;letter-spacing:.5px;text-decoration:none;display:inline-block}@media (max-width: 768px){.btn{padding:.6rem 1rem;font-size:.9rem;letter-spacing:.3px}}.btn:hover{background-color:var(--primary-color-hover)}.btn.active{background-color:var(--primary-color-hover);box-shadow:inset 0 2px 4px #0003;color:var(--masters-green-dark)}.btn:disabled{background-color:#555;color:#999;cursor:not-allowed}button.btn-secondary,.btn-secondary{background-color:var(--masters-green-light);color:var(--text-color)}button.btn-secondary:hover,.btn-secondary:hover{background-color:#009c7c}button.btn-tertiary,.btn-tertiary{background-color:transparent;border:1px solid var(--border-color);color:var(--text-color)}button.btn-tertiary:hover,.btn-tertiary:hover{background-color:var(--surface-color);border-color:var(--text-color-secondary)}button.btn-danger,.btn-danger{background-color:var(--error-color);color:var(--text-white)}button.btn-danger:hover,.btn-danger:hover{background-color:#c82333}.blurred-stat{filter:blur(4px);-webkit-filter:blur(4px);color:transparent;text-shadow:0 0 8px rgba(255,255,255,.5);cursor:help;-webkit-user-select:none;user-select:none;transition:filter .2s ease-in-out}.notification{position:fixed;top:20px;right:20px;padding:1rem 1.5rem;border-radius:8px;background-color:var(--primary-color);color:var(--masters-green-dark);box-shadow:0 4px 12px #0003;z-index:1000;font-weight:700}.notification.error{background-color:var(--error-color);color:var(--text-white)}.account-management{margin-top:2rem;background-color:var(--surface-color);padding:1.5rem 2rem;border-radius:12px;box-shadow:0 4px 25px #00000014}.account-management h3{margin-top:0;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.table-placeholder-row td{text-align:center;font-style:italic;color:var(--text-color-secondary)}.details-section .placeholder-text{font-style:italic;opacity:.7}.leaderboard-container{margin-top:2rem;width:100%}.leaderboard-summary-bar{display:flex;justify-content:center;width:100%;margin-bottom:1.5rem}.leaderboard-summary-bar h2{margin:0}.leaderboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.leaderboard-card{background-color:var(--surface-color);border-radius:12px;padding:1rem 1.5rem;box-shadow:0 4px 25px #00000014}.leaderboard-card h3{margin:0 0 .75rem;color:var(--primary-color);font-size:1.1rem;font-weight:600;border-bottom:1px solid var(--border-color);padding-bottom:.5rem;text-align:center}.leaderboard-card ol{list-style-type:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.leaderboard-card li{display:flex;justify-content:space-between;align-items:center;font-size:.95rem}.leaderboard-card .leader-name{font-weight:500}.leaderboard-card .leader-name a{color:inherit;text-decoration:none}.leaderboard-card .leader-name a:hover{text-decoration:underline}.leaderboard-card .leader-name.current-player a{color:#ff8c00;font-weight:600}.leaderboard-card .leader-value{font-weight:700;color:var(--text-white)}.leaderboard-card li.unclaimed{font-style:italic;color:var(--text-color-secondary)}.leaderboard-card .placeholder-text{text-align:center;font-style:italic;color:var(--text-color-secondary);opacity:.7}.modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:1rem}.modal-content{background-color:var(--surface-color);padding:2rem;border-radius:8px;box-shadow:0 4px 25px #0003;width:90%;max-width:500px;position:relative;max-height:90vh;overflow-y:auto}@media (max-width: 768px){.modal-content{padding:1.5rem;width:95%;max-height:85vh}.modal-content h3{font-size:1.2rem;margin-bottom:1rem}.modal-actions{flex-direction:column;gap:.75rem}.modal-actions button{width:100%}}.modal-content h3{margin-top:0;margin-bottom:1.5rem;text-align:center;color:var(--primary-color)}.modal-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem}.modal-actions button{min-width:100px}.modal-actions-left{display:flex;margin-right:auto}.modal-actions-right{display:flex;gap:1rem}.delete-confirmation{margin-top:2rem;padding:1.5rem;background:var(--surface-color);border-radius:8px;border:2px solid var(--error-color)}.delete-confirmation h3{margin:0 0 1rem;color:var(--error-color);font-size:1.2em}.delete-confirmation p{margin:.5rem 0;color:var(--text-color)}.warning-text{color:var(--error-color);font-weight:500;font-style:italic}.search-results{list-style:none;padding:0;margin:1rem 0 0;border:1px solid var(--border-color);border-radius:4px;max-height:200px;overflow-y:auto;background-color:var(--background-color)}.search-results li{padding:.75rem;cursor:pointer;border-bottom:1px solid var(--border-color)}.search-results li:last-child{border-bottom:none}.search-results li:hover{background-color:var(--masters-green-light)}.search-results li.selected{background-color:var(--primary-color);color:var(--masters-green-dark)}.session-list{margin-top:1rem;max-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:4px}.session-item{padding:.75rem;cursor:pointer;border-bottom:1px solid var(--border-color)}.session-item:last-child{border-bottom:none}.session-item:hover{background-color:var(--masters-green-light)}.session-item.selected{background-color:var(--primary-color);color:var(--masters-green-dark)}.session-item p{margin:0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-top:2.1rem;margin-bottom:1.5rem;width:100%}.page-header h2{margin:0}@media (max-width: 768px){.page-header{flex-direction:column;gap:1rem;margin-top:1rem;margin-bottom:1rem;text-align:center}.page-header h2{font-size:1.5rem}.page-header .btn{width:100%}}.duels-table-container{width:100%;background-color:var(--surface-color);border-radius:12px;padding:1rem 1.5rem;box-shadow:0 10px 25px #00000014}.duels-table{width:100%;border-collapse:collapse;margin-top:1rem}.duels-table th,.duels-table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--border-color);vertical-align:middle;height:3.5rem;line-height:1.75rem}.duels-table th{color:var(--text-color);background-color:var(--masters-green-dark);text-transform:uppercase;font-size:.9rem;letter-spacing:.75px}.duels-table a{color:var(--sand-color);text-decoration:none;font-weight:500}.duels-table a:hover{text-decoration:underline}.duels-table tbody tr:hover{background-color:var(--masters-green-light)}.duels-table tbody tr.expandable{cursor:pointer}.duels-table .actions-cell{text-align:right}.session-table button,.duels-table button{padding:.25rem .75rem;font-size:.9rem;font-weight:600;text-transform:none}.status-badge{display:inline-block;padding:.25em .6em;font-size:.95rem;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.375rem;text-transform:capitalize}.status-badge.status-scheduled{padding:.4em .8em;font-size:1rem;font-weight:600;min-height:28px;display:inline-flex;align-items:center;justify-content:center}.status-badge.status-pending{color:#000;background-color:#ffc107}.status-badge.status-accepted,.status-badge.status-registering,.status-badge.status-active{color:#fff;background-color:#17a2b8}.status-badge.status-completed,.status-badge.status-won{color:#fff;background-color:#28a745}.status-badge.status-declined,.status-badge.status-expired,.status-badge.status-scheduled,.status-badge.status-draw{color:#fff;background-color:#495057}.status-badge.status-lost{color:#fff;background-color:#dc3545}.career-stats-container{width:100%;background-color:var(--surface-color);border-radius:12px;padding:1rem 1.5rem;box-shadow:0 10px 25px #00000014}.career-stats-table{width:100%;border-collapse:collapse;margin-top:1rem}.career-stats-table th,.career-stats-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--border-color)}.career-stats-table td:first-child{font-weight:700}.career-stats-table th:nth-child(2),.career-stats-table td:nth-child(2){text-align:center;width:21%}.career-stats-table th:nth-child(3),.career-stats-table td:nth-child(3){text-align:center;width:21%}.career-stats-table thead th{color:var(--primary-color);text-transform:uppercase;font-size:.9rem}.career-stats-table .category-group-header th{background-color:var(--masters-green-dark);color:var(--primary-color);padding-top:1.5rem;padding-bottom:.5rem;font-size:1.1rem;text-align:center}.career-stats-table .category-sub-group-header th{background-color:var(--masters-green-dark);font-style:italic;color:var(--text-color-secondary);text-align:center;padding-top:1rem}.career-stats-table .sub-row-category{padding-left:2.5rem}
