@font-face{font-family:Libre Franklin;font-style:normal;font-weight:400 800;font-display:swap;src:url(/fonts/LibreFranklin-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/PlayfairDisplay-800.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/SpaceMono-400.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/SpaceMono-700.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#fff;--ink:#121212;--mute:#6b6b6b;--line:#dcdcdc;--soft:#f5f3ee;--yellow:#f8de6a;--tape:#f0d682d9;--green:#4f9d5f;--green-soft:#e8f3ea;--red:#b53a22;--red-soft:#fbeeea;--sans:"Libre Franklin", "Helvetica Neue", Arial, sans-serif;--serif:"Playfair Display", Georgia, "Times New Roman", serif;--mono:"Space Mono", ui-monospace, Menlo, Consolas, monospace;--col:520px;--year-col:88px;--rail-col:30px;--player-h:210px;--player-min:208px;--safe-b:env(safe-area-inset-bottom,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--sans);overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent;min-height:100dvh;margin:0;font-size:16px;line-height:1.35}body.is-dragging{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:grabbing}a{color:inherit}button{font:inherit;color:inherit}h1,h2,h3,p,ol,dl,dd{margin:0;padding:0}:focus-visible{outline-offset:2px;outline:3px solid #2d6cdf}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.results__score,.player__date,.h1,.banner,.top__brand{font-variant-numeric:lining-nums;font-feature-settings:"lnum"}.mono{font-family:var(--mono);letter-spacing:.08em;color:var(--mute);text-transform:uppercase;font-size:11px}.mono--red{color:var(--red);font-weight:700}.mono--green{color:var(--green);font-weight:700}.flash{animation:.9s steps(2,end) blink}.top{z-index:20;background:var(--bg);border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top);position:sticky;top:0}.top__bar{max-width:var(--col);grid-template-columns:44px 1fr 44px;align-items:center;height:52px;margin:0 auto;padding:0 8px;display:grid}.top__brand{font-family:var(--serif);letter-spacing:.01em;justify-self:center;font-size:26px;font-weight:800;text-decoration:none}.top__icon{border-radius:50%;place-items:center;width:44px;height:44px;font-size:18px;font-weight:700;text-decoration:none;display:grid}.top__icon:hover{background:var(--soft)}.top__sub{max-width:var(--col);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:0 auto;padding:0 16px 8px;display:grid}.top__sub>:first-child{justify-self:start}.top__sub>:last-child{justify-self:end}.pips{gap:4px;width:clamp(84px,100vw - 230px,168px);list-style:none;display:flex}.pips li{background:var(--line);border-radius:3px;flex:1;height:5px}.pips li.on{background:var(--ink)}.pips li.now{box-shadow:inset 0 0 0 1.5px var(--ink);background:#fff}.pips li.bad{background:var(--red)}.page{width:100%;max-width:var(--col);padding:8px 16px calc(var(--player-h) + var(--safe-b) + 32px);margin:0 auto}.page--plain{gap:14px;padding-top:20px;padding-bottom:60px;display:grid}.page--center{text-align:center;place-content:center;justify-items:center;gap:12px;min-height:100dvh;padding-bottom:16px;display:grid}.page__note{color:var(--mute)}.h1{font-family:var(--serif);font-size:34px;font-weight:800;line-height:1.05}.back{font-size:14px;font-weight:700;text-decoration:none}.page--plain>.btn{justify-self:center;margin-top:8px}.btn{cursor:pointer;background:var(--ink);color:#fff;letter-spacing:.01em;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 28px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.98)}.btn--big{min-height:52px;padding:0 40px}.timeline{flex-direction:column;list-style:none;display:flex;position:relative}.timeline:before{content:"";background:var(--ink);width:2px;top:0;bottom:0;left:calc(var(--year-col) + var(--rail-col) / 2 - 1px);position:absolute}.timeline__row{grid-template-rows:1fr;display:grid;position:relative}.timeline__inner{min-height:0}.row--enter{animation:.5s cubic-bezier(.2,.8,.2,1) both rowIn}.row--enter>.timeline__inner{overflow:hidden}@keyframes rowIn{0%{opacity:0;grid-template-rows:0fr}to{opacity:1;grid-template-rows:1fr}}.item,.gap{grid-template-columns:var(--year-col) var(--rail-col) 1fr;align-items:center;display:grid}.item{border-radius:12px;padding:10px 14px 10px 0}.item__year{letter-spacing:-.02em;font-variant-numeric:tabular-nums;justify-self:end;padding-right:6px;font-size:28px;font-weight:800;line-height:1}.item__dot{z-index:1;background:radial-gradient(circle, #fff 0 2px, var(--ink) 2.5px 100%);width:16px;height:16px;box-shadow:0 0 0 4px var(--bg);border-radius:50%;justify-self:center;position:relative}.item__body{min-width:0;padding-left:4px}.item__title{overflow-wrap:anywhere;font-size:17px;font-weight:700;line-height:1.2}.item__artist{color:var(--mute);overflow-wrap:anywhere;margin-top:1px;font-size:14px}.item__date{font-family:var(--mono);letter-spacing:.1em;color:var(--mute);margin-top:3px;font-size:11px}.item__label{font-family:var(--mono);letter-spacing:.1em;color:var(--red);margin-bottom:3px;font-size:11px;font-weight:700}.item--fresh{animation:1.3s ease-out both settleGreen}.item--failed{background:var(--red-soft)}.item--failed .item__dot{background:radial-gradient(circle, #fff 0 2px, var(--red) 2.5px 100%)}@keyframes settleGreen{0%{background:var(--green-soft)}60%{background:var(--green-soft)}to{background:0 0}}.gap{pointer-events:none;width:100%;height:48px;font:inherit;color:inherit;text-align:left;background:0 0;border:0;margin:0;padding:0;position:relative}.gap:after{content:"";background:var(--ink);opacity:0;transform-origin:0;border-radius:2px;grid-area:1/3;align-self:center;height:4px;margin-left:4px;transition:opacity .18s,transform .22s cubic-bezier(.2,.8,.2,1);transform:scaleX(.94)}.gap:before{content:"";z-index:1;background:var(--ink);width:14px;height:14px;box-shadow:0 0 0 4px var(--bg);opacity:0;border-radius:50%;grid-area:1/2;place-self:center;transition:opacity .16s,transform .2s cubic-bezier(.2,.8,.2,1);position:relative;transform:scale(.4)}.gap__label{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);opacity:0;grid-area:1/3;align-self:end;padding:0 0 3px 4px;font-size:11px;transition:opacity .16s,transform .2s;transform:translateY(-3px)}.gap__label--mono{letter-spacing:.08em}.gap--armed:after{opacity:.35;background:#9a9a9a;height:2px;transform:none}.gap--target:after{opacity:1;background:var(--ink);height:4px;transform:none}.gap--target:before,.gap--target .gap__label{opacity:1;transform:none}.gap--checking .gap__label{animation:.7s ease-in-out infinite blink}.gap:focus-visible{outline:none}.gap:focus-visible:after{opacity:1;height:4px;transform:none}.gap:focus-visible .gap__label,.gap:focus-visible:before{opacity:1;transform:none}.gap--static:after,.gap--static:before{display:none}.gap--chosen:before{opacity:1;background:var(--red);display:block;transform:none}.gap--chosen .gap__label{opacity:1;color:var(--red);font-weight:700;transform:none}.gap--demo{height:48px}.axis{font-family:var(--mono);letter-spacing:.12em;color:var(--mute);padding-left:calc(var(--year-col) + var(--rail-col) + 4px);font-size:10.5px}.axis--top{padding-bottom:2px}.axis--bottom{padding-top:2px}.player{z-index:30;min-height:var(--player-min);background:var(--bg);border-top:1px solid var(--line);padding:14px 16px calc(10px + var(--safe-b));align-content:center;gap:0;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #0000000f}.player>*{width:100%;max-width:calc(var(--col) - 32px);margin-left:auto;margin-right:auto}.player--fail,.player--done{text-align:center;justify-items:center;gap:6px}.player--fail>*,.player--done>*{width:auto;margin:0;animation:.3s both fadeUp}.player__reveal{font-size:16px}.player__date{font-family:var(--serif);font-size:28px;font-weight:800}.player--fail .btn,.player--done .btn{margin-top:6px}.player__hint{text-align:center;color:var(--mute);height:18px;margin-top:6px;font-size:12px}.mystery{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#fff;border:1px solid #cfcfcf;border-radius:14px;min-height:100px;padding:14px 14px 10px;transition:opacity .2s,box-shadow .2s;animation:.3s both fadeUp;position:relative;box-shadow:0 1px 2px #0000000f,0 6px 16px #00000014}.mystery--live{cursor:grab}.mystery--live:active{box-shadow:0 1px 2px #0000000f,0 2px 6px #0000001a}.mystery--idle{opacity:.55}.mystery--lifted{opacity:.3}.mystery__head{justify-content:space-between;align-items:center;gap:10px;display:flex}.mystery__text{min-width:0}.mystery__title,.mystery__artist{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.mystery__title{-webkit-line-clamp:2;overflow-wrap:anywhere;font-size:19px;font-weight:800;line-height:1.15}.mystery__artist{-webkit-line-clamp:1;overflow-wrap:anywhere;margin-top:1px;font-size:14px}.mystery__grip{color:#9a9a9a;font-size:22px;line-height:1}.mystery__meta{font-family:var(--mono);letter-spacing:.08em;color:var(--mute);justify-content:space-between;gap:8px;margin-top:8px;font-size:10.5px;display:flex}.audio{align-items:center;gap:8px;height:48px;margin-top:10px;display:flex}.audio__btn{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;transition:background .15s,transform .1s;display:grid}.audio__btn:active{transform:scale(.94)}.audio__btn:disabled{cursor:not-allowed;background:#c9c9c9}.audio__btn--nudge{animation:1.4s ease-in-out infinite nudge}@keyframes nudge{0%,to{box-shadow:0 0 #12121259}50%{box-shadow:0 0 0 9px #12121200}}.audio__range{cursor:pointer;appearance:none;touch-action:none;background:0 0;flex:1;min-width:0;height:44px;margin:0;padding:0}.audio__range::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--ink) var(--pct,0%), var(--line) var(--pct,0%));border-radius:2px;height:4px}.audio__range::-moz-range-track{background:var(--line);border-radius:2px;height:4px}.audio__range::-moz-range-progress{background:var(--ink);border-radius:2px;height:4px}.audio__range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--ink);border:0;border-radius:50%;width:18px;height:18px;margin-top:-7px;box-shadow:0 0 0 5px #fff}.audio__range::-moz-range-thumb{background:var(--ink);border:0;border-radius:50%;width:18px;height:18px;box-shadow:0 0 0 5px #fff}.audio__range:focus-visible{outline-offset:2px;border-radius:6px;outline:3px solid #2d6cdf}.audio__time{text-align:right;min-width:40px;font-family:var(--mono);color:var(--mute);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.audio__mute{width:40px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.audio__mute:hover{background:var(--soft)}.audio__mute[aria-pressed=true]{color:var(--mute)}.audio__msg{font-family:var(--mono);letter-spacing:.08em;color:var(--mute);flex:1;font-size:11px}.item{grid-template-columns:var(--year-col) var(--rail-col) minmax(0, 1fr) auto}.item__play{border:1.5px solid var(--ink);width:40px;height:40px;color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;flex:none;grid-column:4;place-items:center;margin-left:8px;transition:background .15s,color .15s;display:grid}.item__play:hover,.item__play--on{background:var(--ink);color:#fff}.ghost{z-index:60;pointer-events:none;will-change:transform;border:1.5px solid var(--ink);background:#fff;border-radius:14px;padding:14px 14px 10px;animation:.12s both fadeIn;position:fixed;top:0;left:0;box-shadow:0 18px 38px #00000042}.ghost--drop{transition:transform .2s cubic-bezier(.2,.8,.2,1)}.toast{z-index:35;left:50%;bottom:calc(var(--player-h) + 14px);border:1px solid var(--red);white-space:nowrap;pointer-events:none;background:#fff;border-radius:999px;padding:8px 14px;animation:3.2s both toast;position:fixed;transform:translate(-50%)}@keyframes toast{0%{opacity:0}10%,85%{opacity:1}to{opacity:0}}.sheet-wrap{z-index:50;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet__backdrop{background:#00000047;animation:.25s both fadeIn;position:absolute;inset:0}.sheet{width:100%;max-width:var(--col);max-height:88dvh;padding:18px 16px calc(22px + var(--safe-b));background:#fff;border-radius:20px 20px 0 0;animation:.38s cubic-bezier(.2,.8,.2,1) both sheetIn;position:relative;overflow:auto;box-shadow:0 -12px 40px #0003}.sheet__close{cursor:pointer;background:0 0;border:0;border-radius:50%;width:44px;height:44px;font-size:28px;line-height:1;position:absolute;top:6px;right:8px}.sheet__close:hover{background:var(--soft)}@keyframes sheetIn{0%{transform:translateY(100%)}to{transform:none}}.results{text-align:center;justify-items:center;gap:10px;padding:6px 0 0;display:grid}.results__score{font-family:var(--serif);font-size:72px;font-weight:800;line-height:1}.results__score small{color:var(--mute);font-size:28px}.results__bar{gap:4px;width:min(280px,80%);display:flex}.results__bar span{background:var(--line);border-radius:4px;flex:1;height:8px}.results__bar span.on{background:var(--ink)}.results__bar span.bad{background:var(--red)}.results__stats{gap:26px;margin:10px 0 6px;display:flex}.results__stats div{gap:2px;display:grid}.results__stats dd{font-size:30px;font-weight:800;line-height:1}.results__stats dt{color:var(--mute);font-size:12px}.results__next{font-family:var(--mono);letter-spacing:.08em;color:var(--mute);margin-top:4px;font-size:12px}.stat-list{display:grid}.stat-list div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;padding:14px 0;display:flex}.stat-list dt{font-size:15px}.stat-list dd{font-size:22px;font-weight:800}.demo{padding:8px 0 12px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes blink{50%{opacity:.45}}.top,.page{animation:.25s both fadeIn}.pips li{transition:background-color .35s,box-shadow .35s}@media (width<=380px){:root{--year-col:74px;--rail-col:26px}.item__year{font-size:24px}.top__brand{font-size:23px}.page{padding-left:12px;padding-right:12px}.mystery__title{font-size:17px}}@media (width>=720px){.page{padding-top:16px}.item__title{font-size:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width>=720px){.sheet-wrap{align-items:center}.sheet{border-radius:20px;padding-bottom:24px;animation-name:cardIn}}@keyframes cardIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:none}}.form{gap:14px;max-width:360px;display:grid}.form label{gap:6px;font-size:13px;font-weight:700;display:grid}.form input{font:inherit;min-height:48px;color:var(--ink);background:#fff;border:1.5px solid #bdbdbd;border-radius:12px;padding:0 14px;font-weight:400}.form input:focus-visible{border-color:var(--ink);outline:none;box-shadow:0 0 0 3px #1212121f}.form .btn{justify-self:start}.form .btn:disabled{cursor:not-allowed;background:#c9c9c9}.form__msg{color:var(--mute);font-size:14px}.form__msg--error{color:var(--red)}.form__switch{color:var(--mute);font-size:14px}.link{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.results__signin{color:var(--mute);font-size:13px}.results__signin a{color:var(--ink);font-weight:700}.gap--demo-open:after{opacity:1;background:var(--ink);height:4px;transform:none}.gap--demo-open:before,.gap--demo-open .gap__label{opacity:1;transform:none}.page--complete .item{animation:.9s ease-out both perfectWave}.page--complete .timeline__row:nth-child(2n) .item{animation-delay:80ms}.page--complete .timeline__row:nth-child(4n) .item{animation-delay:.16s}.page--complete .timeline__row:nth-child(6n) .item{animation-delay:.24s}.page--complete .timeline__row:nth-child(8n) .item{animation-delay:.32s}@keyframes perfectWave{0%{background:0 0}35%{background:var(--green-soft);transform:translate(4px)}to{background:0 0;transform:none}}.page__foot{text-align:center;margin-top:8px;font-size:13px}.page__foot a{color:var(--mute)}.prose{gap:12px;display:grid}.prose h2{margin-top:10px;font-size:17px}.prose ul{gap:6px;margin:0;padding-left:20px;display:grid}.prose p,.prose li{color:#2b2b2b}.skeleton{position:relative}.skeleton:before{content:"";background:var(--line);width:2px;top:0;bottom:0;left:calc(var(--year-col) + var(--rail-col) / 2 - 1px);position:absolute}.skeleton__row{grid-template-columns:var(--year-col) var(--rail-col) 1fr;align-items:center;padding:22px 0;animation:1.4s ease-in-out infinite skeletonPulse;display:grid}.skeleton__year{background:var(--line);border-radius:6px;justify-self:end;width:62px;height:26px;margin-right:6px}.skeleton__dot{z-index:1;width:16px;height:16px;box-shadow:0 0 0 4px var(--bg);background:radial-gradient(circle,#fff 0 2px,#bdbdbd 2.5px 100%);border-radius:50%;justify-self:center;animation:1.4s ease-in-out infinite dotBeat;position:relative}.skeleton__text{gap:8px;padding-left:4px;display:grid}.skeleton__text i{background:var(--line);border-radius:5px;height:14px;display:block}.skeleton__text i:first-child{width:62%;height:17px}.skeleton__text i:last-child{width:40%}.player--skeleton{pointer-events:none}.mystery--skeleton{align-content:center;gap:10px;animation:1.4s ease-in-out infinite skeletonPulse;display:grid}.mystery--skeleton i{background:var(--line);border-radius:5px;width:55%;height:16px;display:block}.mystery--skeleton i:last-child{width:35%;height:13px}.loading-label{text-align:center;margin-top:14px}.loading-label:after{content:"";text-align:left;width:1.4em;animation:1.2s steps(4,end) infinite dots;display:inline-block}@keyframes skeletonPulse{0%,to{opacity:.55}50%{opacity:1}}@keyframes dotBeat{0%,to{transform:scale(1)}50%{transform:scale(1.35)}}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@media (width>=900px){:root{--col:640px;--year-col:112px;--rail-col:34px;--player-min:236px}.top__brand{font-size:30px}.item__year{font-size:36px}.item__title{font-size:20px}.item__artist{font-size:15px}.item__date{font-size:12px}.item__play{width:44px;height:44px}.axis{font-size:11.5px}.mystery{min-height:112px;padding:18px 20px 14px}.mystery__title{font-size:22px}.mystery__artist{font-size:15px}.mystery--live:hover{box-shadow:0 1px 2px #0000000f,0 10px 22px #00000024}.player__hint{font-size:13px}.top__bar{grid-template-columns:1fr auto 1fr;max-width:none;padding:0 24px}.top__bar>:first-child{justify-self:start}.top__bar>:last-child{justify-self:end}.top__sub{max-width:none;padding:0 32px 8px}.player--fail .btn,.player--done .btn{min-height:40px;padding:0 24px;font-size:14px}.sheet{border-radius:18px;max-width:400px;padding:28px 32px 26px}.results{gap:8px}.results__score{font-size:60px}.results__score small{font-size:22px}.results__bar{width:min(240px,80%)}.results__bar span{height:7px}.results__stats{gap:28px;margin:8px 0 4px}.results__stats dd{font-size:24px}.results__stats dt,.results__next,.results__signin{font-size:12px}.btn--big{min-height:44px;padding:0 32px;font-size:15px}}.sheet-wrap--top{z-index:60}.sheet--account{max-width:420px}.account__title{font-family:var(--serif);text-align:center;margin:4px 0 12px;font-size:28px;font-weight:800}.account__body{text-align:center;justify-items:center;gap:14px;display:grid}.account__body .form{text-align:left;width:100%;max-width:none}.form__switch{text-align:center}@media (width<=719px){.sheet--account{max-width:var(--col)}}
