*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{margin:0;font-family:Ubuntu Mono,monospace;font-weight:400;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#222;color:#eee}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-desk{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden}.app{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden;position:relative;text-align:center}.app-nav{display:flex;justify-content:center;flex-shrink:0;background-color:#222;padding:8px 0}.rank-table{flex-grow:1;overflow-y:auto;width:100%;-webkit-overflow-scrolling:touch}.rank-table>.rating_row:first-child{position:sticky;top:0;z-index:10;background-color:#222;border-bottom:2px solid slateblue;font-weight:700}.app-link{color:#61dafb}button{padding:4px;border:2px solid #777;border-radius:4px;background-color:#f5f5f5;cursor:pointer}button.active{border:2px solid slateblue;background-color:#cac1ff}select{padding:4px;border-radius:4px;background-color:#ebe9ff;border:2px solid slateblue}.loading>img{margin:64px;animation:cssload-animate .5s ease-in-out infinite;animation-direction:alternate}.loading{font-size:24px}@keyframes cssload-animate{25%{transform:rotate(22.5deg)}50%{transform:rotate(45deg)}75%{transform:rotate(76.5deg)}to{transform:rotate(90deg)}}.set-event{display:flex;min-width:100px;max-width:300px}.set-event>select{max-width:100%}.set-maxdev{min-width:60px;display:flex;align-items:center}.set-maxdev>input{max-width:100%}.set-maxdev>input{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:20px;outline:none;background:#cac1ff;border-radius:4px}.set-maxdev>input::-moz-range-thumb{background:#6a5acd;width:24px;height:24px;border-radius:3px}.set-maxdev>input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:3px;background:#6a5acd}.rating_controls{display:flex;width:100%;justify-content:space-evenly;align-items:center;min-height:48px;flex-wrap:wrap;flex-shrink:0;background-color:#222;border-bottom:2px solid slateblue}.rating_row{display:flex;width:100%;justify-content:center}.rating_row:nth-child(2n){background-color:#333}.rating_row.points-won .rating_name{--highlight-color: rgba(50, 205, 50, .65);--glow-shadow: inset 0 0 8px rgba(50, 205, 50, .15);background-color:#32cd320a}.rating_row.points-lost .rating_name{--highlight-color: rgba(255, 99, 71, .65);--glow-shadow: inset 0 0 8px rgba(255, 99, 71, .15);background-color:#ff63470a}.rating_row:is(.points-won,.points-lost) .rating_name{box-shadow:inset 0 0 0 2px var(--highlight-color),var(--glow-shadow);z-index:1}.rating_row:is(.points-won,.points-lost)+.rating_row:is(.points-won,.points-lost) .rating_name{box-shadow:inset 2px 0 0 0 var(--highlight-color),inset -2px 0 0 0 var(--highlight-color),inset 0 -2px 0 0 var(--highlight-color),var(--glow-shadow)}.rating_row:is(.points-won,.points-lost):has(+:is(.points-won,.points-lost)) .rating_name{box-shadow:inset 2px 0 0 0 var(--highlight-color),inset -2px 0 0 0 var(--highlight-color),inset 0 2px 0 0 var(--highlight-color),var(--glow-shadow)}.rating_row:is(.points-won,.points-lost)+.rating_row:is(.points-won,.points-lost):has(+:is(.points-won,.points-lost)) .rating_name{box-shadow:inset 2px 0 0 0 var(--highlight-color),inset -2px 0 0 0 var(--highlight-color),var(--glow-shadow)}.rating_row>span{padding:8px 0}.rating_row>span:not(.rating_bar){flex:none}.rating_rank{width:32px}.rating_rank_delta{position:relative;font-weight:700;width:24px;text-align:left;color:transparent;transition:none}.rating_rank_delta.positive{color:#32cd32;transition:color .2s ease-in}.rating_rank_delta.passive{opacity:.5}.rating_rank_delta.negative{color:tomato;transition:color .2s ease-in}.rating_flag{width:24px}.rating_org{color:#777;width:32px}.rating_name{width:300px;overflow:hidden;word-break:keep-all;text-wrap:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:4px;transition:background-color .3s,color .3s;box-sizing:border-box;padding-left:8px;padding-right:8px}.rating_name:hover{background-color:#ebe9ff;color:#6a5acd;transition:background-color .1s,color .1s}.rating_rating{width:48px;text-align:right}.rating_rating.stale{color:#777}.rating_delta{font-weight:700;width:40px;text-align:right;color:transparent;transition:none}.rating_delta.positive{color:#32cd32;transition:color .2s ease-in}.rating_delta.negative{color:tomato;transition:color .2s ease-in}.rating_delta .delta_number{display:none}.rank-table:has(.rating_delta:hover) .rating_delta .delta_number{display:inline}.rank-table:has(.rating_delta:hover) .rating_delta .delta_chars{display:none}.rating_dev,.rating_slope{width:32px;text-align:center}.rating_dev{color:#777}.rating_slope{font-weight:700}.rating_active{color:#777;width:100px}.rating_sparkline{width:90px;display:flex;align-items:center;justify-content:center;color:#c5d7e8}.rating_slope.positive{color:#00f5b4}.rating_slope.negative{color:#ff903f}.has-tooltip{position:relative;cursor:help}.has-tooltip .tooltip-text{visibility:hidden;position:absolute;top:125%;left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;text-align:center;padding:6px 12px;border-radius:4px;font-size:13px;font-weight:500;white-space:nowrap;z-index:1100;box-shadow:0 4px 10px #0006;pointer-events:none;opacity:0;transition:opacity .25s ease,visibility .25s ease}.has-tooltip:hover .tooltip-text{visibility:visible;opacity:1}.rating_bar{text-align:left;flex:1 1 auto}.rating_bar>span{border-radius:4px;display:inline-block;height:100%;background-color:red;transition:width .2s ease-in}#olympics{background-image:url(https://upload.wikimedia.org/wikipedia/commons/5/55/Olympic_rings_with_transparent_rims.svg);background-size:contain;background-repeat:no-repeat;background-position:center;background-color:#444;color:#fff;font-size:18px;font-weight:700;letter-spacing:2px;padding:12px;box-sizing:border-box;border:2px solid orange}#olympics:hover{color:transparent;border-color:#6495ed;background-size:cover;background-color:#eee;transition:all .5s}.simple-tip{position:relative;color:#cd5c5c;font-weight:700;font-size:24px;line-height:16px;text-decoration:wavy;border-radius:100%;height:26px;width:26px;background-color:#eee}.simple-tip .simple-tip-hover{font-weight:400;font-size:14px;position:absolute;border:2px solid #222;border-radius:4px;background-color:#000000b3;color:#eee;padding:8px;display:none;min-width:100px;max-width:300px;right:0%;z-index:1100}.simple-tip:hover .simple-tip-hover{display:block}@media (max-width: 910px){.rating_controls{display:grid!important;grid-template-columns:auto 1fr auto;gap:12px;padding:12px;background-color:#222;border-bottom:2px solid slateblue;flex-shrink:0!important}.rating_controls>div:first-child{grid-column:1;grid-row:1;display:flex;gap:4px}.set-top{grid-column:2;grid-row:1;justify-self:center;display:flex;align-items:center;gap:6px}.simple-tip{grid-column:3;grid-row:1;justify-self:end;z-index:1000}.set-event{grid-column:1 / span 3;grid-row:2;max-width:100%!important;width:100%;display:flex;gap:4px}.set-event>select{flex-grow:1;min-width:0}.set-maxdev{grid-column:1 / span 3;grid-row:3;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}.set-maxdev>input{flex-grow:1}button,select{padding:4px 12px!important;font-size:16px}.simple-tip{padding:0!important;height:32px!important;width:32px!important;font-size:20px!important;line-height:28px!important}.rating_org,.rating_active,.rating_bar,.rating_sparkline,.rating_dev{display:none!important}.rating_row{justify-content:flex-start;padding:3px 4px;font-size:17px}.rating_rank{width:32px!important;text-align:center}.rating_rank_delta{display:block!important;width:24px!important;text-align:left!important}.rating_flag{width:32px!important;text-align:center}.rating_name{width:auto!important;flex:1 1 auto!important;text-align:center;padding-left:0;font-size:17px}.rating_rating{width:48px!important;text-align:right!important;font-weight:700;font-size:17px}.rating_delta{display:block!important;width:48px!important;text-align:right!important}.rating_slope{display:block!important;width:32px!important;text-align:center}}.player-panel{top:0;right:0;box-sizing:border-box;position:fixed;width:100%;max-width:910px;height:100%;pointer-events:none;padding:24px;z-index:1000}.card{width:100%;height:100%;background-color:#222;border:2px solid rgba(106,90,205,.5);border-radius:4px;padding:8px;box-sizing:border-box;pointer-events:all}.card-header{font-size:18px;position:relative;height:32px;display:flex;justify-content:space-evenly}.toggle-venue{font-size:14px;text-decoration:underline}.card-close{position:absolute;top:0;right:0;width:24px;height:24px;background-color:#6a5acd80;border-radius:50%;text-align:center;line-height:20px;font-weight:700;font-size:24px;color:#fff;cursor:pointer}.card-close:hover{color:#666;background-color:#f5f5f5}.card-content{height:calc(100% - 32px);overflow-y:auto;overflow-x:hidden}.match-row{display:flex;text-align:center;padding:0;border-radius:4px}.match-row>div{padding:6px 0}.match-row:nth-child(odd){background-color:#8fabe01a}.match-stage,.match-res{width:48px}.match-ratings{width:120px}.match-battle{width:36px;display:flex;align-items:center;justify-content:center}.match-opponent{width:200px;cursor:pointer;transition:background-color .3s,color .3s}.match-opponent:hover{background-color:#ebe9ff;color:#6a5acd;transition:background-color .1s,color .1s;border-radius:3px}.player-link{cursor:pointer;border-radius:3px;transition:background-color .3s,color .3s}.player-link:hover{background-color:#ebe9ff;color:#6a5acd;transition:background-color .1s,color .1s}.match-date{width:96px}.match-event{width:200px;text-wrap:nowrap;word-break:keep-all;overflow-x:hidden;text-overflow:ellipsis;cursor:pointer;border-radius:3px;transition:background-color .3s,color .3s}.match-event:hover{background-color:#ebe9ff;color:#6a5acd;transition:background-color .1s,color .1s}.match-rating-change{width:48px;color:#2e8b57}.match-loss .match-rating-change{color:#cd5c5c}.match-scores{display:flex;font-size:14px;width:170px}.match-scores-set{width:24px;margin-top:-8px;margin-bottom:-8px}.player-graph{color:#eee;width:100%;background-color:#222;border-radius:8px}.xticks{fill:#eee;text-anchor:end}.yticks{fill:#eee}.xticks-line:first-of-type,.xticks:first-of-type{display:none}.yrankticks{fill:#eee}.graph-container{position:relative;cursor:crosshair}.graph-match{stroke-width:2px;fill:none;animation:shine .5s ease-in-out infinite alternate}@keyframes shine{0%{stroke-width:1px}to{stroke-width:2px}}.graph-tooltip{text-align:center;pointer-events:none;position:absolute;opacity:0;min-width:100px;border:1px solid #eee;border-radius:3px;padding:4px;color:#222;background-color:#ffffffb3}.graph-tooltxt{width:100%;bottom:70px;text-align:center;pointer-events:none;position:absolute;color:#eee}.tooltip-shown{opacity:1}.graph-legend{pointer-events:none;transform:translate(50px,20px)}@media (max-width: 910px){.player-panel{top:0!important;bottom:auto!important;left:0!important;right:0!important;height:80%!important;width:100%!important;max-width:none!important;padding:0!important;pointer-events:none!important}.card{border-radius:0 0 16px 16px!important;border:2px solid rgba(106,90,205,.5)!important;border-top:none!important;padding:8px!important;pointer-events:auto!important;animation:slideDown .3s cubic-bezier(.16,1,.3,1) forwards}.card-header{font-size:17px!important;gap:4px;align-items:center;flex-wrap:wrap;height:auto!important;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.1)}.card-content{height:calc(100% - 48px)!important}.match-row{display:grid!important;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto auto;gap:4px;padding:6px;align-items:center;border-bottom:1px solid rgba(255,255,255,.15);background-color:#ffffff05}.match-row>div{padding:0!important;width:auto!important}.match-rating-change{grid-column:1;grid-row:2;justify-self:start;padding:3px 8px!important;border-radius:4px;font-size:13px;font-weight:700;text-align:center;min-width:40px;background-color:#2e8b57;color:#fff!important}.match-loss .match-rating-change,.match-loss.match-rating-change{background-color:#cd5c5c!important;color:#fff!important}.match-res{grid-column:2;grid-row:2;font-weight:700;margin-left:8px;color:inherit}.match-ratings{grid-column:2;grid-row:3;font-size:12px;color:#888;margin-left:8px}.match-battle{grid-column:1;grid-row:1;justify-self:start;display:flex;width:auto!important}.match-opponent{grid-column:2;grid-row:1;font-size:17px;font-weight:600;color:inherit;cursor:pointer;margin-left:8px}.match-date{grid-column:3;grid-row:1;justify-self:end;font-size:12px;color:#888}.match-stage{grid-column:1;grid-row:3;font-size:12px;color:#aaa;font-weight:500}.match-event{grid-column:2;grid-row:3;font-size:12px;color:#6a5acd;text-decoration:underline;cursor:pointer}.match-row>.match-scores{grid-column:3;grid-row:2 / span 2;justify-self:end;display:flex;width:180px!important;font-size:12px}}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.h2h-summary{display:flex;justify-content:space-between;align-items:center;padding:16px;background-color:#ffffff0d;border-radius:8px;margin-bottom:12px}.h2h-player-info{display:flex;flex-direction:column;flex:1}.h2h-player-info.left{text-align:left;align-items:flex-start}.h2h-player-info.right{text-align:right;align-items:flex-end}.h2h-player-name{font-size:16px;font-weight:600;color:#fff;transition:color .2s}.h2h-player-name:hover{color:#6a5acd;text-decoration:underline}.h2h-player-rating{font-size:12px;color:#aaa;margin-top:4px}.h2h-score-container{display:flex;align-items:center;justify-content:center;gap:16px;flex:1}.h2h-score{font-size:32px;font-weight:700;color:#00ffd2}.h2h-divider{font-size:14px;color:#666;text-transform:uppercase;font-weight:700}.h2h-bar-container{display:flex;height:8px;border-radius:4px;overflow:hidden;margin-bottom:20px;background-color:#ffffff1a}.h2h-bar-p1{background-color:#00ffd2;transition:width .3s ease}.h2h-bar-p2{background-color:#6a5acd;transition:width .3s ease}.h2h-matches-title{font-size:14px;font-weight:600;color:#aaa;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.battle-symbol-btn{cursor:pointer;margin-right:8px;display:inline-flex;align-items:center;justify-content:center;background-color:#6a5acd33;border:1px solid rgba(106,90,205,.4);color:#a29bfe;font-size:11px;padding:3px 5px;border-radius:4px;transition:all .2s ease-in-out;line-height:1}.battle-symbol-btn:hover{background-color:#00ffd233;border-color:#00ffd2;color:#00ffd2;transform:scale(1.08)}.event-match-row>.match-rating-change{background-color:#2e8b57;color:#fff;border-radius:3px}.event-match-row>.match-loss.match-rating-change{background-color:#cd5c5c}@media (max-width: 910px){.event-match-row{display:grid!important;grid-template-columns:1fr auto 1fr;grid-template-rows:auto auto auto auto;gap:4px;padding:8px 12px;align-items:center;border-bottom:1px solid rgba(255,255,255,.15)}.event-match-row>div{padding:0!important;width:auto!important}.event-match-row>.match-stage{grid-column:1 / span 3;grid-row:1;font-size:12px;font-weight:700;color:#666;text-transform:uppercase;border-bottom:1px solid rgba(0,0,0,.05);padding-bottom:4px!important;text-align:center}.event-match-row>.match-opponent:nth-child(4){grid-column:1;grid-row:2;font-size:16px;font-weight:600;color:inherit;text-align:left}.event-match-row>.match-ratings:nth-child(3){grid-column:1;grid-row:3;font-size:12px;color:#666;text-align:left;display:inline-flex;gap:6px;align-items:center}.event-match-row>.match-rating-change:nth-child(2){grid-column:1;grid-row:3;margin-left:45px;font-size:11px;font-weight:700;padding:1px 6px!important;border-radius:3px;display:inline-block;color:#fff!important}.event-match-row>.match-res{grid-column:2;grid-row:2;font-size:15px;font-weight:700;color:inherit;padding:0 8px!important}.event-match-row>.match-opponent:nth-child(6){grid-column:3;grid-row:2;font-size:16px;font-weight:600;color:inherit;text-align:right}.event-match-row>.match-ratings:nth-child(7){grid-column:3;grid-row:3;font-size:12px;color:#666;text-align:right;display:block}.event-match-row>.match-rating-change:nth-child(8){grid-column:3;grid-row:3;margin-right:45px;font-size:11px;font-weight:700;padding:1px 6px!important;border-radius:3px;display:inline-block;float:right;color:#fff!important}.event-match-row>.match-scores{grid-column:1 / span 3;grid-row:4;justify-content:center;margin-top:4px}}.bracket-panel{top:0;right:0;box-sizing:border-box;position:fixed;width:100%;height:100%;pointer-events:none;padding:24px;z-index:1000}.bracket-card{background-color:#f5f5f5;color:#444}.bracket{display:flex;flex-direction:row}.bracket-round{display:flex;flex-direction:column;justify-content:space-around;width:148px;margin-left:-2px;border:2px dotted rgb(234,226,238);border-top:none;border-bottom:none}.bracket-player{position:relative;height:24px;border:2px solid #ccc;border-radius:4px;margin-top:-1px;margin-bottom:-1px;overflow:hidden;cursor:pointer;word-break:keep-all;white-space:nowrap;box-sizing:border-box;line-height:18px;background-color:#fefefe}.bracket-X .bracket-round{width:192px}.bracket-player>*{pointer-events:none}.bracket-player:hover{border-color:transparent;overflow:visible}.bracket-player:hover .bracket-ratings{display:none}.bracket-org{display:none;position:absolute;left:0;font-size:14px;color:#8b4513}.bracket-player:hover .bracket-org{display:inline}.bracket-player:hover .fi{opacity:.2}.bracket-hidden{visibility:hidden;pointer-events:none}.bracket-player.bracket-winner{border-color:#ffc774;background-color:#fff8dc;border-width:4px;color:#222}.bracket-ratings{position:absolute;top:0;right:0;background:linear-gradient(#dc143c,#87cefa);background-size:100px 1000px;background-repeat:norepeat;border-radius:3px;color:#fff;pointer-events:none}.show-ratings{cursor:pointer}.hidden{display:none!important}.export-brackets{position:relative}.tooltip{background-color:#000000b3;color:#fff;position:absolute;display:none;right:0;border-radius:4px;cursor:text;z-index:100;padding:8px}.tooltip-header{font-size:16px;cursor:pointer}.tooltip.shown{display:block}.leaderboard{margin-right:auto;margin-left:auto;margin-top:12px;border-collapse:collapse}.leaderboard th{padding:8px}.leaderboard tbody tr{border:2px dashed slateblue;background-color:#fefefe;cursor:zoom-in}.leaderboard tbody tr:hover{border:2px solid slateblue;background-color:#f8f8ff}.leaderboard td{padding:4px}.leaderboard td *{pointer-events:none}.leaderboard td:hover{background-color:#ccccf3}.leaderboard-tab{position:relative}.close-selection{font-size:18px;cursor:pointer;position:absolute;top:0;left:0}.score{background-color:#6a5acd1a;color:#6a5acd;border-radius:3px;padding:2px 8px;text-align:right}@media (max-width: 910px){.bracket-panel{top:auto!important;bottom:0!important;left:0!important;right:0!important;height:80%!important;width:100%!important;max-width:none!important;padding:0!important;pointer-events:none!important}.bracket-panel .card{border-radius:16px 16px 0 0!important;border:2px solid rgba(106,90,205,.5)!important;border-bottom:none!important;pointer-events:auto!important;animation:slideUp .3s cubic-bezier(.16,1,.3,1) forwards}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.starmap-container{width:calc(100vw - 1px);height:calc(100vh - 29px)}
