@font-face{font-family:Club;src:local('Bahnschrift')}@font-face{font-family:Text;src:local('Segoe UI')}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f5f1;color:#252723;font:15px Text,'Trebuchet MS',sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:disabled{opacity:.5;cursor:wait}h1,h2,h3,h4,p{margin:0}h1,h2,h3,.display{font-family:Club,'Trebuchet MS',sans-serif}h1{font-size:36px;font-weight:600;letter-spacing:-1.2px;line-height:1.1}h2{font-size:24px;letter-spacing:-.5px}h3{font-size:18px}p{line-height:1.65}small,.muted{color:#777b74}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:#a91229;display:block;margin-bottom:16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border-radius:7px;background:#a91229;color:white;font-weight:600;border:1px solid transparent;transition:.18s}.btn:hover{background:#870e21;transform:translateY(-1px)}.btn.secondary{background:white;color:#393d36;border-color:#dddfd6}.btn.secondary:hover{background:#f0f1eb}.btn.dark{background:#262c26}.btn.small{padding:8px 12px;font-size:12px}.btn.ghost{background:transparent;color:#777b74;border:1px solid #daddd2}.btn.danger{background:#fff0f0;color:#a91229}.icon{width:19px;height:19px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.brand{display:flex;gap:12px;align-items:center;font-family:Club,'Trebuchet MS',sans-serif;font-size:21px;font-weight:600;letter-spacing:-.5px}.brand img{height:46px;width:46px;object-fit:contain}.brand span span{display:block;font-family:Text,sans-serif;font-size:9px;letter-spacing:2px;color:#777b74;margin-top:5px;font-weight:600}.landing-nav{height:96px;max-width:1300px;margin:auto;padding:0 44px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #deded5}.landing-links{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:600}.landing-main{max-width:1300px;margin:auto;padding:48px 44px 0}.hero{display:grid;grid-template-columns:1.08fr 1fr;min-height:520px;background:#eeeee5;border-radius:12px;overflow:hidden}.hero-copy{padding:54px 42px;position:relative}.hero h1{font-size:clamp(44px,4.7vw,68px);line-height:1.03;letter-spacing:-2.8px;margin:28px 0 23px}.hero h1 em{font-style:normal;color:#a91229}.hero-copy>p{max-width:350px;font-size:15px;color:#666b61}.hero-buttons{display:flex;gap:12px;margin-top:28px}.hero-meta{display:flex;align-items:center;gap:9px;margin-top:36px;font-size:11px;color:#787d72}.dot{width:6px;height:6px;border-radius:50%;background:#799367;display:inline-block}.hero-image{position:relative;background:#430405}.hero-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.photo-label{position:absolute;left:25px;bottom:25px;color:#fff;border:1px solid #ffffff45;padding:10px 14px;border-radius:6px;background:#2d000080;font-size:11px;letter-spacing:1px}.landing-strip{display:grid;grid-template-columns:repeat(3,1fr);margin:32px 0 65px;border-bottom:1px solid #dddfd5;padding-bottom:28px;gap:30px}.strip-item{display:flex;gap:16px;align-items:center}.strip-item .icon{width:28px;height:28px;color:#a91229}.strip-item strong{font-size:14px;display:block;margin-bottom:5px}.strip-item small{font-size:12px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.section-head h2{font-size:30px}.section-head .eyebrow{margin-bottom:10px}.sponsor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.sponsor-pin{border:1px solid #e1e0d7;border-radius:10px;background:white;overflow:hidden;position:relative}.sponsor-pin img{width:100%;height:210px;object-fit:contain;padding:25px;background:#fff}.sponsor-pin .pin-caption{padding:18px 22px;border-top:1px solid #eeeee6;display:flex;align-items:center;justify-content:space-between;font-size:13px}.sponsor-placeholder{padding:30px;border:1px dashed #d2d2c7;border-radius:10px;min-height:150px;display:flex;flex-direction:column;justify-content:center;gap:9px;background:#f0f0e9}.sponsor-placeholder h3{color:#51574c;font-size:18px}.sponsor-placeholder p{font-size:13px;color:#818677}.club-about{margin-top:60px;padding:38px 0;border-top:1px solid #daddd1;display:grid;grid-template-columns:1fr 1.3fr;gap:40px}.club-about p{font-size:14px;color:#74796d}.landing-footer{padding:28px 0;display:flex;justify-content:space-between;border-top:1px solid #deded5;font-size:11px;color:#797e71}.app-shell{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid #e6e6df;padding:27px 18px;display:flex;flex-direction:column;position:fixed;width:238px;height:100vh;z-index:10}.sidebar .brand{padding:0 9px;font-size:19px;margin-bottom:36px}.sidebar .brand img{height:40px;width:40px}.nav-label{font-size:9px;letter-spacing:1.7px;color:#9a9d94;padding:0 14px;margin:23px 0 10px;font-weight:700}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:3px 0;border-radius:7px;font-size:13px;color:#71766b;transition:.15s}.nav-item:hover{background:#f7f6f2;color:#343a30}.nav-item.active{background:#f9edef;color:#a91229;font-weight:600}.nav-item.active:after{content:'';margin-left:auto;width:5px;height:5px;background:#a91229;border-radius:50%}.sidebar-bottom{margin-top:auto;border-top:1px solid #eee;padding-top:15px}.sidebar-bottom p{font-size:10px;padding:14px;color:#909587}.main-wrap{grid-column:2;min-width:0}.topbar{height:78px;background:#ffffffbd;border-bottom:1px solid #e5e5dd;display:flex;align-items:center;justify-content:space-between;padding:0 38px}.breadcrumb{font-size:11px;color:#8c9183;display:flex;align-items:center;gap:13px}.breadcrumb strong{font-weight:500;color:#40463b}.user-chip{display:flex;gap:11px;align-items:center;font-size:12px;border:0;background:transparent;color:#43493d}.avatar{width:34px;height:34px;background:#eee7d8;color:#766143;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;font-weight:700;flex-shrink:0}.user-chip small{display:block;text-align:left;font-size:10px;margin-top:3px}.content{max-width:1520px;margin:auto;padding:34px 38px 50px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.page-heading p{font-size:13px;color:#858a7d;margin-top:9px}.page-heading .eyebrow{margin-bottom:9px;letter-spacing:1.4px;font-size:10px}.welcome{display:grid;grid-template-columns:1fr 270px;min-height:183px;border-radius:10px;overflow:hidden;background:#eaece2;margin-bottom:25px}.welcome-copy{padding:29px 32px}.welcome .eyebrow{font-size:10px;margin-bottom:13px;color:#6b765d}.welcome h2{font-size:27px;line-height:1.2;max-width:480px;margin-bottom:12px}.welcome p{font-size:12px;color:#7b8270}.welcome-art{background:#45090b;position:relative}.welcome-art img{position:absolute;width:100%;height:100%;object-fit:cover}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin-bottom:30px}.stat{background:white;border:1px solid #e4e5dc;border-radius:9px;padding:20px}.stat-top{display:flex;justify-content:space-between;color:#858b7d;font-size:11px}.stat-top .icon{width:16px;height:16px;color:#929b88}.stat strong{display:block;font-family:Club,sans-serif;font-size:32px;font-weight:500;margin:10px 0 5px;line-height:1}.stat small{font-size:10px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:24px}.panel{background:white;border:1px solid #e2e4da;border-radius:10px;overflow:hidden;margin-bottom:22px}.panel-heading{padding:21px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eeeee8}.panel-heading h3{font-size:16px}.panel-heading a{font-size:11px;color:#a91229}.panel-body{padding:22px 24px}.empty{text-align:center;padding:44px 24px;color:#969b8f}.empty .icon{width:32px;height:32px;color:#b3b9a9;margin-bottom:15px}.empty h3{color:#555d4d;font-size:16px;margin-bottom:9px}.empty p{font-size:12px;max-width:340px;margin:0 auto 17px}.checklist{display:flex;gap:13px;padding:16px 0;border-bottom:1px solid #eef0e8}.checklist:last-child{border:0}.check-step{font-size:11px;display:flex;align-items:center;justify-content:center;width:25px;height:25px;border:1px solid #dbe0d2;border-radius:50%;color:#748268;flex-shrink:0}.check-step.done{background:#edf2e8}.checklist h4{font-size:12px;margin-bottom:5px;font-weight:600}.checklist p{font-size:11px;color:#8b9280;line-height:1.5}.checklist a{font-size:11px;color:#a91229;display:inline-block;margin-top:6px}.notice{background:#f4eee0;border:1px solid #e9dfc9;padding:14px 17px;border-radius:7px;font-size:12px;color:#877246;line-height:1.6;margin-bottom:20px;display:flex;gap:12px}.notice.green{background:#eef3e9;border-color:#dfe8d4;color:#647453}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.search{position:relative;flex:1;min-width:180px}.search .icon{position:absolute;left:13px;top:12px;color:#969d8b;width:17px;height:17px}.search input{padding-left:39px;width:100%}.toolbar select{width:auto;max-width:250px}.tabs{display:flex;border-bottom:1px solid #dcdfd3;margin-bottom:25px;gap:26px;overflow:auto}.tab{padding:13px 0;background:transparent;white-space:nowrap;color:#868e7c;font-size:13px;border-bottom:2px solid transparent}.tab.active{color:#a91229;border-bottom-color:#a91229;font-weight:600}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-size:9px;text-transform:uppercase;letter-spacing:1.1px;color:#939b88;font-weight:600;padding:15px 20px;background:#fafbf7;border-bottom:1px solid #e8ebdf}td{padding:17px 20px;border-bottom:1px solid #eceee5;vertical-align:middle}tr:last-child td{border:0}.person{display:flex;align-items:center;gap:12px}.person strong{font-size:12px;font-weight:600}.person small{display:block;margin-top:4px;font-size:10px}.badge{display:inline-block;padding:5px 8px;border-radius:4px;background:#eff2e8;color:#728360;font-size:10px;white-space:nowrap}.badge.red{background:#f9e9eb;color:#a91229}.badge.amber{background:#f7f0db;color:#a18a47}.badge.gray{background:#f0f1ed;color:#919787}.badge.blue{background:#eaf0f5;color:#63849e}.event-card{padding:22px 24px;border-bottom:1px solid #ebede4;display:flex;gap:20px}.event-card:last-child{border:0}.date-block{min-width:49px;text-align:center;background:#f2f3ed;border-radius:7px;height:62px;padding-top:8px;color:#727c64}.date-block small{font-size:9px;text-transform:uppercase}.date-block strong{display:block;font-family:Club,sans-serif;font-size:24px;margin-top:2px}.event-main{flex:1;min-width:0}.event-main h3{font-size:16px;margin:0 0 8px}.event-main p{font-size:11px;color:#8a927e;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.event-main p .icon{width:13px;height:13px}.event-bottom{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:17px;flex-wrap:wrap}.response-buttons{display:flex;gap:5px;flex-wrap:wrap}.response{padding:7px 10px;border:1px solid #e0e5d7;background:#fff;border-radius:5px;font-size:10px;color:#7f8972}.response.chosen{background:#eaf1e2;border-color:#cfdcbe;color:#5a7541}.response.chosen.no{background:#f9e9eb;border-color:#e8cbd0;color:#a91229}.event-count{font-size:10px;color:#9a9f90}.teams-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.team-card{background:white;border:1px solid #e2e5d9;border-radius:10px;overflow:hidden}.team-head{padding:24px;display:flex;justify-content:space-between;align-items:start;background:#fcfcf9;border-bottom:1px solid #edf0e4}.team-head p{font-size:11px;color:#8b947d;margin-top:9px}.team-body{padding:20px 24px}.team-body .person{padding:10px 0;justify-content:space-between}.team-body .person>div{display:flex;align-items:center;gap:10px}.team-foot{padding:15px 24px;background:#fafbf7;border-top:1px solid #edf0e4;display:flex;justify-content:space-between;font-size:11px;color:#8a937c}.calendar-day{display:grid;grid-template-columns:130px 1fr;gap:20px;margin-bottom:24px}.calendar-label{padding-top:20px;font-size:12px;color:#6f7c61}.calendar-label strong{display:block;font-size:22px;font-family:Club,sans-serif;margin-top:5px}.calendar-day .panel{margin:0}.message-card{padding:22px 24px;border-bottom:1px solid #ecede7}.message-card h3{font-size:16px;margin:9px 0}.message-card p{font-size:13px;white-space:pre-wrap;color:#77816a}.message-card small{font-size:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.field{display:block;font-size:11px;color:#6e7762;font-weight:600;margin-bottom:16px}.field input,.field select,.field textarea{display:block;margin-top:7px;width:100%}input,select,textarea{border:1px solid #dce1d3;background:#fff;border-radius:6px;color:#3d4833;padding:11px 12px;font-size:13px;min-width:0}input:focus,select:focus,textarea:focus{border-color:#9ca88c;outline:2px solid #e6ecdf}textarea{resize:vertical;min-height:100px}.field small{font-weight:400;display:block;font-size:10px;margin-top:6px}.full{grid-column:1/-1}.checkbox-list{max-height:175px;overflow:auto;border:1px solid #e2e7d9;border-radius:6px;padding:7px 12px}.checkbox-list label{display:flex;align-items:center;gap:10px;padding:8px 0;font-weight:400;font-size:12px}.checkbox-list input{width:15px;height:15px;accent-color:#a91229;margin:0}.check-inline{display:flex;gap:9px;align-items:center;font-size:12px;color:#748366;margin:10px 0}.check-inline input{accent-color:#a91229}dialog{width:min(630px,calc(100% - 28px));padding:0;border:1px solid #d6decb;border-radius:12px;box-shadow:0 30px 100px #22301833;max-height:90vh;color:#313b29;background:#fcfdf9}dialog::backdrop{background:#15200f66;backdrop-filter:blur(3px)}.modal-head{padding:24px 27px 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5eadc}.modal-head h2{font-size:23px}.modal-close{background:none;font-size:26px;color:#8b947f;line-height:1}.modal-body{padding:23px 27px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:23px;border-top:1px solid #e5eadc;padding-top:19px}.form-error{background:#fae9e9;color:#a91229;padding:12px;border-radius:6px;font-size:12px;margin-top:12px;display:none}.form-error:empty{display:none}.form-error:not(:empty){display:block}.detail-list{display:flex;flex-direction:column;gap:12px;margin-top:20px}.detail-row{display:flex;gap:12px;align-items:center;justify-content:space-between;border-bottom:1px solid #e3e8dc;padding-bottom:12px}.detail-row .person{flex:1}.detail-row select{width:120px;padding:7px;font-size:11px}.detail-row button{padding:6px 8px}.detail-note{white-space:pre-wrap;font-size:13px;color:#7d8970;margin-top:15px}.action-link{background:none;color:#a91229;font-size:11px;padding:5px}.account-panel{max-width:600px}.loading{height:100vh;display:flex;align-items:center;justify-content:center;gap:18px;font-size:36px;color:#a91229;font-family:Club,sans-serif}.loading span{font:13px Text,sans-serif;color:#8d967f}#toast{position:fixed;right:25px;bottom:25px;z-index:100;background:#283623;color:white;padding:16px 24px;border-radius:8px;font-size:13px;box-shadow:0 8px 40px #0002;max-width:calc(100vw - 40px);display:none}#toast.visible{display:block;animation:rise .2s ease}.mobile-menu{display:none}.account-actions{display:flex;gap:10px;flex-wrap:wrap}.copyright{font-size:10px;color:#a0a695;margin-top:35px;display:flex;justify-content:space-between}.timeline-note{border-left:2px solid #dfe6d4;padding:2px 0 16px 15px;margin-left:4px}.timeline-note strong{font-size:11px;display:block}.timeline-note small{font-size:10px}.sponsor-admin-actions{display:flex;gap:8px;padding:0 20px 20px}@keyframes rise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1450px){.hero{min-height:550px}}@media(max-width:1100px){.content{padding:28px 24px}.topbar{padding:0 24px}.app-shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{width:210px;padding:25px 12px}.dashboard-grid{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:16px}.teams-grid{grid-template-columns:1fr}.hero-copy{padding:40px 28px}.hero h1{font-size:49px}.sponsor-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.landing-nav{height:78px;padding:0 20px}.landing-links>a:not(.btn){display:none}.landing-links .btn{padding:10px;font-size:11px}.brand{font-size:18px}.brand img{height:38px;width:38px}.landing-main{padding:22px 18px 0}.hero{grid-template-columns:1fr}.hero-copy{padding:32px 26px}.hero h1{font-size:49px;margin-top:16px}.hero-image{height:280px}.hero-image img{object-position:center 46%}.hero-meta{margin-top:25px}.landing-strip{grid-template-columns:1fr;gap:24px;margin:28px 7px 40px}.sponsor-grid{grid-template-columns:1fr}.section-head h2{font-size:25px}.section-head>p{display:none}.club-about{grid-template-columns:1fr;gap:17px;margin-top:35px}.landing-footer{gap:12px;flex-wrap:wrap}.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:.2s;width:235px;box-shadow:20px 0 50px #0002}.app-shell.menu-open .sidebar{transform:translateX(0)}.main-wrap{width:100%}.mobile-menu{display:inline-flex;border:0;background:transparent;padding:0 10px 0 0;color:#778669}.topbar{height:64px;padding:0 18px}.topbar .breadcrumb{gap:8px}.user-chip>span:not(.avatar){display:none}.content{padding:26px 18px}.page-heading{align-items:flex-start}.page-heading h1{font-size:29px}.page-heading .btn{font-size:11px;padding:10px 12px}.page-heading p{font-size:12px;max-width:230px}.welcome{grid-template-columns:1fr 100px;min-height:175px}.welcome-copy{padding:25px 20px}.welcome h2{font-size:23px}.welcome p{font-size:11px}.stats{grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:22px}.stat{padding:16px}.stat strong{font-size:29px}.dashboard-grid{gap:0}.panel-heading{padding:18px}.event-card{padding:20px 16px;gap:12px}.event-bottom{gap:13px}.event-main h3{font-size:15px}.form-grid{grid-template-columns:1fr;gap:0}.modal-body{padding:22px}.modal-head{padding:22px}.calendar-day{grid-template-columns:1fr;gap:10px}.calendar-label{padding-top:0}.calendar-label strong{display:inline;margin-left:7px;font-size:18px}.toolbar select{flex:1}.toolbar .search{min-width:100%;}.copyright{gap:15px;font-size:9px}.detail-row{flex-wrap:wrap}.sponsor-pin img{height:180px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

.csv-preview-table{max-height:320px;overflow:auto;margin-top:15px}.csv-preview-table th{position:sticky;top:0}.csv-preview-table td{padding:12px;font-size:11px}

.clicktt-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.clicktt-actions:empty{display:none}

#modal.wide-dialog{width:min(1080px,94vw);max-width:94vw}.own-team{background:#fff0f1;font-weight:600}

.member-filter{display:grid;gap:4px;font-size:12px;color:var(--muted)}.role-editor{margin:22px 0}.role-editor .section-head{align-items:start;gap:15px}.role-editor small{max-width:240px;color:#637069}.role-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.role-zone{padding:16px;border:1px dashed #b9c7bf;border-radius:12px;min-height:145px;background:#f5f7f4}.role-zone.assigned{background:#fff4f4;border-color:#dca9ae}.role-zone h4{margin:0 0 14px}.role-chips{display:flex;gap:9px;flex-wrap:wrap}.role-chip{display:inline-flex;align-items:center;gap:9px;border:1px solid #ccd4ce;background:white;border-radius:8px;padding:9px 12px;font:inherit;font-size:13px;cursor:grab}.assigned .role-chip{border-color:#d998a2;color:#941632}.role-chip:focus-visible{outline:3px solid #a51635;outline-offset:3px}.role-zone.drag-over{outline:3px solid #a51635;background:#ffe5e9}.role-empty{color:#758079;font-size:13px}.family-summary{border-left:3px solid #a51635;padding:10px 16px;margin:20px 0;background:#faf4f4}.family-summary h3{margin-bottom:8px}@media(max-width:600px){.role-columns{grid-template-columns:1fr}.member-filter{width:100%}}

.roster-group{padding:10px 0}.roster-group h4{margin:0 0 10px;color:#8f1630}.roster-player[draggable=true]{cursor:grab}.roster-player{border-bottom:1px solid #e6e9e4;padding:10px 0}.roster-number{color:#7d847f;min-width:22px;font-size:12px}.roster-picker{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin:20px 0}.roster-picker>section{border:1px solid #dedfd9;border-radius:10px;padding:14px;max-height:390px;overflow:auto}.roster-picker>section:nth-child(2){background:#fff3f3}.roster-picker>section:nth-child(3){background:#fff9ed}.picker-player{display:flex;flex-direction:column;gap:5px;padding:12px 6px;border-bottom:1px solid #dedfd9;cursor:pointer}.picker-player:focus-visible{outline:2px solid #a51635}.picker-player small{color:#768078}.roster-picker[aria-busy=true]{opacity:.6;pointer-events:none}@media(max-width:750px){.roster-picker{grid-template-columns:1fr}.roster-picker>section{max-height:260px}}

.compact-player{user-select:none;flex-direction:row;align-items:center;gap:9px;cursor:grab;padding:12px 4px;position:relative}.picker-name{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.drag-handle{color:#929990}.roster-delete{padding:6px;border:0;background:transparent;color:#a51635;cursor:pointer}.roster-delete svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.picker-drop-space{padding:18px 6px;color:#888e86;font-size:12px}.roster-picker .drop-active{outline:2px solid #ac1738;outline-offset:-2px}.drop-before{box-shadow:0 -3px #ac1738}.drop-after{box-shadow:0 3px #ac1738}

.team-drag-handle{background:transparent;color:#8f1630;cursor:grab;font-size:25px;padding:6px 10px;user-select:none;align-self:flex-start}.team-drag-handle:active{cursor:grabbing}.team-sort-hint{font-size:12px;margin:0 0 14px}.team-drop-before{box-shadow:0 -4px #a91229}.team-drop-after{box-shadow:0 4px #a91229}

/* Two columns at most; touch actions also support tablets without native drag. */
.teams-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.team-card,.team-head>div,.team-body .person>div{min-width:0}.team-head h2,.team-head p,.team-foot,.roster-player strong{overflow-wrap:anywhere}.team-foot{flex-wrap:wrap;gap:12px}.team-touch-sort{display:flex;gap:8px;padding:12px 24px 0}.team-touch-sort button{min-height:44px}.picker-touch-actions{display:none}.team-body .person{gap:8px}.team-body .person>div:last-child{flex-shrink:0}.team-body .person>div:first-child{flex:1}.team-body .person strong{min-width:0}.team-drag-handle{min-width:44px;min-height:44px;flex-shrink:0}
@media(max-width:1100px){.teams-grid{grid-template-columns:minmax(0,1fr)}}
@media(pointer:coarse),(max-width:760px){
.picker-touch-actions{display:flex;flex-wrap:wrap;gap:6px;width:100%;order:5}.picker-touch-actions button{min-height:44px;min-width:44px;padding:8px 12px;border:1px solid #d9ddd3;background:white;border-radius:6px;color:#8f1630}.compact-player{flex-wrap:wrap}.roster-delete{min-width:44px;min-height:44px}.role-chip,.action-link{min-height:44px}.team-body .action-link{min-width:44px}.picker-name{min-width:100px}.roster-picker>section{max-height:none}.roster-picker{grid-template-columns:1fr}.team-drag-handle{display:none}
}
@media(max-width:760px){
.content{min-width:0}.team-head,.team-body{padding:18px}.team-touch-sort{padding:12px 18px 0}.team-foot{padding:18px;display:flex;align-items:stretch}.team-foot>span{flex-basis:100%}.team-foot>button{flex:1 1 140px;white-space:normal}.clicktt-actions{padding:16px 18px;gap:10px}.clicktt-actions>a,.clicktt-actions>button{min-height:44px;display:inline-flex;align-items:center;max-width:100%;overflow-wrap:anywhere}.toolbar .member-filter{flex:1 1 140px;min-width:0}.toolbar select{width:100%;max-width:none;min-height:44px}.toolbar input{min-height:44px}.page-heading{flex-wrap:wrap;gap:16px}.page-heading .btn{min-height:44px}.modal-body,.modal-head{padding:18px}dialog,#modal.wide-dialog{width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 24px);overflow:auto}.modal-footer{flex-wrap:wrap;gap:10px}.modal-footer>.btn{min-height:44px;flex:1}input,select,textarea{font-size:16px;min-width:0;max-width:100%}.form-grid>*{min-width:0}.table-wrap{max-width:100%;overflow-x:auto}.role-columns{grid-template-columns:1fr}.team-sort-hint{line-height:1.6}.roster-picker{gap:12px}.team-body .person>div:first-child{flex-wrap:wrap}.notice{overflow-wrap:anywhere}.modal-head button{min-width:44px;min-height:44px}
}

.personal-game-tabs{gap:16px}.personal-game-tabs .tab{display:flex;gap:8px;align-items:center;min-height:48px}.personal-game-note{font-size:13px;line-height:1.6;margin-bottom:18px}.personal-game-labels{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.personal-game-lineup{margin:16px 0;padding:14px;background:#f5f6f1;border-radius:8px}.personal-game-lineup p{display:block;margin:8px 0;overflow-wrap:anywhere}.personal-game-card .event-main{min-width:0}.personal-game-card .event-bottom{flex-wrap:wrap;gap:14px}.personal-game-card .event-bottom>div{min-width:0}.personal-game-card .response-buttons{margin-top:8px;flex-wrap:wrap}.personal-game-card .response{min-height:44px}.personal-game-card h3{overflow-wrap:anywhere}@media(max-width:600px){.personal-game-card{flex-direction:column}.personal-game-card .date-block{display:flex;align-items:center;gap:10px;width:auto}.personal-game-card .event-bottom>div{width:100%}.personal-game-card .response-buttons{display:flex}.personal-game-card .response{flex:1;min-width:100px}.personal-game-card .event-main>p{flex-wrap:wrap}.personal-game-tabs{gap:18px}}

.match-secret-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0}.match-secret-value{font:700 30px monospace;letter-spacing:3px;padding:24px 0;overflow-wrap:anywhere}.pdf-match-preview{max-height:55vh;margin:18px 0}.pdf-match-preview select{max-width:440px;width:100%;min-height:44px}@media(max-width:600px){.pdf-match-preview table,.pdf-match-preview tbody,.pdf-match-preview tr,.pdf-match-preview td{display:block;width:100%}.pdf-match-preview thead{display:none}.pdf-match-preview tr{border-bottom:1px solid #dedfd9}.match-secret-actions .btn{min-height:44px}}

.team-planning-status{padding:18px 24px;border-top:1px solid #e2e5d9;background:#faf8f1}.team-planning-status h3{font-size:16px}.team-planning-status ul{padding-left:18px;font-size:13px;line-height:1.7;margin:10px 0}.team-planning-status small{font-size:11px;line-height:1.5;display:block}@media(max-width:760px){.team-planning-status{padding:18px}.team-planning-status .btn{flex:1 1 140px;min-height:44px}}

/* Compact match chips and captain planning board */
.match-summary{display:flex;flex-wrap:wrap;gap:12px 24px;margin:12px 0}.match-summary-group>small{display:block;margin-bottom:5px;font-weight:600}.player-chips{display:flex;flex-wrap:wrap;gap:5px}.player-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 3px;border-radius:20px;background:#f0f2ed;font-size:12px}.chip-avatar{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e1e7d8;color:#485b3e;font-size:10px;font-weight:700}.player-chip.no{background:#f9eeee}.player-chip.pending,.player-chip.possible{background:#faf3e5}.match-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.match-lane{min-height:150px;background:#f6f6f2;border:1px solid #dce0d5;border-radius:10px;padding:12px;max-height:450px;overflow:auto}.match-lane h4{margin:0 0 12px}.match-lane[data-match-lane="request"]{background:#fcf5e8}.match-lane.drop-active{outline:2px solid #b50b2c}.match-player{padding:10px;background:white;border:1px solid #dce0d5;border-radius:7px;margin-bottom:8px;cursor:grab}.match-player>strong,.match-player>small{display:block;font-size:12px}.match-player-controls{display:flex;gap:4px;margin-top:8px}.match-player-controls select{min-width:0;width:100%;font-size:11px;padding:6px}.match-player-controls button{border:1px solid #dce0d5;background:white;border-radius:4px;min-width:28px}.match-planner .muted{font-size:12px}.match-summary .player-chip span:last-child{font-weight:700}
@media(max-width:1000px){.match-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.match-board{grid-template-columns:1fr}.match-lane{max-height:300px}.match-player-controls button{min-height:44px;min-width:38px}.match-player-controls select{min-height:44px}.match-summary{gap:10px}.player-chip{font-size:11px}}

@media(max-width:540px){.match-board:has([data-training-target]){grid-template-columns:1fr!important}}

.guest-remove{border:0;background:transparent;color:#a10d29;cursor:pointer;font-size:18px;min-width:28px;min-height:28px}@media(pointer:coarse){.guest-remove{min-width:44px;min-height:44px}}

.event-card.training-today{background:#fff3f5;box-shadow:inset 4px 0 0 #b20d30}.training-today .date-block{background:#b20d30;color:#fff}.training-today .date-block small,.training-today .date-block strong{color:#fff}.today-label{display:inline-block;margin-left:8px;padding:4px 9px;border-radius:6px;background:#b20d30;color:#fff;font-size:11px;font-weight:700;vertical-align:middle}

.toolbar.team-filter-bar{display:grid;grid-template-columns:minmax(200px,2fr) minmax(160px,1fr) minmax(130px,.8fr) minmax(150px,1fr) auto;align-items:end;gap:12px;padding:18px;border:1px solid #dce0d5;border-radius:12px;background:#fff;margin:24px 0 14px}.team-filter-bar label{display:flex;flex-direction:column;gap:7px;margin:0;font-size:12px;font-weight:600;min-width:0}.team-filter-bar .search{width:100%;min-width:0;margin:0}.team-filter-bar input,.team-filter-bar select,.team-filter-bar>.btn{height:44px;min-height:44px;width:100%;box-sizing:border-box}.team-filter-bar input,.team-filter-bar select{font-weight:400}.team-filter-bar>.btn{white-space:nowrap}@media(max-width:1200px){.toolbar.team-filter-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.team-filter-bar .team-search-field{grid-column:span 2}}@media(max-width:650px){.toolbar.team-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.team-filter-bar .team-search-field{grid-column:1/-1}.team-filter-bar>.btn{grid-column:1/-1}}@media(max-width:380px){.toolbar.team-filter-bar{grid-template-columns:1fr}.team-filter-bar .team-search-field{grid-column:auto}}

.team-head>div:first-child{flex:1;min-width:0}.team-info{position:relative;flex:0 0 auto;align-self:flex-start;margin-top:4px}.team-info summary{list-style:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid #d5b975;background:#fff4d9;color:#77520d;font-weight:700;cursor:pointer}.team-info summary::-webkit-details-marker{display:none}.team-info summary:focus-visible{outline:2px solid #b20d30;outline-offset:3px}.team-info .team-info-popover{display:none;position:absolute;right:0;top:28px;z-index:20;width:min(310px,70vw);padding:16px;background:#fffdf6;border:1px solid #dfcfaa;border-radius:10px;box-shadow:0 8px 24px #30270f22;font-size:12px;font-weight:400;line-height:1.6;color:#343d2d}.team-info[open] .team-info-popover,.team-info:hover .team-info-popover{display:block}.team-info-popover ul{margin:8px 0 0;padding-left:17px}.team-info-popover li+li{margin-top:6px}.team-import-actions{display:flex;flex-wrap:wrap;gap:8px;padding:12px 24px;border-bottom:1px solid #e3e6dc}.team-card:has(.team-info:hover),.team-card:has(.team-info[open]){overflow:visible;position:relative;z-index:5}

/* Consistent team-card structure and footer actions. */
.teams-grid{align-items:stretch}.teams-grid>.team-card{display:flex;flex-direction:column;height:100%;min-width:0}.team-card>.team-head{min-height:160px}.team-card>.clicktt-actions{display:flex;align-content:center;align-items:center;min-height:88px;gap:10px;flex-wrap:wrap;padding:16px 24px}.team-card>.clicktt-actions:empty{display:flex}.team-card>.clicktt-actions:empty::before{content:"Liga und Spielplan noch nicht hinterlegt";font-size:12px;color:#777b74}.team-card>.team-import-actions{min-height:60px;align-items:center}.team-card>.team-body{flex:1;padding:24px}.team-card>.team-foot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:10px;padding:18px 24px;margin-top:auto}.team-card>.team-foot>span{grid-column:1/-1;font-size:12px;line-height:1.5;margin-bottom:3px}.team-card>.team-foot>button{width:100%;min-width:0;min-height:40px;margin:0;padding:9px 12px;border:1px solid #dddfd6;border-radius:7px;background:#fff;white-space:normal;text-align:center;justify-content:center;font-size:12px}.team-card>.team-foot>button[data-carry-team]{grid-column:1/-1}.team-card>.team-foot>button:hover{background:#f4f0ed}.team-card>.team-foot>button:disabled{cursor:default}.team-card .team-touch-sort{padding:12px 24px 0}@media(max-width:650px){.team-card>.team-head{min-height:0}.team-card>.clicktt-actions,.team-card>.team-body,.team-card>.team-foot{padding:16px}.team-card>.clicktt-actions{min-height:0}.team-card>.team-import-actions{padding:12px 16px}.team-card .team-touch-sort{padding:12px 16px 0}.team-card>.team-foot>button{min-height:44px}}

.team-sort-controls{display:flex;align-items:center;gap:4px;flex-shrink:0;align-self:flex-start}.team-sort-arrows{display:flex;gap:2px}.team-sort-arrow{display:grid;place-items:center;width:28px;height:32px;padding:0;border:0;border-radius:5px;background:transparent;color:#a91229;font-size:19px}.team-sort-arrow:hover:not(:disabled){background:#f8e9ed}.team-sort-arrow:disabled{opacity:.25;cursor:default}.team-sort-controls .team-drag-handle{min-width:32px;min-height:32px}.team-sort-controls .team-sort-arrow:focus-visible{outline:2px solid #a91229;outline-offset:2px}@media(pointer:coarse){.team-sort-arrow{width:36px;height:44px}.team-sort-controls .team-drag-handle{min-height:44px}}

.reserve-collapse>summary{display:flex;align-items:center;gap:8px;list-style:none;cursor:pointer;color:#a91229;font-weight:600;min-height:36px}.reserve-collapse>summary::-webkit-details-marker{display:none}.reserve-collapse>summary::before{content:"▸";font-size:15px}.reserve-collapse[open]>summary::before{content:"▾"}.reserve-collapse[open]>summary{margin-bottom:10px}.reserve-collapse>summary:focus-visible{outline:2px solid #a91229;outline-offset:3px;border-radius:4px}

.team-head .team-header-meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px;font-size:12px;color:#646b60}.team-header-meta span:last-child{white-space:nowrap}

[data-team-pdf][aria-disabled="true"]{opacity:.5;cursor:not-allowed;background:#f0f0ec;color:#70736d;box-shadow:none}

.dashboard-next{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start;margin-bottom:24px}
.dashboard-next>.panel{min-width:0;margin:0;overflow:visible}
.dashboard-next>.panel:only-child{grid-column:1/-1}
.dashboard-next .panel-heading{padding:18px;gap:12px;flex-wrap:wrap}
.dashboard-next .event-card{padding:18px;gap:12px;min-width:0}
.dashboard-next .event-main{min-width:0}
.dashboard-next .event-main h3{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
.dashboard-next .event-main>p{font-size:12px;flex-wrap:wrap}
.dashboard-next .event-bottom{flex-wrap:wrap;gap:10px;align-items:center}
.dashboard-next .match-summary{padding:12px;gap:10px;flex-wrap:wrap}
.dashboard-next .participant-name{display:none}
.dashboard-next .player-chip[data-person-hint]{position:relative;padding:4px;gap:3px;cursor:help}
.dashboard-next .chip-avatar{width:30px;height:30px;font-size:11px}
.dashboard-next [data-person-hint]:focus-visible{outline:2px solid #a91229;outline-offset:2px}
.dashboard-next [data-person-hint]:hover::after,.dashboard-next [data-person-hint]:focus::after{content:attr(data-person-hint);position:absolute;bottom:calc(100% + 6px);left:0;z-index:30;background:#30382e;color:white;border-radius:6px;padding:7px 10px;width:max-content;max-width:200px;white-space:normal;font-size:12px;box-shadow:0 4px 12px #0002;pointer-events:none}
@media(max-width:900px){.dashboard-next{grid-template-columns:1fr}}
@media(max-width:450px){.dashboard-next .event-card{padding:14px;gap:10px}.dashboard-next .date-block{min-width:38px}.dashboard-next .event-bottom .btn{padding:8px;font-size:12px}}

.training-category-section{margin:24px 0}.training-category-section>h2,.training-category-section>h3{margin-bottom:14px}.training-category-section>h2 small{font-size:14px;color:#777b74}.training-category-section .panel-body .btn{margin-top:8px}

.sidebar .nav-disabled{opacity:.45;cursor:not-allowed;background:transparent;user-select:none}.sidebar .nav-disabled:hover{background:transparent;color:inherit}

.internal-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.internal-stat-placeholder{padding:18px;border:1px solid #e3e6dc;border-radius:10px;background:#fafaf7}.internal-stat-placeholder p{margin:10px 0;font-size:14px}.internal-stat-placeholder small{color:#777b74}@media(max-width:850px){.internal-stat-grid{grid-template-columns:1fr}}

@media(max-width:768px){
 #league-result{min-width:0;max-width:100%}
 #league-result .league-table-wrap{width:100%;min-width:0;overflow:visible}
 #league-result .league-table{table-layout:fixed;width:100%;min-width:0;font-size:11px}
 #league-result .league-table th,#league-result .league-table td{padding:8px 2px;min-width:0;white-space:normal;overflow-wrap:anywhere;text-align:center;line-height:1.35;font-size:inherit;letter-spacing:0}
 #league-result .league-table .league-team-column{width:32%;text-align:left;padding-left:5px;padding-right:5px}
 #league-result .league-table a{display:inline;white-space:normal;overflow-wrap:anywhere;font-size:inherit;padding:0}
 #modal:has(#league-result) .section-head{display:flex;flex-wrap:wrap;gap:10px;min-width:0}
 #modal:has(#league-result) .section-head strong{min-width:0;overflow-wrap:anywhere}
 #modal:has(#league-result) .modal-body{padding-left:12px;padding-right:12px}
}

/* The complete navigation, including profile links, has its own scroll area. */
.sidebar{top:0;height:100vh;height:100dvh;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;padding-bottom:max(24px,env(safe-area-inset-bottom))}
.sidebar>.brand,.sidebar>nav,.sidebar>.sidebar-bottom{flex-shrink:0}
@media(max-width:760px){
 body.mobile-nav-locked{position:fixed;width:100%;overflow:hidden}
 .sidebar{touch-action:pan-y}
}

.training-trainer-picker{grid-column:1/-1;min-width:0;margin:0 0 16px;padding:0;border:0}
.training-trainer-picker legend{padding:0;margin:0 0 6px;font-size:12px;font-weight:600;color:#626957}
.training-trainer-picker>p{font-size:12px;color:#777b74;margin-bottom:10px}
.training-trainer-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:240px;overflow-y:auto;overscroll-behavior:contain;padding:2px}
.training-trainer-options .training-trainer-option{display:flex;align-items:center;gap:10px;min-height:52px;padding:10px 12px;margin:0;border:1px solid #dce0d5;border-radius:8px;background:#fff;cursor:pointer}
.training-trainer-options .training-trainer-option:has(input:checked){background:#f9ecef;border-color:#ad1230}
.training-trainer-options .training-trainer-option:focus-within{outline:2px solid #ad1230;outline-offset:1px}
.training-trainer-options input[type=checkbox]{display:block;flex:0 0 18px;width:18px;height:18px;min-height:0;padding:0;margin:0;accent-color:#ad1230}
.training-trainer-option .avatar{flex:0 0 30px;width:30px;height:30px;font-size:11px}
.training-trainer-name{font-size:14px;color:#252723;font-weight:600;overflow-wrap:anywhere}
@media(max-width:600px){.training-trainer-options{grid-template-columns:1fr}}

.event-card.training-category-card{position:relative;padding-top:48px}
.training-type-label{position:absolute;top:12px;right:16px;padding:4px 9px;border-radius:6px;font-size:11px;font-weight:700;line-height:1.4}
.training-type-label.youth{background:#e6f0e0;color:#35572b}
.training-type-label.adults{background:#e4ecf8;color:#244b78}

.training-response-list{display:grid;gap:20px;margin-top:16px}.training-response-row{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid #e3e5dd}.training-response-row strong{flex:1;min-width:0;overflow-wrap:anywhere}.training-response-row select{width:auto;max-width:145px;min-height:40px}

.family-training-responses{width:100%;display:grid;gap:12px}.family-training-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 0;border-bottom:1px solid #e3e5dd}.family-training-row .response-buttons{flex-wrap:wrap}
/* Separate channel settings use the existing neutral panels and red actions. */
.notification-area{margin:20px 0;padding:18px;border:1px solid #dce0d5;border-radius:12px}
.notification-area h3{margin:0 0 12px}
.notification-channels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.notification-channels fieldset{min-width:0;margin:0;padding:14px;border:1px solid #dce0d5;border-radius:8px}
.notification-channels legend{font-weight:700;padding:0 6px}
.notification-toggle{display:flex!important;align-items:center;gap:8px;margin:10px 0}
.notification-toggle input[type=checkbox]{width:18px!important;min-width:18px;height:18px;padding:0;margin:0}
@media(max-width:650px){.notification-channels{grid-template-columns:1fr}.notification-area{padding:12px}}
.challenge-training-action{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:14px 0}
.challenge-card{display:flex;justify-content:space-between;align-items:center;gap:16px}
.challenge-score{font-size:1.3rem;margin-left:12px}
.message-recipients .message-recipient{display:flex;align-items:center;gap:12px;padding:12px;border-bottom:1px solid #e6e9e4}
.message-recipients .message-recipient small{display:block;color:#687566;margin-top:4px}
.message-recipients .message-recipient input{width:18px;min-width:18px;height:18px;margin:0}
@media(max-width:650px){.challenge-card{align-items:flex-start;flex-direction:column}.challenge-card .account-actions{width:100%}.challenge-card .btn{flex:1}}
/* Annual pyramid follows the club's burgundy / warm neutral palette. */
.ladder-toolbar{display:flex;align-items:end;gap:18px;flex-wrap:wrap;margin:24px 0}.ladder-toolbar label{margin:0;max-width:180px}.ladder-toolbar .badge{align-self:center}
.ladder-pyramid{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 20px;background:linear-gradient(180deg,#faf7ef,#fff)}
.ladder-row{display:flex;justify-content:center;gap:6px;width:100%}.ladder-place{flex:0 1 150px;min-width:0;padding:12px 8px;display:flex;align-items:center;gap:8px;border:1px solid #dce0d5;border-radius:6px;background:#fff;font-size:12px;overflow-wrap:anywhere}.ladder-place small{display:block;color:#777}.ladder-rank{font-weight:700;color:#ae1230;font-size:16px}.ladder-place.is-me{background:#ae1230;color:white;border-color:#ae1230}.ladder-place.is-me .ladder-rank{color:white}.ladder-row:first-child .ladder-place{border-top:3px solid #b89b51}
.challenge-date{min-width:90px;font-weight:700}.challenge-date small,.challenge-description small{display:block;margin-top:5px}.challenge-description{flex:1;min-width:0}.challenge-description h3{font-size:16px}.challenge-deadline{color:#7d6639}
.challenge-person{position:relative;display:inline-flex}.challenge-person>.player-chip{cursor:pointer;font:inherit}.challenge-person-menu{display:none;position:absolute;top:100%;left:0;z-index:30;width:250px;max-width:75vw;padding:14px;gap:8px;background:white;border:1px solid #dce0d5;border-radius:9px;box-shadow:0 8px 28px #26351b26;color:#303a28;white-space:normal;font-size:13px}.challenge-person:hover>.challenge-person-menu,.challenge-person:focus-within>.challenge-person-menu,.challenge-person.is-open>.challenge-person-menu{display:grid}.challenge-person-menu .btn{white-space:normal}.challenge-person-menu small{color:#727b6b}
@media(max-width:650px){.ladder-pyramid{padding:20px 5px;gap:5px}.ladder-row{gap:3px}.ladder-place{padding:7px 3px;flex-direction:column;gap:3px;text-align:center;font-size:10px}.ladder-rank{font-size:13px}.challenge-card{gap:10px}.challenge-date{display:flex;gap:12px;align-items:center}.challenge-date small{margin:0}.challenge-person-menu{position:fixed;left:5vw;top:auto;bottom:20px;width:90vw;max-width:90vw}}
.panel:has(.challenge-person){overflow:visible}
.ladder-switch{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}.ladder-switch .btn{min-width:130px}.challenge-category{display:grid;gap:6px;padding-top:8px;border-top:1px solid #e2e4da}.ladder-registration-hint{display:grid;gap:7px;margin:12px 0}.ladder-registration-hint .action-link{margin-right:16px}
.match-category-buttons{display:inline-flex;gap:4px;flex-shrink:0}.match-category-buttons .btn{min-width:42px;min-height:42px;padding:8px 12px;font-weight:700}.match-category-buttons .btn[aria-pressed="true"]{background:#b30b2d;color:#fff;border-color:#b30b2d}
button.ladder-place{font-family:inherit;color:inherit;cursor:pointer;text-align:left}button.ladder-place.is-me{color:#fff}button.ladder-place:hover,button.ladder-place:focus-visible{outline:2px solid #ae1230;outline-offset:2px}
.match-set-inputs{display:flex;flex-wrap:wrap;gap:10px}.match-set-inputs .field{flex:0 0 76px;width:76px;min-width:0}.match-set-inputs input{width:100%;min-width:0;padding:8px 6px;text-align:center;font-variant-numeric:tabular-nums}.match-set-scores{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.match-set-scores span{padding:4px 9px;border:1px solid #dce0d5;border-radius:5px;background:#f6f7f3;font-variant-numeric:tabular-nums}
.match-set-inputs .field[hidden]{display:none}
/* Keep both Head2Head summaries above the independently scrolling match history. */
.match-stats-toolbar{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.match-stats-toolbar label{max-width:130px}.match-stats-toolbar p{margin-bottom:0}
.match-stats-layout{border-top:1px solid #e4e7dd;min-width:0}
.match-stats-h2h{padding:16px;background:#fafbf8;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border-bottom:1px solid #e4e7dd}
.match-stats-h2h .h2h-filter{grid-column:1/-1;justify-self:start}
.h2h-box{min-width:0;padding:16px;background:white;border:1px solid #e0e4d9;border-radius:8px}
.h2h-box h3{margin:0 0 5px}.h2h-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid #eef0e9}.h2h-row:last-child{border-bottom:0;padding-bottom:0}.h2h-row>span{min-width:0;overflow-wrap:anywhere}.h2h-row small{display:block;color:#7b8175;font-size:11px}.h2h-row strong{color:#ae1230;font-size:18px;white-space:nowrap;font-variant-numeric:tabular-nums}
.match-stats-history{min-width:0;max-height:55vh;max-height:55dvh;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable}.match-stats-history:focus-visible{outline:2px solid #ae1230;outline-offset:-2px}.match-stats-history .challenge-card{flex-wrap:wrap}
@media(max-width:600px){.match-stats-toolbar{gap:12px}.match-stats-h2h{padding:10px;gap:8px}.h2h-box{padding:10px}.h2h-box h3{font-size:14px}.h2h-box>small{display:none}.h2h-row{gap:6px;font-size:12px;padding:7px 0}.h2h-row strong{font-size:16px}.h2h-row small{font-size:10px}.match-stats-history{max-height:45vh;max-height:45dvh}}

.match-h2h-hover{position:relative;cursor:help}.match-h2h-tooltip{display:none;position:absolute;z-index:20;left:0;top:100%;width:max-content;max-width:min(360px,75vw);padding:10px 12px;border:1px solid #dce0d5;border-radius:7px;background:#fff;box-shadow:0 5px 18px #0002;font-size:12px;font-weight:400;line-height:1.5;color:#30382b}.match-h2h-hover:hover .match-h2h-tooltip,.match-h2h-hover:focus .match-h2h-tooltip{display:block}
#vm-handicap[hidden]{display:none}
.vm-years{margin-bottom:16px}.vm-competition-toolbar{align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.vm-competition-toolbar .ladder-switch{margin:0;min-width:0;flex-wrap:wrap}.vm-competition-toolbar>.btn{flex-shrink:0}.vm-participant-actions{display:flex;gap:8px;flex-wrap:wrap}.vm-participant-row{display:grid;grid-template-columns:minmax(160px,1fr) 110px 220px;gap:20px;align-items:center;padding:12px 0;border-bottom:1px solid #e5e8df}.vm-participant-row:last-child{border-bottom:0}.vm-participant-row>span{text-align:right;font-variant-numeric:tabular-nums}.vm-participant-row .account-actions{justify-content:flex-end}.vm-participant-row strong small{font-weight:400;margin-left:6px}@media(max-width:650px){.vm-competition-toolbar{align-items:flex-start}.panel-heading:has(.vm-participant-actions){align-items:flex-start;flex-wrap:wrap;gap:12px}.vm-participant-row{grid-template-columns:minmax(0,1fr) 85px;gap:8px}.vm-participant-row .account-actions{grid-column:1/-1;justify-content:flex-start}.vm-participant-actions .btn{padding:8px 12px}}
.vm-config>summary{cursor:pointer;padding:20px 24px;font-weight:700}.vm-config-settings{display:flex;justify-content:space-between;align-items:center;gap:16px}.vm-tournament-actions{display:flex;flex-wrap:wrap;gap:10px;border-top:1px solid #e5e8df;padding-top:16px;margin-top:16px}.vm-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:16px 0 24px}.vm-ranking{display:inline-block;min-width:24px;color:#ae1230}#modal .field[hidden]{display:none}
.vm-group-overview{display:grid;gap:24px}.vm-group{border:1px solid var(--border,#dfe2d8);border-radius:10px;overflow:visible}.vm-group>h3{padding:16px 20px;margin:0}.vm-table{width:100%;border-collapse:collapse}.vm-table th,.vm-table td{padding:14px;text-align:right}.vm-table th:first-child,.vm-table td:first-child,.vm-table th:nth-child(2),.vm-table td:nth-child(2){text-align:left}.vm-table th{background:#f0f2ee;font-size:11px;text-transform:uppercase}.vm-table td{border-top:1px solid #e2e5de}.vm-table td:nth-child(2)>small{display:block;color:#7d887d;margin-top:5px}.vm-table td:first-child{width:65px;font-size:20px}.vm-player{position:relative;font-weight:700;cursor:default;outline-offset:4px}.vm-player-history{display:none;position:absolute;z-index:20;left:0;top:100%;width:300px;max-width:70vw;padding:14px;background:white;box-shadow:0 5px 24px #0003;border:1px solid #ddd;border-radius:8px;font-size:13px;font-weight:400}.vm-player:hover .vm-player-history,.vm-player:focus .vm-player-history{display:block}.vm-player-history>span{display:block;padding:5px 0}.vm-games{border-top:1px solid #ddd;padding:14px 20px}.vm-games>summary{cursor:pointer;font-weight:600}.vm-game{display:grid;grid-template-columns:110px 1fr 60px 1fr auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #e2e5de}.vm-game:last-child{border:0}@media(max-width:650px){.vm-table th,.vm-table td{padding:10px 6px}.vm-table td:first-child{width:35px}.vm-table th{font-size:9px}.vm-game{grid-template-columns:1fr auto}.vm-game>small:first-child{grid-column:1/-1}.vm-group>h3,.vm-games{padding:12px}.vm-player-history{width:240px}}
.vm-history-day{max-width:240px;margin-bottom:20px}

.vm-handicap{display:block;color:#b50d2c;font-weight:700;margin-top:5px}

.vm-member-filters{margin:12px 0 16px}

.vm-view-toolbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.vm-view-toolbar .vm-history-day{margin:0}.vm-group-overview{align-items:start;gap:18px;grid-template-columns:minmax(0,1fr)}.vm-group-overview .vm-group{min-width:0}.vm-group-overview .vm-table{table-layout:fixed}.vm-group-overview .vm-table th,.vm-group-overview .vm-table td{padding:10px 7px}.vm-group-overview .vm-table th:first-child,.vm-group-overview .vm-table td:first-child{width:42px}.vm-group-overview .vm-table th:nth-child(n+3){width:48px}.vm-group-overview .vm-table td:nth-child(2){overflow-wrap:anywhere}.vm-group-overview .vm-game{grid-template-columns:minmax(0,1fr) auto;gap:7px}.vm-group-overview .vm-game>small:first-child{grid-column:1/-1}.vm-group-overview .vm-game>span{min-width:0;overflow-wrap:anywhere}.vm-group-overview .vm-game>small:nth-child(4){grid-column:1}.vm-group-overview .vm-game>.btn{grid-column:2}.vm-group-overview .vm-player-history{overflow-wrap:normal;max-width:min(300px,65vw)}
@media(min-width:1000px){.vm-group-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.vm-group-overview.is-compact{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.vm-group-overview.is-compact .vm-group>h3{font-size:16px;padding:12px}.vm-group-overview.is-compact .vm-table{font-size:12px}.vm-group-overview.is-compact .vm-table th{font-size:9px}.vm-group-overview.is-compact .vm-table th,.vm-group-overview.is-compact .vm-table td{padding:8px 4px}.vm-group-overview.is-compact .vm-table th:first-child,.vm-group-overview.is-compact .vm-table td:first-child{width:30px;font-size:14px}.vm-group-overview.is-compact .vm-table th:first-child{font-size:9px}.vm-group-overview.is-compact .vm-table th:nth-child(n+3){width:34px}.vm-group-overview.is-compact .vm-games{padding:12px;font-size:12px}.vm-group-overview.is-compact .vm-table td:nth-child(2)>small{margin-top:3px;font-size:10px}}
.vm-raster{border:0;padding:0;margin:16px 0}.vm-raster legend{font-size:12px;color:#69735e;font-weight:600;margin-bottom:8px}.vm-ko{border-top:1px solid #e2e5de;padding-top:20px}.vm-ko-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.vm-ko-heading small{display:block;margin-top:6px}.vm-bracket{display:grid;grid-template-columns:repeat(var(--vm-rounds),minmax(220px,1fr));gap:24px;overflow-x:auto;padding:0 2px 12px}.vm-ko-round{display:flex;flex-direction:column;min-width:0}.vm-ko-round>h4{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#7b806f;margin:0 0 16px}.vm-ko-round-games{display:flex;flex:1;flex-direction:column;justify-content:space-around;gap:16px}.vm-ko-match{position:relative;border:1px solid #dce0d5;border-radius:10px;background:#fff;padding:12px;box-shadow:0 2px 5px #25302308}.vm-ko-match-label{display:block;font-size:10px;letter-spacing:.6px;margin-bottom:8px}.vm-ko-player{display:flex;gap:8px;align-items:center;min-height:48px;padding:8px 0}.vm-ko-player+.vm-ko-player{border-top:1px solid #e5e8df}.vm-ko-player>span{min-width:0;overflow-wrap:anywhere}.vm-ko-player small{display:block;font-size:11px;margin-top:3px}.vm-ko-player .vm-ko-position{color:#a91229;font-size:12px;min-width:14px}.vm-ko-player.is-winner strong{color:#347144}.vm-ko-shadow{color:#8d9288;font-style:italic;opacity:.7}.vm-ko-result{display:flex;flex-direction:column;gap:5px;padding:9px 0;border-top:1px solid #e5e8df}.vm-ko-match>.btn{margin-top:10px;width:100%}.vm-ko-bye{display:block;padding-top:8px;color:#74816b}.vm-ko-champion{display:flex;flex-direction:column;align-items:center;gap:5px;padding:24px;margin-top:20px;background:#f2f6ec;border:1px solid #dce5d0;border-radius:10px}.vm-ko-champion strong{font-size:22px;color:#347144}@media(max-width:650px){.vm-bracket{gap:16px;grid-template-columns:repeat(var(--vm-rounds),220px)}.vm-ko-heading{align-items:start}.vm-view-toolbar .ladder-switch{flex-wrap:wrap}}
.vm-ko-round:not(:last-child) .vm-ko-match::after{content:"";position:absolute;left:100%;top:50%;width:24px;border-top:1px solid #cdd4c4}.vm-ko-round:not(:first-child) .vm-ko-match::before{content:"";position:absolute;right:100%;top:50%;width:12px;border-top:1px solid #cdd4c4}@media(max-width:650px){.vm-ko-round:not(:last-child) .vm-ko-match::after{width:16px}.vm-ko-round:not(:first-child) .vm-ko-match::before{width:8px}}
.vm-bracket.vm-tree{--tree-pitch:250px;--tree-gap:40px;display:grid;grid-template-columns:repeat(var(--vm-rounds),270px);gap:var(--tree-gap);padding:0 16px 20px 2px;overflow:auto;max-width:100%;align-items:stretch}.vm-tree .vm-ko-round>h4,.vm-tree-winner>h4{height:28px;margin:0 0 12px;font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#7b806f}.vm-tree .vm-ko-round-games{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:calc(var(--tree-pitch)*var(--vm-span));gap:0;flex:none;align-items:center}.vm-tree .vm-ko-match{border-radius:3px;padding:10px 12px;margin:0;min-height:184px;box-sizing:border-box;box-shadow:none;overflow:visible}.vm-tree .vm-ko-player{min-height:38px;padding:6px 0;gap:6px}.vm-tree .vm-ko-player>span{flex:1}.vm-tree-score{font-size:19px;color:#35402f;font-variant-numeric:tabular-nums}.vm-tree .vm-ko-player.is-winner{background:#f1f6ed}.vm-tree .vm-ko-match-label{margin-bottom:4px}.vm-tree .vm-ko-result{padding:5px 0;gap:2px}.vm-tree .vm-ko-result>b{display:none}.vm-tree .vm-ko-result small{font-size:12px;color:#48543d}.vm-tree .vm-ko-match>.btn{margin-top:6px;padding:4px 10px;min-height:28px;width:auto}.vm-tree .vm-handicap{font-size:11px;line-height:1.3}.vm-tree .vm-ko-round .vm-ko-match::before{content:"";position:absolute;right:100%;top:50%;width:20px;border-top:1px solid #87917e}.vm-tree .vm-ko-round:first-child .vm-ko-match::before{display:none}.vm-tree .vm-ko-round .vm-ko-match::after{content:"";position:absolute;left:100%;width:20px;height:calc(var(--tree-pitch)*var(--vm-span)/2);border-right:1px solid #87917e;border-top:1px solid #87917e;top:50%;box-sizing:border-box}.vm-tree .vm-ko-match.tree-lower::after{top:auto;bottom:50%;border-top:0;border-bottom:1px solid #87917e}.vm-tree .vm-ko-round:nth-last-child(2) .vm-ko-match::after{height:0;width:var(--tree-gap);border-right:0}.vm-tree-winner{display:flex;flex-direction:column}.vm-tree-winner>div{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:calc(var(--tree-pitch)*var(--vm-leaves))}.vm-tree-winner strong{width:100%;padding:20px 16px;background:#f1f6ed;border:1px solid #aebfa3;border-left:4px solid #a91229;border-radius:3px;font-size:18px;color:#35462c}.vm-ko-heading{flex-wrap:wrap}
.vm-bracket.vm-tree.is-compact{--tree-pitch:160px;--tree-gap:20px;grid-template-columns:repeat(var(--vm-rounds),minmax(155px,1fr));padding-right:2px}.vm-tree.is-compact .vm-ko-match{min-height:130px;padding:6px 7px}.vm-tree.is-compact .vm-ko-player{min-height:28px;padding:3px 0;font-size:12px}.vm-tree.is-compact .vm-ko-player strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vm-tree.is-compact .vm-ko-player small{font-size:10px}.vm-tree.is-compact .vm-tree-score{font-size:16px}.vm-tree.is-compact .vm-ko-match-label{font-size:9px;margin-bottom:2px}.vm-tree.is-compact .vm-ko-player .vm-ko-position{min-width:10px;font-size:10px}.vm-tree.is-compact .vm-ko-match>.btn{font-size:11px;padding:2px 7px;min-height:24px;margin-top:3px}.vm-tree.is-compact .vm-handicap,.vm-tree.is-compact .vm-ko-bye{font-size:10px;line-height:1.2}.vm-tree.is-compact .vm-ko-round .vm-ko-match::before,.vm-tree.is-compact .vm-ko-round .vm-ko-match::after{width:10px}.vm-tree.is-compact .vm-ko-round:nth-last-child(2) .vm-ko-match::after{width:var(--tree-gap)}.vm-tree.is-compact .vm-ko-round>h4,.vm-tree.is-compact .vm-tree-winner>h4{font-size:10px;letter-spacing:.3px}.vm-tree.is-compact .vm-tree-winner strong{font-size:14px;padding:12px 8px;overflow-wrap:anywhere}
.vm-group-overview .vm-game-action{grid-column:2;grid-row:2;display:flex;flex-direction:column;align-items:flex-end;gap:4px;white-space:nowrap}.vm-group-overview .vm-game-action .btn{margin:0}.vm-group-overview .vm-game-sets{grid-column:1;min-width:0}.vm-group-overview.is-compact .vm-game{padding:10px 0}.vm-group-overview.is-compact .vm-game-action .btn{padding:5px 9px;font-size:12px}
.vm-participants>summary{padding:18px 24px;font-weight:700;cursor:pointer}.vm-participants[open]>summary{border-bottom:1px solid var(--border,#dfe2d8)}.vm-participant-toolbar{display:flex;justify-content:flex-end;margin-bottom:16px}
.vm-group-overview .vm-table th:first-child{width:52px;padding-right:12px}.vm-group-overview.is-compact .vm-table th:first-child{width:44px;padding-right:10px}.vm-group-overview .vm-table th:nth-child(2){padding-left:8px}
.vm-bracket.vm-tree.vm-tree-flat{--tree-pitch:112px;--tree-gap:0px;grid-template-columns:repeat(var(--vm-rounds),minmax(0,1fr));gap:0;padding:0 1px 12px;overflow:visible;width:100%}.vm-bracket.vm-tree.vm-tree-flat.is-compact{--tree-pitch:84px}.vm-tree-flat .vm-ko-round>h4,.vm-tree-flat .vm-tree-winner>h4{padding:0 6px;font-size:clamp(9px,1vw,12px);letter-spacing:0;height:28px}.vm-tree.vm-tree-flat .vm-ko-match{height:calc(var(--tree-pitch)*var(--vm-span));min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.vm-tree-flat .vm-ko-match-label{display:none}.vm-tree.vm-tree-flat .vm-ko-player{position:absolute;left:0;right:0;top:25%;transform:translateY(-50%);height:34px;min-height:0;padding:3px 6px;box-sizing:border-box;border:1px solid #9ca497;background:#eef0eb;font-size:12px;gap:4px;z-index:1}.vm-tree.vm-tree-flat .vm-ko-player+.vm-ko-player{top:75%;border:1px solid #9ca497}.vm-tree-flat .vm-ko-player>span{min-width:0;flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.vm-tree-flat .vm-ko-player strong,.vm-tree-flat .vm-ko-player>span>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vm-tree-flat .vm-ko-player>span>small:not(.vm-ko-shadow){display:none}.vm-tree.vm-tree-flat .vm-ko-player.is-winner{background:#e3ecd9}.vm-tree-flat .vm-tree-score{font-size:14px}.vm-tree.vm-tree-flat .vm-ko-round .vm-ko-match::before{display:none}.vm-tree.vm-tree-flat .vm-ko-round .vm-ko-match::after{content:"";position:absolute;left:auto;right:0;top:25%;bottom:auto;width:0;height:50%;border:0;border-right:1px solid #77816e;box-sizing:border-box}.vm-tree.vm-tree-flat .vm-ko-round:nth-last-child(2) .vm-ko-match::after{width:0;height:50%;border-right:1px solid #77816e}.vm-tree.vm-tree-flat .vm-ko-match>.btn{position:absolute;right:5px;top:50%;transform:translateY(-50%);margin:0;padding:1px 5px;min-height:23px;font-size:10px;z-index:2;background:#fff}.vm-tree-flat .vm-ko-match>.vm-handicap{position:absolute;left:5px;right:62px;top:50%;transform:translateY(-50%);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;line-height:1.2;margin:0}.vm-tree-flat .vm-ko-bye{position:absolute;right:6px;top:50%;transform:translateY(-50%);padding:0;font-size:10px;background:var(--surface,#fff)}.vm-tree-flat .vm-tree-winner{min-width:0}.vm-tree-flat .vm-tree-winner strong{padding:5px 8px;border-radius:0;font-size:13px;min-height:34px;box-sizing:border-box;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.vm-tree.vm-tree-flat.is-compact .vm-ko-player{height:28px;font-size:11px}.vm-tree.vm-tree-flat.is-compact .vm-tree-score{font-size:12px}.vm-tree-flat .vm-ko-player .vm-ko-position{font-size:9px;min-width:9px}@media(max-width:650px){.vm-tree.vm-tree-flat .vm-ko-player{font-size:9px;padding:2px;gap:2px}.vm-tree-flat .vm-ko-player .vm-ko-position{display:none}.vm-tree-flat .vm-ko-round>h4,.vm-tree-flat .vm-tree-winner>h4{font-size:8px;padding:0 2px}.vm-tree-flat .vm-tree-winner strong{font-size:10px;padding:4px}.vm-tree-flat .vm-ko-match>.vm-handicap{display:none}.vm-tree.vm-tree-flat .vm-ko-match>.btn{right:2px;font-size:9px;padding:1px 3px}}
.vm-tree[data-vm-size="4"]{--vm-rounds:3;--vm-leaves:2}.vm-tree[data-vm-size="8"]{--vm-rounds:4;--vm-leaves:4}.vm-tree[data-vm-size="16"]{--vm-rounds:5;--vm-leaves:8}.vm-ko-round[data-vm-round="1"]{--vm-span:1}.vm-ko-round[data-vm-round="2"]{--vm-span:2}.vm-ko-round[data-vm-round="3"]{--vm-span:4}.vm-ko-round[data-vm-round="4"]{--vm-span:8}
.match-set-inputs .set-sign-toggle{display:block;width:100%;min-height:32px;margin-top:4px;border:1px solid var(--border,#dfe2d8);border-radius:5px;background:#f5f6f2;color:#a91229;font-size:16px;font-weight:700;cursor:pointer}.match-set-inputs .set-sign-toggle:focus-visible{outline:2px solid #a91229;outline-offset:2px}
#app-update-notice{position:fixed;z-index:90;bottom:calc(16px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:12px 16px;background:white;border:1px solid #dfe2d8;border-radius:8px;box-shadow:0 4px 24px #0002;max-width:calc(100% - 24px);width:max-content;font-size:13px}.sidebar-bottom button.nav-item{width:100%;text-align:left;background:transparent;border:0;cursor:pointer}

.match-set-inputs .set-next{display:block;width:100%;min-height:44px;margin-top:4px;border:1px solid #ae1230;border-radius:5px;background:#ae1230;color:white;font-size:22px;line-height:1;cursor:pointer}.match-set-inputs .set-next:hover{background:#8f1028}.match-set-inputs .set-next:focus-visible{outline:2px solid #ae1230;outline-offset:2px}

.vm-round-nav{display:none}
@media(max-width:650px){
.vm-ko:not(.is-compact) .vm-round-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.vm-round-nav .btn{min-height:44px;min-width:44px}
.vm-ko:not(.is-compact) .vm-bracket.vm-tree.vm-tree-flat{display:block}
.vm-ko:not(.is-compact) .vm-ko-round:not(.is-mobile-current),.vm-ko:not(.is-compact) .vm-tree-winner{display:none}
.vm-ko:not(.is-compact) .vm-ko-round>h4{display:none}
.vm-ko:not(.is-compact) .vm-ko-round-games{display:flex;gap:12px}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-match{height:auto;min-height:0;padding:12px;border:1px solid #dce0d5;border-radius:8px;background:#fff}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-match::after{display:none}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-player{position:static;transform:none;height:auto;min-height:44px;font-size:14px;padding:8px;gap:8px}
.vm-ko:not(.is-compact) .vm-ko-player strong{white-space:normal;overflow-wrap:anywhere}
.vm-ko:not(.is-compact) .vm-tree-score{font-size:20px}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-match>.btn{position:static;transform:none;min-height:44px;font-size:14px;margin-top:10px;padding:8px 16px;width:100%}
.vm-ko:not(.is-compact) .vm-tree-flat .vm-ko-match>.vm-handicap,.vm-ko:not(.is-compact) .vm-ko-bye{display:block;position:static;transform:none;white-space:normal;font-size:12px;margin-top:8px}
}

@media(max-width:760px){
.app-shell{--mobile-header-height:calc(64px + env(safe-area-inset-top,0px))}
.app-shell .topbar{position:fixed;top:0;left:0;right:0;z-index:30;height:var(--mobile-header-height);padding-top:env(safe-area-inset-top,0px);background:#fff;box-shadow:0 2px 8px #2527230a}
.app-shell .main-wrap{padding-top:var(--mobile-header-height)}
.app-shell .sidebar{top:var(--mobile-header-height);height:calc(100vh - var(--mobile-header-height));height:calc(100dvh - var(--mobile-header-height));z-index:20}
.mobile-menu{min-width:44px;min-height:44px;justify-content:center;align-items:center;padding:0;border-radius:7px}
.mobile-menu[aria-expanded="true"]{background:#f9edef;color:#a91229}
}

button.vm-tree-score{background:transparent;border:0;border-radius:3px;padding:3px 5px;font-weight:700;flex-shrink:0;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}button.vm-tree-score:focus-visible{outline:2px solid #ae1230}button.vm-tree-score:hover{background:#ffffffa6}

.vm-set-overlay{position:fixed;inset:auto;margin:0;padding:8px 14px;min-width:62px;width:max-content;border:1px solid #d7ddcf;border-radius:7px;background:white;color:#252723;box-shadow:0 4px 18px #0003;z-index:100;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;text-align:center;cursor:pointer}
.vm-set-overlay span{display:block;line-height:1.6}.vm-set-overlay::backdrop{background:transparent}
@media(max-width:650px){
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-match{height:210px;flex:none;display:grid;grid-template-rows:44px 44px 34px 44px;gap:6px;padding:12px}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-player{height:44px;min-height:44px}
.vm-ko:not(.is-compact) .vm-ko-player strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:16px}
.vm-ko:not(.is-compact) .vm-tree-flat .vm-ko-match>.vm-handicap,.vm-ko:not(.is-compact) .vm-ko-bye{grid-row:3;margin:0;align-self:center;line-height:16px;max-height:32px;overflow:hidden}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-match>.btn{grid-row:4;margin:0;min-height:44px}
}

/* Mobile round cards must stretch instead of inheriting the tree's centered alignment. */
@media(max-width:650px){
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-round-games{align-items:stretch;width:100%;min-width:0}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-match{width:100%;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}
.vm-ko:not(.is-compact) .vm-tree.vm-tree-flat .vm-ko-player{width:100%;min-width:0}
}

.vm-round-short{display:none;text-decoration:none}
@media(max-width:650px){
.vm-tree-flat.is-compact .vm-round-full{display:none}
.vm-tree-flat.is-compact .vm-round-short{display:inline}
.vm-tree-flat.is-compact .vm-ko-round>h4,.vm-tree-flat.is-compact .vm-tree-winner>h4{font-size:11px;text-align:center;letter-spacing:0}
.vm-tree.vm-tree-flat.is-compact .vm-ko-player{height:38px;font-size:10px;line-height:12px;padding:2px 3px;gap:2px}
.vm-tree.vm-tree-flat.is-compact .vm-ko-player>span{white-space:normal;overflow:hidden;text-overflow:clip}
.vm-tree.vm-tree-flat.is-compact .vm-ko-player strong,.vm-tree.vm-tree-flat.is-compact .vm-ko-player>span>span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;overflow:hidden;text-overflow:clip;overflow-wrap:anywhere;line-height:12px;max-height:24px}
.vm-tree.vm-tree-flat.is-compact .vm-tree-score{font-size:10px;padding:2px 1px}
.vm-tree-flat.is-compact .vm-tree-winner strong{white-space:normal;overflow-wrap:anywhere;font-size:10px;line-height:12px;padding:6px 3px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;max-height:38px}
.vm-tree-flat.is-compact .vm-ko-bye{font-size:8px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}

.vm-placement-chart{max-width:900px;margin:0 auto 24px}.vm-placement-chart>svg{display:block;width:100%;height:auto}.vm-placement-legend{display:flex;gap:12px;flex-wrap:wrap;font-size:12px}.vm-placement-legend>span{display:inline-flex;align-items:center;gap:5px}

.vm-bronze{margin-top:20px;padding:16px;border:1px solid #dce0d5;border-radius:8px}.vm-bronze p{margin:8px 0}.vm-bronze .btn{margin-left:8px}

.impersonation-banner{position:fixed;top:0;left:238px;right:0;z-index:40;min-height:54px;padding:8px 18px;background:#fff1c9;border-bottom:1px solid #dfc06c;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}
.is-impersonating .topbar{padding-top:54px;height:132px}
@media(max-width:1100px) and (min-width:761px){.impersonation-banner{left:210px}}
@media(max-width:760px){.app-shell.is-impersonating{--mobile-header-height:calc(144px + env(safe-area-inset-top,0px))}.is-impersonating .topbar{padding-top:calc(80px + env(safe-area-inset-top,0px))}.impersonation-banner{left:0;min-height:80px;padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top,0px))}.impersonation-banner span{min-width:0}.impersonation-banner .btn{max-width:145px}}

@media(max-width:760px){.app-shell.is-impersonating .topbar{height:var(--mobile-header-height)}}

.welcome-checklist{list-style:none;padding:0;margin:16px 0}.welcome-checklist li{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #e3e8dc}.checklist-status{font-size:22px;color:#a91229}.checklist-status.is-done{color:#347144}.welcome-checklist .action-link{text-align:left;font-size:14px;padding:0}.welcome-checklist small{display:block;margin-top:5px;font-size:12px}

.team-captain-picker{grid-column:1/-1;border:1px solid #dfe2d8;border-radius:7px;padding:12px;min-width:0}.team-captain-picker .checkbox-list{max-height:220px;overflow:auto}

.match-player[data-training-person][hidden] { display: none; }

.ladder-place.is-guest { background: #e7f0fa; border-color: #6488af; color: #244d75; }
.ladder-place.is-guest.is-me { outline: 2px solid #b20d2e; }

/* Readable everyday controls without expanding the compact tournament tree. */
body{font-size:16px}
.field{font-size:15px}
.field input,.field select,.field textarea{font-size:16px;line-height:1.5}
.nav-item{font-size:15px}
.event-main p,.event-count,.event-bottom small,.person small,.stat small{font-size:14px}
.btn.small,.action-link,.response,.notice,.role-chip{font-size:14px}
.season-link-example{margin:12px 0;overflow-wrap:anywhere;font-size:15px}
.season-link-example code{white-space:normal;overflow-wrap:anywhere}
#season-profile-url{width:100%;resize:vertical;overflow-wrap:anywhere}
@media(max-width:760px){
 .content{font-size:16px}
 .content .muted,.content .field,.content .event-main p{font-size:14px}
 .content input,.content select,.content textarea{font-size:16px}
 .content .btn,.content .response{min-height:44px}
 .sidebar .nav-item{min-height:44px;font-size:16px}
 .content .table-wrap td{font-size:14px}
}

.schedule-change-notice{display:block;margin:14px 0}.schedule-change-notice p{margin:8px 0}.schedule-change-notice .account-actions{flex-wrap:wrap}

/* Private PDF guides in the profile. */
.guides-panel .panel-heading{gap:16px;flex-wrap:wrap}.guides-panel .panel-heading p{margin:6px 0 0;font-size:14px}.guides-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.guide-card{display:flex;align-items:flex-start;gap:14px;border:1px solid var(--line,#ddd);border-radius:8px;padding:18px}.guide-file-type{flex:0 0 42px;padding:14px 0;text-align:center;border-radius:6px;background:#f9e9ed;color:#a91229;font-size:12px;font-weight:700;letter-spacing:.5px}.guide-content{min-width:0;flex:1}.guide-content h4{margin:0 0 6px;font-size:17px;overflow-wrap:anywhere}.guide-content p{margin:0 0 10px;font-size:13px}.guide-roles{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px}.guide-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.guide-role-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;border:1px solid var(--line,#ddd);border-radius:6px;margin:0 0 12px}.guide-role-picker legend{padding:0 5px;font-weight:600}.guide-role-picker .check-inline{margin:0;min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){.guides-grid{grid-template-columns:1fr}.guide-card{padding:14px}.guide-role-picker{grid-template-columns:1fr}}
