/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.table{display:table}}:root{--orange:#ff5b00;--cream:#f4efe4;--ink:#0a0908;--muted:#a9a196}*{box-sizing:border-box}html{background:#0a0908}body{background:var(--ink);color:var(--cream);font-family:var(--font-mono),monospace;margin:0}.shell{background:radial-gradient(circle at 80% 0,#4a1c08 0,#0000 34%),linear-gradient(145deg,#0d0b09 0%,#090807 72%);min-height:100svh;position:relative;overflow:hidden}.shell:before{content:"";pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E");position:fixed;inset:0}.top{z-index:2;border-bottom:1px solid #ffffff2a;justify-content:space-between;align-items:center;height:86px;padding:0 5vw;display:flex;position:relative}.brand{font-family:var(--font-display);letter-spacing:.04em;align-items:center;gap:12px;font-size:25px;line-height:.75;display:flex}.brand small{font:700 8px var(--font-mono);letter-spacing:.3em}.logoMark{border:2px solid var(--orange);width:38px;height:38px;color:var(--orange);font:24px var(--font-display);place-items:center;display:grid;transform:rotate(-8deg)}.edition,.eyebrow{color:var(--orange);letter-spacing:.12em;font-size:11px;font-weight:700}.topActions{align-items:center;gap:18px;display:flex}.routeTab{border:1px solid var(--orange);background:var(--orange);color:var(--ink);font:700 10px var(--font-mono);letter-spacing:.08em;cursor:pointer;padding:10px 13px}.routeTab b{background:var(--ink);color:var(--orange);margin-left:8px;padding:3px 6px}.hero{max-width:1100px;padding:clamp(52px,9vw,120px) 6vw 110px}.hero h1,.resultHead h1{font:clamp(64px,10vw,150px)/.84 var(--font-display);letter-spacing:-.025em;text-transform:uppercase;margin:22px 0}.hero h1 em,.resultHead h1 em{color:var(--orange);font-style:normal}.hero p{color:#c1b8aa;max-width:620px;font-size:14px;line-height:1.7}.primary{background:var(--orange);color:#0a0908;min-height:60px;font:700 12px var(--font-mono);letter-spacing:.08em;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:60px;margin-top:26px;padding:0 24px;transition:all .2s;display:inline-flex;box-shadow:6px 6px #81300c}.primary:hover{transform:translate(-2px,-2px);box-shadow:9px 9px #81300c}.resume,.secondary,.back,.miniRoute{color:var(--cream);font:700 11px var(--font-mono);cursor:pointer;background:0 0;border:0}.mobileTools{gap:20px;margin-top:25px;display:flex}.mobileTools button{color:#aaa196;font:700 9px var(--font-mono);letter-spacing:.08em;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.routeShortcut{border:1px solid #ffffff28;border-left:5px solid var(--orange);width:min(600px,100%);color:var(--cream);text-align:left;cursor:pointer;background:#15120f;grid-template-columns:1fr auto;margin-top:28px;padding:20px;display:grid;position:relative}.routeShortcut span,.routeShortcut small{font:8px var(--font-mono);color:#8d857a;letter-spacing:.1em;grid-column:1}.routeShortcut b{font:30px var(--font-display);grid-column:1;margin:6px 0}.routeShortcut i{color:var(--orange);grid-area:1/2/4;align-self:center;font-size:25px;font-style:normal}.ticker{color:#8f877c;letter-spacing:.08em;border-top:1px solid #ffffff2a;align-items:center;gap:25px;width:100%;padding:18px 5vw;font-size:10px;display:flex;position:absolute;bottom:0;left:0}.ticker i{background:var(--orange);width:5px;height:5px;transform:rotate(45deg)}.brand.compact{font-size:16px;line-height:1}.brand.compact .logoMark{width:29px;height:29px;font-size:18px}.progress{background:#211e1a;height:3px}.progress span{background:var(--orange);height:100%;transition:width .35s;display:block}.gameHead{justify-content:space-between;align-items:end;padding:38px 5vw 25px;display:flex}.gameHead span,.resultHead>span{color:var(--orange);letter-spacing:.14em;font-size:10px;font-weight:700}.gameHead h1{font:clamp(76px,11vw,135px)/.9 var(--font-display);margin:5px 0 0}.gameHead p{text-align:right;font:22px/1 var(--font-display);color:#8e877c;margin:0}.choices{grid-template-columns:repeat(3,1fr);gap:10px;padding:0 5vw 100px;display:grid}.artistCard{--tone:var(--orange);text-align:left;min-height:155px;color:var(--cream);cursor:pointer;background:#15120f;border:1px solid #ffffff1f;grid-template-columns:32px 1fr auto;align-items:end;gap:10px;padding:17px;transition:all .2s;display:grid;position:relative;overflow:hidden}.artistCard:before{content:"";background:var(--tone);height:3px;position:absolute;inset:auto 0 0}.artistCard.selected{background:var(--tone);color:#090807;transform:translateY(-3px)}@media (hover:hover){.artistCard:hover{background:var(--tone);color:#090807;transform:translateY(-3px)}}.artistCard small{text-transform:uppercase;letter-spacing:.09em;font-size:8px}.artistCard h2{font:clamp(23px,3vw,42px)/.95 var(--font-display);text-transform:uppercase;margin:8px 0 0}.cardNo{color:#8f877c;align-self:start;font-size:9px}.arrow{font-size:20px}.breakCard{--tone:#c5bbae;color:#9e978c;background:#0d0c0a}.gameNav{z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0b0908ed;border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 5vw;display:flex;position:fixed;bottom:0;left:0}.gameNav button{color:var(--cream);font:700 10px var(--font-mono);cursor:pointer;background:0 0;border:0}.gameNav button:disabled{opacity:.25}.gameNav span{color:#665f57;font-size:8px}.result{padding-bottom:60px}.resultHead{border-bottom:1px solid #ffffff20;padding:55px 6vw 35px}.resultHead h1{margin:17px 0 35px;font-size:clamp(58px,9vw,125px)}.stats{gap:55px;display:flex}.stats b{font:48px var(--font-display);color:var(--orange)}.stats small{font:8px var(--font-mono);color:#8d857a;letter-spacing:.12em;display:block}.routeList{max-width:1100px;margin:0 auto;padding:30px 5vw}.routeRow{width:100%;color:var(--cream);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff1c;grid-template-columns:130px 12px 1fr 30px;align-items:center;gap:20px;padding:24px 8px;display:grid}.routeRow:hover{background:#ffffff07}.routeRow time{color:var(--orange);flex-direction:column;display:flex}.routeRow time strong{font:34px var(--font-display)}.routeRow time span{font:9px var(--font-mono);color:#8d857a}.stageDot{width:8px;height:54px}.routeDetails{flex-direction:column;gap:6px;display:flex}.stageName{font:clamp(27px,3vw,38px)/.95 var(--font-display);text-transform:uppercase}.routeRow b{font:clamp(24px,2.5vw,32px)/.95 var(--font-display);text-transform:uppercase;color:var(--cream);display:block}.edit{color:#6c655c}.emptyRoute{color:#81786d;border-bottom:1px solid #ffffff1c;padding:40px 8px}.emptyRoute b,.emptyRoute span{display:block}.emptyRoute span{margin-top:8px;font-size:10px}.actions{max-width:980px;margin:auto;padding:0 5vw}.secondary{color:#8d857a;margin-left:28px;text-decoration:underline}.disclaimer{color:#5e5851;text-transform:uppercase;max-width:880px;margin:45px auto 0;padding:0 5vw;font-size:8px;line-height:1.6}.miniRoute{color:var(--orange)}@media (width<=720px){.top{height:68px;padding:0 18px}.edition{display:none}.topActions{gap:8px}.routeTab{padding:9px 8px}.brand{font-size:18px}.brand .logoMark{width:31px;height:31px;font-size:19px}.hero{padding:48px 20px 155px}.hero h1{font-size:16vw}.hero p{font-size:12px}.primary{width:100%}.mobileTools{justify-content:space-between;gap:8px}.routeShortcut{margin-top:24px}.routeShortcut b{font-size:27px}.ticker{white-space:nowrap;gap:12px;padding:15px 18px;overflow:hidden}.gameHead{align-items:start;padding:30px 18px 18px}.gameHead h1{font-size:22vw}.gameHead p{margin-top:22px;font-size:15px}.choices{scroll-snap-type:x mandatory;gap:10px;padding:0 18px 90px;display:flex;overflow-x:auto}.artistCard{scroll-snap-align:center;min-width:79vw;min-height:280px}.artistCard h2{font-size:43px}.gameNav{padding:0 18px}.resultHead{padding:45px 20px 28px}.resultHead h1{font-size:17vw}.stats{justify-content:space-between;gap:10px}.stats b{font-size:36px}.routeList{padding:20px 14px}.routeRow{grid-template-columns:70px 6px 1fr 18px;gap:10px;padding:20px 6px}.routeRow time strong{font-size:26px}.stageDot{width:5px;height:56px}.stageName{font-size:27px}.routeRow b{font-size:24px}.actions{padding:0 18px}.secondary{margin:24px auto 0;display:block}.disclaimer{padding:0 20px}.back{font-size:0}.back:first-letter{font-size:14px}.game{height:100svh;min-height:0;overflow:hidden}.game .top{height:62px}.game .gameHead{align-items:center;height:105px;padding:14px 12px 10px}.game .gameHead h1{font-size:58px;line-height:.85}.game .gameHead p{margin:0;font-size:11px;line-height:1.05}.game .choices{scroll-snap-type:none;grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:5px;height:calc(100svh - 170px);padding:5px 7px 70px;display:grid;overflow:hidden}.game .artistCard{scroll-snap-align:none;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:3px;width:auto;min-width:0;min-height:0;padding:8px 6px;display:flex}.game .artistCard .cardNo,.game .artistCard .arrow{display:none}.game .artistCard small{letter-spacing:0;white-space:normal;font-size:6px;line-height:1.2;display:block}.game .artistCard h2{overflow-wrap:anywhere;margin:5px 0 0;font-size:clamp(13px,4.2vw,19px);line-height:.95}.game .gameNav{height:64px;padding:0 12px}.game .gameNav span{display:none}}.liveMode{max-width:1100px;color:var(--orange);font:700 9px var(--font-mono);letter-spacing:.1em;margin:24px auto 0;padding:0 5vw}.liveMode i{background:var(--orange);border-radius:50%;width:8px;height:8px;margin-right:8px;animation:1.4s infinite pulse;display:inline-block;box-shadow:0 0 0 5px #ff5b0030}.routeRow{transition:opacity .35s,transform .35s,padding .35s,background .35s}.routeRow.past{opacity:.28;transform-origin:0;filter:saturate(.35);padding-block:11px;transform:scale(.94)}.routeRow.past .stageDot{height:30px}.routeRow.past time strong{font-size:24px}.routeRow.past .stageName{font-size:22px}.routeRow.past b{font-size:19px}.routeRow.live{border:1px solid #ff5b0050;border-left:4px solid var(--orange);background:#ff5b000c;padding-inline:15px;box-shadow:0 0 30px #ff5b0010}.nowBadge{color:var(--orange);font:700 8px var(--font-mono);letter-spacing:.12em}.routeRow.future{opacity:1}@keyframes pulse{50%{opacity:.5}}@media (width<=720px){.liveMode{margin-top:18px;padding:0 18px;font-size:7px}.routeRow.past{padding-block:8px;transform:scale(.92)}.routeRow.past .stageName{font-size:19px}.routeRow.past b{font-size:17px}.routeRow.live{padding-inline:8px}.nowBadge{font-size:6px}}.mapTab{border:2px solid var(--orange);background:var(--orange);min-height:50px;color:var(--ink);font:700 11px var(--font-mono);letter-spacing:.08em;cursor:pointer;align-items:center;gap:9px;padding:8px 15px;display:flex;box-shadow:4px 4px #81300c}.mapTab:hover{transform:translate(-1px,-1px);box-shadow:6px 6px #81300c}.mapTab .mapIcon{font-size:25px;line-height:1}.mapTab small{letter-spacing:.1em;margin-top:2px;font-size:6px;display:block}.mapAction{border:2px solid var(--orange);min-height:72px;color:var(--orange);font:700 11px var(--font-mono);letter-spacing:.08em;cursor:pointer;text-align:left;background:linear-gradient(110deg,#ff5b0028,#15120f);grid-template-columns:38px auto;align-content:center;column-gap:8px;margin:26px 0 0 18px;padding:0 22px;display:inline-grid}.mapAction>span{grid-row:1/3;align-self:center;font-size:30px}.mapAction b{font:22px var(--font-display)}.mapAction small{color:#a9a196;font-size:7px}.mapScreen{height:100svh;color:var(--cream);background:#080706;flex-direction:column;display:flex;overflow:hidden}.mapHeader{z-index:2;background:#0c0a08;border-bottom:1px solid #fff2;flex:0 0 72px;grid-template-columns:1fr auto 1fr;align-items:center;height:72px;padding:0 18px;display:grid;position:relative}.mapHeader>button{color:var(--cream);font:700 10px var(--font-mono);cursor:pointer;background:0 0;border:0;justify-self:start}.mapHeader>div:nth-child(2){text-align:center}.mapHeader span{font:25px var(--font-display);color:var(--orange);display:block}.mapHeader small{font:7px var(--font-mono);color:#8d857a;letter-spacing:.1em;display:block}.zoomControls{justify-self:end;align-items:center;gap:8px;display:flex}.zoomControls button{width:34px;height:34px;color:var(--cream);cursor:pointer;background:#17130f;border:1px solid #ffffff30;font-size:18px}.zoomControls b{text-align:center;min-width:38px;font:8px var(--font-mono);color:#8d857a}.mapViewport{overscroll-behavior:contain;background:#0a0807;flex:1;display:block;overflow:auto}.mapViewport img{transform-origin:0 0;-webkit-user-select:none;user-select:none;max-width:none;height:auto;transition:width .2s;display:block}.mapViewport::-webkit-scrollbar{width:5px;height:5px}.mapViewport::-webkit-scrollbar-thumb{background:var(--orange)}@media (width<=720px){.mapTab{min-height:44px;padding:6px 9px;font-size:9px}.mapTab .mapIcon{font-size:21px}.topActions .mapTab{order:-1}.mapAction{width:100%;margin:16px 0 0;display:grid}.mapHeader{flex-basis:64px;grid-template-columns:70px 1fr 96px;height:64px;padding:0 10px}.mapHeader span{font-size:18px}.mapHeader small{font-size:5px}.zoomControls{gap:3px}.zoomControls button{width:28px;height:30px}.zoomControls b{min-width:32px;font-size:7px}.mapViewport img{min-width:100%}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.installCard{border:0;border-left:4px solid var(--orange);width:min(480px,100%);color:var(--ink);text-align:left;cursor:pointer;background:#f4efe4;grid-template-columns:1fr auto;margin-top:40px;padding:13px 15px;display:grid;box-shadow:4px 4px #81300c}.installCard span,.installCard small{font:7px var(--font-mono);letter-spacing:.1em;grid-column:1}.installCard span{color:#a13c0d}.installCard b{font:21px var(--font-display);grid-column:1;margin:4px 0}.installCard small{color:#665f57}.installCard i{color:var(--orange);grid-area:1/2/4;align-self:center;font-size:20px;font-style:normal}.mobileTools{align-items:center}.mobileTools span{font:700 7px var(--font-mono);letter-spacing:.08em;margin-left:auto}.mobileTools .online{color:#6f9f77}.mobileTools .offline{color:var(--orange)}.mobileTools .mapQuick{border:2px solid var(--orange);background:var(--orange);min-height:58px;color:var(--ink);text-align:left;grid-template-columns:31px 1fr auto;align-items:center;gap:9px;padding:8px 14px;text-decoration:none;display:grid;box-shadow:4px 4px #81300c}.mobileTools .mapQuick strong{font:29px/1 var(--font-display)}.mobileTools .mapQuick span{color:var(--ink);font:24px/.82 var(--font-display);letter-spacing:.02em;margin:0}.mobileTools .mapQuick small{font:700 6px var(--font-mono);letter-spacing:.1em;margin-bottom:5px;display:block}.mobileTools .mapQuick i{font:20px/1 var(--font-mono);font-style:normal}.installAction{min-height:60px;color:var(--cream);font:700 11px var(--font-mono);letter-spacing:.08em;cursor:pointer;background:#f4efe410;border:1px solid #f4efe455;margin:16px 0 0 18px;padding:0 22px}.installAction small{color:#8d857a;margin-top:5px;font-size:7px;display:block}@media (width<=720px){.intro{overflow-y:auto}.intro .hero{padding-bottom:45px}.intro .ticker{position:relative}.installCard{width:92%;margin-top:38px;padding:12px 14px}.installCard b{font-size:20px}.mobileTools{grid-template-columns:auto 1fr;gap:18px 12px;display:grid}.mobileTools .mapQuick{grid-area:1/1/auto/-1;width:100%;min-height:64px}.mobileTools>button:first-child{grid-column:1}.mobileTools>span:last-child{grid-column:2;justify-self:end}.installAction{width:100%;margin:16px 0 0;display:block}}.arrivalPanel{max-width:900px;padding:clamp(55px,9vw,110px) 6vw}.arrivalPanel h1{font:clamp(62px,10vw,135px)/.86 var(--font-display);text-transform:uppercase;margin:18px 0}.arrivalPanel h1 em{color:var(--orange);font-style:normal}.arrivalPanel p{color:#b2aa9e;max-width:600px;font-size:13px;line-height:1.7}.arrivalPanel label{color:var(--orange);font:700 9px var(--font-mono);letter-spacing:.12em;margin:35px 0 8px;display:block}.arrivalPanel select{border:2px solid var(--orange);width:min(360px,100%);height:72px;color:var(--cream);font:42px var(--font-display);appearance:none;background-color:#15120f;background-image:linear-gradient(45deg,#0000 50%,#ff5b00 50%),linear-gradient(135deg,#ff5b00 50%,#0000 50%);background-position:calc(100% - 22px) 31px,calc(100% - 15px) 31px;background-repeat:no-repeat;background-size:7px 7px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border-radius:0;padding:0 18px}.arrivalPanel .primary{width:min(360px,100%);margin-top:16px;display:flex}.arrival{min-height:100svh}@media (width<=720px){.arrival{overflow-y:auto}.arrivalPanel{padding:52px 20px}.arrivalPanel h1{font-size:17vw}.arrivalPanel select{height:68px}.arrival .mapTab{box-shadow:none}.arrival .brand.compact{font-size:13px}}.memoryShortcut{border:2px solid var(--orange);width:min(600px,100%);color:var(--cream);text-align:left;cursor:pointer;background:linear-gradient(105deg,#ff5b0025,#15120f);grid-template-columns:1fr auto;margin-top:22px;padding:20px;display:grid}.memoryShortcut span,.memoryShortcut small{font:8px var(--font-mono);letter-spacing:.1em;grid-column:1}.memoryShortcut span{color:var(--orange)}.memoryShortcut small{color:#8d857a}.memoryShortcut b{font:30px var(--font-display);grid-column:1;margin:6px 0}.memoryShortcut i{color:var(--orange);grid-area:1/2/4;align-self:center;font-size:25px;font-style:normal}.memoryAction{border:2px solid var(--orange);background:var(--orange);width:100%;min-height:82px;color:var(--ink);text-align:left;cursor:pointer;grid-template-columns:45px 1fr;align-content:center;margin:0 0 2px;padding:0 22px;display:grid}.memoryAction>span{grid-row:1/3;align-self:center;font-size:29px}.memoryAction b{font:26px var(--font-display)}.memoryAction small{font:8px var(--font-mono);letter-spacing:.06em}.memoryHead p{color:#a9a196;max-width:620px;font-size:11px;line-height:1.6}.memoryRow{cursor:default}.memoryRow:hover{background:0 0}.memoryCheck{color:var(--orange);font-size:20px}.archiveScreen .routeList{padding-top:15px}@media (width<=720px){.memoryShortcut b{font-size:27px}.memoryAction{min-height:76px}.memoryAction b{font-size:23px}.memoryHead p{font-size:9px}.memoryRow{grid-template-columns:70px 6px 1fr 18px}}.createRoute{width:min(680px,100%);min-height:96px;font:38px/.95 var(--font-display);letter-spacing:.015em;padding:14px 27px;box-shadow:9px 9px #81300c}.createRoute span{font:28px var(--font-mono)}.createRoute.compact{width:min(310px,100%);min-height:54px;padding:8px 17px;font-size:21px;box-shadow:5px 5px #81300c}.createRoute.compact span{font-size:17px}.routeReady .routeShortcut{margin-top:22px}.routeReady .installCard{margin-top:38px}.mobileTools .mapQuick{display:none}.routeReady .routeShortcut{background:var(--orange);border:2px solid var(--orange);color:var(--ink);border-left-width:5px;box-shadow:7px 7px #81300c}.routeReady .routeShortcut span,.routeReady .routeShortcut small,.routeReady .routeShortcut i{color:var(--ink)}.routeReady .createRoute.compact{width:min(600px,100%);color:var(--cream);border:1px solid #ffffff28;border-left:5px solid var(--orange);box-shadow:none;white-space:nowrap;background:#15120f;margin-top:16px}.routeReady .createRoute.compact:hover{box-shadow:none}@media (width<=720px){.createRoute{min-height:88px;font-size:34px}.createRoute.compact{width:64%;min-height:50px;font-size:19px}.routeReady .routeShortcut{margin-top:20px}.routeReady .createRoute.compact{width:100%;font-size:18px}.routeReady .memoryShortcut{margin-top:20px}.routeReady .installCard{margin-top:40px}.mobileTools{justify-content:space-between;margin-top:24px;display:flex}}.top .mapTab,.top .routeTab{border:2px solid var(--orange);background:var(--orange);min-height:50px;color:var(--ink);font:22px/1 var(--font-display);letter-spacing:.02em;justify-content:center;align-items:center;padding:5px 18px;display:flex;box-shadow:4px 4px #81300c}@media (width<=720px){.top .mapTab,.top .routeTab{min-height:44px;padding:5px 11px;font-size:19px}}.logoMark{background:0 0;border:0;transform:none}.logoMark img{object-fit:contain;width:100%;height:100%;display:block}@media (width<=720px){.game .artistCard:hover,.game .artistCard:focus{color:var(--cream);background:#15120f;transform:none}.game .breakCard:hover,.game .breakCard:focus{color:#9e978c;background:#0d0c0a}}.deleteRoute{color:#c76a5d;font:700 9px var(--font-mono);letter-spacing:.08em;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #b34a3a66;margin:42px 0 0;padding:12px 0;display:block}.deleteRoute small{color:#69534f;letter-spacing:.04em;margin-top:6px;font-size:7px;display:block}.deleteRoute:hover{color:#ff7b68}@media (width<=720px){.deleteRoute{text-align:center;width:100%;margin-top:38px;padding:15px 0}}.cardMeta{justify-content:space-between;align-items:center;gap:12px;display:flex}.cardMeta .setTime{color:var(--tone);font:18px/1 var(--font-display);letter-spacing:.03em;background:#090807;flex:none;padding:5px 7px}.artistCard:hover .setTime,.artistCard.selected .setTime{color:#090807;background:#f4efe4}@media (width<=720px){.game .cardMeta{width:100%;display:block}.game .cardMeta small{margin-bottom:4px}.game .cardMeta .setTime{padding:3px 5px;font-size:12px;line-height:1;display:inline-block}.game .artistCard:hover .setTime,.game .artistCard:focus .setTime{color:var(--tone);background:#090807}.game .breakCard:hover .setTime,.game .breakCard:focus .setTime{color:#c5bbae}}.creatorCredit{color:#8f877c;font:14px/1 var(--font-display);letter-spacing:.05em;text-transform:uppercase;margin-bottom:10px}.creatorCredit a{color:var(--cream);text-underline-offset:3px;border-bottom:1px solid #f4efe480;text-decoration:none}.creatorCredit a:hover{color:#fff;border-color:#fff}.mobileTools{flex-wrap:wrap}.mobileTools .contactCopy{color:#8f877c;text-align:left;border-top:1px solid #ffffff1c;flex:0 0 100%;margin-top:3px;padding:13px 0 0;text-decoration:none}.mobileTools .contactCopy small{color:#5f5952;font:6px var(--font-mono);letter-spacing:.1em;margin-top:5px;display:block}@media (width<=720px){.intro .hero{padding-top:14px}.creatorCredit{margin-bottom:9px;font-size:13px}.mobileTools .contactCopy{width:100%;padding-top:14px}}.installGuideBackdrop{z-index:20;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#050403d9;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.installGuide{border:1px solid #ffffff2b;border-top:5px solid var(--orange);width:min(520px,100%);color:var(--cream);background:#12100d;padding:28px;position:relative;box-shadow:12px 12px #000}.installGuide>span{color:var(--orange);font:700 9px var(--font-mono);letter-spacing:.13em}.installGuide h2{font:clamp(34px,8vw,54px)/.9 var(--font-display);margin:10px 0 24px}.installGuide ol{border-top:1px solid #ffffff1f;margin:0;padding:0;list-style:none}.installGuide li{color:#c9c1b7;border-bottom:1px solid #ffffff1f;grid-template-columns:34px 1fr;align-items:center;gap:12px;padding:15px 0;font-size:11px;line-height:1.45;display:grid}.installGuide li>b{color:var(--orange);font:27px var(--font-display)}.installGuide li strong{color:var(--cream)}.installGuide li em{color:var(--orange);margin-left:5px;font-size:18px;font-style:normal}.installGuide p{color:#81796f;text-transform:uppercase;margin:18px 0 0;font-size:8px;line-height:1.6}.installGuide .primary{width:100%;min-height:54px;margin-top:18px}.installClose{color:#8f877c;cursor:pointer;background:0 0;border:0;font-size:27px;position:absolute;top:10px;right:12px}.festivalChooser{padding:clamp(42px,7vw,82px) 6vw 120px}.festivalChooser>h1{font:clamp(65px,10vw,140px)/.85 var(--font-display);margin:15px 0 34px}.festivalChooser>h1 em{color:var(--orange);font-style:normal}.festivalGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:1100px;display:grid}.festivalCard{min-height:270px;color:var(--cream);text-align:left;background:#15120f;border:1px solid #ffffff26;padding:25px;position:relative;overflow:hidden}.festivalCard>span{color:var(--orange);font:700 8px var(--font-mono);letter-spacing:.12em}.festivalCard>b{color:#ffffff18;font:54px var(--font-display);position:absolute;top:20px;right:22px}.festivalCard h2{font:clamp(44px,6vw,76px)/.9 var(--font-display);margin:78px 0 5px}.festivalCard p,.festivalCard small{color:#8f877c;font:8px var(--font-mono);letter-spacing:.1em;display:block}.festivalCard small{color:var(--cream);margin-top:22px}.festivalCard i{color:var(--orange);font:25px var(--font-display);font-style:normal;position:absolute;bottom:22px;right:24px}.festivalCard.available{border:2px solid var(--orange);cursor:pointer;box-shadow:8px 8px #81300c}.festivalCard.available:hover{transform:translate(-2px,-2px);box-shadow:11px 11px #81300c}.festivalCard.coming{opacity:.45;filter:saturate(.3)}.festivalBrand{color:var(--cream);text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.alertAction{width:100%;min-height:82px;color:var(--cream);text-align:left;cursor:pointer;background:#15120f;border:2px solid #ffffff35;grid-template-columns:45px 1fr;align-content:center;margin:0 0 12px;padding:0 22px;display:grid}.alertAction>span{color:var(--orange);grid-row:1/3;align-self:center;font-size:28px}.alertAction b{font:25px var(--font-display)}.alertAction small{color:#8d857a;font:8px var(--font-mono)}.alertAction.enabled{border-color:#4ee1a0}.alertAction.enabled>span{color:#4ee1a0}@media (width<=720px){.festivalChooser{padding:38px 18px 100px}.festivalChooser>h1{margin-bottom:25px;font-size:17vw}.festivalGrid{grid-template-columns:1fr}.festivalCard{min-height:210px;padding:19px}.festivalCard h2{margin-top:54px;font-size:14vw}.festivalCard.coming{min-height:175px}.festivalCard.coming h2{margin-top:35px}.festivalHub .ticker{position:relative}.festivalHub{overflow-y:auto}.festivalBrand{font-size:15px}.alertAction b{font-size:22px}}.festivalHub{background:radial-gradient(circle at 82% 0,#292929 0,#0000 34%),linear-gradient(145deg,#050505 0%,#111 55%,#080808 100%)}.festivalHub .festivalChooser{padding-top:24px}.festivalHub .logoMark img{filter:grayscale()brightness(3)}.festivalHub .resume{color:#090909;background:#f2f2f2;border-color:#ffffff5c;box-shadow:4px 4px #555}.festivalHub .eyebrow{color:#aaa}.festivalHub .festivalChooser>h1 em{color:#f3f3f3}.festivalHub .ticker i{background:#aaa}.festivalHub .festivalCard.available{color:#080808;background:linear-gradient(145deg,#ff681e 0%,#e84400 100%);border-color:#ff5a0a;box-shadow:8px 8px #792806}.festivalHub .festivalCard.available>span,.festivalHub .festivalCard.available p,.festivalHub .festivalCard.available small,.festivalHub .festivalCard.available i{color:#080808}.festivalHub .festivalCard.available>b{color:#00000024}.festivalHub .festivalCard.available:hover{box-shadow:11px 11px #792806}.festivalHub .festivalCard.coming{opacity:.55;filter:grayscale();background:#151515}.festivalHub .festivalCard.coming>span,.festivalHub .festivalCard.coming i{color:#aaa}.routeAlertAction{background:#ffffff08;border-width:1px;grid-template-columns:24px auto 1fr;align-content:normal;align-items:center;width:min(1100px,90%);min-height:42px;margin:18px auto 0;padding:0 14px}.routeAlertAction>span{grid-row:auto;font-size:16px}.routeAlertAction b{font:700 10px var(--font-mono);letter-spacing:.08em}.routeAlertAction small{justify-self:end;font-size:7px}.festivalHub .hubCreator{color:#8f8f8f;margin:0 0 14px}.festivalHub .hubCreator a{color:#fff}.hubContact{color:#aaa;font:700 9px var(--font-mono);letter-spacing:.08em;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #ffffff24;margin-top:32px;padding:14px 0;display:block}.hubContact small{color:#666;font:6px var(--font-mono);letter-spacing:.1em;margin-top:6px;display:block}.hubInstall{background:#f2f2f2;border-left-color:#888;width:min(410px,92%);margin:0 0 28px;box-shadow:4px 4px #555}.hubInstall span,.hubInstall i{color:#333}.hubInstall.installed{width:min(330px,84%);color:var(--cream);box-shadow:none;background:#ffffff12;border-left-width:2px;padding:9px 12px}.hubInstall.installed span,.hubInstall.installed i{color:#8f8f8f}.hubInstall.installed b{font:700 10px var(--font-mono);letter-spacing:.06em;margin:3px 0}.hubInstall.installed small{color:#777;font-size:6px}.hubInstall.installed i{font-size:15px}.eventInstall{width:min(350px,100%);margin-top:32px;padding:10px 13px;box-shadow:3px 3px #81300c}.eventInstall b,.eventInstall i{font-size:17px}.eventInstall.installed{width:min(285px,80%);color:var(--cream);box-shadow:none;background:#ffffff0b;border-left:2px solid #888;margin-top:30px;padding:8px 11px}.eventInstall.installed span,.eventInstall.installed i{color:#8d857a}.eventInstall.installed b{font:700 9px var(--font-mono);letter-spacing:.06em;margin:3px 0}.eventInstall.installed small{color:#706961;font-size:6px}.eventInstall.installed i{font-size:14px}@media (width<=720px){.festivalHub .festivalChooser{padding-top:18px}.festivalHub .hubCreator{margin-bottom:10px}.hubInstall{width:88%;margin:0 0 22px}.hubInstall.installed{width:72%;padding:8px 10px}.hubInstall.installed b{font-size:9px}.eventInstall{width:76%;margin-top:30px;padding:9px 12px}.eventInstall b{font-size:16px}.eventInstall.installed{width:64%;padding:7px 9px}.eventInstall.installed b{font-size:8px}.hubContact{width:100%;margin-top:26px}.routeAlertAction{grid-template-columns:20px 1fr;width:calc(100% - 28px);min-height:38px;margin-top:14px;padding:0 11px}.routeAlertAction b{font-size:9px}.routeAlertAction small{display:none}}.shareRouteAction{border:2px solid var(--orange);background:linear-gradient(105deg,var(--orange),#ff7a20);width:100%;min-height:78px;color:var(--ink);text-align:left;cursor:pointer;grid-template-columns:45px 1fr;align-content:center;margin:0 0 12px;padding:0 22px;transition:all .2s;display:grid;box-shadow:6px 6px #81300c}.shareRouteAction:hover{transform:translate(-2px,-2px);box-shadow:9px 9px #81300c}.shareRouteAction>span{grid-row:1/3;align-self:center;font-size:30px}.shareRouteAction b{font:28px var(--font-display)}.shareRouteAction small{font:8px var(--font-mono);letter-spacing:.06em}.compactMemoryAction{width:min(430px,100%);min-height:48px;color:var(--cream);background:#ffffff08;border:1px solid #ffffff35;grid-template-columns:28px 1fr;margin:20px 0 0;padding:0 14px}.compactMemoryAction>span{color:var(--orange);font-size:18px}.compactMemoryAction b{font:700 10px var(--font-mono);letter-spacing:.07em}.compactMemoryAction small{color:#8d857a;font-size:7px}@media (width<=720px){.shareRouteAction{grid-template-columns:39px 1fr;min-height:72px;padding:0 17px}.shareRouteAction b{font-size:25px}.compactMemoryAction{min-height:44px;margin-top:18px}.compactMemoryAction b{font-size:9px}.compactMemoryAction small{font-size:6px}}.dashboard{color:#f4efe4;min-height:100svh;font-family:var(--font-mono);background:radial-gradient(circle at 90% 0,#292929 0,#0000 30%),#080808;padding:48px clamp(20px,5vw,80px)}.dashboard header{border-bottom:1px solid #ffffff24;justify-content:space-between;align-items:flex-start;gap:30px;padding-bottom:40px;display:flex}.dashboard header span,.dashboard article>span{color:#999;font:700 9px var(--font-mono);letter-spacing:.13em}.dashboard h1{font:clamp(60px,9vw,126px)/.83 var(--font-display);letter-spacing:-.02em;margin:13px 0 0}.dashboard h1 em{color:#ff5b00;font-style:normal}.dashUser{text-align:right;padding:14px 0}.dashUser>small,.dashUser>b{display:block}.dashUser>small{color:#ff5b00;letter-spacing:.12em;font-size:7px}.dashUser>b{margin:6px 0 15px;font-size:10px}.dashUser form{margin:12px 0 0}.dashUser form button{color:#777;font:700 7px var(--font-mono);cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.adminMode{color:#aaa;text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #ffffff28;align-items:center;gap:10px;min-width:260px;padding:11px 12px;display:flex}.adminMode i{color:#777;border:1px solid #666;border-radius:50%;place-items:center;width:20px;height:20px;font-size:10px;font-style:normal;display:grid}.adminMode span,.adminMode b,.adminMode small{display:block}.adminMode b{font:700 8px var(--font-mono);letter-spacing:.06em;margin:0}.adminMode small{color:#666;letter-spacing:.04em;margin-top:4px;font-size:6px}.adminMode.enabled{background:#4ee1a00c;border-color:#4ee1a066}.adminMode.enabled i{color:#4ee1a0;border-color:#4ee1a0}.adminMode.enabled b{color:#4ee1a0}.adminMode:disabled{opacity:.5}.metricGrid{background:#ffffff20;border:1px solid #ffffff20;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:32px;display:grid}.metricGrid article{background:#111;min-height:180px;padding:24px}.metricGrid article>b{font:clamp(42px,5vw,72px)/1 var(--font-display);margin:32px 0 4px;display:block}.metricGrid article small{color:#777;text-transform:uppercase;font-size:7px}.metricGrid .accent{color:#080808;background:#ff5b00}.metricGrid .accent>span,.metricGrid .accent small{color:#52200a}.dashPanels{grid-template-columns:1.65fr 1fr;gap:14px;margin-top:14px;display:grid}.dashPanels>article,.secondaryMetrics>article{background:#111;border:1px solid #ffffff18;padding:26px}.panelHead{justify-content:space-between;align-items:start;display:flex}.panelHead h2,.funnelPanel h2{font:31px var(--font-display);margin:7px 0 0}.panelHead>b{font:50px var(--font-display);color:#ff5b00}.bars{border-bottom:1px solid #ffffff2a;align-items:flex-end;gap:8px;height:260px;margin-top:30px;display:flex}.bars>p{color:#777;align-self:center;font-size:9px}.barItem{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;min-width:12px;height:100%;display:flex}.barItem i{background:#ff5b00;width:100%;max-width:34px;min-height:5px}.barItem b{font-size:8px}.barItem small{color:#777;writing-mode:vertical-rl;height:28px;font-size:6px}.funnelPanel>span,.panelHead span{color:#ff5b00;letter-spacing:.12em;font-size:8px}.funnelRow{grid-template-columns:45px 1fr;gap:9px;margin-top:24px;display:grid}.funnelRow>b{font:28px var(--font-display)}.funnelRow i{background:#292929;align-self:center;height:13px}.funnelRow i span{background:#ff5b00;height:100%;display:block}.funnelRow small{color:#777;text-transform:uppercase;grid-column:2;font-size:7px}.secondaryMetrics{grid-template-columns:1fr 1fr 2fr;gap:14px;margin-top:14px;display:grid}.secondaryMetrics article>b{font:48px var(--font-display);color:#ff5b00;margin-top:20px;display:block}.secondaryMetrics article>div{border-bottom:1px solid #ffffff14;justify-content:space-between;padding:12px 0;display:flex}.secondaryMetrics article>div small{color:#777;font-size:8px}.secondaryMetrics article>div b{font:20px var(--font-display)}.festivalMetrics{background:#111;border:1px solid #ffffff18;margin-top:14px;padding:26px}.festivalMetricRows{border-top:1px solid #ffffff1c;margin-top:22px}.festivalMetricRows>p{color:#777;font-size:9px}.festivalMetricRows article{border-bottom:1px solid #ffffff18;grid-template-columns:1fr 90px 90px 90px;align-items:center;gap:15px;padding:20px 0;display:grid}.festivalMetricRows span{font:30px var(--font-display);display:block}.festivalMetricRows small{color:#777;font:7px var(--font-mono);letter-spacing:.08em;margin-top:4px;display:block}.festivalMetricRows article>b{font:47px var(--font-display);color:#ff5b00}.festivalMetricRows strong{font:24px var(--font-display)}.dashboard footer{color:#666;letter-spacing:.08em;border-top:1px solid #ffffff20;justify-content:space-between;gap:20px;margin-top:35px;padding-top:18px;font-size:7px;display:flex}.dashboard.denied{align-content:center;display:grid}.dashboard.denied h1{margin:18px 0}.dashboard.denied p{color:#888}.dashboard.denied a{color:#080808;background:#ff5b00;width:max-content;margin-top:18px;padding:15px 18px;font-size:9px;font-weight:700}@media (width<=800px){.dashboard{padding:28px 16px}.dashboard header{display:block}.dashUser{text-align:left}.metricGrid{grid-template-columns:1fr 1fr}.metricGrid article{min-height:145px;padding:17px}.metricGrid article>b{margin-top:23px}.dashPanels{grid-template-columns:1fr}.secondaryMetrics{grid-template-columns:1fr 1fr}.secondaryMetrics article:last-child{grid-column:1/-1}.festivalMetricRows article{grid-template-columns:1fr 60px 54px}.festivalMetricRows article>div:last-child{display:none}.festivalMetricRows span{font-size:23px}.festivalMetricRows article>b{font-size:38px}.dashboard footer{display:block}.dashboard footer small{margin-top:8px;display:block}.bars{height:210px}}.dashboardLogin{color:#f4efe4;min-height:100svh;font-family:var(--font-mono);background:radial-gradient(circle at 85% 0,#3a1708 0,#0000 34%),#080808;place-items:center;padding:24px;display:grid}.dashboardLogin>section{background:#111;border:1px solid #ffffff24;border-top:5px solid #ff5b00;width:min(560px,100%);padding:34px;box-shadow:12px 12px #000}.dashboardLogin>section>span{color:#ff5b00;font:700 8px var(--font-mono);letter-spacing:.13em}.dashboardLogin h1{font:clamp(49px,10vw,78px)/.86 var(--font-display);margin:13px 0 20px}.dashboardLogin h1 em{color:#ff5b00;font-style:normal}.dashboardLogin p{color:#8f877c;max-width:430px;font-size:10px;line-height:1.6}.dashboardLogin form{margin-top:30px}.dashboardLogin label{color:#aaa;letter-spacing:.12em;margin-bottom:8px;font-size:8px;display:block}.dashboardLogin input{color:#f4efe4;width:100%;height:62px;font:22px var(--font-mono);background:#080808;border:1px solid #ffffff35;border-radius:0;outline:none;padding:0 15px}.dashboardLogin input:focus{border-color:#ff5b00}.dashboardLogin form>small{color:#ff765c;margin-top:8px;font-size:8px;display:block}.dashboardLogin form>button{color:#080808;width:100%;min-height:58px;font:700 10px var(--font-mono);letter-spacing:.08em;cursor:pointer;background:#ff5b00;border:0;justify-content:space-between;align-items:center;margin-top:12px;padding:0 18px;display:flex;box-shadow:5px 5px #81300c}.dashboardLogin form>button b{font-size:20px}.dashboardLogin>section>a{color:#777;width:max-content;margin-top:28px;font-size:8px;text-decoration:none;display:block}@media (width<=600px){.dashboardLogin{padding:16px}.dashboardLogin>section{padding:25px 20px}.dashboardLogin h1{font-size:15vw}}:root{--surface:#15120f;--line:#ffffff26;--readable-muted:#b0aaa2}button,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #f4efe4}button:disabled{cursor:not-allowed}.withEventNav{padding-bottom:100px}.eventNav{z-index:8;border-top:1px solid var(--line);padding:8px max(18px,calc((100vw - 760px)/2)) calc(8px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0d0b09f5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.eventNav button{color:#aaa;font:14px var(--font-mono);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:9px;min-height:40px;display:flex}.eventNav button>span{font:24px var(--font-display)}.eventNav button[aria-current=page]{color:var(--orange)}.eventNav button:disabled{opacity:.3}.festivalHub .festivalChooser{max-width:1320px;margin:auto;padding-bottom:72px}.festivalHub .festivalChooser>h1{max-width:980px;margin:16px 0 28px;font-size:clamp(48px,6vw,88px);line-height:1.03}.festivalHub .festivalCard{min-height:230px}.festivalHub .festivalCard h2{margin-top:44px}.festivalHub .festivalCard p,.festivalHub .festivalCard small,.festivalHub .festivalCard>span{letter-spacing:.04em;font-size:12px}.festivalHub .festivalCard.coming{opacity:.72}.hubResume{color:#fff;text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #ffffff4a;border-left:3px solid #ddd;justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:1100px;margin:0 0 24px;padding:18px 22px;display:flex}.hubResume b{font:24px var(--font-display);margin-top:7px;display:block}.hubResume small{color:#aaa;font-size:12px}.hubResume>span{font-size:26px}.hero{max-width:1080px;padding-top:24px}.hero h1{margin:22px 0 18px;font-size:clamp(56px,7vw,100px);line-height:.95}.hero p{max-width:680px;font-size:16px;line-height:1.65}.eyebrow{font-size:12px}.hero .createRoute{max-width:600px;margin-top:22px}.intro .routeShortcut small,.intro .routeShortcut span{letter-spacing:.04em;font-size:12px}.intro .routeShortcut b{font-size:34px}.intro .createRoute.compact{min-height:56px;font-size:24px}.howItWorks{grid-template-columns:repeat(3,1fr);gap:18px;max-width:620px;margin:30px 0;padding:0;list-style:none;display:grid}.howItWorks li{border-top:1px solid var(--line);padding-top:14px}.howItWorks b{font:20px var(--font-display);display:block}.howItWorks span{color:var(--readable-muted);margin-top:6px;font-size:12px;line-height:1.5;display:block}.lineupShortcut{border:0;border-block:1px solid var(--line);width:min(600px,100%);color:var(--cream);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:18px;margin:24px 0 0;padding:18px 0;display:flex}.lineupShortcut>span{color:var(--orange);font-size:26px}.lineupShortcut>span:last-child{margin-left:auto}.lineupShortcut b{font:23px var(--font-display);display:block}.lineupShortcut small{color:var(--readable-muted);margin-top:5px;font-size:12px;line-height:1.5;display:block}.memoryShortcut span,.memoryShortcut small{letter-spacing:.02em;font-size:12px}.localNote{font:13px/1.7 var(--font-mono);color:#aaa;max-width:700px;margin-top:24px}.hubContact,.mobileTools .contactCopy{overflow-wrap:anywhere;font-size:12px}.hubContact small,.mobileTools .contactCopy small{color:#888;font-size:12px}.mobileTools button,.mobileTools span{font-size:12px}.installCard small{letter-spacing:0;font-size:12px;line-height:1.45}.hubInstall.installed,.eventInstall.installed{border-left-color:#888;width:min(400px,100%);padding:9px 12px}.hubInstall.installed b,.eventInstall.installed b{font-size:12px;line-height:1.4}.hubInstall.installed small,.eventInstall.installed small{color:#a9a9a9;font-size:12px}.installCard.installed>span{display:none}.installCard:not(.installed)>span{letter-spacing:.02em;font-size:12px}.hubInstall:not(.installed){width:min(410px,100%)}dialog.installGuide{max-height:85svh;margin:auto;overflow:auto}dialog.installGuide::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050403df}.installGuide li{font-size:16px}.installGuide p{text-transform:none;font-size:13px}.installGuide>span{font-size:12px}.arrivalPanel{max-width:1050px;padding-block:48px}.arrivalPanel h1{font-size:clamp(56px,8vw,104px);line-height:.95}.arrivalPanel p{font-size:16px}.timeFields{grid-template-columns:1fr 1fr;gap:22px;display:grid}.timeFields label{font-size:14px}.timeFields select{width:100%;font:18px var(--font-mono);height:64px;padding-right:35px}.planSummary{border:1px solid var(--line);max-width:740px;margin-top:24px;padding:18px}.planSummary b,.planSummary span{display:block}.planSummary b{font:26px var(--font-display);color:var(--orange)}.planSummary span{color:var(--readable-muted);margin-top:8px;font-size:14px;line-height:1.5}.arrivalPanel .primary{width:100%;max-width:740px;font:24px var(--font-display)}.lineupHead{max-width:1200px;margin:auto;padding:40px 5vw 20px}.lineupHead h1{font:clamp(42px,7.5vw,96px)/1 var(--font-display);margin:18px 0}.lineupHead h1 em{color:var(--orange);font-style:normal}.lineupHead p{color:var(--readable-muted);max-width:740px;font-size:16px;line-height:1.6}.lineupFilters{grid-template-columns:1.3fr 1fr;gap:16px;margin-top:32px;display:grid}.lineupFilters label>span{color:#bfb8b0;margin-bottom:8px;font-size:12px;display:block}.lineupFilters input,.lineupFilters select{background:var(--surface);width:100%;min-height:54px;color:var(--cream);font:16px var(--font-mono);border:1px solid #ffffff50;border-radius:0;padding:12px}.favoritesFilter{color:var(--cream);font:14px var(--font-mono);cursor:pointer;background:0 0;border:1px solid #fff4;justify-self:start;padding:12px 16px}.favoritesFilter[aria-pressed=true]{border-color:var(--orange);color:var(--orange)}.lineupCount{color:#aaa;justify-content:space-between;align-items:center;gap:14px;margin-top:24px;font-size:13px;display:flex}.lineupCount button{background:var(--orange);color:#080808;font:18px var(--font-display);cursor:pointer;border:0;padding:12px 14px}.lineupList{max-width:1200px;margin:auto;padding:0 5vw}.lineupRow{border-bottom:1px solid var(--line);grid-template-columns:165px 1fr 48px;align-items:center;gap:24px;padding:24px 0;display:grid}.lineupRow time small{color:#aaa;margin-bottom:5px;font-size:12px;display:block}.lineupRow time b{font:24px var(--font-display)}.lineupRow>div>span{font:18px var(--font-display);text-transform:uppercase}.lineupRow h2{font:30px/1.12 var(--font-display);text-transform:uppercase;margin:5px 0 0}.favoriteButton{color:#aaa;cursor:pointer;background:0 0;border:1px solid #ffffff30;width:48px;height:48px;font:30px Arial}.favoriteButton[aria-pressed=true]{color:var(--orange);border-color:var(--orange)}.resultHead{padding-block:35px 25px}.resultHead h1{margin-bottom:24px;font-size:clamp(50px,7vw,86px);line-height:.95}.resultHead>span,.stats small{font-size:12px}.routeOverview{justify-content:space-between;align-items:center;gap:20px;max-width:1100px;margin:auto;padding:24px 5vw 0;display:flex}.routeOverview b{font:28px var(--font-display)}.routeOverview small{color:var(--readable-muted);margin-top:6px;font-size:12px;line-height:1.5;display:block}.routeOverview button{color:var(--cream);font:13px var(--font-mono);cursor:pointer;background:0 0;border:0;min-height:44px;text-decoration:underline}.pendingBanner{text-align:left;background:var(--orange);color:#090807;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:12px;width:min(980px,90%);margin:24px auto 0;padding:18px 22px;display:flex}.pendingBanner b{font:24px var(--font-display)}.pendingBanner small{margin-top:5px;font-size:13px;display:block}.pendingBanner>span{font-size:28px}.routeAlertAction b,.routeAlertAction small{font-size:12px}.alertNote,.routeHint,.eventFinished{max-width:1100px;font:13px/1.7 var(--font-mono);color:var(--readable-muted);margin:16px auto 0;padding:0 5vw}.alertNote{color:#999;font-size:12px}.eventFinished{background:#ffffff05;border-left:2px solid #888;width:90%;max-width:980px;padding:12px 18px}.nowNext{border:1px solid #ff5b0080;grid-template-columns:1fr 1fr;width:90%;max-width:980px;margin:24px auto 0;display:grid}.nowNext>div{background:#ff5b0014;padding:22px}.nowNext>div+div{background:#ffffff04;border-left:1px solid #ff5b0050}.nowNext small{color:var(--orange);font-size:12px}.nowNext b{font:28px/1.1 var(--font-display);margin:10px 0;display:block}.nowNext span{color:var(--readable-muted);font-size:13px}.routeRow time small{color:#aaa;white-space:nowrap;margin-bottom:6px;font-size:12px}.routeRow time span{font-size:14px}.routeRow .stageName,.routeRow b{font-size:clamp(24px,3vw,34px);line-height:1.06}.routeRow.past{opacity:.45}.routeRow.past time small,.routeRow .nowBadge{font-size:12px}.routeRow .edit{font-size:22px}.shareRouteAction small{font-size:12px;line-height:1.5}.compactMemoryAction{min-height:60px}.compactMemoryAction b{font-size:12px}.compactMemoryAction small{font-size:12px;line-height:1.5}.deleteRoute{min-height:48px;font-size:13px}.deleteRoute small{font-size:12px}.disclaimer{color:#999;text-transform:none;font-size:12px;line-height:1.7}.emptyRoute span{font-size:14px}.emptyRoute .secondary{min-height:44px;margin-left:0;font-size:14px}.memoryHead p{font-size:16px}.actions .secondary{min-height:44px;font-size:14px}.mapAction small{font-size:12px}.mapScreen{padding-bottom:68px}.mapHeader small{font-size:12px}.mapHeader>button{font-size:14px}.zoomControls button{width:40px;height:40px}.zoomControls b{font-size:12px}.storageWarning,.updateNotice{color:#ffe1be;font:14px/1.5 var(--font-mono);z-index:10;background:#392413;padding:14px 5vw;position:relative}.updateNotice{color:#eee;background:#222;flex-wrap:wrap;align-items:center;gap:14px;display:flex}.updateNotice button{color:var(--cream);font:14px var(--font-mono);cursor:pointer;background:0 0;border:0;text-decoration:underline}.toast{bottom:calc(82px + env(safe-area-inset-bottom));z-index:30;color:#080808;width:calc(100% - 32px);max-width:600px;font:14px/1.5 var(--font-mono);background:#f4efe4;padding:16px 48px 16px 18px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 6px 30px #0008}.toast button{color:#080808;cursor:pointer;background:0 0;border:0;width:32px;height:32px;font:26px Arial;position:absolute;top:8px;right:8px}.game .gameHead{padding-block:22px}.gameHead h1 small{font:24px var(--font-display);color:#aaa;margin-left:16px}.gameHead p small{font:12px var(--font-mono);margin-top:8px;display:inline-block}.durationControl{flex-wrap:wrap;align-items:center;gap:8px;padding:0 5vw 18px;display:flex}.durationControl>span{color:#aaa;margin-right:6px;font-size:12px}.durationControl button{min-height:40px;color:var(--cream);font:14px var(--font-mono);cursor:pointer;background:0 0;border:1px solid #ffffff40;padding:8px 13px}.durationControl button[aria-pressed=true]{background:var(--cream);color:var(--ink);border-color:var(--cream)}.game .artistCard{grid-template-columns:1fr auto;align-items:center;min-height:150px}.game .artistCard:before{display:none}.game .artistCard .cardMeta small{letter-spacing:0;color:#bbb;font-size:12px}.game .artistCard .setTime{color:var(--cream);background:0 0;padding:0;font-size:20px}.game .artistCard h2{font-size:clamp(23px,2.5vw,36px);line-height:1.05}.game .artistCard:hover,.game .artistCard:focus{color:var(--cream);background:#15120f;transform:none}.game .artistCard:hover .setTime{color:var(--cream);background:0 0}.game .artistCard:active{border-color:var(--cream)}.favoriteMarker{color:#f2c14e}.existingPick{font:10px var(--font-mono);color:#aaa;position:absolute;top:6px;right:8px}.gameNav button{min-height:44px;font-size:14px}.gameNav{height:70px;padding-bottom:env(safe-area-inset-bottom)}@media (width<=720px){.top .back{min-height:44px;padding:10px 0;font-size:13px}.brand.compact{font-size:15px}.withEventNav{padding-bottom:90px}.eventNav{padding-top:5px}.eventNav button{flex-direction:column;gap:2px;min-height:44px;font-size:12px}.eventNav button>span{font-size:21px}.festivalHub .festivalChooser{padding:18px 18px 45px}.festivalHub .festivalChooser>h1{font-size:14vw;line-height:1.03}.festivalHub .festivalCard{min-height:195px}.festivalHub .festivalCard.coming{min-height:160px}.festivalHub .festivalCard h2{margin-top:32px;font-size:13vw}.festivalHub .festivalCard.coming h2{margin-top:25px}.festivalHub .festivalCard>span,.festivalHub .festivalCard small,.festivalHub .festivalCard p{letter-spacing:0}.festivalHub .festivalCard small{padding-right:24px}.hubResume{padding:15px}.hubResume b{font-size:22px}.hubInstall:not(.installed){width:92%;margin-bottom:22px}.hero h1{font-size:13.6vw;line-height:.96}.intro .hero{padding:16px 18px 36px}.hero .createRoute{min-height:76px;font-size:29px}.intro .createRoute.compact{min-height:54px;font-size:22px}.intro .routeShortcut{padding:17px}.intro .routeShortcut b{font-size:29px}.howItWorks{gap:12px;margin:26px 0}.howItWorks b{font-size:19px}.howItWorks span{font-size:12px}.lineupShortcut{gap:12px}.lineupShortcut b{font-size:22px}.mobileTools{align-items:start;gap:20px}.mobileTools .contactCopy{margin:0}.arrivalPanel{padding:35px 18px}.arrivalPanel h1{font-size:14vw}.timeFields{grid-template-columns:1fr;gap:4px}.timeFields label{margin-top:20px}.timeFields select{font-size:17px}.lineupHead{padding:30px 18px 16px}.lineupHead h1{font-size:10vw}.lineupFilters{grid-template-columns:1fr;gap:18px}.lineupList{padding:0 18px}.lineupRow{grid-template-columns:1fr 48px;gap:10px;padding:20px 0}.lineupRow time{flex-wrap:wrap;grid-column:1;align-items:center;gap:12px;display:flex}.lineupRow time small{margin:0}.lineupRow time b{font-size:21px}.lineupRow>div{grid-column:1}.lineupRow h2{font-size:26px}.lineupRow .favoriteButton{grid-area:1/2/3}.resultHead{padding:30px 18px 24px}.resultHead h1{font-size:13vw}.routeOverview{align-items:start;padding:20px 18px 0}.routeOverview button{text-align:right;max-width:105px;font-size:12px}.pendingBanner{width:calc(100% - 36px);padding:16px}.pendingBanner b{font-size:22px}.pendingBanner small{font-size:12px}.routeAlertAction{min-height:42px}.routeAlertAction b{font-size:12px}.routeRow{grid-template-columns:76px 5px 1fr 16px;gap:10px;padding-block:20px}.routeRow .stageName,.routeRow b{font-size:24px}.routeRow time small{font-size:10px}.routeRow.past .stageName,.routeRow.past b{font-size:20px}.routeRow.past{transform:scale(.97)}.nowNext>div{padding:16px}.nowNext b,.shareRouteAction b{font-size:24px}.shareRouteAction small,.compactMemoryAction b,.compactMemoryAction small{font-size:12px}.compactMemoryAction{width:100%;padding-block:12px}.mapHeader{flex-basis:72px;grid-template-columns:65px 1fr 126px;gap:6px;height:72px}.mapHeader>button{font-size:12px}.mapHeader span{font-size:16px}.mapHeader small{display:none}.zoomControls{gap:4px}.zoomControls button{width:38px;height:40px}.zoomControls b{font-size:12px}.mapScreen{padding-bottom:calc(67px + env(safe-area-inset-bottom))}.game{flex-direction:column;height:100svh;display:flex;overflow:auto}.game .top{height:54px;min-height:54px;padding:0 12px}.game .brand.compact{font-size:13px}.game .brand.compact .logoMark{display:none}.game .miniRoute{font-size:12px}.game .progress{min-height:3px}.game .gameHead{align-items:center;height:80px;min-height:80px;padding:12px}.game .gameHead span{letter-spacing:0;font-size:12px}.game .gameHead h1{margin-top:5px;font-size:42px;line-height:1}.gameHead h1 small{margin-left:10px;font-size:18px}.game .gameHead p{max-width:44%;font-size:15px;line-height:1.2}.game .gameHead p small{margin-top:4px;font-size:10px;line-height:1.4}.durationControl{flex-wrap:nowrap;gap:5px;min-height:43px;padding:0 8px 7px}.durationControl>span{display:none}.durationControl button{white-space:nowrap;flex:1;min-height:36px;padding:7px 9px;font-size:12px}.game .choices{flex:1;grid-template-rows:repeat(5,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:5px;height:auto;min-height:0;padding:0 8px 7px;display:grid;overflow:visible}.game .artistCard{justify-content:center;align-items:flex-start;min-width:0;min-height:0;padding:8px;display:flex;overflow:visible}.game .artistCard>div{width:100%;min-width:0}.game .artistCard .cardMeta{display:block}.game .artistCard .cardMeta small{margin:0 0 3px;font-size:11px;line-height:1.15;display:block}.game .artistCard .setTime{color:var(--cream);background:0 0;padding:0;font-size:16px;line-height:1;display:block}.game .artistCard h2{overflow-wrap:normal;margin:5px 0 0;font-size:clamp(14px,4vw,19px);line-height:1.06}.game .artistCard .existingPick{background:#15120f;font-size:9px;top:2px;right:5px}.game .gameNav{height:auto;min-height:56px;padding:4px 8px calc(4px + env(safe-area-inset-bottom));flex:none;gap:8px;position:relative}.gameNav button{font-size:12px}.game .artistCard:hover .setTime,.game .artistCard:focus .setTime{color:var(--cream);background:0 0}}@media (width<=720px) and (height<=660px){.game .choices{flex:none;grid-template-rows:repeat(5,minmax(86px,auto))}.game{height:auto;min-height:100svh}.game .gameNav{position:sticky;bottom:0}.game .artistCard{min-height:86px}}@media (prefers-reduced-motion:reduce){*{animation:none!important}}
