.hub-sign{position:relative;background:var(--pl-sign);color:var(--pl-sign-ink);padding:22px 0 30px;box-shadow:inset 0 -6px 0 var(--pl-trunk);font-family:var(--pl-vi)}.hub-sign__in{display:grid;grid-template-areas:"crumb" "name" "lede" "pass" "goals" "board" "strip";min-width:0}.hub-crumb{grid-area:crumb;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--pl-sign-muted)}.hub-crumb a{color:#fff;font-weight:600;text-decoration:none}.hub-crumb a:hover{text-decoration:underline;text-underline-offset:3px}.hub-strip{grid-area:strip;position:relative;margin-top:24px;min-width:0}.hub-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;margin:0;padding:0;list-style:none}.hub-lines__a{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 8px;border-radius:var(--pl-radius);color:#fff;text-decoration:none;transition:background-color .2s ease}.hub-lines__a:hover{background:#ffffff12}.hub-lines__a:focus-visible{outline:3px solid var(--pl-exit);outline-offset:0}.hub-lines__node{display:none}.hub-lines__vi{min-width:0;font-size:13.5px;line-height:1.3}.hub-lines__mean{color:var(--pl-sign-muted)}.hub-lines__name{display:none}.hub-lines__st.is-cycling .hub-lines__a,.hub-lines__st.is-picked .hub-lines__a{background:#ffffff1a}.hub-board{grid-area:board;display:grid;gap:10px;margin-top:24px}.hub-board__led{position:relative;display:flex;align-items:center;gap:12px;min-width:0;min-height:56px;margin:0;padding:8px 16px;border-radius:var(--pl-radius);background:#0a0b0d;box-shadow:inset 0 0 0 1px #ffffff0f,inset 0 2px 10px #000000b3;font-family:var(--pl-ko);overflow:hidden}.hub-board__led:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,transparent .7px,rgba(10,11,13,.5) 1.2px);background-size:3px 3px}.hub-board__k{flex:none;color:#ff6a4d;font-size:13px;font-weight:700;letter-spacing:.04em;text-shadow:0 0 6px rgba(255,106,77,.45)}.hub-board__led b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffb238;font:700 17px/1.2 var(--pl-vi);text-shadow:0 0 8px rgba(255,178,56,.4)}.hub-board__act[hidden]{display:none}.hub-board__btn{width:100%;min-height:56px;font-size:17px}.hub-board__btn[aria-disabled=true]{cursor:progress;filter:saturate(.7)}.hub-lines__st[data-off]{opacity:.28}.hub-strip{display:none}.hub-goals{grid-area:goals;margin-top:26px;min-width:0}.hub-goals__q{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;margin:0 0 12px;color:#fff;font-size:17px;font-weight:700}.hub-goals__q [lang=ko]{color:var(--pl-trunk);font:700 14px/1.2 var(--pl-ko)}.hub-goals__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.hub-goal{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"ko n" "text text";align-content:start;gap:4px 8px;height:100%;min-height:92px;padding:11px 12px 12px;border-radius:var(--pl-radius);background:#ffffff0d;box-shadow:inset 0 0 0 1px var(--pl-sign-rule);color:#fff;text-decoration:none;transition:background-color .2s ease,box-shadow .2s ease,transform .2s var(--pl-ease)}.hub-goal:hover{background:#ffffff1a}.hub-goal:active{transform:scale(.98)}.hub-goal:focus-visible{outline:3px solid var(--pl-exit);outline-offset:2px}.hub-goal__ko{grid-area:ko;color:var(--pl-trunk);font:800 13px/1.2 var(--pl-ko);letter-spacing:.02em}.hub-goal__n{grid-area:n;min-width:24px;padding:1px 7px;border-radius:999px;background:#ffffff1a;color:var(--pl-sign-muted);font-size:12px;font-weight:700;text-align:center}.hub-goal__text{grid-area:text;display:grid;gap:3px;min-width:0}.hub-goal__text b{font-size:15px;line-height:1.25}.hub-goal__text small{color:var(--pl-sign-muted);font-size:12.5px;line-height:1.35}.hub-goal[aria-pressed=true]{background:#fff;box-shadow:0 0 0 3px var(--pl-trunk);color:#16171b}.hub-goal[aria-pressed=true] .hub-goal__ko{color:#c2304b}.hub-goal[aria-pressed=true] .hub-goal__text small{color:#575c67}.hub-goal[aria-pressed=true] .hub-goal__n{background:var(--pl-trunk);color:var(--pl-trunk-on)}.hub-pass{grid-area:pass;position:relative;display:grid;gap:14px;margin-top:22px;padding:16px;background:#1d1e24;color:#fff;border:3px solid #fff;box-shadow:6px 6px 0 var(--pl-exit)}.hub-pass[hidden]{display:none}.hub-pass__top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px}.hub-pass__name{margin:0;font-size:15px;font-weight:800}.hub-pass__name [lang=ko]{margin-right:6px;color:var(--pl-exit);font:400 19px/1 "Black Han Sans",var(--pl-ko)}.hub-pass__count{margin:0;color:#c9ccd4;font-size:14px;font-weight:700;font-variant-numeric:tabular-nums}.hub-pass__count b{margin-right:1px;color:var(--pl-exit);font:400 28px/1 "Black Han Sans",var(--pl-ko)}.hub-pass__stamps{display:grid;grid-template-columns:repeat(auto-fill,minmax(38px,1fr));gap:8px;margin:0;padding:0;list-style:none}.hub-pass__stamps li{display:grid;place-items:center;aspect-ratio:1;border-radius:50%;border:2px dashed rgba(255,255,255,.32)}.hub-pass__stamps span{visibility:hidden;color:#fff;font:800 11px/1 var(--pl-ko);letter-spacing:-.04em;word-break:keep-all;white-space:nowrap}.hub-pass__stamps li[data-on]{border:3px solid var(--line);background:color-mix(in srgb,var(--line) 30%,#1d1e24);rotate:-9deg}.hub-pass__stamps li[data-on]:nth-child(3n){rotate:7deg}.hub-pass__stamps li[data-on] span{visibility:visible}.hub-pass__acts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.hub-pass__go,.hub-pass__new{display:grid;gap:1px;min-width:0;min-height:54px;padding:8px 12px;border:3px solid #fff;text-decoration:none;transition:transform .08s ease,box-shadow .08s ease}.hub-pass__go{background:var(--line, var(--pl-trunk));color:var(--line-on, var(--pl-trunk-on));box-shadow:4px 4px 0 var(--pl-exit)}.hub-pass__new{background:transparent;color:#fff;box-shadow:4px 4px 0 var(--line, rgba(255, 255, 255, .4))}.hub-pass__go:hover,.hub-pass__new:hover{transform:translate(-1px,-1px)}.hub-pass__go:active,.hub-pass__new:active{transform:translate(4px,4px);box-shadow:none}.hub-pass__new[hidden],.hub-pass__go[hidden]{display:none}.hub-pass__go small,.hub-pass__new small{font-size:12px;font-weight:700;opacity:.85}.hub-pass__go b,.hub-pass__new b{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.hub-pass__go:focus-visible,.hub-pass__new:focus-visible,.hub-pass__next:focus-visible{outline:3px solid var(--pl-exit);outline-offset:3px}.hub-pass__next{padding-top:10px;border-top:2px dashed rgba(255,255,255,.3);color:#c9ccd4;font-size:14px;line-height:1.45;text-decoration:none}.hub-pass__next[hidden]{display:none}.hub-pass__next b{color:var(--pl-exit);text-decoration:underline;text-underline-offset:3px}@media (prefers-reduced-motion: reduce){.hub-pass__go,.hub-pass__new{transition:none}}@media (min-width: 640px){.hub-lines{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-board{grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.hub-board__btn{width:auto;padding:0 28px}}@media (min-width: 1024px){.hub-sign{padding:28px 0 0}.hub-sign__in{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-areas:"crumb crumb" "name pass" "lede pass" "goals board" "strip strip";grid-template-rows:auto auto 1fr auto auto;-moz-column-gap:56px;column-gap:56px}.hub-goals__list{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-pass{align-self:start;margin-top:18px}.hub-board{align-self:end;grid-template-columns:minmax(0,1fr);margin-top:0}.hub-board__btn{width:100%}.hub-strip{display:block;margin-top:40px;padding:0 0 30px}.hub-lines{grid-template-columns:repeat(var(--n, 11),minmax(0,1fr));gap:0}.hub-strip:before{content:"";position:absolute;top:13px;left:calc(100% / (2 * var(--n, 11)));right:calc(100% / (2 * var(--n, 11)));height:10px;border-radius:5px;background:var(--pl-trunk)}.hub-lines__st{position:relative}.hub-lines__a{flex-direction:column;gap:10px;padding:0 4px 10px;text-align:center;background:none}.hub-lines__a:hover{background:none}.hub-lines__node{display:block;position:relative;width:36px;height:36px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 5px var(--pl-sign);transition:transform .35s var(--pl-ease)}.hub-lines__node:after{content:"";position:absolute;left:50%;top:100%;width:6px;height:10px;translate:-50% 0;background:var(--line)}.hub-lines__a:hover .hub-lines__node,.hub-lines__st.is-cycling .hub-lines__node{transform:scale(1.12)}.hub-lines__st[data-visited] .hub-lines__node{background:radial-gradient(circle,var(--line) 0 7px,#fff 7.5px)}.hub-lines__st.is-picked .hub-lines__node{box-shadow:inset 0 0 0 5px var(--pl-sign),0 0 0 4px var(--pl-exit)}.hub-lines__vi{display:grid;gap:2px}.hub-lines__mean{font-size:12px}.hub-lines__name{display:block;color:#fff;font-size:13px;font-weight:600;text-wrap:balance}.hub-lines__a:hover .hub-lines__name{text-decoration:underline;text-underline-offset:3px}}.hub-route-wrap{background:var(--pl-ground);color:var(--pl-ink);padding:48px 0 64px;font-family:var(--pl-vi)}.hub-h2{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0;color:var(--pl-ink);font:800 clamp(1.4rem,1.1rem + 1.2vw,1.9rem) / 1.2 var(--pl-vi);letter-spacing:-.02em}.hub-h2 [lang=ko]{color:var(--pl-muted);font-family:var(--pl-ko);font-weight:700}.hub-route{--trunk-x: 13px;--trunk-w: 10px;--st-pad: 44px;position:relative;margin-top:32px;padding-left:var(--st-pad)}.hub-route:before{content:"";position:absolute;left:var(--trunk-x);top:0;bottom:20px;width:var(--trunk-w);border-radius:5px;background:var(--pl-trunk)}.tc-link{color:inherit;text-decoration:none}.tc-link:after{content:"";position:absolute;inset:-12px;z-index:3;border-radius:14px}.tc-link:focus-visible{outline:none}.hub-route__end{position:relative;display:flex;align-items:center;gap:8px;margin:44px 0 0;color:var(--pl-muted);font-size:14px}.hub-route__end svg{flex:none}@media (min-width: 960px){.hub-route{--trunk-x: 20px;--trunk-w: 12px;--st-pad: 76px}}.hub-xst[hidden],.hub-empty[hidden]{display:none}#tuyen{scroll-margin-top:var(--header-h, 68px)}.hub-filter{position:sticky;top:var(--header-h, 68px);z-index:20;display:flex;align-items:center;gap:10px;margin-top:18px;padding:10px 0;background:color-mix(in srgb,var(--pl-ground) 90%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--pl-rule)}.hub-filter[hidden]{display:none}.hub-filter__chips{display:flex;flex:1;gap:8px;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),transparent)}.hub-filter__chips::-webkit-scrollbar{display:none}.hub-chip{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:0;border-radius:999px;background:var(--pl-surface);box-shadow:inset 0 0 0 1.5px var(--pl-rule);color:var(--pl-ink);font:600 14px/1 var(--pl-vi);white-space:nowrap;cursor:pointer;transition:background-color .2s ease,color .2s ease}.hub-chip:last-child{margin-right:24px}.hub-chip span{color:var(--pl-muted);font-size:12.5px;font-weight:700}.hub-chip:hover{box-shadow:inset 0 0 0 1.5px var(--pl-ink)}.hub-chip:focus-visible,.hub-view__b:focus-visible{outline:3px solid var(--pl-trunk-text);outline-offset:2px}.hub-chip[aria-pressed=true]{background:var(--pl-ink);box-shadow:none;color:var(--pl-surface)}.hub-chip[aria-pressed=true] span{color:inherit;opacity:.75}.hub-chip--quick[aria-pressed=true]{background:var(--pl-exit);color:var(--pl-exit-ink)}.hub-view{flex:none;display:flex;padding:3px;border-radius:10px;background:var(--pl-surface);box-shadow:inset 0 0 0 1.5px var(--pl-rule)}.hub-view__b{display:inline-flex;align-items:center;gap:6px;min-width:40px;min-height:36px;justify-content:center;padding:0 8px;border:0;border-radius:7px;background:none;color:var(--pl-muted);font:600 13.5px var(--pl-vi);cursor:pointer}.hub-view__b span{display:none}.hub-view__b[aria-pressed=true]{background:var(--pl-ink);color:var(--pl-surface)}.hub-filter__count{margin:12px 0 0;color:var(--pl-muted);font-size:14.5px;font-weight:600}.hub-filter__count:empty{display:none}@media (min-width: 640px){.hub-view__b{padding:0 12px}.hub-view__b span{display:inline}}@media (min-width: 1024px){.hub-filter__chips{flex-wrap:wrap;overflow:visible;-webkit-mask-image:none;mask-image:none}.hub-chip:last-child{margin-right:0}}.hub-xst{position:relative;min-width:0}.hub-xst__node{position:absolute;z-index:1;top:14px;left:calc(var(--trunk-x) + var(--trunk-w) / 2 - var(--st-pad) - 19px);display:grid;place-items:center;width:38px;height:24px;border-radius:5px;background:var(--pl-exit);box-shadow:0 0 0 3px var(--pl-ground);color:var(--pl-exit-ink);font:800 11px/1 var(--pl-ko)}.hub-xst__box{display:grid;justify-items:start;gap:6px;max-width:860px;padding:18px 20px 20px;border-radius:12px;background:var(--pl-exit);color:var(--pl-exit-ink)}.hub-xst__k{margin:0;font-size:13px;font-weight:700;letter-spacing:.02em}.hub-xst__k [lang=ko]{margin-right:6px;font-family:var(--pl-ko);font-weight:800}.hub-xst__title{margin:0;font:800 clamp(1.15rem,1rem + .6vw,1.4rem) / 1.25 var(--pl-vi);letter-spacing:-.01em;text-wrap:balance}.hub-xst__note{max-width:56ch;margin:0;font-size:15px;line-height:1.55}.hub-xst__btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;margin-top:8px;padding:0 20px;border:0;border-radius:var(--pl-radius);background:#16171b;color:#fff;font:700 15.5px var(--pl-vi);text-decoration:none;cursor:pointer}.hub-xst__btn[hidden]{display:none}.hub-xst__btn:hover svg{translate:3px 0}.hub-xst__btn svg{transition:translate .3s var(--pl-ease)}.hub-xst__btn:focus-visible{outline:3px solid #16171b;outline-offset:3px}.hub-empty{display:grid;justify-items:start;gap:12px;padding:20px;border-radius:12px;background:var(--pl-surface);box-shadow:0 0 0 1px var(--pl-rule);color:var(--pl-ink)}.hub-empty p{margin:0}.tc-hub[data-view=compact] .tc-link:after{inset:0;border-radius:10px}@media (prefers-reduced-motion: reduce){.hub-goal,.hub-xst__btn svg{transition:none}}.hub-ride{display:grid;gap:14px;max-width:860px;margin-top:14px;padding:16px;background:#1d1e24;color:#fff}.hub-ride[hidden]{display:none}.hub-ride__k{margin:0 0 4px;color:#c9ccd4;font-size:14px;font-weight:700}.hub-ride__k [lang=ko]{margin-right:8px;color:#ffd200;font:400 19px/1 "Black Han Sans",var(--pl-ko)}.hub-ride__title{margin:0;font:800 19px/1.25 var(--pl-vi)}.hub-ride__meta{margin:4px 0 0;color:#c9ccd4;font-size:14px;line-height:1.5}.hub-ride__stops{display:grid;grid-auto-columns:minmax(104px,1fr);grid-auto-flow:column;gap:10px;margin:0;padding:12px 10px 8px 0;overflow-x:auto;list-style:none;scrollbar-width:thin}.hub-ride__stops li{position:relative;display:grid;align-content:start;gap:4px;min-width:0;min-height:68px;padding:12px 10px 10px;border:2px dashed rgba(255,255,255,.42);box-shadow:inset 0 5px 0 var(--line);color:#c9ccd4;font-size:13px;font-weight:700;line-height:1.25;text-wrap:balance}.hub-ride__no{font:400 15px/1 "Black Han Sans",var(--pl-ko)}.hub-ride__stops li[data-seen]{border:2px solid #fff;background:var(--line);box-shadow:3px 3px #fff;color:var(--line-on, #fff)}.hub-ride__stops li[data-seen]:after{content:"✓";position:absolute;top:-12px;right:-8px;display:grid;place-items:center;width:26px;height:26px;border:2px solid #121318;border-radius:50%;background:#ffd200;color:#121318;font:900 14px/1 var(--pl-vi);rotate:12deg}.hub-ride__go{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 22px;border:3px solid #fff;background:#ffd200;box-shadow:4px 4px 0 var(--pl-trunk);color:#121318;font:900 16px var(--pl-vi);cursor:pointer;transition:transform .08s ease,box-shadow .08s ease}.hub-ride__go:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--pl-trunk)}.hub-ride__go:active{transform:translate(4px,4px);box-shadow:none}.hub-ride__go:focus-visible{outline:3px solid #ffd200;outline-offset:3px}@media (min-width: 720px){.hub-ride{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:18px 20px}.hub-ride__stops{grid-column:1 / -1}}@media (prefers-reduced-motion: reduce){.hub-ride__go{transition:none}}.hub-exit-wrap{background:var(--pl-ground);border-top:1px solid var(--pl-rule);padding:56px 0 72px;color:var(--pl-ink)}.hub-outs{display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}.hub-outs>li{display:flex;min-width:0}.hub-out{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;flex:1;min-height:84px;padding:14px 14px 14px 18px;border-radius:10px;background:var(--pl-surface);box-shadow:inset 4px 0 0 var(--pl-exit),0 0 0 1px var(--pl-rule);color:var(--pl-ink);text-decoration:none;transition:box-shadow .2s ease}.hub-out:hover{box-shadow:inset 4px 0 0 var(--pl-exit),0 0 0 1.5px var(--pl-ink)}.hub-out:focus-visible{outline:3px solid var(--pl-ink);outline-offset:3px}.hub-out__no{display:grid;place-items:center;align-content:center;width:48px;height:48px;border-radius:6px;background:var(--pl-exit);color:var(--pl-exit-ink);font:800 22px/1 var(--pl-ko);font-variant-numeric:tabular-nums}.hub-out__text{display:grid;gap:3px;min-width:0}.hub-out__text b{font-size:16px;font-weight:800;line-height:1.3}.hub-out__text small{color:var(--pl-muted);font-size:13.5px;line-height:1.45}.hub-out__chev{display:flex;color:var(--pl-muted);transition:translate .3s var(--pl-ease),color .2s ease}.hub-out:hover .hub-out__chev{translate:3px 0;color:var(--pl-ink)}@media (min-width: 900px){.hub-outs{grid-template-columns:repeat(3,minmax(0,1fr))}.hub-out{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"no chev" "text text";align-items:start;align-content:start;gap:14px 10px;padding:18px 18px 20px 22px}.hub-out__no{grid-area:no}.hub-out__chev{grid-area:chev;align-self:center}.hub-out__text{grid-area:text}}@media (prefers-reduced-motion: reduce){.hub-out,.hub-out__chev,.hub-lines__node{transition:none}}.hub-faq{margin-top:64px}.hub-faq__list{max-width:820px;margin-top:20px;border-top:2px solid var(--pl-ink)}.hub-faq__item{border-bottom:1px solid var(--pl-rule)}.hub-faq__item summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:12px 4px;color:var(--pl-ink);font-size:16.5px;font-weight:700;line-height:1.4;list-style:none;cursor:pointer}.hub-faq__item summary::-webkit-details-marker{display:none}.hub-faq__item summary:hover span{text-decoration:underline;text-underline-offset:4px}.hub-faq__item summary:focus-visible{outline:3px solid var(--pl-trunk-text);outline-offset:2px}.hub-faq__item summary svg{flex:none;color:var(--pl-muted);transition:rotate .3s var(--pl-ease)}.hub-faq__item[open] summary svg{rotate:180deg}.hub-faq__a{max-width:65ch;padding:0 4px 20px;color:var(--pl-muted);font-size:15.5px;line-height:1.65}.hub-faq__a p{margin:0}.hub-faq__a a{display:inline-flex;align-items:center;gap:6px;margin-top:10px;color:var(--pl-trunk-text);font-weight:700;text-decoration:none}.hub-faq__a a:hover{text-decoration:underline;text-underline-offset:3px}@media (prefers-reduced-motion: reduce){.hub-faq__item summary svg{transition:none}}.hub-show .hub-sign{background:var(--sh-k);box-shadow:none;border-bottom:3px solid var(--sh-k);padding:18px 0 26px;overflow:hidden}.hub-show .hub-sign:after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;background:var(--sh-trunk);border-top:3px solid var(--sh-k)}.hub-show .hub-sign__in{grid-template-areas:"crumb" "title" "board" "pass" "goals" "strip";row-gap:18px}.show-title{grid-area:title;position:relative;isolation:isolate;overflow:hidden;padding:26px 20px 24px;background:var(--sh-trunk);border:3px solid #fff;box-shadow:8px 8px 0 var(--sh-y)}.show-title__rays{position:absolute;inset:-60%;z-index:-1;background:repeating-conic-gradient(from 0deg,rgba(18,19,24,.13) 0 8deg,transparent 8deg 16deg);animation:sh-spin 60s linear infinite}@keyframes sh-spin{to{rotate:360deg}}.show-title__logo{position:relative;isolation:isolate;display:inline-block;margin:0;font:400 clamp(52px,8vw,104px) / 1 var(--sh-disp);color:var(--sh-y);rotate:-4deg;--capsw: 9px;letter-spacing:.01em;animation:sh-slam .42s var(--sh-pop) .1s both}@keyframes sh-slam{0%{transform:scale(1.7) rotate(-10deg);opacity:0}65%{transform:scale(.95);opacity:1}to{transform:none;opacity:1}}.show-title__h1{margin:14px 0 0;display:inline-block;padding:4px 12px 6px;background:var(--sh-k);color:#fff;font:900 clamp(24px,2.4vw + 10px,40px) / 1.15 "Be Vietnam Pro",system-ui,sans-serif;letter-spacing:-.02em;rotate:1.5deg;animation:sh-rise .35s cubic-bezier(.2,.9,.3,1) .32s both}@keyframes sh-rise{0%{transform:translateY(16px);opacity:0}}.show-title__lede{margin:14px 0 0;max-width:34em;color:var(--sh-k);font:700 16px/1.5 Be Vietnam Pro,system-ui,sans-serif}.show-title__bug{position:absolute;right:14px;top:12px;display:flex;align-items:center;gap:6px;font:900 15px Be Vietnam Pro,system-ui,sans-serif;color:#fff;text-shadow:2px 2px 0 var(--sh-k);letter-spacing:.04em}.show-title__bug i{width:10px;height:10px;border-radius:50%;background:#ff2e2e;border:2px solid var(--sh-k);animation:sh-blink 1.6s steps(1) infinite}@keyframes sh-blink{50%{opacity:.25}}.hub-show .show-tv{grid-area:board;position:relative;display:grid;gap:14px;padding:18px;background:#1d1e24;border:3px solid #fff;box-shadow:8px 8px 0 var(--sh-trunk)}.hub-show .hub-board__led{display:grid;gap:6px;min-height:92px;align-content:center;margin:0;padding:12px 16px;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 2px,transparent 2px 4px),#0b0c10;border:2px solid rgba(255,255,255,.18);border-radius:0;box-shadow:none}.hub-show .hub-board__led:after{display:none}.hub-show .hub-board__k{font:400 22px/1 var(--sh-disp);color:var(--sh-y);letter-spacing:.02em}.hub-show .hub-board__led b{font:900 clamp(19px,1.2vw + 12px,24px) / 1.25 "Be Vietnam Pro",system-ui,sans-serif;color:#fff;white-space:normal}.hub-show .hub-board__btn{width:100%;min-height:54px;border:3px solid var(--sh-k);border-radius:0;background:var(--sh-y);color:var(--sh-k);box-shadow:5px 5px #fff;font:900 18px/1 Be Vietnam Pro,system-ui,sans-serif;transition:transform .08s ease,box-shadow .08s ease}.hub-show .hub-board__btn:hover{transform:translate(-1px,-1px);box-shadow:6px 6px #fff;filter:none}.hub-show .hub-board__btn:active{transform:translate(5px,5px);box-shadow:0 0 #fff}.hub-show .hub-goals{grid-area:goals}.hub-show .hub-goals__q{color:#fff;font-weight:800}.hub-show .hub-goals__q [lang=ko]{font:400 18px var(--sh-disp);color:var(--sh-y)}.hub-show .hub-goal{border-radius:0;border:3px solid #fff;background:#1d1e24;color:#fff;box-shadow:4px 4px #ffffffd9;transition:transform .08s ease,box-shadow .08s ease,background-color .12s ease}.hub-show .hub-goal:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--sh-y);border-color:var(--sh-y)}.hub-show .hub-goal[aria-pressed=true]{background:var(--sh-y);color:var(--sh-k);border-color:var(--sh-k);transform:translate(3px,3px);box-shadow:1px 1px #fff}.hub-show .hub-goal[aria-pressed=true] small,.hub-show .hub-goal[aria-pressed=true] .hub-goal__ko{color:var(--sh-k)}.hub-show .hub-goal__ko{font-family:var(--sh-disp);font-weight:400;color:var(--sh-y)}.hub-show .hub-goal__n{border-radius:0;background:var(--sh-trunk);color:var(--sh-k);border:2px solid var(--sh-k);font-weight:900}.hub-show .hub-strip{display:none}@media (min-width: 1024px){.hub-show .hub-sign{padding:22px 0 34px}.hub-show .hub-sign__in{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);grid-template-areas:"crumb crumb" "title board" "title pass" "goals goals" "strip strip";grid-template-rows:auto auto 1fr auto auto;-moz-column-gap:40px;column-gap:40px;row-gap:24px}.show-title{padding:34px 34px 30px}.hub-show .hub-pass{margin-top:0}.hub-show .hub-goals__list{grid-template-columns:repeat(6,minmax(0,1fr))}}.hub-show .hub-route-wrap{background:var(--sh-ground);color:var(--sh-ink);padding-top:44px}.hub-show .show-h2{font:900 clamp(28px,2vw + 16px,40px) / 1.1 "Be Vietnam Pro",system-ui,sans-serif;letter-spacing:-.025em;color:var(--sh-ink)}.hub-show .hub-chip,.hub-show .hub-view__b{border-radius:0;border:3px solid var(--sh-edge);background:var(--sh-paper);color:var(--sh-ink);box-shadow:3px 3px 0 var(--sh-shc);font-weight:800;transition:transform .08s ease,box-shadow .08s ease}.hub-show .hub-chip:hover,.hub-show .hub-view__b:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--sh-shc);background:var(--sh-y);color:var(--sh-k)}.hub-show .hub-chip[aria-pressed=true],.hub-show .hub-view__b[aria-pressed=true]{background:var(--sh-k);color:#fff;transform:translate(2px,2px);box-shadow:1px 1px 0 var(--sh-shc)}:root[data-theme=dark] .hub-show .hub-chip[aria-pressed=true],:root[data-theme=dark] .hub-show .hub-view__b[aria-pressed=true]{background:var(--sh-y);color:var(--sh-k)}.hub-show .hub-chip span{border-radius:0}.hub-show .hub-filter{background:color-mix(in srgb,var(--sh-ground) 94%,transparent)}.hub-show .hub-ride{border-radius:0;border:var(--sh-b);box-shadow:var(--sh-sh)}.hub-show .ep-wrap{padding:0 0 8px}.hub-show .ep-wrap:before,.hub-show .ep-wrap:after{display:none}.ep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:30px 26px;margin:22px 0 0;padding:0;list-style:none}.ep{position:relative;display:flex;flex-direction:column;min-width:0;background:var(--sh-paper);color:var(--sh-ink);border:var(--sh-b);box-shadow:var(--sh-sh);transition:transform .12s ease,box-shadow .12s ease}.ep[hidden]{display:none}.ep:hover,.ep:focus-within{transform:translate(-2px,-2px);box-shadow:9px 9px 0 var(--sh-shc)}.ep:active{transform:translate(4px,4px);box-shadow:2px 2px 0 var(--sh-shc)}.ep.is-cycling{outline:4px solid var(--sh-y);outline-offset:3px}.ep.is-picked{outline:5px solid var(--sh-y);outline-offset:4px;box-shadow:9px 9px 0 var(--line, var(--sh-shc))}.ep__thumb{border-bottom:var(--sh-b)}.ep__body{display:flex;flex-direction:column;gap:8px;flex:1;padding:14px 16px 16px}.ep__meta{display:flex;align-items:center;gap:8px;margin:0}.ep .pl-pill{box-shadow:none;border:2px solid var(--sh-k)}.ep__kind{font:700 13px/1.2 Be Vietnam Pro,system-ui,sans-serif;color:var(--sh-muted)}.ep__title{margin:0;font:900 19px/1.25 Be Vietnam Pro,system-ui,sans-serif;letter-spacing:-.015em}.ep .tc-link{color:inherit;text-decoration:none}.ep .tc-link:after{content:"";position:absolute;inset:0;z-index:2}.ep .tc-link:focus-visible{outline:none}.ep:has(.tc-link:focus-visible){outline:4px solid var(--sh-hot);outline-offset:4px}.ep__hook{margin:0;font:500 15px/1.5 Be Vietnam Pro,system-ui,sans-serif;color:var(--sh-muted)}.ep__draft{margin:0;align-self:flex-start;padding:2px 8px;border:2px dashed var(--sh-muted);font-size:12px;font-weight:700;color:var(--sh-muted)}.ep__status{margin:0;padding:6px 10px;background:var(--sh-k);color:var(--sh-y);font:800 13px/1.35 Be Vietnam Pro,system-ui,sans-serif}:root[data-theme=dark] .ep__status{background:var(--sh-y);color:var(--sh-k)}.ep__go{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;min-height:42px;padding:0 16px;background:var(--line, var(--sh-y));color:var(--line-on, var(--sh-k));border:3px solid var(--sh-k);box-shadow:3px 3px 0 var(--sh-k);font:900 15px/1 Be Vietnam Pro,system-ui,sans-serif}.tc-hub.hub-show[data-view=compact] .ep-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:14px 18px}.tc-hub.hub-show[data-view=compact] .ep{flex-direction:row;box-shadow:var(--sh-sh-sm)}.tc-hub.hub-show[data-view=compact] .ep__thumb{flex:none;align-self:center;width:clamp(140px,38%,180px);margin:8px 0 8px 8px;border:var(--sh-b)}.tc-hub.hub-show[data-view=compact] .ep__body{padding:10px 12px;gap:4px}.tc-hub.hub-show[data-view=compact] .ep__title{font-size:16px}.tc-hub.hub-show[data-view=compact] .ep__hook{font-size:14px}.tc-hub.hub-show[data-view=compact] :is(.ep__go,.ep__kind,.ht__min,.ht__sfx){display:none}.hub-show .hub-xst{grid-column:1 / -1;display:block;padding:0}.hub-show .hub-xst__node{display:none}.hub-show .hub-xst__box{max-width:none;border-radius:0;border:3px solid var(--sh-k);background:var(--sh-y);color:var(--sh-k);box-shadow:var(--sh-sh);rotate:-.6deg}.hub-show .hub-xst__k [lang=ko]{font:400 18px/1 var(--sh-disp)}.hub-show .hub-xst__btn{border-radius:0;border:3px solid var(--sh-k);box-shadow:3px 3px 0 var(--sh-k)}.hub-show .hub-empty{grid-column:1 / -1}.hub-show .ep-note{margin-top:26px;color:var(--sh-muted)}.hub-show .hub-exit-wrap{background:var(--sh-ground);color:var(--sh-ink)}.hub-show .hub-out{border-radius:0;border:var(--sh-b);background:var(--sh-paper);box-shadow:var(--sh-sh-sm);transition:transform .08s ease,box-shadow .08s ease}.hub-show .hub-out:hover{transform:translate(-1px,-1px);box-shadow:6px 6px 0 var(--sh-shc)}.hub-show .hub-out__no{border-radius:0;border:2px solid var(--sh-k)}.hub-show .hub-fb{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 18px;margin:48px 0 0;padding:14px 16px;border:2px dashed var(--sh-edge);color:var(--sh-ink)}.hub-show .hub-fb p{margin:0;font-size:16px;font-weight:700;line-height:1.45}.hub-show .hub-fb__btn{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;background:var(--sh-trunk);color:var(--sh-k);border:3px solid var(--sh-k);box-shadow:4px 4px 0 var(--sh-shc);font:900 16px/1 Be Vietnam Pro,system-ui,sans-serif;text-decoration:none;white-space:nowrap;transition:transform .08s ease,box-shadow .08s ease}.hub-show .hub-fb__btn [lang=ko]{font:400 18px/1 var(--sh-disp)}.hub-show .hub-fb__btn:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--sh-shc)}.hub-show .hub-fb__btn:active{transform:translate(4px,4px);box-shadow:none}.hub-show .hub-fb__btn:focus-visible{outline:3px solid var(--sh-hot);outline-offset:3px}.hub-show .hub-faq__item{border-radius:0;border:var(--sh-b);background:var(--sh-paper);box-shadow:var(--sh-sh-sm)}.hub-show .hub-h2 [lang=ko]{font-family:var(--sh-disp);font-weight:400}@media (prefers-reduced-motion: reduce){.show-title__rays,.show-title__logo,.show-title__h1,.show-title__bug i{animation:none}.ep,.hub-show .hub-goal,.hub-show .hub-chip{transition:none}}
