:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#121212;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--primary-color: #f4548c;--secondary-color: #2cb4e4;--accent-color: #f46ca4;--tertiary-color: #ffffff;--bg-color: #e7deec;--card-bg: #1e1e1e;--sidebar-bg: #1a1a1a;--warning-color: #FFB347;--danger-color: #FF4D4D}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--primary-color);cursor:pointer;transition:border-color .25s}button:hover{border-color:var(--secondary-color)}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}#root,html,body{width:100%;height:100vh;margin:0;padding:0;overflow:hidden}.app-container{display:flex;height:100vh;min-height:100vh;overflow:hidden}.app-container .sidebar{position:relative;overflow:visible}.sidebar{width:200px;background-color:var(--sidebar-bg);padding-left:10px;padding-right:10px;padding-top:50px;display:flex;flex-direction:column;transition:width .3s ease;border-right:rgba(205,205,205,.21) 1px solid}.sidebar-collapsed{width:45px;padding-left:10px;padding-right:10px;padding-top:50px}.sidebar-collapsed .sidebar-collapse-btn{position:absolute;top:10px;right:10px}.sidebar-collapse-btn{position:absolute;top:10px;right:10px;cursor:pointer;color:#fff;padding:5px}.sidebar-collapsed ul{align-items:center}.sidebar-collapsed li{margin:10px 0;height:40px}.sidebar-collapsed li .sidebar-link{display:flex;align-items:center;justify-content:center;padding:10px;height:100%;box-sizing:border-box}.sidebar-collapsed li .sidebar-link span{position:absolute;left:-9999px;width:0;height:0;overflow:hidden;opacity:0}.sidebar a span{white-space:nowrap}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar li{margin:10px 0;height:40px}.sidebar a{display:flex;align-items:center;color:#e7deec;text-decoration:none;font-size:1.2em;padding:10px;height:100%;border-radius:8px;gap:10px;box-sizing:border-box}.sidebar .sidebar-collapse-btn{position:absolute;top:10px;right:10px}.sidebar a:hover{background-color:#ffffff21}.sidebar a.active{background-color:var(--primary-color)}.content{flex:1;padding:20px;overflow-y:auto;display:flex;justify-content:center;align-items:flex-start;box-sizing:border-box}.router-content{width:100%}.home-page{text-align:center}.home-page h1{font-size:3.2em;margin-bottom:1em;color:var(--primary-color)}.comet-logo{width:40px;height:auto;vertical-align:middle;margin-right:10px}.times-page{padding-left:40px;padding-right:40px;padding-bottom:40px;flex-direction:column;align-items:center}.times-page h1{font-size:2.5em;margin-bottom:30px;color:var(--primary-color)}.league-section{padding-bottom:40px;display:flex;flex-direction:column;margin-left:auto;margin-right:auto;max-width:1200px;justify-content:center}.league-section h2{font-size:2em;margin-bottom:30px;color:var(--secondary-color)}.player-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px 20px;margin-left:auto;margin-right:auto}@media(max-width:1550px){.player-cards{grid-template-columns:repeat(3,1fr)}}@media(max-width:1250px){.player-cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:950px){.player-cards{grid-template-columns:1fr}}.player-card{background-color:var(--card-bg);padding:15px;border-radius:8px;text-align:center;border:rgba(205,205,205,.21) 1px solid;transition:all .2s ease;max-width:250px;min-width:250px}.player-card .card-section-info,.player-card .card-section-usages{margin-bottom:15px}.player-card .section-label{display:block;font-size:.75em;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;padding-bottom:5px;border-bottom:1px solid rgba(205,205,205,.21)}.player-card .section-label.player-name{color:var(--primary-color);font-size:.9em;border-bottom:1px solid rgba(205,205,205,.21);margin-bottom:10px}.player-card h3{color:var(--primary-color);margin:0 0 5px;font-size:1.2em}.player-card .info-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.player-card .info-row{display:flex;flex-direction:column;text-align:left;padding:4px 0}.player-card .info-row .label{margin-bottom:2px;font-size:.9em;color:#888}.player-card .info-row .value{font-size:.95em;font-weight:600;color:var(--primary-color);margin-bottom:0}.player-card .chip.not-eligible{background-color:var(--danger-color);color:#fff;padding:4px 12px;border-radius:12px;font-size:.9em;font-weight:600}.player-card .chip.warning{background-color:var(--warning-color);color:#fff;padding:4px 12px;border-radius:12px;font-size:.9em;font-weight:600}.player-card .chip.danger{background-color:var(--danger-color);color:#fff;padding:4px 12px;border-radius:12px;font-size:.9em;font-weight:600}.player-card .usages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.player-card .usage-item{display:flex;flex-direction:column;align-items:center;text-align:center}.player-card .usage-item .label{margin-bottom:0;font-size:.9em;color:#888}.player-card .usage-item .value{font-size:.95em;font-weight:600;color:var(--primary-color);margin-bottom:0}.player-card .usage-item.usage-total .value{font-size:1.1em;color:#f4548c}@media(max-width:768px){.player-card .usages-grid{grid-template-columns:repeat(3,1fr)}}.timeline-page{margin-left:auto;margin-right:auto;padding-bottom:50px;display:flex;flex-direction:column}.timeline-page .timeline-container{width:100%;max-width:none;display:flex}.timeline-page h2{font-size:2em;margin-bottom:30px;color:var(--secondary-color)}.timeline-container{width:100%;max-width:none;padding-left:130px;padding-right:130px;padding-bottom:40px;box-sizing:border-box;display:flex;flex-direction:column;position:relative}.timeline-table{width:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;position:relative;min-height:200px;height:100%;border-radius:8px;border:1px solid rgba(205,205,205,.21);overflow:hidden}.timeline-table .day-cell{font-weight:600;position:relative;height:40px;overflow:visible}.timeline-table th,.timeline-table td{border:1px solid rgba(205,205,205,.21);padding:8px}.timeline-table th{background-color:#e7e7ec21}.timeline-table .name-column{width:25%;min-width:200px;max-width:200px;font-weight:600;color:var(--primary-color)}.timeline-table .day-column{font-weight:600;color:var(--primary-color);width:25%}.timeline-table .name-cell{font-weight:600;color:var(--primary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-table{overflow:hidden}.timeline-table>table{width:100%;min-width:100%;border-collapse:collapse;display:table;table-layout:fixed;flex:1;height:100%}.timeline-table .day-cell{font-weight:600;position:relative;height:25px;overflow:visible}.availability-bar{position:absolute;top:50%;transform:translateY(-50%);height:30px;background-color:var(--primary-color);border-radius:4px;opacity:.7;transition:opacity .2s}.availability-bar:hover{opacity:1}.vertical-line{position:absolute;width:2px;pointer-events:none;height:100%;background-color:var(--primary-color);z-index:10}.vertical-line .time-display{position:absolute;top:-30px;left:50%;transform:translate(-50%);background-color:#ff69b4;color:#121212;padding:2px 6px;border-radius:4px;font-size:.75em;white-space:nowrap;z-index:11}.player-card.selected{background-color:#f4548c33;outline:2px solid #f4548c;outline-offset:2px}.player-card:hover{transform:scale(1.02)}.player-card:last-child{margin-right:0}@media(max-width:768px){.timeline-container{padding-left:0;padding-right:0}.mobile-nav{display:flex!important;position:fixed;bottom:0;left:0;right:0;background-color:var(--sidebar-bg);border-top:rgba(205,205,205,.21) 1px solid;justify-content:space-around;padding:10px 0;z-index:1000}.mobile-nav-link{display:flex;align-items:center;justify-content:center;color:#888;text-decoration:none;padding:8px;border-radius:8px}.mobile-nav-link.active{background-color:var(--primary-color);color:#fff}.mobile-nav-avatar{display:flex!important;align-items:center;justify-content:center;padding:8px}.sidebar{display:none!important}.content{padding-bottom:70px!important}.time-box.mobile-time-box{position:absolute!important;left:0!important;top:calc(100% - 30px)!important}}.usages-page{padding-left:40px;padding-right:40px;padding-bottom:40px;flex-direction:column;align-items:center}.sidebar-profile{margin-top:auto;padding-top:20px;padding-bottom:20px;border-top:1px solid rgba(205,205,205,.21)}.mobile-nav{display:none}.user-avatar-display{display:flex;align-items:center;gap:12px;background-color:var(--card-bg);padding:8px 16px;border-radius:16px;box-shadow:0 4px 12px #0000004d;border:1px solid rgba(205,205,205,.21);min-height:48px;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease,border-color .2s ease;position:relative}.user-avatar-display:hover{background-color:#f4548c1a;box-shadow:0 6px 16px #f4548c33;border-color:var(--primary-color)}.user-avatar-display.menu-open{border-color:var(--primary-color);box-shadow:0 6px 16px #f4548c4d}.sidebar-collapsed .user-avatar-display{padding:8px;gap:0;justify-content:center;border-radius:16px;min-height:48px}.avatar-circle{width:32px;height:32px;border-radius:50%;background-color:var(--secondary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9em;font-weight:600;transition:background-color .2s ease,transform .15s ease;flex-shrink:0;flex-grow:0}.mobile-nav-avatar .avatar-circle.menu-open{box-shadow:0 0 0 2px var(--primary-color)}.logout-menu.desktop{position:absolute;top:-56px;left:0;right:0;margin-left:auto;margin-right:auto;width:fit-content;z-index:1002;min-width:120px;background-color:var(--card-bg);border-radius:8px;box-shadow:0 -4px 12px #0000004d,0 0 0 1px #ffffff1a;overflow:hidden;opacity:0;transform:scale(.8)}.logout-menu.desktop.open{animation:scaleFadeInDesktop .2s ease-out forwards}@keyframes scaleFadeInDesktop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.logout-menu.desktop .logout-button{width:100%;padding:12px 16px;background-color:transparent;border:none;color:#e7deec;font-size:.95em;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s ease}.logout-menu.desktop .logout-button:hover{background-color:#f4548c33}.logout-menu.desktop .logout-button span{flex:1;text-align:left}.logout-menu:not(.desktop){position:fixed;bottom:80px;right:16px;z-index:1001;min-width:150px;max-width:200px;background-color:var(--card-bg);border-radius:8px;box-shadow:0 4px 16px #0006,0 0 0 1px #ffffff1a;overflow:hidden;opacity:0;transform:scale(.8)}.logout-menu:not(.desktop).open{animation:scaleFadeInMobile .2s ease-out forwards}@keyframes scaleFadeInMobile{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.logout-menu:not(.desktop) .logout-button{width:100%;padding:12px 16px;background-color:transparent;border:none;color:#e7deec;font-size:.95em;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s ease}.logout-menu:not(.desktop) .logout-button:hover{background-color:#f4548c33}.logout-menu:not(.desktop) .logout-button span{flex:1;text-align:left}.sidebar-collapsed .avatar-circle{width:32px!important;height:32px!important;border-radius:50%!important;flex-shrink:0!important;flex-grow:0!important}.sidebar-collapsed .user-name{display:none}.user-name{color:#e7deec;font-size:.95em;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.mobile-nav-avatar{display:flex;align-items:center;justify-content:flex-end;padding-left:8px}.mobile-nav-avatar .avatar-circle{width:32px;height:32px;border-radius:50%;background-color:var(--secondary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.9em;font-weight:600;cursor:pointer;transition:background-color .2s ease,transform .15s ease}@media(max-width:768px){.user-name{display:none}}.discord-avatar,.discord-avatar-mobile,.discord-avatar-desktop{width:32px;height:32px;border-radius:50%}.discord-avatar-mobile,.discord-avatar-desktop{width:32px;height:32px}.discord-avatar-loading{width:32px!important;height:32px!important;border-radius:50%;background-color:var(--secondary-color);animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.6}50%{opacity:1}}
