html,body,#root{width:100%;height:100%;min-height:100%;margin:0;background:#fff;font-family:Patrick Hand,system-ui,sans-serif;overflow:hidden}body{overscroll-behavior:none}button:focus-visible{outline:4px solid #ffd43b;outline-offset:3px}@font-face{font-family:Patrick Hand;font-style:normal;font-weight:400;font-display:block;src:url(/assets/PatrickHand-Regular-CyLOmwMC.ttf) format("truetype")}:root{--ink: #393939;--mobile-control-inset: 12px;--mobile-control-bottom: 44px}*{box-sizing:border-box}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-page{width:100%;height:100vh;height:100dvh;display:grid;place-items:center;padding:24px;color:#111;background:#fff}.auth-card{width:min(100%,420px);display:grid;justify-items:center;gap:16px;text-align:center}.auth-card h1,.auth-card p{margin:0;font-weight:400}.auth-card h1{font-size:clamp(2.5rem,10vw,4.5rem);line-height:1}.auth-card p{font-size:clamp(1.2rem,4vw,1.6rem);line-height:1.25}.auth-card .auth-detail,.auth-card .auth-error{color:#777;font-size:1rem}.turnstile-container{min-height:65px;display:grid;place-items:center}.auth-retry{border:2px solid #111;border-radius:999px;padding:8px 22px;color:#111;background:#fff;font:400 1.2rem/1 Patrick Hand,system-ui,sans-serif;cursor:pointer}.auth-retry:hover{background:#f3f3f3}.stats-trigger{position:fixed;top:max(18px,calc(env(safe-area-inset-top) + 12px));right:max(18px,calc(env(safe-area-inset-right) + 12px));z-index:10;width:46px;height:46px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50% 47% 52% 48%;padding:8px;color:var(--ink);background:#ffffffeb;cursor:pointer;transform:rotate(1deg)}.stats-trigger img{width:100%;height:100%;display:block}.stats-trigger:hover:not(:disabled){transform:rotate(-2deg) scale(1.04)}.stats-trigger:disabled{opacity:.3;cursor:default}.stats-trigger:focus-visible,.stats-close:focus-visible,.stats-refresh:focus-visible{outline:3px solid #ffd43b;outline-offset:3px}.stats-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:24px;background:#ffffffd1;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.stats-panel{width:min(760px,100%);max-height:min(760px,calc(100dvh - 48px));overflow-y:auto;border:3px solid var(--ink);border-radius:18px 14px 20px 15px;padding:clamp(20px,4vw,34px);color:#111;background:#fff;box-shadow:7px 8px #39393926}.stats-header,.stats-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.stats-header h2{margin:0;font-size:clamp(2rem,6vw,3rem);font-weight:400;line-height:1}.stats-close,.stats-refresh{border:0;border-bottom:2px solid currentColor;padding:2px 3px;color:#555;background:transparent;font:400 1.1rem/1.1 Patrick Hand,system-ui,sans-serif;cursor:pointer}.stats-refresh:disabled{opacity:.5;cursor:default}.stats-sections{margin-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,3vw,28px)}.stats-group h3{margin:0 0 10px;border-bottom:2px solid #aaa;padding-bottom:4px;font-size:1.45rem;font-weight:400}.stats-group dl,.stats-group dl div{margin:0}.stats-group dl{display:grid;gap:12px}.stats-group dl div{display:grid;gap:1px}.stats-group dt{color:#777;font-size:.95rem;line-height:1.1}.stats-group dd{margin:0;font-size:clamp(1.35rem,3vw,1.8rem);line-height:1;overflow-wrap:anywhere}.stats-state{min-height:180px;margin:0;display:grid;place-items:center;align-content:center;gap:18px;color:#555;font-size:1.25rem;text-align:center}.stats-state p,.stats-error{margin:0}.stats-footer{min-height:36px;margin-top:24px;justify-content:flex-end}.stats-error{margin-right:auto;color:#777}@media(max-width:650px){.stats-trigger{top:max(18px,calc(env(safe-area-inset-top) + 12px));right:max(18px,calc(env(safe-area-inset-right) + 12px));width:46px;height:46px;padding:8px}.stats-backdrop{padding:0;background:#fff}.stats-panel{width:100%;height:100dvh;max-height:none;border:0;border-radius:0;padding:max(22px,env(safe-area-inset-top)) 20px max(22px,env(safe-area-inset-bottom));box-shadow:none}.stats-sections{grid-template-columns:1fr}.stats-group dl{grid-template-columns:repeat(2,minmax(0,1fr))}}.meme-page{width:min(1125px,100%);height:100vh;height:100dvh;min-height:100vh;min-height:100dvh;margin:0 auto;padding:clamp(12px,3vw,28px) clamp(8px,2vw,18px) clamp(12px,2vw,20px);display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:max(clamp(36px,7vh,72px),calc(env(safe-area-inset-bottom) + 20px));color:#111;background:#fff}.drawing{position:relative;width:100%;margin:-4px auto 0}.artwork,.artwork svg{display:block;width:100%;height:auto;overflow:visible}.artwork #g32,.artwork #train-underlay,.artwork #train-idle-body{transform-box:view-box;transform-origin:50px 125px;will-change:transform}.artwork #lever-holder #ellipse110,.artwork #lever-holder #ellipse111,.artwork #g2 #path15,.artwork #g2 #path15-6,.artwork #g85 #ellipse83,.artwork #g85 #ellipse84{transform-box:fill-box;transform-origin:50% 100%;will-change:transform}.drawing--waiting .artwork #train-idle-body,.drawing--missed .artwork #train-idle-body,.drawing--error .artwork #train-idle-body{animation:trolley-engine-idle 1.8s linear infinite}.drawing--waiting .artwork #lever-holder #ellipse110,.drawing--waiting .artwork #lever-holder #ellipse111,.drawing--missed .artwork #lever-holder #ellipse110,.drawing--missed .artwork #lever-holder #ellipse111,.drawing--error .artwork #lever-holder #ellipse110,.drawing--error .artwork #lever-holder #ellipse111{animation:lever-holder-blink 12s linear -3.7s infinite}:is(.drawing--waiting,.drawing--missed,.drawing--error) .artwork :is(#g2 #path15,#g2 #path15-6,#g85 #ellipse83,#g85 #ellipse84){animation:left-lever-holder-eye-dart 10.5s linear -1.2s infinite}.artwork #g94{opacity:0;will-change:transform,opacity}.artwork #g62 circle{fill:#fff!important;paint-order:fill markers stroke}.artwork #text85,.artwork #text94{font-family:Patrick Hand,system-ui,sans-serif!important;font-size:2.2px!important}.artwork #g74,.artwork #g75,.artwork #shared-track-highlight,.artwork #g26,.artwork #g116,.artwork #g2,.artwork #g85,.artwork #text85,.artwork #text94{transition:opacity .18s ease}.drawing--route-double .artwork #g74,.drawing--route-end .artwork #g75,.drawing--route-end .artwork #shared-track-highlight{opacity:1;animation:route-pulse .36s ease-out}.drawing--route-double .artwork #g75,.drawing--route-end .artwork #g74,.drawing--route-double .artwork #shared-track-highlight{opacity:.2}.drawing--route-double .artwork #g26 *,.drawing--route-end .artwork #g116 *{stroke:#c7c7c7!important}.drawing--route-double .artwork #g26 [style*="fill:#000000"],.drawing--route-end .artwork #g116 [style*="fill:#000000"]{fill:#c7c7c7!important}.drawing--route-end .artwork #text85,.drawing--route-double .artwork #text94{opacity:1}.drawing--route-double .artwork #text85,.drawing--route-end .artwork #text94{opacity:.2}.drawing--waiting .artwork #text85,.drawing--waiting .artwork #text94,.drawing--claiming .artwork #text85,.drawing--claiming .artwork #text94{opacity:0}.drawing--route-double .artwork #g74 path,.drawing--route-end .artwork #g75 path,.drawing--route-end .artwork #shared-track-highlight path{stroke-width:.36px!important}.track-selector{position:absolute;z-index:2;padding:0;border:0;background:transparent;cursor:pointer;touch-action:manipulation}.track-selector--double{left:36%;top:51%;width:58%;height:39%;clip-path:polygon(0 0,100% 45%,100% 100%,0 14%)}.track-selector--kill{left:36%;top:34%;width:58%;height:24%;clip-path:polygon(0 35%,24% 0,100% 20%,100% 100%,28% 62%,0 100%)}.track-selector:focus-visible{outline:4px solid #ffd43b;outline-offset:2px;background:#ffd43b2e}.game-controls{position:fixed;right:max(var(--mobile-control-inset),env(safe-area-inset-right));bottom:max(var(--mobile-control-bottom),calc(env(safe-area-inset-bottom) + 40px));left:max(var(--mobile-control-inset),env(safe-area-inset-left));z-index:12;width:min(520px,calc(100% - 24px));height:112px;margin-inline:auto;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:28px 78px;gap:6px 10px}.game-controls--ready{grid-template-columns:1fr}.game-timer{grid-column:1 / -1;height:28px;display:grid;grid-template-rows:16px 10px;gap:2px}.game-timer--hidden{visibility:hidden}.game-timer__label{font-size:.95rem;line-height:16px;text-align:center}.game-timer__track{height:10px;overflow:hidden;border-radius:999px;background:transparent}.game-timer__remaining{display:block;height:100%;margin-inline:auto;border-radius:999px;background:#111;transition:width 55ms linear;will-change:width}.game-control{min-height:0;height:100%;padding:6px 10px;border:2px solid #111;border-radius:7px;color:#111;background:#fff;font:400 1.1rem/1.05 Patrick Hand,system-ui,sans-serif;cursor:pointer;touch-action:manipulation}.game-control[aria-pressed=true]{color:#fff;background:#111}.game-control:focus-visible{outline:3px solid #ffd43b;outline-offset:3px}.game-control span,.game-control strong{display:block}.game-control strong{margin-top:2px;font-size:1.5rem;font-weight:400}@keyframes route-pulse{0%{opacity:.5}55%{opacity:1}}@keyframes trolley-engine-idle{0%,to{transform:translateY(0)}20%{transform:translateY(-.05px)}45%{transform:translateY(-.015px)}67%{transform:translateY(-.06px)}84%{transform:translateY(-.02px)}}@keyframes left-lever-holder-eye-dart{0%,15%,17%,34%,74%,to{transform:translateY(.02px) scaleY(1)}16%{transform:translateY(.02px) scaleY(.08)}35%{transform:translateY(.02px) scaleY(.08)}36%{transform:translateY(.02px) scaleY(1)}37%{transform:translateY(.02px) scaleY(.08)}38%{transform:translateY(.02px) scaleY(1)}39%,70%{transform:translateY(-.06px) scaleY(1)}73%{transform:translateY(.02px) scaleY(1)}}@keyframes lever-holder-blink{0%,23%,25%,67%,69%,71%,73%,to{transform:scaleY(1)}24%{transform:scaleY(.08)}68%,72%{transform:scaleY(.08)}}.drawing--end .artwork #g32,.drawing--end .artwork #train-underlay,.drawing--double .artwork #g32,.drawing--double .artwork #train-underlay{transform:translate(28px,10px);transition:none}.choices{flex:none;width:100%;min-height:55px;margin:-5px auto 0;padding:0 8px;display:grid;place-items:center}.choices>*{grid-area:1 / 1}.auto-note,.message,.choice-sizer{margin:0;color:#111;font:400 clamp(1.25rem,5vw,2rem)/1.15 "Patrick Hand",system-ui,sans-serif;text-align:center;overflow-wrap:anywhere}.choice-sizer{visibility:hidden}.streak-note{flex:none;margin:6px 0 0;color:#666;font-size:clamp(16px,2vw,20px);line-height:1.25;text-align:center}.streak-note--hidden{visibility:hidden}@media(min-width:651px){.meme-page{padding-bottom:max(164px,calc(env(safe-area-inset-bottom) + 152px))}}@media(max-width:650px){.meme-page{min-height:100svh;padding:8px max(8px,env(safe-area-inset-right)) max(28px,calc(env(safe-area-inset-bottom) + 16px)) max(8px,env(safe-area-inset-left));justify-content:center}.drawing{position:relative;top:-2vh;width:min(112vw,500px);margin:0 calc((100% - min(112vw,500px))/2) 4px}.choices{position:relative;top:-2vh;min-height:44px}.streak-note{position:relative;top:-2vh;margin-top:6px;padding:0 8px}}@media(min-width:651px)and (max-height:700px){.drawing{width:min(100%,calc((100dvh - 260px)*1.6129));margin-top:0}}@media(max-height:500px)and (orientation:landscape){.meme-page{padding-block:6px;justify-content:flex-start}@media(min-width:651px)and (max-height:850px){.drawing{width:min(100%,calc((100dvh - 260px)*1.6129))}}.drawing{width:min(100%,calc((100dvh - 100px)*1.6129))}.choices{min-height:45px}.streak-note{margin-top:2px}}.site-footer{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));z-index:5;display:flex;gap:14px;font-size:.95rem}.site-footer a,.privacy-notice a{color:#555;text-decoration-thickness:1px;text-underline-offset:3px}@media(max-width:650px){.site-footer--mobile-hidden{display:none}}.privacy-page{height:100%;min-height:100vh;overflow-y:auto;padding:clamp(24px,6vw,64px) clamp(18px,5vw,48px);color:#222;background:#f8f7f2}.privacy-notice{width:min(760px,100%);margin:0 auto;padding:clamp(24px,5vw,52px);border:1px solid #ddd8ca;border-radius:18px;background:#fff;font-family:system-ui,sans-serif;line-height:1.6}.privacy-notice header{margin-bottom:36px}.privacy-notice h1,.privacy-notice h2,.privacy-notice p{margin-top:0}.privacy-notice h1{margin:12px 0 14px;font:400 clamp(2.5rem,8vw,4.5rem)/1 "Patrick Hand",system-ui,sans-serif}.privacy-notice h2{margin-bottom:8px;font-size:1.25rem}.privacy-notice section{margin-top:32px}.privacy-notice li+li{margin-top:8px}.privacy-notice footer{margin-top:40px;padding-top:20px;border-top:1px solid #e5e2d9}.privacy-back{font-size:.95rem}.privacy-configuration-warning{padding:12px 16px;border:1px solid #b45309;border-radius:8px;color:#7c2d12;background:#fff7ed}.tutorial-page,.tutorial-welcome{width:100%;height:100%;min-height:100vh;min-height:100dvh;overflow-y:auto;color:#111;background:#fff}.tutorial-welcome{display:grid;place-items:center;padding:24px}.tutorial-card{width:min(620px,100%);text-align:center}.tutorial-card h1,.tutorial-copy h1{margin:0;font-weight:400;line-height:1}.tutorial-card h1{font-size:clamp(3rem,10vw,5.5rem)}.tutorial-card>p:not(.tutorial-eyebrow){margin:18px auto 0;font-size:clamp(1.25rem,4vw,1.8rem);line-height:1.25}.tutorial-eyebrow,.tutorial-step{margin:0 0 6px;color:#666;font-size:clamp(1rem,2.5vw,1.25rem);line-height:1.2}.tutorial-step{margin-bottom:10px}.tutorial-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px}.tutorial-card .tutorial-actions{margin-top:32px}.tutorial-primary,.tutorial-secondary,.tutorial-restart{min-height:44px;padding:8px 20px;border:2px solid #111;border-radius:6px;font:400 clamp(1.15rem,3vw,1.4rem)/1.2 "Patrick Hand",system-ui,sans-serif;touch-action:manipulation;cursor:pointer}.tutorial-primary{display:inline-grid;place-items:center;color:#fff;background:#111;text-decoration:none}.tutorial-secondary,.tutorial-restart{color:#111;background:#fff}.tutorial-back{position:absolute;top:50%;left:0;min-height:36px;padding:4px 8px;border:0;color:#666;background:transparent;font:400 1rem/1.2 Patrick Hand,system-ui,sans-serif;font-size:1rem;text-decoration:underline;text-underline-offset:3px;cursor:pointer;transform:translateY(-50%)}.tutorial-page{width:min(1125px,100%);margin:0 auto;padding:clamp(14px,3vw,28px) clamp(8px,2vw,18px) 42px}.tutorial-header{position:relative;width:100%;margin:0 auto 12px;display:flex;justify-content:flex-end}.tutorial-header>a{color:#666;font-size:1rem;text-underline-offset:3px}.tutorial-demo{width:100%;margin:0 auto;display:flex;flex-direction:column}.tutorial-progress{width:min(520px,70%);margin:0 auto 16px;display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.tutorial-progress span{height:4px;background:#ddd}.tutorial-progress .tutorial-progress--complete{background:#111}.tutorial-copy{position:relative;z-index:3;height:278px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center}.tutorial-copy h1{font-size:clamp(2.3rem,6vw,4rem);line-height:1.08}.tutorial-copy>p:not(.tutorial-step){max-width:min(820px,92%);margin:18px auto 0;font-size:clamp(1.15rem,3vw,1.55rem);line-height:1.4}.tutorial-copy>.tutorial-primary{margin-top:20px}.tutorial-copy>.tutorial-actions{flex-shrink:0;margin-top:auto;margin-bottom:4px}.tutorial-summary{width:min(620px,100%);margin-top:12px;text-align:left}.tutorial-summary>div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:5px 0}.tutorial-summary dt{font-weight:700}.tutorial-summary dd{margin:0}.tutorial-drawing{position:relative;z-index:1;width:min(900px,100%);margin:-12px auto 0}.tutorial-drawing .drawing{margin:0}.tutorial-restart{display:block;min-height:36px;margin:4px auto 0;padding:4px 12px;border:0;color:#666;font-size:1rem;text-decoration:underline;text-underline-offset:3px}@media(min-width:651px){.tutorial-drawing{width:auto;height:min(558px,62vw,max(180px,calc(100dvh - 535px)));aspect-ratio:150 / 93}}@media(max-width:650px){.tutorial-desktop-break{display:none}.tutorial-page{padding:8px 8px 6px}.tutorial-header{margin-bottom:6px}.tutorial-progress{margin-bottom:10px}.tutorial-copy{height:225px;min-height:0}.tutorial-copy h1{font-size:clamp(1.9rem,9vw,2.4rem);line-height:1.05}.tutorial-step{margin-bottom:8px}.tutorial-copy>p:not(.tutorial-step){margin-top:10px;font-size:clamp(1.05rem,4.8vw,1.25rem);line-height:1.3}.tutorial-copy>.tutorial-primary{margin-top:14px}.tutorial-drawing{width:min(96%,400px);margin-top:0}.tutorial-drawing .drawing{width:100%;margin-inline:0}.tutorial-restart{position:fixed;bottom:max(10px,env(safe-area-inset-bottom));left:max(12px,env(safe-area-inset-left));z-index:5;margin:0;background:#ffffffeb}.tutorial-page--active .tutorial-restart{display:none}.tutorial-summary>div{grid-template-columns:1fr;gap:0;padding:2px 0;text-align:center}.tutorial-summary{margin-top:8px;font-size:1.05rem;line-height:1.2}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.artwork #train-idle-body{animation-duration:1.8s!important;animation-iteration-count:infinite!important}.artwork #lever-holder #ellipse110,.artwork #lever-holder #ellipse111{animation-duration:12s!important;animation-iteration-count:infinite!important}.artwork :is(#g2 #path15,#g2 #path15-6,#g85 #ellipse83,#g85 #ellipse84){animation-duration:10.5s!important;animation-iteration-count:infinite!important}}
