body{font-family:"Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;font-size:16px;background-color:#1B0101;color:#FDFFFF}body>div.header{text-align:right;color:#FDFFFF;background-color:#1B0101;background-size:contain;background-repeat:no-repeat}a{color:#FDFFFF}ul,li{list-style:none;margin:0;padding:0}div.main-stage{color:#000}.header{padding:0.5rem}.noselect{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.hidden{display:none}div.main-menu{background:#550000}div.main-menu ul{list-style-type:none;margin:0px 0 0 0;display:flex}div.main-menu ul li{padding:0.5rem 2rem;margin:0;outline:0;display:flex;align-items:center;justify-content:center}div.main-menu ul li:hover{background-color:#666}div.main-menu .menu-item{background:#1B0101;color:#FDFFFF}div.main-menu .menu-item:hover{cursor:pointer}div.main-menu .menu-item.selected{background:#FDFFFF;color:#000}div.main-selected-state{background:#FDFFFF}div.main-selected-state a{color:#1B0101}div.season-weeks-container form.filters{padding:0.5rem}div.season-weeks-container form.filters label{cursor:pointer}.control-container{text-align:center;display:flex;align-items:center}.control-container li .toggle-label{padding:1rem;display:-webkit-flexbox;display:-ms-flexbox;display:-webkit-flex;display:flex;-webkit-flex-align:center;-ms-flex-align:center;-webkit-align-items:center;align-items:center;justify-content:center}.toggle{display:none}.toggle,.toggle:after,.toggle:before,.toggle *,.toggle *:after,.toggle *:before,.toggle+.toggle-label{box-sizing:border-box}.toggle::selection,.toggle:after::selection,.toggle:before::selection,.toggle *::selection,.toggle *:after::selection,.toggle *:before::selection,.toggle+.toggle-label::selection{background:none}.toggle+.toggle-label{outline:0;display:block;height:2rem;position:relative;cursor:pointer;user-select:none}.toggle:checked+.toggle-label:after{left:50%}.control-container{padding:0.05rem;height:100%;width:100%;display:flex;border-style:solid;border-color:#9CAEA9;border-radius:0.25rem;border-width:0.15rem 0.15rem 0.15rem 0.15rem}.control-container.filter-toggle:before{content:'Display Options';font-size:0.8rem;margin:0 0.25rem 0 0.25rem}.control-container a{color:#000}.control-container li{-webkit-appearance:inherit;width:100%;height:100%;transition:background 300ms ease-out;margin:0;outline:0;border-left:1px solid rgba(0,0,0,0.05)}.control-container li .toggle-button+.toggle-label:hover{background-color:#CCDAD1}.control-container .toggle-button+.toggle-label{padding:0.5rem;width:100%;position:relative;margin:0.2rem;transition:all .1s ease}.control-container .toggle-button+.toggle-label:hover{background-color:#CCDAD1}.control-container .toggle-button:checked+.toggle-label{background-color:#9CAEA9}.control-container .toggle-button:checked+.toggle-label:after{content:"\2713";margin-left:0.33rem;display:inline-block}.object-thumbnail{cursor:pointer;overflow:visible}.object-thumbnail:hover{background-color:#550000;color:#FDFFFF}.object-thumbnail:hover .object-thumbnail:hover{background-color:#f1f7a5;color:#1B0101}.object-thumbnail:hover .object-thumbnail:hover .object-thumbnail:hover{background-color:#c4c9ff}div.matchup-summary div.matchup-list{max-height:0px;font-family:monospace;font-size:0.8rem;overflow:hidden;transition:max-height .05s ease-in-out;margin-left:1.5rem}div.matchup-summary div.matchup-list table{overflow:visible}div.matchup-summary div.matchup-list table th.score,div.matchup-summary div.matchup-list table td.score{width:3rem;text-align:center}div.matchup-summary input.matchup-toggle{display:none}div.matchup-summary input.matchup-toggle:checked+label.matchup-toggle-label+div.matchup-list{max-height:100%}div.matchup-summary .matchup-toggle:checked+.matchup-toggle-label::before{transform:rotate(90deg) translateX(-3px)}div.matchup-summary .matchup-toggle:checked+.matchup-toggle-label{border-bottom-right-radius:0;border-bottom-left-radius:0}div.matchup-summary label.matchup-toggle-label{display:block;user-select:none;font-family:monospace;font-size:0.8rem;text-transform:uppercase;padding:0.5rem;cursor:pointer;border-radius:0.1rem;transition:all 0.05s ease-out}div.matchup-summary label.matchup-toggle-label::before{content:' ';display:inline-block;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid currentColor;vertical-align:middle;margin-right:.7rem;transform:translateY(-2px);transition:transform .05s ease-out}.matchup{display:flex;flex-direction:column;padding:0.3rem}.teams{display:flex;flex-wrap:wrap}.team-summary{flex:1;margin:0.3rem;padding:0.3rem;background-color:#1B0101;color:#FDFFFF}.team-summary .stats-header{display:flex;text-align:right;font-size:0.8rem;text-transform:uppercase;text-align:left}.team-summary .stats-header .spacer{flex:1}.team-summary .stats-header table{flex:1}.team-summary .stats-header table .stat{padding:0 1rem;min-width:2rem}.team-summary .team-header{display:flex;font-weight:bold;margin:0.2rem 0}.team-summary .team-header .team-thumbnail{flex:1}.team-summary .team-header .team-stats{display:flex;flex:1;text-align:right}.team-summary .team-header .team-stats .stat{padding:0 1rem;min-width:2rem}.player-summary{display:flex}.player-summary .player-thumbnail{flex:1}.player-summary .player-season-stats{display:flex;flex:1;text-align:right}.player-summary .player-season-stats .stat{padding:0 1rem;min-width:2rem}ul.season-weeks{list-style-type:none;margin:0.5rem 0.5rem;padding:0}ul.season-weeks li.season-week:nth-child(even){background-color:#F2F2F1}ul.season-weeks li.season-week{padding:0.8rem}ul.season-weeks li.season-week.today:before{padding:0.3rem;position:relative;top:-0.65rem;left:-1rem;text-transform:uppercase;font-style:italic;font-size:0.8em;background:#666;color:#FDFFFF;content:"Today's Match"}ul.season-weeks li.season-week.next-up:before{padding:0.3rem;position:relative;top:-0.65rem;left:-1rem;text-transform:uppercase;font-style:italic;font-size:0.8em;background:#666;color:#FDFFFF;content:"Coming Up"}ul.season-weeks li.season-week.next-up~.next-up:before{display:none}ul.season-weeks li.season-week .date{color:#788585;margin:-0.4rem 0.2rem 0.2rem 0;font-weight:bold}ul.season-weeks li.season-week .league{margin:auto}ul.season-weeks li.season-week .league .league-name{font-weight:bold}.btn-group{display:flex;gap:0.5rem}input.btn[type='submit']{font-size:16px}.btn{padding:0.5rem 1rem;border-radius:4px;font-weight:500;transition:all 0.2s;text-decoration:none;display:inline-block;border:none;cursor:pointer}.btn:hover{transform:translateY(-1px);text-decoration:none;color:#FFFFFF}.btn.btn-primary{background:#3498db;color:white}.btn.btn-primary:hover{background:#2980b9}.btn.btn-secondary{background:#95a5a6;color:white}.btn.btn-secondary:hover{background:#7f8c8d}.btn.btn-success{background:#2ecc71;color:white}.btn.btn-success:hover{background:#27ae60}.btn.btn-warning{background:#f1c40f;color:#2c3e50}.btn.btn-warning:hover{background:#f39c12}.btn.btn-danger{background:#c23232;color:#2c3e50}.btn.btn-info{background:#3498db;color:white}.btn.btn-info:hover{background:#2980b9}.btn.btn-sm{padding:0.25rem 0.5rem;font-size:0.875rem}.uploads{color:#495057}.uploads h1{color:#FFFFFF}.uploads .table{margin:2rem auto auto auto;background:white;box-shadow:0 1px 3px rgba(0,0,0,0.1);border-radius:4px}.uploads .table th{background:#f8f9fa;padding:1rem;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6}.uploads .table td.drag-handle,.uploads .table th.reorder{max-width:2em;position:relative}.uploads .table td.drag-handle .spacer,.uploads .table th.reorder .spacer{height:1em}.uploads .table td.drag-handle .arrow-up,.uploads .table th.reorder .arrow-up{transition:all 0.2s;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid transparent;opacity:0.0}.uploads .table td.drag-handle .arrow-down,.uploads .table th.reorder .arrow-down{transition:all 0.2s;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid transparent;opacity:0.0}.uploads .table th.reorder .spacer{height:19px}.uploads .table th.reorder .arrow-up,.uploads .table th.reorder .arrow-down{position:relative;left:5px}.uploads .table tr[draggable=true]:hover,.uploads .table th:has(input:checked){cursor:grab}.uploads .table tr[draggable=true]:hover .arrow-up,.uploads .table th:has(input:checked) .arrow-up{border-bottom:5px solid #3c3c3c;opacity:1.0}.uploads .table tr[draggable=true]:hover .arrow-down,.uploads .table th:has(input:checked) .arrow-down{border-top:5px solid #3c3c3c;opacity:1.0}.uploads .table td{padding:1rem;vertical-align:middle;border-bottom:1px solid #dee2e6}.uploads .table tr:last-child td{border-bottom:none}.uploads .table tr.filters .control-group{margin:0px 5px}.uploads .table tr.filters .control-group label{cursor:pointer}.uploads .table tr.archived{opacity:0.6}.uploads .table tr.highlight td.title a{font-weight:bold}.uploads .table td.title a:hover{color:#4D0A05}.uploads .table a{color:#2c3e50;text-decoration:none;transition:color 0.2s}.uploads .table a:hover{color:white}.uploads .table .code{font-style:fixed-width;background:#f8f9fa;padding:0.2em 0.4em;border-radius:3px;color:#e83e8c;font-size:0.9em}.uploads .table .code .league{font-weight:bold}.upload-form{color:#495057;max-width:600px;margin:2rem auto;padding:2rem;background:white;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.1)}.upload-form h1{margin-bottom:2rem;color:#2c3e50;font-weight:600}.upload-form small.text-muted{padding-left:1em;font-style:italic}.upload-form .field{margin-bottom:1.5rem}.upload-form .field label{display:block;margin-bottom:0.5rem;color:#495057;font-weight:500}.upload-form .field .form-control{width:100%;padding:0.75rem;border:1px solid #ced4da;border-radius:4px;transition:border-color 0.2s}.upload-form .field .form-control:focus{border-color:#3498db;outline:0;box-shadow:0 0 0 0.2rem rgba(52,152,219,0.25)}.upload-form .field .form-text{margin-top:0.5rem;font-size:0.875rem;color:#7f8c8d}.upload-form .field .tag-input-group{display:flex;gap:0.5rem;align-items:center}.upload-form .field .tag-input-group .tag-prefix{width:33%;min-width:0}.upload-form .field .tag-input-group .tag-suffix{width:67%}.upload-form .actions{margin-top:2rem;padding-top:1rem;border-top:1px solid #dee2e6}.upload-details{max-width:800px;margin:2rem auto;padding:2rem;background:white;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,0.1)}.upload-details h1{margin-bottom:2rem;color:#2c3e50;font-weight:600}.upload-details .file-info h2{color:#495057;font-size:1.25rem;margin:1.5rem 0 1rem;font-weight:500}.upload-details .file-info p{color:#6c757d;margin-bottom:1rem}.upload-details .file-info code{background:#f8f9fa;padding:0.2em 0.4em;border-radius:3px;color:#e83e8c;font-size:0.9em}.upload-details .file-info a{color:#3498db;text-decoration:none;transition:color 0.2s}.upload-details .file-info a:hover{color:#2980b9;text-decoration:none}.upload-details .preview{margin-top:2rem;border:1px solid #dee2e6;border-radius:4px;overflow:hidden}.upload-details .preview iframe{border:none;width:100%;height:600px}.upload-details .actions{margin-top:2rem;padding-top:1rem;border-top:1px solid #dee2e6;display:flex;gap:1rem}#error_explanation{margin-bottom:2rem;padding:1rem;background:#fff3f3;border:1px solid #ffcdd2;border-radius:4px;color:#d32f2f}#error_explanation h2{font-size:1.1rem;margin-bottom:1rem}#error_explanation ul{margin:0;padding-left:1.5rem}html{overflow-x:hidden}body{font-family:"Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;font-size:44px;color:#FDFFFF;background-color:#1B0101;overflow-x:hidden;max-width:100vw;box-sizing:border-box}body *,body *::before,body *::after{box-sizing:inherit}body>div.header{display:flex;flex-wrap:wrap;align-items:center;box-sizing:border-box;width:100%;text-align:right;color:#DDDDDD;background-color:#1B0101;background-size:contain;background-repeat:no-repeat;margin:1rem 0rem;padding:0 0.5rem;font-family:"Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif}body>div.header .uploads-controls{flex-shrink:0;font-size:2rem;padding:0.25rem 0.5rem;text-align:left}body>div.header .uploads-controls a{display:block;white-space:nowrap}body>div.header div.logo{flex:0 0 auto;display:flex}body>div.header div.logo a.home img{height:7rem;margin:0.5rem}body>div.header div.logo-fill{flex:1 1 0;min-width:10rem;overflow:hidden;padding-right:1rem;display:flex;flex-direction:column;justify-content:center;align-items:flex-end}body>div.header .portal-name{text-align:right;font-size:1.4rem;letter-spacing:0.06rem;font-style:italic;font-weight:lighter;color:#AAAAAA;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}body>div.header .logout{margin-top:0.3rem}body>div.header .logout button,body>div.header .logout input[type="submit"]{background:transparent;color:#AAAAAA;border:1px solid #AAAAAA;border-radius:0.25rem;padding:0.25rem 0.8rem;font-size:0.85rem;font-family:inherit;cursor:pointer;letter-spacing:0.03rem;transition:all 0.15s ease}body>div.header .logout button:hover,body>div.header .logout input[type="submit"]:hover{background-color:#AAAAAA;color:#1B0101}@media (max-width: 700px){body>div.header{justify-content:center}body>div.header div.logo{flex:1 0 100%;justify-content:center}body>div.header div.logo a.home img{height:5rem}body>div.header .uploads-controls{font-size:1.2rem;text-align:center;flex:1 1 auto}body>div.header div.logo-fill{flex:1 1 100%;align-items:center;padding-right:0}}.show-mobile{display:none}.team-name-mobile-short{display:none}a{color:#AAAAAA;text-decoration:none}a:hover{color:#fff}#page-content{font-size:1.2rem;padding:0 1rem}h1{margin-top:0;margin-bottom:0.8rem;font-size:1.5rem;text-align:center}.archive-banner{background-color:#f0ad4e;color:#000;text-align:center;padding:0.4rem 1rem;font-weight:bold;font-size:1.2rem;letter-spacing:0.1rem}body.archive-mode{border:4px solid #f0ad4e;border-top:none}.archive-selector select{font-size:1rem;padding:0.3rem 0.5rem;border-radius:0.25rem;border:1px solid #AAAAAA;background-color:#222222;color:#FDFFFF;cursor:pointer}.archive-indicator.archive-active{background-color:#f0ad4e;color:#000;text-align:center;padding:0.3rem 1rem;font-weight:bold;font-size:1rem;letter-spacing:0.05rem;border-radius:0.25rem}.player-show{max-width:50rem;margin:0 auto}.player-show .player-card{background-color:#000;border-radius:0.25rem;margin-bottom:1.5rem}.player-show .player-info-card{padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.player-show .player-info-card .player-details{flex:1}.player-show .player-info-card h1{text-align:left;margin-bottom:0.4rem}.player-show .player-info-card .player-team{font-size:1.2rem;margin-bottom:0.2rem}.player-show .player-info-card .player-rating{font-size:1rem;color:#AAAAAA}.player-show .player-info-card .player-record{text-align:center;white-space:nowrap;padding-left:1.5rem}.player-show .player-info-card .player-record .record-numbers{font-size:4rem;font-weight:bold}.player-show .player-info-card .player-record .record-numbers .record-won{color:#5cb85c}.player-show .player-info-card .player-record .record-numbers .record-divider{color:#AAAAAA;margin:0 0.3rem}.player-show .player-info-card .player-record .record-numbers .record-lost{color:#d9534f}.player-show .player-info-card .player-record .record-pct{font-size:1rem;color:#AAAAAA}.player-show .player-record-mobile{text-align:center;padding:0.75rem 1rem}.player-show .player-record-mobile .record-label{font-size:0.85rem;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.05rem;margin-bottom:0.25rem}.player-show .player-record-mobile .record-numbers{font-size:3rem;font-weight:bold}.player-show .player-record-mobile .record-numbers .record-won{color:#5cb85c}.player-show .player-record-mobile .record-numbers .record-divider{color:#AAAAAA;margin:0 0.5rem}.player-show .player-record-mobile .record-numbers .record-lost{color:#d9534f}.player-show .player-record-mobile .record-pct{font-size:0.85rem;color:#AAAAAA;margin-top:0.2rem}.player-show h2{font-size:1.3rem;margin-top:1.5rem;margin-bottom:0.5rem}table.match-history{width:100%;background-color:#000;border-collapse:collapse;font-size:1rem}table.match-history thead tr{background-color:rgba(255,255,255,0.1)}table.match-history th{padding:0.4rem 0.6rem;text-align:left}table.match-history td{padding:0.4rem 0.6rem}table.match-history td.date,table.match-history th:first-child{white-space:nowrap}table.match-history th.rating,table.match-history td.stat,table.match-history th:has(.show-mobile){text-align:center;white-space:nowrap}table.match-history td.opponent,table.match-history th.team,table.match-history td.opponent-team{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:12rem}table.match-history th.result,table.match-history td.result{white-space:nowrap;text-align:center;font-variant-numeric:tabular-nums;font-family:"Libre Franklin", monospace}table.match-history tbody tr{border-bottom:1px solid rgba(255,255,255,0.1)}table.match-history tbody tr.win td.result{color:#5cb85c;font-weight:bold}table.match-history tbody tr.loss td.result{color:#d9534f;font-weight:bold}table.match-history tbody tr span.win{color:#5cb85c;font-weight:bold}table.match-history tbody tr span.loss{color:#d9534f;font-weight:bold}.flash-container .alert{padding:0.6rem 1rem;margin:0.5rem 0;font-size:1rem;border-radius:0.25rem;text-align:center}.flash-container .alert-notice{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.flash-container .alert-alert,.flash-container .alert-error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.flash-container .alert-warning{background-color:#fff3cd;color:#856404;border:1px solid #ffeeba}div.player-home{max-width:60rem;margin:0 auto;padding:0 1rem}div.player-home h1{margin-bottom:0.25rem}div.player-home .section-heading{font-size:0.9rem;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.05rem;margin-bottom:0.75rem}.league-players{width:100%;display:grid;grid-template-columns:repeat(auto-fit, minmax(25rem, 1fr));gap:1.25rem;align-items:stretch}.league-players .league-player{background-color:#000;border-radius:0.25rem;overflow:hidden}.league-players .league-player .league-name{background-color:rgba(255,255,255,0.1);padding:0.6rem 0.8rem;font-weight:bold;font-size:1.05rem}.league-players .league-player .team-name{padding:0.6rem 0.8rem 0;font-size:1.1rem}.league-players .league-player .contents{padding:0.8rem}.league-players .league-player .contents .match .match-label{font-size:0.8rem;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.03rem;margin-bottom:0.25rem}.league-players .league-player .contents .match .vs-team{font-size:1.05rem;margin-bottom:0.15rem}.league-players .league-player .contents .match .match-date{font-size:0.9rem;color:#AAAAAA}.league-players .league-player .contents .no-match{color:#AAAAAA;font-style:italic}.league-players .league-player .contents .full-schedule{text-align:right;margin-top:0.5rem;font-size:0.9rem}.no-active-players-notice{color:#AAAAAA;font-style:italic;text-align:center;max-width:30rem;margin:2rem auto}div.director-home{max-width:80rem;margin:0 auto;padding:0 1rem}div.director-home h1{margin-bottom:0.25rem}div.director-home .section-heading{font-size:0.9rem;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.05rem;margin-bottom:0.75rem}.league-cards{width:100%;display:grid;grid-template-columns:repeat(auto-fit, minmax(28rem, 1fr));gap:1.25rem;align-items:start}.league-card{background-color:#000;border-radius:0.25rem;overflow:hidden}.league-card details summary{list-style:none;cursor:pointer;background-color:rgba(255,255,255,0.1);padding:0.6rem 0.8rem;display:flex;justify-content:space-between;align-items:center;user-select:none}.league-card details summary::-webkit-details-marker{display:none}.league-card details summary .league-title{font-weight:bold;font-size:1.05rem}.league-card details summary .matchup-count{font-size:0.85rem;color:#AAAAAA}.league-card details summary::after{content:'\25B6';font-size:0.7rem;color:#AAAAAA;margin-left:0.5rem;transition:transform 0.15s ease}.league-card details[open]>summary::after{transform:rotate(90deg)}.league-card table.director-matchups{width:100%;border-collapse:collapse;font-size:0.95rem}.league-card table.director-matchups thead tr{background-color:rgba(255,255,255,0.05)}.league-card table.director-matchups thead th{padding:0.3rem 0.6rem;text-align:left;font-size:0.8rem;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.03rem}.league-card table.director-matchups thead th.vs{width:2rem;text-align:center}.league-card table.director-matchups thead th.time{width:6rem}.league-card table.director-matchups tbody tr.week-header td{padding:0.5rem 0.6rem 0.25rem;font-size:0.8rem;font-weight:bold;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.03rem;border-bottom:1px solid rgba(255,255,255,0.1)}.league-card table.director-matchups tbody tr:not(.week-header){border-bottom:1px solid rgba(255,255,255,0.04)}.league-card table.director-matchups tbody tr:not(.week-header):hover{background-color:rgba(255,255,255,0.03)}.league-card table.director-matchups tbody td{padding:0.35rem 0.6rem}.league-card table.director-matchups tbody td.time{font-size:0.85rem;color:#AAAAAA;white-space:nowrap}.league-card table.director-matchups tbody td.vs{text-align:center;color:#AAAAAA;font-size:0.85rem;width:2rem}.league-card table.director-matchups tbody td.participant{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.league-card table.director-matchups tbody tr.bye-matchup td{color:rgba(255,255,255,0.35);font-style:italic}.league-card table.director-matchups tbody tr.bye-matchup .bye{color:rgba(255,255,255,0.25)}.league-card .no-matchups{padding:1rem 0.8rem;color:#AAAAAA;font-style:italic}.league-card .league-card-footer{padding:0.5rem 0.8rem;text-align:right;font-size:0.9rem;border-top:1px solid rgba(255,255,255,0.1)}@media (max-width: 600px){.league-cards{grid-template-columns:1fr}.league-card table.director-matchups{font-size:0.85rem}.league-card table.director-matchups thead th,.league-card table.director-matchups tbody td{padding:0.25rem 0.3rem}.league-card table.director-matchups thead th.time,.league-card table.director-matchups tbody td.time{width:4.5rem}}.season-heading{font-size:1.2rem;font-weight:bold;letter-spacing:0.05rem;color:#FDFFFF;background-color:rgba(255,255,255,0.1);padding:0.5rem 1rem;margin:1.5rem 0 0;border-radius:0.25rem;text-align:center}div.standings{display:flex;flex-direction:row;flex-wrap:wrap}table.team-roster,table.division-standings,table.team-matchup-result{background-color:#000;margin:2rem auto;min-width:10rem}table.team-roster th.title,table.division-standings th.title,table.team-matchup-result th.title{font-size:1.2rem;text-align:center;padding:0.5rem}table.team-roster th,table.division-standings th,table.team-matchup-result th{padding:0 0.5rem 0 0.5rem}table.team-roster thead tr,table.team-roster tfoot tr,table.division-standings thead tr,table.division-standings tfoot tr,table.team-matchup-result thead tr,table.team-matchup-result tfoot tr{background-color:rgba(255,255,255,0.1)}table.team-roster tr.player td.name,table.division-standings tr.player td.name,table.team-matchup-result tr.player td.name{padding:0 0 0 0.4rem}table.team-roster tr.player.captain td.name,table.division-standings tr.player.captain td.name,table.team-matchup-result tr.player.captain td.name{font-style:italic}table.team-roster td.stat,table.division-standings td.stat,table.team-matchup-result td.stat{text-align:center;padding:0.2rem}table.team-roster td.stat.win,table.division-standings td.stat.win,table.team-matchup-result td.stat.win{color:#5cb85c}table.team-roster td.stat.loss,table.division-standings td.stat.loss,table.team-matchup-result td.stat.loss{color:#d9534f}table.team-roster td.stat.big,table.division-standings td.stat.big,table.team-matchup-result td.stat.big{font-size:6rem;padding:0 2rem}table.team-roster td.stat.big.team-won,table.division-standings td.stat.big.team-won,table.team-matchup-result td.stat.big.team-won{color:#5cb85c}table.team-roster td.stat.big.team-lost,table.division-standings td.stat.big.team-lost,table.team-matchup-result td.stat.big.team-lost{color:#d9534f}.dub-win{color:#5cb85c;font-weight:bold}.dub-loss{color:#d9534f;font-weight:bold}table.season-week-matchups{table-layout:fixed;width:100%}table.season-week-matchups th.team-name,table.season-week-matchups td.team-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}table.season-week-matchups th.result,table.season-week-matchups td.result{width:7rem;white-space:nowrap;text-align:center;font-variant-numeric:tabular-nums}.matchup-date{font-size:0.85em;color:#999;font-style:italic}tr.player-selection{cursor:pointer}tr.player-selection li.player{padding:0 2rem;width:100%}tr.player-selection ul{padding:0 0}tr.player-selection li.player{padding:0 2rem;width:90%;list-style-type:none}tr.player-selection li.player label{display:flex;width:100%}tr.player-selection li.player label span{flex-grow:1}tr.player-selection li.player span.player-name{text-align:left}tr.player-selection li.player span.stats{text-align:right}tr.player-selection li:has(input[type="radio"]:checked){background-color:#dbd4b343}tr.player-selection input[type="radio"]{display:none}@keyframes slideInFromLeft{0%{transform:translateX(-100%);margin-top:0em}100%{transform:translateX(0) translateY(0);margin-top:0em}}@keyframes slideOutToTop{0%{margin-top:0em}99%{margin-top:-1.7em}100%{margin-top:-1.7em;display:none}}p.notice:not(:empty){animation:400ms ease-out 0s 1 slideInFromLeft forwards, 400ms ease-out 1s 1 slideOutToTop forwards;margin-top:-2em}.login-page{display:flex;justify-content:center;padding:1rem;min-height:60vh}.login-page .login-card{background-color:#000;border-radius:0.5rem;padding:2rem 2.5rem;width:100%;max-width:24rem}.login-page .login-card h2{text-align:center;font-size:1.5rem;margin-bottom:1.5rem;font-weight:400;letter-spacing:0.05rem}.login-page .login-card .field{margin-bottom:1rem}.login-page .login-card .field label{display:block;font-size:0.85rem;color:#AAAAAA;margin-bottom:0.25rem}.login-page .login-card .field input[type="email"],.login-page .login-card .field input[type="password"]{width:100%;padding:0.5rem 0.6rem;font-size:1rem;font-family:inherit;background-color:#1B0101;color:#FDFFFF;border:1px solid rgba(255,255,255,0.2);border-radius:0.25rem;outline:none;transition:border-color 0.15s ease}.login-page .login-card .field input[type="email"]:focus,.login-page .login-card .field input[type="password"]:focus{border-color:#AAAAAA}.login-page .login-card .field input[type="email"]::placeholder,.login-page .login-card .field input[type="password"]::placeholder{color:rgba(255,255,255,0.25)}.login-page .login-card .field.remember-me{display:flex;align-items:center;gap:0.4rem;font-size:0.85rem;color:#AAAAAA}.login-page .login-card .field.remember-me label{display:inline;margin-bottom:0}.login-page .login-card .actions{margin-top:1.5rem}.login-page .login-card .actions input[type="submit"]{width:100%;padding:0.6rem;font-size:1rem;font-family:inherit;background-color:#550000;color:#FDFFFF;border:1px solid rgba(255,255,255,0.2);border-radius:0.25rem;cursor:pointer;transition:background-color 0.15s ease}.login-page .login-card .actions input[type="submit"]:hover{background-color:#7e0000}.login-page .login-card .login-links{margin-top:1.5rem;font-size:0.85rem;text-align:center;line-height:1.8}.login-page .login-card .login-links a{color:#AAAAAA}.director-login-link{position:fixed;bottom:1rem;right:1rem}.director-login-link a{font-size:0.75rem;color:rgba(255,255,255,0.15);text-decoration:none;transition:color 0.2s ease}.director-login-link a:hover{color:rgba(255,255,255,0.45)}@media (max-width: 600px){.hide-mobile{display:none}body{font-size:16px;overflow-x:hidden;max-width:100vw}body>div.header{margin:0.5rem 0;padding:0 0.25rem;overflow:hidden;max-width:100vw}body>div.header div.logo a.home img{height:4rem}body>div.header .portal-name{font-size:1.2rem}body>div.header .uploads-controls{font-size:1rem}#page-content{padding:0 0.25rem;font-size:0.9rem;overflow-x:hidden;max-width:100vw}div.matchup h1{font-size:1.1rem}.player-show{max-width:100%;overflow:hidden}.player-show .player-info-card{padding:0.5rem 0.75rem}.player-show .player-info-card h1{font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-show h2{font-size:1rem}table.match-history{font-size:0.85rem}table.match-history.season-week-matchups{table-layout:fixed;width:100%}table.match-history.season-week-matchups th:first-child,table.match-history.season-week-matchups th:last-child,table.match-history.season-week-matchups td.team-name{width:auto}table.match-history.season-week-matchups th.result,table.match-history.season-week-matchups td.result{width:7rem}table.match-history th,table.match-history td{padding:0.25rem 0.2rem}table.match-history td.opponent,table.match-history td.opponent-team{max-width:8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}table.match-history .team-name-desktop{display:none}table.match-history .team-name-mobile-short{display:inline}}@media (max-width: 1024px){.hide-mobile{display:none}.show-mobile{display:revert}.table-scroll-container{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100vw}table.team-roster{font-size:0.92rem;margin:1rem auto}table.team-roster th,table.team-roster td{padding:0.15rem 0.3rem}.team-record-mobile{background-color:#000;text-align:center;padding:0.75rem 1rem;margin:0 auto 1.5rem}.team-record-mobile .team-record-label{font-size:0.85rem;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.05rem;margin-bottom:0.25rem}.team-record-mobile .team-record-numbers{font-size:3rem;font-weight:bold}.team-record-mobile .team-record-numbers .team-won{color:#5cb85c}.team-record-mobile .team-record-numbers .team-divider{margin:0 0.5rem;color:#AAAAAA}.team-record-mobile .team-record-numbers .team-lost{color:#d9534f}table.team-matchup-result{font-size:0.85rem;margin:1rem auto}table.team-matchup-result th,table.team-matchup-result td{padding:0.2rem 0.3rem}table.team-matchup-result td.player-name{max-width:6rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.matchup-record-mobile{background-color:#000;text-align:center;padding:0.75rem 1rem;margin:0 auto 1.5rem;border-radius:0.25rem}.matchup-record-mobile .matchup-record-teams{display:flex;justify-content:space-between;margin-bottom:0.25rem}.matchup-record-mobile .matchup-record-teams .matchup-team-name{font-size:0.85rem;color:#AAAAAA;text-transform:uppercase;letter-spacing:0.03rem}.matchup-record-mobile .matchup-record-teams .matchup-team-vs{font-size:0.85rem;color:#AAAAAA;text-transform:lowercase;padding:0 0.4rem}.matchup-record-mobile .matchup-record-numbers{font-size:3rem;font-weight:bold}.matchup-record-mobile .matchup-record-numbers .team-won{color:#5cb85c}.matchup-record-mobile .matchup-record-numbers .team-divider{margin:0 0.5rem;color:#AAAAAA}.matchup-record-mobile .matchup-record-numbers .team-lost{color:#d9534f}.matchup-record-mobile .matchup-record-racks{font-size:0.85rem;color:#AAAAAA;margin-top:0.2rem}}
