/* 941 × 1672 reference canvas. Every map element scales by the same factor. */
.poster-version{background:#fffdf6}
.poster-version .poster-tools{position:sticky;top:0;z-index:20;min-height:48px;padding:8px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:1400px;margin:auto;color:#627157;font-size:12px;background:#fffdf6f5}
.poster-version .poster-tools .poster-tool-links{display:flex;gap:18px;align-items:center}
.poster-version .poster-tools a{color:#65745c;border-bottom:1px solid #c7d1b9}
.poster-version .poster-tools button{font-size:12px;line-height:1.5;padding:7px 14px;border:1px solid #acc394;border-radius:8px;background:#fffff8;color:#3f622f;font-weight:600}
.poster-version .poster-tools .poster-zoom-button{display:none;background:#fff1f3;border-color:#efb1bf;color:#96394f}
.poster-version .poster-scroll{width:calc(100% - 24px);max-width:1400px;margin:0 auto;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#bbcf9c #fffaf0}
.poster-version .poster-frame{position:relative;margin:0 auto;overflow:hidden;flex:none}
.poster-version .poster-canvas{position:relative;isolation:isolate;width:941px;height:1672px;transform-origin:0 0;overflow:hidden;background:#fffdf6;box-shadow:none;line-height:1.3}
.poster-version .poster-landscape{position:absolute;inset:0;z-index:0;display:block;width:941px;height:1672px;max-width:none;pointer-events:none}
.poster-version .poster-heading{position:absolute;left:192px;top:22px;z-index:4;width:667px}
.poster-version .poster-heading h1{margin:0;white-space:nowrap;letter-spacing:-.025em;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:46px;line-height:1.25;font-weight:900;color:#4b2821;text-shadow:0 2px 0 #fff}
.poster-version .poster-heading h1 span{display:inline;color:#dd1647}
.poster-version .poster-logo{position:absolute;left:108px;top:15px;z-index:4;width:82px;height:90px;display:flex;align-items:center;justify-content:center;font-size:76px;line-height:1;transform:rotate(-9deg)}
.poster-version .poster-subtitle{position:absolute;left:254px;top:88px;z-index:4;margin:0;color:#171c17;font-size:21px;font-weight:600;letter-spacing:0;white-space:nowrap;line-height:30px}
.poster-version .poster-legend{position:absolute;left:725px;top:98px;width:177px;height:64px;z-index:4;border:2px solid #ffc1c8;border-radius:15px;background:#fffdf8dc;padding:8px 12px;display:grid;gap:4px;color:#252825;font-size:17px;font-weight:700}
.poster-version .poster-legend div{display:flex;align-items:center;gap:14px;line-height:20px}
.poster-version .poster-legend i{display:inline-block;width:70px;height:9px;border-radius:999px;background:#fa7b98}
.poster-version .poster-legend .poster-legend-branch{height:7px;background:repeating-linear-gradient(90deg,#79b95f 0 12px,#fffdf8 12px 16px)}
.poster-version .poster-map{position:absolute!important;inset:0;width:941px!important;height:1672px!important;z-index:1;isolation:unset}
.poster-version .poster-map #roads{position:absolute;inset:0;width:941px;height:1672px;z-index:1;pointer-events:none;overflow:hidden}
.poster-version .poster-map #roads path{fill:none;stroke-linecap:round;stroke-linejoin:round}
.poster-version .poster-map .poster-spur-edge{stroke:#eaf3d4;stroke-width:12px}
.poster-version .poster-map .poster-spur{stroke:#7db765;stroke-width:8px}
.poster-version .poster-map .poster-spur-dots{stroke:#fffef5;stroke-width:2.5px;stroke-dasharray:1 9}
.poster-version .poster-map #scenery{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:visible}
.poster-version .poster-map #stations{position:absolute;inset:0;z-index:3}
.poster-version .poster-canvas .station{position:absolute;inset-inline:0;height:68px;pointer-events:none;scroll-margin-top:65px}
.poster-version .poster-canvas .station button{pointer-events:auto}
.poster-version .poster-canvas .main-sign{position:absolute;top:0;width:var(--card-width,208px)!important;height:68px;min-height:0;margin:0;padding:7px 8px 7px 16px;border:1.7px solid #fa6984;border-radius:17px;background:#fffefd;box-shadow:0 3px 0 #ffc0c42b;display:flex;align-items:center;gap:10px;transform:none;filter:none;text-align:left;transition:box-shadow .15s,background-color .15s}
.poster-version .poster-canvas .main-sign::before,.poster-version .poster-canvas .main-sign::after{display:none}
.poster-version .poster-canvas .main-sign:hover{transform:none;filter:none;background:#fff6f7;box-shadow:0 0 0 3px #f5698536}
.poster-version .poster-canvas .station-number{position:absolute;display:flex;align-items:center;justify-content:center;left:-37px;top:12px;width:43px;height:43px;border:3px solid #fffdf7;border-radius:50%;background:#f25b77;color:#fff;font-size:25px;font-weight:900;line-height:1;box-shadow:none}
.poster-version .poster-canvas .main-art{width:35px;flex:0 0 35px;height:52px;border:0;border-radius:0;margin:0;background:none;box-shadow:none;transform:none;overflow:visible}
.poster-version .poster-canvas .main-art .book-cover{border-radius:2px;filter:none}
.poster-version .poster-canvas .main-art svg{display:block;width:100%;height:100%;opacity:1;filter:none}
.poster-version .poster-canvas .main-copy{padding:0;min-width:0;align-self:center;text-shadow:none}
.poster-version .poster-canvas .main-copy strong{display:block;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:20px;font-weight:900;color:#181b17;line-height:1.2;white-space:nowrap;letter-spacing:-.025em;text-shadow:none;-webkit-text-stroke:0}
.poster-version .poster-canvas .main-copy small{display:table;margin-top:3px;padding:1px 7px;border-radius:8px;background:#ffdce2;color:#752738;font-family:"Microsoft YaHei",sans-serif;font-size:15px;font-weight:500;line-height:1.35;white-space:nowrap;text-shadow:none}
.poster-version .poster-canvas .hint-arrow,.poster-version .poster-canvas .mobile-branches,.poster-version .poster-canvas .phase-marker,.poster-version .poster-canvas .handoff{display:none!important}
.poster-version .poster-canvas .branch-group{display:contents}
.poster-version .poster-canvas .branch-sign{position:absolute;display:flex!important;align-items:center;gap:8px;min-height:0;height:68px;margin:0;padding:6px 9px 6px 25px;border:0;border-radius:0;background:none;box-shadow:none;isolation:isolate;filter:none;transform:none;overflow:visible;text-align:left}
.poster-version .poster-canvas .branch-sign::before,.poster-version .poster-canvas .branch-sign::after{content:"";display:block!important;position:absolute;inset:0;z-index:-1;clip-path:polygon(0 50%,10% 0,100% 0,100% 100%,10% 100%);border-radius:7px;background:#fffef7;border:0;box-shadow:none;transform:none}
.poster-version .poster-canvas .branch-sign::after{inset:-2px;z-index:-2;background:#44873b}
.poster-version .poster-canvas .branch-sign.sign-right{padding-left:10px;padding-right:27px}
.poster-version .poster-canvas .branch-sign.sign-right::before,.poster-version .poster-canvas .branch-sign.sign-right::after{transform:scaleX(-1)}
.poster-version .poster-canvas .branch-sign .signpost{position:absolute;display:block;top:100%;left:47%;width:8px;height:19px;border:0;border-radius:0;background:linear-gradient(90deg,#ab7639,#ddae6d,#af7b42);box-shadow:none;transform:none;z-index:-3}
.poster-version .poster-canvas .branch-sign .signpost::after,.poster-version .poster-canvas .branch-sign .sign-rivet,.poster-version .poster-canvas .little-dot{display:none}
.poster-version .poster-canvas .branch-sign:hover{transform:none;filter:drop-shadow(0 2px 1px #4e813735);box-shadow:none}
.poster-version .poster-canvas .branch-sign .small-art{display:block;width:33px;flex:0 0 33px;height:48px;margin:0;transform:none;overflow:visible}
.poster-version .poster-canvas .branch-sign .small-art svg{opacity:1}
.poster-version .poster-canvas .branch-sign .small-art .book-cover{filter:none}
.poster-version .poster-canvas .branch-sign .branch-copy{flex:1;min-width:0;align-self:center;color:#1b2118;text-align:left;text-shadow:none}
.poster-version .poster-canvas .branch-sign strong,.poster-version .poster-canvas .branch-sign[data-key="ox6-raz"] strong{display:block;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:14.5px;font-weight:800;line-height:1.2;color:#1b2118;letter-spacing:-.025em;text-shadow:none;-webkit-text-stroke:0;overflow-wrap:normal;word-break:normal}
.poster-version .poster-canvas .branch-sign small{display:block;margin:3px 0 0;padding:0;border-radius:0;color:#323c2c;background:none;font-size:12.5px;line-height:1.25;font-weight:500;white-space:normal;text-shadow:none}
.poster-version .poster-canvas .branch-sign em{display:none}
.poster-version .poster-canvas .raz-sign{height:27px;justify-content:center;padding:1px 4px!important;gap:0;border:1.4px solid #6da952;border-radius:999px;background:#fffef2;box-shadow:0 1px 2px #5a71351c}
.poster-version .poster-canvas .raz-sign::before,.poster-version .poster-canvas .raz-sign::after,.poster-version .poster-canvas .raz-sign .signpost{display:none!important}
.poster-version .poster-canvas .raz-sign .branch-copy{text-align:center}
.poster-version .poster-canvas .raz-sign strong,.poster-version .poster-canvas .raz-sign[data-key="ox6-raz"] strong{color:#36672d;font-size:14.5px;line-height:1.2;font-weight:800;letter-spacing:0}
.poster-version .poster-canvas .raz-sign small{display:none}
.poster-version .poster-canvas .next-landmark .main-sign{height:62px;padding:7px 16px;border:3px solid #fff0d4;border-radius:10px;background:linear-gradient(110deg,#f56e83,#ed5977);box-shadow:0 4px 0 #b77a3b45;text-align:center;justify-content:center}
.poster-version .poster-canvas .next-landmark .main-art,.poster-version .poster-canvas .next-landmark .station-number,.poster-version .poster-canvas .next-landmark .main-copy small{display:none}
.poster-version .poster-canvas .next-landmark .main-copy{flex:none}
.poster-version .poster-canvas .next-landmark .main-copy strong{font-size:23px;color:#fffdf7;font-weight:900;letter-spacing:.01em}
.poster-version .poster-phase{position:absolute;z-index:2;isolation:isolate;background:none;text-align:center;padding-top:9px;color:#fffdf2;font-size:26px;font-weight:900;text-shadow:0 1px 1px #6f3a24;transform:rotate(-5deg);line-height:1.2}
.poster-version .poster-phase::before{content:"";position:absolute;inset:0;z-index:-1;background:url('assets/handdrawn-plank.4865b0d5fb42.png') center/100% 100% no-repeat;filter:brightness(.7) saturate(1.5)}
.poster-version .poster-start-board{position:absolute;z-index:2;left:55px;top:199px;width:175px;height:172px;padding:13px 13px 0;background:url('assets/handdrawn-plank.4865b0d5fb42.png') center/100% 100% no-repeat;color:#4b2b19;text-align:center;transform:rotate(-7deg);font-weight:800;line-height:1.4}
.poster-version .poster-start-board b,.poster-version .poster-start-board strong{display:block;font-size:24px;margin-bottom:3px}.poster-version .poster-start-board span{display:block;font-size:16px;line-height:1.35}
.poster-version .poster-handoff{position:absolute;left:294px;top:993px;width:352px;height:54px;z-index:3;border:3px solid #b87c41;border-radius:12px;background:linear-gradient(110deg,#f87988,#e95373);display:flex;align-items:center;justify-content:center;gap:8px;color:#fffdf4;font-size:23px;font-weight:900;letter-spacing:.03em;box-shadow:inset 0 0 0 2px #ffe6bd7a;transform:rotate(-1deg)}
.poster-version .poster-handoff span{font-size:24px}
.poster-version .poster-hint{max-width:1400px;margin:12px auto 0;padding:0 20px;font-size:12px;color:#6a775b;text-align:center;line-height:1.8}
.poster-version .route-note{max-width:1160px;margin:15px auto;font-size:11px}
.poster-version .ideas-section{max-width:1160px;margin-top:48px}
.poster-version .ideas-section h2{font-size:28px}
@media(max-width:940px){
 .poster-version .poster-tools .poster-zoom-button{display:inline-flex}
 .poster-version .poster-tools{padding:7px 12px;font-size:11px;gap:7px}
 .poster-version .poster-tools .poster-tool-links{gap:10px}
 .poster-version .poster-tools button{font-size:11px;padding:6px 9px}
 .poster-version .poster-scroll{width:100%;max-width:none}
 .poster-version .poster-frame{margin-left:auto;margin-right:auto}
 .poster-version .poster-scroll.is-zoomed .poster-frame{margin-left:0;margin-right:0}
 .poster-version .poster-tool-label{display:none}
 .poster-version .poster-hint{font-size:11px;padding:0 16px}
}
@media(prefers-reduced-motion:reduce){.poster-version .poster-canvas button{transition:none!important}}
