.timeline-page{background:var(--dark);overscroll-behavior:none;height:100vh;overflow:hidden}.timeline-locked{background:var(--dark);justify-content:center;align-items:center;height:100%;padding:1.5rem;display:flex;position:relative}.timeline-locked-back{color:var(--light);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;background:0 0;border:none;align-items:center;gap:.4rem;font-family:inherit;font-size:.8rem;font-weight:700;text-decoration:none;transition:color .15s;display:flex;position:absolute;top:1rem;left:1rem}.timeline-locked-back:hover{color:var(--grey-100)}.timeline-locked-inner{text-align:center;flex-direction:column;align-items:center;gap:1.5rem;display:flex}.timeline-locked-icon{color:var(--accent)}.timeline-locked-title{text-transform:uppercase;letter-spacing:.08em;color:var(--grey-100);font-size:1.1rem;font-weight:700}.timeline-locked-timer{color:var(--light);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:2.4rem;font-weight:700}.timeline-locked-unit{color:var(--grey-300);margin:0 .15em}@media (min-width:768px){.timeline-locked-title{font-size:1.4rem}.timeline-locked-timer{font-size:3.5rem}}.timeline-panel{z-index:40;padding-top:var(--tl-safe-top,0px);background:var(--grey-900);position:absolute;top:0;left:0;right:0}.timeline-mode-bar{height:var(--tl-mode-bar-h);background:var(--grey-900);border-bottom:1px solid var(--grey-500);align-items:stretch;display:flex}.timeline-mode-switch{flex:1;align-items:stretch;min-width:0;display:flex}.timeline-mode-btn{border:none;border-right:1px solid var(--grey-500);min-width:0;color:var(--grey-200);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;cursor:pointer;background:0 0;flex:1;justify-content:center;align-items:center;gap:6px;padding:0 6px;font-family:inherit;font-size:.8rem;font-weight:700;transition:background .15s,color .15s;display:flex}@media (hover:hover){.timeline-mode-btn:hover{background:var(--grey-800)}}.timeline-mode-btn.-active{background:var(--grey-800);color:var(--light)}.timeline-mode-dot{background:var(--grey-300);flex-shrink:0;width:6px;height:6px;transition:background .15s}.timeline-mode-btn.-active .timeline-mode-dot{background:var(--accent)}.timeline-day-switcher{height:var(--tl-mode-bar-h);background:var(--grey-900);border-bottom:1px solid var(--grey-500);align-items:stretch;display:flex;position:relative}.timeline-back{width:var(--tl-gutter-w);min-width:var(--tl-gutter-w);color:var(--grey-200);text-transform:uppercase;letter-spacing:.04em;background:var(--grey-900);border:none;border-right:1px solid var(--grey-500);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;gap:.4rem;font-family:inherit;font-size:.8rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s;display:flex}@media (hover:hover){.timeline-back:hover{background:var(--grey-800);color:var(--light)}}.timeline-day-tab{border:none;border-right:1px solid var(--grey-500);color:var(--grey-200);cursor:pointer;background:0 0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;padding:0 .5rem;font-family:inherit;transition:background .15s,color .15s;display:flex}.timeline-day-tab:last-child{border-right:none}@media (hover:hover){.timeline-day-tab:hover{background:var(--grey-800)}}.timeline-day-tab.-active{background:var(--grey-800);color:var(--light)}.timeline-day-short{text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:700;line-height:1}.timeline-day-date{color:var(--grey-300);font-size:.625rem;font-weight:400;line-height:1}.timeline-search{width:var(--tl-gutter-w);min-width:var(--tl-gutter-w);flex-shrink:0;height:44px;position:relative}.timeline-search-toggle{border:none;border-right:1px solid var(--grey-500);width:100%;height:44px;color:var(--grey-200);cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:0 0;justify-content:center;align-items:center;gap:.4rem;font-family:inherit;font-size:.8rem;font-weight:700;transition:color .15s,background .15s;display:flex}@media (hover:hover){.timeline-search-toggle:hover{color:var(--light);background:var(--grey-800)}}.timeline-search.-open{z-index:2}.timeline-search-field{background:var(--grey-700);align-items:center;gap:6px;width:100vw;height:44px;padding:0 12px;display:flex;position:absolute;top:0;left:0}.timeline-search-field-icon{color:var(--grey-300);flex-shrink:0}.timeline-search-input{min-width:0;height:36px;color:var(--light);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:1rem}.timeline-search-input::placeholder{color:var(--grey-300)}.timeline-search-close{width:32px;height:32px;color:var(--grey-300);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s;display:flex}.timeline-search-close:hover{color:var(--light)}.timeline-search-dropdown{background:var(--grey-900);border:1px solid var(--grey-500);z-index:45;border-top:none;width:100vw;max-height:484px;position:absolute;top:100%;left:0;overflow-y:auto}.timeline-search-row{border:none;border-top:1px solid var(--grey-500);width:100%;height:44px;color:var(--light);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-family:inherit;display:flex}.timeline-search-row:first-child{border-top:none}.timeline-search-row:hover,.timeline-search-row.-active{background:var(--grey-800)}.timeline-search-row-name{text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:700;overflow:hidden}.timeline-search-match{color:var(--accent)}.timeline-search-row-meta{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.18em;color:var(--grey-200);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:10px}.timeline-search-empty{height:44px;color:var(--grey-300);align-items:center;padding:0 12px;font-size:.8rem;display:flex}.timeline-container{--tl-rail-w:44px;--tl-axis-w:72px;--tl-col-min:160px;--tl-grid:var(--grey-700);--tl-gutter-w:calc(var(--tl-rail-w) + var(--tl-axis-w));--tl-mode-bar-h:44px;--tl-panel-h:calc(var(--tl-safe-top,0px) + var(--tl-mode-bar-h)*2);--tl-head-h:44px;--tl-mark-size:24px;--tl-mark-gap:36px;--tl-heart:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23000'%3E%3Cpath d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3C/svg%3E");--tl-heart-off:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cmask id='c'%3E%3Crect width='24' height='24' fill='%23fff'/%3E%3Cpath d='M2 2 22 22' stroke='%23000' stroke-width='4.6' stroke-linecap='round'/%3E%3C/mask%3E%3Cpath mask='url(%23c)' fill='%23000' d='M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z'/%3E%3Cpath d='M2 2 22 22' stroke='%23000' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3C/svg%3E");overscroll-behavior:none;width:100%;height:100vh;position:relative;overflow:hidden}.timeline-content{inset:0;top:var(--tl-panel-h);overscroll-behavior:none;touch-action:pan-x pan-y;scrollbar-width:thin;scrollbar-color:var(--grey-300)var(--grey-900);position:absolute;overflow:auto}.timeline-content::-webkit-scrollbar{width:8px;height:8px}.timeline-content::-webkit-scrollbar-thumb{background:var(--grey-300);border-radius:4px}.timeline-content::-webkit-scrollbar-thumb:hover{background:var(--grey-200)}.timeline-scroll-area{width:max-content;min-width:100%;min-height:100%;padding-bottom:calc(env(safe-area-inset-bottom,0px) + 24px);flex-direction:column;display:flex}.timeline-content.-off,.timeline-deck.-off{visibility:hidden;pointer-events:none}.timeline-deck{inset:0;top:calc(var(--tl-safe-top,0px) + var(--tl-mode-bar-h));background:var(--dark);flex-direction:column;display:flex;position:absolute;overflow:hidden}.timeline-deck-inner{flex-direction:column;flex:1;min-height:0;padding:.75rem 1rem 0;display:flex}.timeline-deck,.timeline-deck *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:transparent}.timeline-deck img{-webkit-user-drag:none}.timeline-lane-break{min-width:100%;display:flex}.timeline-lane-break-gutter{width:var(--tl-gutter-w);min-width:var(--tl-gutter-w);z-index:19;background-image:linear-gradient(to right,var(--dark)0 calc(var(--tl-rail-w) - 1px),var(--grey-500)calc(var(--tl-rail-w) - 1px)var(--tl-rail-w),var(--dark)var(--tl-rail-w)calc(var(--tl-gutter-w) - 1px),var(--grey-500)calc(var(--tl-gutter-w) - 1px));flex-shrink:0;position:sticky;left:0}.timeline-lane-break-strip{border-top:1px solid var(--grey-500);border-bottom:1px solid var(--grey-500);background-color:var(--grey-1000);background-image:repeating-linear-gradient(45deg,#ffffff09 0 1px,#0000 1px 5px);flex:1;justify-content:flex-start;align-items:center;display:flex}.timeline-lane-break-label{left:var(--tl-gutter-w);width:calc(100vw - var(--tl-gutter-w));max-width:100%;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.18em;color:var(--grey-200);white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;justify-content:center;align-items:baseline;gap:10px;padding:0 12px;font-size:10px;display:flex;position:sticky}.timeline-lane-break-range{color:var(--grey-300);font-variant-numeric:tabular-nums}.timeline-day-rail{width:var(--tl-rail-w);min-width:var(--tl-rail-w);z-index:21;background:var(--dark);border-right:1px solid var(--grey-500);flex-shrink:0;position:sticky;left:0}.timeline-day-rail-segment{border-top:1px solid var(--tl-grid);position:relative}.timeline-day-rail-label{writing-mode:vertical-rl;white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;width:max-content;color:var(--light);font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;pointer-events:none;margin:0 auto;padding:14px 0;font-size:.7rem;font-weight:700;display:block;position:sticky;top:52px;transform:rotate(180deg)}.timeline-now-cursor{background:var(--accent);z-index:26;pointer-events:none;height:2px;position:absolute;left:0;right:0}.timeline-now-label{text-transform:uppercase;letter-spacing:.06em;color:var(--light);background:var(--accent);white-space:nowrap;padding:2px 6px;font-size:.625rem;font-weight:700;position:absolute;top:-9px;left:0}.timeline-track{height:var(--tl-head-h);z-index:30;background:var(--grey-900);border-bottom:1px solid var(--grey-500);display:flex;position:sticky;top:0;box-shadow:0 4px 12px #0006}.timeline-corner{width:var(--tl-gutter-w);min-width:var(--tl-gutter-w);border-right:1px solid var(--grey-500);z-index:36;background:var(--grey-900);flex-shrink:0;justify-content:center;align-items:center;padding:0 .5rem;display:flex;position:sticky;left:0}.timeline-stage-headers{background:var(--grey-900);flex:1;display:flex}.timeline-stage-header{min-width:var(--tl-col-min);background:var(--grey-900);border-right:1px solid var(--grey-500);flex:1;justify-content:center;align-items:center;padding:0 .5rem;display:flex}.timeline-stage-header:last-child{border-right:none}.stage-name{text-transform:uppercase;white-space:nowrap}.timeline-body{flex:1;display:flex;position:relative}.timeline-axis-wrapper{width:var(--tl-axis-w);min-width:var(--tl-axis-w);left:var(--tl-rail-w);z-index:20;background:var(--dark);border-right:1px solid var(--grey-500);flex-shrink:0;position:sticky}.timeline-body+.timeline-body{border-top:2px solid var(--grey-500)}.timeline-axis{width:100%;position:relative}.timeline-axis-line{background:var(--tl-grid);pointer-events:none;height:1px;position:absolute;left:0;right:0}.timeline-axis-mark{text-align:center;color:var(--grey-200);pointer-events:none;-webkit-user-select:none;user-select:none;padding-top:4px;font-size:.6875rem;font-weight:700;position:absolute;left:0;right:0}.timeline-columns-area{flex:1;display:flex;position:relative}.timeline-hour-guide{background:var(--tl-grid);pointer-events:none;z-index:0;height:1px;position:absolute;left:0;right:0}.timeline-column{min-width:var(--tl-col-min);border-right:1px solid var(--tl-grid);flex:1;position:relative}.timeline-column:last-child{border-right:none}.timeline-block{--tl-flash:transparent;--tl-veil:transparent;--tl-fill:transparent;background-image:linear-gradient(0deg,var(--tl-flash),var(--tl-flash)),linear-gradient(0deg,var(--tl-veil),var(--tl-veil)),linear-gradient(0deg,var(--tl-fill),var(--tl-fill));cursor:pointer;box-sizing:border-box;z-index:10;border-radius:6px;align-items:center;padding:4px 8px;transition:filter .15s,box-shadow .15s;display:flex;position:absolute;left:0;overflow:hidden}.timeline-block:hover{filter:brightness(1.08);box-shadow:0 4px 12px #00000059}.timeline-block.-like{--tl-fill:var(--accent);padding-right:var(--tl-mark-gap)}.timeline-block.-like .artist-name{color:var(--light)}.timeline-block.-like .sub-event-name{color:#fffc}.timeline-block.-like:after,.timeline-block.-pass:after{content:"";width:var(--tl-mark-size);height:var(--tl-mark-size);pointer-events:none;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.timeline-block.-like:after{background:var(--light);-webkit-mask:var(--tl-heart)center/contain no-repeat;-webkit-mask:var(--tl-heart)center/contain no-repeat;mask:var(--tl-heart)center/contain no-repeat}.timeline-block.-pulse{animation:.52s linear 3 timeline-block-pulse}@keyframes timeline-block-pulse{0%,49%{--tl-flash:#ffffffe6}50%,to{--tl-flash:transparent}}.timeline-block.-pass{--tl-veil:#000c;padding-right:var(--tl-mark-gap)}.timeline-block.-pass .artist-name{color:var(--grey-100)}.timeline-block.-pass .sub-event-name{color:#fff9}.timeline-block.-pass .artist-avatar{filter:grayscale()brightness(.45)}.timeline-block.-pass:after{background:var(--grey-100);-webkit-mask:var(--tl-heart-off)center/contain no-repeat;-webkit-mask:var(--tl-heart-off)center/contain no-repeat;mask:var(--tl-heart-off)center/contain no-repeat}.timeline-columns-area.-filtering .timeline-block:not(.-pass){--tl-veil:#0000009e}.timeline-columns-area.-filtering .timeline-block{pointer-events:none;transition:background-image .18s var(--ease-out)}.timeline-columns-area.-filtering .timeline-block:not(.-match) .artist-name{color:var(--grey-100)}.timeline-columns-area.-filtering .timeline-block:not(.-match) .sub-event-name{color:var(--grey-200)}.timeline-columns-area.-filtering .timeline-block:not(.-match) .artist-avatar{filter:grayscale()brightness(.55)}.timeline-columns-area.-filtering .timeline-block.-match{--tl-veil:transparent;pointer-events:auto}.timeline-block.-short{align-items:center;padding:2px 4px;display:flex}.timeline-block-content{flex-direction:row;align-items:center;gap:8px;width:100%;display:flex}.artist-avatar{object-fit:cover;border:2px solid #ffffff4d;border-radius:.625rem;flex-shrink:0;width:32px;height:32px}.artist-avatars{flex-direction:column;flex-shrink:0;display:flex;position:relative}.artist-avatars .artist-avatar{margin-top:-8px}.artist-avatars .artist-avatar:first-child{margin-top:0}.artist-avatars .artist-avatar:nth-child(n+5){display:none}.artist-text{flex:1;min-width:0}.artist-name{color:#000;text-align:left;white-space:pre-line;overflow-wrap:anywhere;text-transform:uppercase;margin-bottom:2px;font-size:.8125rem;font-weight:700;line-height:1.2}.sub-event-name{opacity:.5;color:var(--grey-200);font-size:.6875rem;font-weight:600;line-height:1.2}.artist-avatar-modal{object-fit:cover;border:2px solid #ffffff4d;border-radius:.75rem;flex-shrink:0;width:48px;height:48px}.artist-avatars-modal{flex-direction:column;flex-shrink:0;display:flex;position:relative}.artist-avatars-modal .artist-avatar-modal{width:44px;height:44px;margin-top:-12px}.artist-avatars-modal .artist-avatar-modal:first-child{margin-top:0}.artist-avatars-modal .artist-avatar-modal:nth-child(n+5){display:none}.artist-avatar-modal-small{object-fit:cover;border:2px solid #ffffff4d;border-radius:.5rem;flex-shrink:0;width:48px;height:48px}.artist-avatars-modal-small{flex-direction:column;flex-shrink:0;gap:4px;display:flex;position:relative}.artist-avatars-modal-small .artist-avatar-modal-small{width:44px;height:44px}.artist-avatars-modal-small .artist-avatar-modal-small:first-child{margin-top:0}.artist-avatars-modal-small .artist-avatar-modal-small:nth-child(n+5){display:none}@keyframes timeline-hint-finger{0%{opacity:0;transform:translate(24px)scale(.95)}50%{opacity:1;transform:translate(-16px)scale(1)}to{opacity:0;transform:translate(-32px)scale(.95)}}.timeline-hint-finger{filter:brightness(0)saturate()invert();opacity:0;will-change:transform,opacity;-webkit-user-select:none;user-select:none;animation:1.666s cubic-bezier(.7,0,.3,1) 3 forwards timeline-hint-finger}@media (prefers-reduced-motion:reduce){.timeline-hint-finger{opacity:1;animation:none!important}}@media (max-width:768px){.timeline-mini-header{padding:0 .75rem}.back-button{font-size:.75rem}.timeline-mini-title{font-size:1rem}.timeline-container{--tl-axis-w:56px;--tl-col-min:140px}.timeline-scroll-area{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 30px)}.timeline-back,.timeline-search-toggle,.timeline-mode-btn{gap:.25rem;font-size:.7rem}.timeline-stage-header{padding:0 .25rem}.artist-name{font-size:.6875rem}.sub-event-name{font-size:.5625rem}.timeline-day-tab{min-width:0;padding:0 .25rem}.timeline-mode-btn{padding:0 4px}.timeline-deck-inner{padding:.75rem .75rem 0}}@media (max-width:480px){.timeline-day-date{display:none}}body.timeline-page-body{overscroll-behavior:none;height:100vh;overflow:hidden}.timeline-header-logo{filter:brightness(0)invert();opacity:.9;width:auto;height:1.5rem}@media (max-width:768px){.timeline-header-logo{height:1.25rem}}
