.dirB{font-family:var(--font-eb-garamond,"EB Garamond"),Georgia,serif;color:var(--color-ink)}.dirB-head{text-align:center;margin-bottom:32px;padding-top:4px}.dirB-head .stamp{display:inline-block;font-family:var(--font-noto-serif-tc,"Noto Serif TC"),serif;font-size:11px;letter-spacing:5px;color:var(--color-cinnabar);padding:5px 14px 4px;border:1px solid rgb(from var(--color-cinnabar) r g b/.4);margin-bottom:22px;opacity:.9}.dirB-head h1{font-family:var(--font-eb-garamond,"EB Garamond"),Georgia,serif;font-size:clamp(1.7rem,5.6vw,2.55rem);font-weight:700;line-height:1.2;letter-spacing:.005em;color:var(--color-ink);margin:0 0 18px;text-wrap:balance}.dirB-head .amp{color:var(--color-cinnabar);font-style:italic;font-weight:400}.dirB-head .lede{font-size:14px;line-height:1.85;color:var(--color-ink-light);max-width:40ch;margin:0 auto;font-style:italic;letter-spacing:.01em}.dirB-filters{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px dashed rgb(from var(--color-ink) r g b/.12)}.dirB-filters .lbl{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:var(--color-ink-light);opacity:.55;margin-right:6px}.dirB-chip{font-family:inherit;font-size:12px;letter-spacing:1.5px;padding:5px 11px;background:transparent;color:var(--color-ink-light);border:1px solid rgb(from var(--color-ink) r g b/.12);cursor:pointer;transition:color .18s ease,border-color .18s ease,background .18s ease}.dirB-chip:hover{color:var(--color-ink);border-color:rgb(from var(--color-ink) r g b/.3)}.dirB-chip.on{color:var(--color-cinnabar);border-color:var(--color-cinnabar);background:rgb(from var(--color-cinnabar) r g b/.04)}.dirB-strip-wrap{position:relative;margin:0 -16px 24px;padding:4px 0;-webkit-mask-image:linear-gradient(90deg,transparent,black 18px,black calc(100% - 18px),transparent);mask-image:linear-gradient(90deg,transparent,black 18px,black calc(100% - 18px),transparent)}.dirB-strip{display:flex;gap:8px;padding:4px 16px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}.dirB-strip::-webkit-scrollbar{display:none}.dirB-card{flex:0 0 auto;width:92px;min-height:122px;scroll-snap-align:center;background:transparent;border:1px solid rgb(from var(--color-ink) r g b/.14);padding:14px 8px;text-align:center;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .15s ease;font-family:inherit;display:flex;flex-direction:column;justify-content:center;gap:6px}.dirB-card:hover{border-color:rgb(from var(--color-ink) r g b/.4);transform:translateY(-1px)}.dirB-card.selected{border-color:var(--color-cinnabar);background:rgb(from var(--color-cinnabar) r g b/.05);box-shadow:inset 0 -2px 0 rgb(from var(--color-cinnabar) r g b/.6)}.dirB-card .top{font-size:18px;font-weight:700;letter-spacing:1px;color:var(--color-ink);line-height:1}.dirB-card.selected .top{color:var(--color-cinnabar)}.dirB-card .mid{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--color-ink-light);line-height:1.3}.dirB-card.selected .mid{color:var(--color-ink)}.dirB-card .bot{font-size:9px;opacity:.6;letter-spacing:.3px;line-height:1.2}.dirB-card .bot,.dirB-empty{font-style:italic;color:var(--color-ink-light)}.dirB-empty{text-align:center;font-size:13px;opacity:.55;padding:28px 0 12px;letter-spacing:.5px}.dirB-reveal{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:0;margin:12px 0 0;border:1px solid rgb(from var(--color-ink) r g b/.12);background:rgb(from var(--color-paper-dark) r g b/.28);animation:dirBFadeUp .45s cubic-bezier(.16,1,.3,1) both}.dirB-slip{padding:22px 18px;text-align:center;position:relative}.dirB-slip .roof{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--color-ink-light);opacity:.7;margin-bottom:12px}.dirB-slip .title{font-family:var(--font-eb-garamond,"EB Garamond"),Georgia,serif;font-size:18px;font-weight:700;color:var(--color-ink);line-height:1.3;margin-bottom:4px}.dirB-slip.east .title{font-family:var(--font-noto-serif-tc,"Noto Serif TC"),serif;letter-spacing:2px}.dirB-slip .sub{font-size:11px;font-style:italic;color:var(--color-ink-light);opacity:.7;letter-spacing:.5px;margin-bottom:14px}.dirB-slip .body{font-size:13px;line-height:1.7;color:var(--color-ink);letter-spacing:.01em;margin:0}.dirB-slip.east .stick-num{position:absolute;top:10px;right:12px;font-family:var(--font-noto-serif-tc,"Noto Serif TC"),serif;font-size:10px;color:var(--color-cinnabar);letter-spacing:1.5px;opacity:.6}.dirB-joiner{display:flex;flex-direction:column;align-items:center;justify-content:center;width:36px;padding:22px 0;border-left:1px dashed rgb(from var(--color-ink) r g b/.14);border-right:1px dashed rgb(from var(--color-ink) r g b/.14);background:rgb(from var(--color-paper) r g b/.55)}.dirB-joiner .line{flex:1;width:1px;background:rgb(from var(--color-cinnabar) r g b/.28);min-height:24px}.dirB-joiner .knot{font-size:14px;color:var(--color-cinnabar);margin:6px 0;font-weight:700;line-height:1}.dirB-bridge-block{margin-top:16px;padding:22px 20px 24px;border:1px solid rgb(from var(--color-cinnabar) r g b/.18);border-left:2px solid var(--color-cinnabar);background:rgb(from var(--color-paper-dark) r g b/.4);animation:dirBFadeUp .5s cubic-bezier(.16,1,.3,1) .08s both}.dirB-bridge-block .roof{font-size:10px;letter-spacing:4px;text-transform:uppercase;color:var(--color-cinnabar);margin-bottom:12px;font-weight:700}.dirB-bridge-block .body{font-size:14px;line-height:1.85;color:var(--color-ink);font-style:italic;letter-spacing:.01em;margin:0}.dirB-cta-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;animation:dirBFadeUp .5s cubic-bezier(.16,1,.3,1) .16s both}.dirB-cta,.dirB-cta-row{align-items:center;justify-content:center}.dirB-cta{display:inline-flex;font-family:inherit;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;padding:14px 26px;background:var(--color-cinnabar);color:var(--color-paper);border:1px solid var(--color-cinnabar);text-decoration:none;cursor:pointer;transition:background .2s,transform .1s,color .2s,border-color .2s}.dirB-cta:hover{background:var(--color-cinnabar-dark);border-color:var(--color-cinnabar-dark)}.dirB-cta:active{transform:translateY(1px)}.dirB-cta.ghost{background:transparent;color:var(--color-ink-light);border-color:rgb(from var(--color-ink) r g b/.2)}.dirB-cta.ghost:hover{background:rgb(from var(--color-ink) r g b/.04);color:var(--color-ink);border-color:rgb(from var(--color-ink) r g b/.4)}.dirB .grade-pill{display:inline-block;padding:3px 10px 2px;margin-left:6px;font-size:10px;letter-spacing:2px;border:1px solid;vertical-align:middle;font-family:var(--font-noto-serif-tc,"Noto Serif TC"),serif;line-height:1.4}.dirB .grade-top{color:var(--color-gold)}.dirB .grade-mid{color:var(--color-ink-light);opacity:.75}.dirB .grade-bottom{color:var(--color-bottom-grey)}@keyframes dirBFadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:540px){.dirB-reveal{grid-template-columns:1fr}.dirB-joiner{width:100%;flex-direction:row;padding:0;min-height:36px;border-left:0;border-right:0;border-top:1px dashed rgb(from var(--color-ink) r g b/.14);border-bottom:1px dashed rgb(from var(--color-ink) r g b/.14)}.dirB-joiner .line{flex:1;width:auto;height:1px;min-height:0}.dirB-joiner .knot{margin:0 10px}.dirB-card{width:86px;min-height:116px}.dirB-head h1{font-size:clamp(1.5rem,7vw,2rem)}}@media (prefers-reduced-motion:reduce){.dirB-bridge-block,.dirB-cta-row,.dirB-reveal{animation:none}.dirB-card,.dirB-cta{transition:none}}