:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17251e;background:#f4f6f8;font-synthesis:none;font-weight:400;--lime:#c2ed53;--navy:#142821;--muted:#79857e;--border:#e3e8e4;--radius:18px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #93bd32;outline-offset:4px}input:focus,select:focus,textarea:focus{outline:2px solid #9fc83f;outline-offset:1px}h1,h2,h3,p{margin-top:0}h1{font-size:36px;line-height:1.15;letter-spacing:-1.5px;margin-bottom:12px}h2{font-size:23px;letter-spacing:-.65px}h3{font-size:18px;letter-spacing:-.3px}p{line-height:1.6}svg{flex-shrink:0}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;background:var(--navy);color:#dce7df;padding:34px 22px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:10px;color:#fff;font-size:23px;font-weight:850;letter-spacing:-1px;margin:0 10px 55px}.brand span{color:var(--lime)}.brand svg{color:var(--lime)}.nav{display:grid;gap:9px}.nav-item{display:flex;align-items:center;gap:13px;padding:14px 16px;border:0;background:none;color:#a8bbb0;border-radius:11px;font-size:14px;text-align:left;font-weight:550}.nav-item:hover{background:#213a2e;color:#fff}.nav-item.active{background:var(--lime);color:#172a1f;font-weight:750}.sidebar-foot{margin-top:auto;padding:22px 12px 0;border-top:1px solid #314439;font-size:12px;color:#99aea0;line-height:1.6}.sidebar-foot strong{color:#d8e7db;display:block;margin-bottom:7px}.main{margin-left:240px;padding:0 44px 56px;max-width:1590px}.topbar{height:94px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);margin-bottom:35px;font-size:13px;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:750;color:#738178;margin-bottom:12px}.badge,.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid #dfe6dd;padding:7px 11px;border-radius:100px;font-size:11px;font-weight:650;color:#5b6e60;background:#fff}.badge:before{content:"";width:6px;height:6px;background:#80a93d;border-radius:50%}.page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.page-head p{color:var(--muted);font-size:14px;margin:0}.hero{background:var(--navy);border-radius:22px;min-height:255px;position:relative;overflow:hidden;color:#fff;display:flex;align-items:center;margin-bottom:26px;padding:35px 38px}.hero-copy{max-width:57%;position:relative;z-index:1}.hero h1,.hero h2{font-size:33px;letter-spacing:-1px;margin-bottom:13px;line-height:1.18}.hero p{color:#aec1b4;font-size:14px;max-width:450px;margin-bottom:22px}.hero .eyebrow{color:var(--lime)}.hero-art{position:absolute;right:35px;top:28px;width:34%;height:210px;transform:rotate(-13deg)}.court{height:100%;width:100%;border:2px solid #9fbd87;background:#2b4d3a;position:relative;box-shadow:0 0 0 14px #213e2e}.court:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:2px solid #b6cba3}.court:after{content:"";position:absolute;left:20%;right:20%;top:0;height:100%;border-left:2px solid #a7c292;border-right:2px solid #a7c292}.court .line{position:absolute;top:25%;bottom:25%;left:0;right:0;border-top:2px solid #a7c292;border-bottom:2px solid #a7c292}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:34px}.stat{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:23px 25px;display:flex;flex-direction:column;gap:10px}.stat span,.stat p{font-size:12px;color:var(--muted);margin:0}.stat strong{font-size:30px;line-height:1;font-weight:750;letter-spacing:-1px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:30px 0 19px}.section-title h2{margin:0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:25px}.tournament-card{transition:box-shadow .2s,transform .2s}.tournament-card:hover{box-shadow:0 8px 30px #17312409;transform:translateY(-2px)}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:20px}.tag{display:inline-flex;font-size:10px;letter-spacing:.9px;text-transform:uppercase;font-weight:800;padding:6px 9px;border-radius:6px;background:#eef2eb;color:#687c5a}.tag.active,.tag.live{background:#ecf5d8;color:#627c24}.card h3{margin-bottom:9px}.card p{font-size:13px;color:var(--muted)}.progress{height:5px;background:#edf0eb;border-radius:10px;overflow:hidden;margin:17px 0}.progress>span,.progress>div{display:block;height:100%;background:#a8d441;border-radius:10px}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.btn{border:1px solid #dce3db;border-radius:9px;background:#fff;padding:12px 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:700;color:#294030;line-height:1.2;transition:background .15s,transform .15s}.btn:hover{background:#f3f6ef}.btn:active{transform:translateY(1px)}.btn.primary,button.primary{background:var(--lime);border-color:var(--lime);color:#253516}.btn.primary:hover{background:#b5e23e}.btn.secondary{background:#f3f6f1;border-color:#e6ebe2}.btn.danger{color:#ad483c;background:#fff7f5;border-color:#f2ddd8}.btn.small{font-size:11px;padding:8px 11px}.empty{text-align:center;padding:56px 25px;background:#fff;border:1px dashed #cdd8cc;border-radius:var(--radius);color:var(--muted)}.empty h2,.empty h3{color:#263d2d}.empty p{max-width:430px;margin:12px auto 23px;font-size:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.field{display:flex;flex-direction:column;gap:9px}.field label,.field>span{font-size:12px;font-weight:700;color:#435747}.field small{color:var(--muted);font-size:11px;line-height:1.5}.span-2{grid-column:1/-1}input,select,textarea{min-width:0;border:1px solid #dce3dc;border-radius:9px;background:#fff;color:#253c2c;padding:12px 13px;width:100%;font-size:14px}input::placeholder,textarea::placeholder{color:#a0aaa3}textarea{resize:vertical;min-height:90px}label{cursor:pointer}.format-options{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.format-option{border:1px solid #dfe5dd;background:#fff;border-radius:12px;padding:19px;text-align:left;color:#283e2e}.format-option.selected{border:2px solid #96b73c;background:#f6faed;padding:18px}.format-option strong{display:block;margin-bottom:7px;font-size:14px}.format-option p,.format-option span{color:#7e897c;font-size:12px;line-height:1.6;margin:0}.player-input{display:flex;gap:10px}.player-list{display:flex;flex-wrap:wrap;gap:9px;padding:16px 0}.player-chip{display:flex;align-items:center;gap:12px;border-radius:8px;background:#f0f4ed;border:1px solid #e3e9df;padding:9px 12px;font-size:13px}.player-chip button{border:0;background:none;color:#91a086;padding:0 2px;font-size:19px;line-height:1}.tabs{display:flex;gap:23px;border-bottom:1px solid var(--border);margin-bottom:25px}.tab{border:0;background:none;color:#8a968a;padding:14px 3px;font-size:13px;font-weight:700;border-bottom:3px solid transparent}.tab.active{color:#29442b;border-color:#a4cb43}.round-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:26px 0 15px}.round-header h2,.round-header h3{margin:0}.matches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.match{background:#fff;border:1px solid var(--border);border-radius:14px;padding:19px}.teams{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:18px 0}.team{font-size:13px;line-height:1.7;flex:1}.team:last-child{text-align:right}.team strong{display:block}.score-fields{display:flex;align-items:center;justify-content:center;gap:9px}.score-input{width:64px;text-align:center;font-size:22px;font-weight:750;padding:8px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:14px;background:#fff}table,.table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;color:#8a978a;letter-spacing:.7px;text-transform:uppercase;background:#f9faf7;font-weight:700;padding:16px 20px}td{padding:17px 20px;border-top:1px solid #eef1ea;font-size:13px}tbody tr:first-child{background:#f7faed}td:first-child{color:#92a087;width:45px}td strong{font-weight:700}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:24px}.podium>div{background:#fff;border:1px solid var(--border);border-radius:14px;padding:25px;text-align:center}.podium>div:first-child{background:#eef6d9;border-color:#ccdfa0}.podium strong{display:block;font-size:19px;margin:12px 0}.podium p{font-size:13px;color:var(--muted);margin:0}.toast{position:fixed;bottom:25px;left:calc(50% + 120px);transform:translateX(-50%);background:#173023;color:#fff;box-shadow:0 10px 40px #14282133;padding:15px 23px;border-radius:12px;z-index:100;font-size:13px;max-width:90vw}.muted{color:var(--muted);font-size:13px}.error{color:#b74438;background:#fff1ed;border:1px solid #f3d6cc;padding:12px 15px;border-radius:9px;font-size:13px}.notice{background:#f1f6e6;color:#607249;border:1px solid #dfe8ce;border-radius:10px;padding:14px 17px;font-size:12px;line-height:1.6;margin:17px 0}.toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:18px 0}.ranking-switch,.segmented{display:flex;padding:4px;background:#e9eee4;border-radius:10px;gap:3px}.ranking-switch button,.segmented button{border:0;background:transparent;border-radius:7px;padding:9px 13px;font-size:12px;color:#7b8975;font-weight:650}.ranking-switch button.active,.segmented button.active{background:#fff;color:#2f4729;box-shadow:0 2px 6px #203a2010}.backup{padding:20px 0;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.backup p{flex-basis:100%;font-size:12px;color:var(--muted);margin:0 0 5px}hr{border:0;border-top:1px solid var(--border);margin:25px 0}[hidden]{display:none!important}
@media(min-width:1700px){.main{margin-left:auto;margin-right:auto;padding-left:284px;max-width:1650px}}@media(max-width:1100px){.main{padding:0 27px 40px}.sidebar{width:210px;padding:30px 16px}.main{margin-left:210px}.hero{padding:30px}.hero h1,.hero h2{font-size:29px}.hero-copy{max-width:62%}.hero-art{right:20px;width:30%;height:180px}.matches{grid-template-columns:1fr}.toast{left:calc(50% + 105px)}}@media(max-width:780px){.sidebar{position:sticky;top:0;width:auto;height:auto;padding:13px 20px;flex-direction:row;align-items:center;gap:15px;border-bottom:1px solid #35503d}.brand{margin:0 auto 0 0;font-size:20px}.nav{display:flex;gap:5px}.nav-item{font-size:0;padding:10px;gap:0}.nav-item svg{width:19px;height:19px}.sidebar-foot{display:none}.main{margin-left:0;padding:0 20px 35px}.topbar{height:66px;margin-bottom:25px;font-size:11px}.topbar .badge{font-size:10px}.page-head{align-items:flex-start;gap:15px}h1{font-size:29px}.page-head p{font-size:12px}.hero{min-height:230px;padding:25px}.hero h1,.hero h2{font-size:27px}.hero p{font-size:12px}.hero-copy{max-width:76%}.hero-art{right:-33px;opacity:.4;width:38%;height:175px}.stats{gap:10px;margin-bottom:27px}.stat{padding:18px 15px;gap:10px;border-radius:12px}.stat strong{font-size:25px}.stat span,.stat p{font-size:10px}.grid,.cards{grid-template-columns:1fr}.card{padding:21px}.section-title h2{font-size:20px}.toast{left:50%;bottom:18px}.podium{gap:8px}.podium>div{padding:18px 10px}.podium strong{font-size:15px}.podium p{font-size:11px}.tabs{gap:17px}.tab{font-size:12px}.form-grid{gap:18px}.score-input{font-size:20px}.hero .btn{font-size:12px}}@media(max-width:480px){.main{padding-left:15px;padding-right:15px}.sidebar{padding:12px 15px}.brand{font-size:18px;gap:6px}.page-head{flex-wrap:wrap;margin-bottom:22px}.page-head>.btn{width:100%}.hero{padding:23px;min-height:245px}.hero-copy{max-width:90%}.hero-art{opacity:.2}.stats{gap:7px}.stat{padding:16px 11px}.stat strong{font-size:23px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.format-options{gap:8px}.format-option{padding:14px}.format-option.selected{padding:13px}.format-option p{font-size:11px}.player-input{flex-wrap:wrap}.player-input .btn{width:100%}.toolbar{align-items:stretch}.toolbar>.btn{width:100%}.ranking-switch,.segmented{width:100%;justify-content:center}.tabs{gap:12px}.tab{font-size:11px}.match{padding:16px}.team{font-size:12px}.teams{gap:10px}th,td{padding:14px 13px}.section-title{flex-wrap:wrap}.podium strong{font-size:13px}.badge{padding:6px 8px}}
.page-head{display:block}.page-head>.eyebrow{margin-top:22px}.page-head h1{overflow-wrap:anywhere}.brand{white-space:nowrap;font-size:19px;gap:5px;margin-left:0;margin-right:0}.brand-icon{font-size:28px}.sidebar>.eyebrow{font-size:8px;letter-spacing:1.2px}.sidebar-foot .btn{margin-top:10px;width:100%;padding:10px}.sidebar-foot .badge{font-size:9px}.sidebar-foot p{margin:14px 0 8px;color:#e2eadf}.sidebar-foot small{display:block}.error:empty{display:none}.match>.btn{display:flex;margin:14px auto 0;min-height:36px}.match-error{margin-top:12px}#create-form>h2:not(:first-child){margin-top:32px}#create-form>.form-grid{margin:22px 0}.format-option input{width:auto;margin:0 0 12px;accent-color:#81a72e}.format-option:has(input:checked){border-color:#94b73d;background:#f4f9e9;box-shadow:inset 0 0 0 1px #94b73d}.format-option span{display:block}.field{font-size:13px;font-weight:600}.notice{font-weight:400}.court-label{position:absolute;right:15px;bottom:12px;font-size:24px;font-weight:900;color:#d3f679}.court i:first-child{position:absolute;left:0;right:0;top:25%;bottom:25%;border-top:2px solid #a7c292;border-bottom:2px solid #a7c292}.segmented .btn.primary{background:var(--lime);color:#263e18}footer{display:flex;justify-content:space-between;gap:20px;margin-top:50px;padding-top:20px;border-top:1px solid var(--border);font-size:10px}.empty-icon{display:block;font-size:36px;color:#7d9f40;margin-bottom:15px}.table-wrap.card{padding:0}.nav-item .pill{margin-left:auto;padding:2px 7px;background:transparent;border:0}.nav-item{min-height:44px}.btn{min-height:42px}
@media(max-width:780px){.sidebar{position:relative;flex-wrap:wrap}.sidebar>.eyebrow{display:none}.sidebar-foot{display:flex;flex-direction:row;gap:8px;width:100%;padding:0;border:0;margin-top:0}.sidebar-foot>p,.sidebar-foot>small,.sidebar-foot>.badge{display:none}.sidebar-foot .btn{width:auto;margin:0;padding:8px;font-size:10px;min-height:34px}.nav-item{font-size:13px;gap:5px}.nav-item .pill{display:none}.brand{margin-bottom:0}.topbar{gap:12px}.topbar>.muted{font-size:11px}.topbar>.badge{font-size:9px}.sidebar .nav-item span{font-size:11px}footer{flex-wrap:wrap}.hero-art{pointer-events:none}}
.roster-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 18px}.roster-heading strong{display:flex;align-items:center;gap:10px;font-size:14px}.player-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 24px}.player-row{display:flex;align-items:flex-start;gap:10px}.player-number{padding-top:13px;font-size:12px;font-weight:700;color:#637359;width:22px;flex-shrink:0}.player-name-field{flex:1;gap:6px;min-width:0}.player-save-state{font-size:11px;font-weight:400;color:#58723e;min-height:16px;line-height:1.5}.player-save-state.invalid{color:#b74438}.remove-player{padding:10px;width:42px;flex-shrink:0;font-size:21px}.add-player{margin-top:18px;border-style:dashed;gap:9px}.add-player>span{font-size:23px;line-height:16px}.saved-players-section{margin-top:28px;padding:22px;border-radius:12px;background:#f5f8f1;border:1px solid #e2e9da}.saved-players-section h3{font-size:14px;margin:0 0 7px}.saved-players-section>p{font-size:12px;margin-bottom:14px}.saved-player-buttons{display:flex;flex-wrap:wrap;gap:8px}.saved-player-buttons>p{margin:0;font-size:12px}.saved-player{display:inline-flex;align-items:center;gap:7px;border:1px solid #d9e3cb;background:#fff;color:#294030;border-radius:100px;padding:10px 15px;min-height:44px;font-size:13px;font-weight:600;max-width:100%;overflow-wrap:anywhere}.saved-player:hover{background:#eaf4d5;border-color:#9dbd59}.saved-player span{color:#647d3d;font-size:18px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:780px){.player-fields{grid-template-columns:1fr}.saved-players-section{padding:16px}.roster-heading>.muted{font-size:11px}}

.player-name-field>.player-save-state{font-size:11px;font-weight:400}.player-name-field>.player-save-state.invalid{color:#b74438}
