#walk-entry{background:#374d46;color:#fff;border-color:#374d46}body[data-mode=walk] .bottom,body[data-mode=walk] .zoom,body[data-mode=walk] .view-controls{display:none}#walk-panel[hidden]{display:none}#walk-panel{position:absolute;inset:0;pointer-events:none}#walk-panel button{pointer-events:auto;min-height:44px;font-size:13px}body[data-mode=walk] canvas{cursor:grab}body[data-mode=walk] canvas:active{cursor:grabbing}.journey-toolbar{position:absolute;top:24px;right:24px;display:flex;align-items:center;gap:7px;padding:7px;background:#fafaf4ed;border:1px solid #d5d9cf;border-radius:7px}.journey-toolbar>span{font-size:12px;padding:0 6px;color:#526252}.journey-pace{display:flex;gap:3px}.journey-pace button{padding:0 13px}.journey-pace button[aria-pressed=true],#walk-exit{background:#3e5347;color:#fff;border-color:#3e5347}.journey-map{position:absolute;top:141px;left:32px;width:166px;padding:7px;background:#fafaf5ed;border:1px solid #d5d9cf;border-radius:6px}.journey-map svg{width:150px;height:142px;display:block}.journey-map>div{display:flex;justify-content:space-between;gap:5px;font-size:11px;color:#50604f;margin-top:5px}.journey-map output{white-space:nowrap}#journey-marker{fill:#3c5542;stroke:#fff;stroke-width:2}.route-line{fill:none;stroke:#546f59;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.map-pin circle{fill:#48654e;stroke:#fff;stroke-width:2}.map-pin text{font:bold 11px sans-serif;fill:#fff;text-anchor:middle;dominant-baseline:central}.map-pin.goal circle{fill:#786f60}.journey-progress{position:absolute;bottom:63px;left:50%;transform:translateX(-50%);width:min(440px,calc(100% - 36px));padding:12px 16px;background:#fafaf5ed;border:1px solid #d5d9cf;border-radius:7px}.journey-progress>div{display:flex;justify-content:space-between;gap:14px;align-items:center;font-size:13px}.journey-progress strong{font-weight:500}.journey-progress output{white-space:nowrap;font-size:12px;color:#526252}.journey-progress progress{display:block;width:100%;height:5px;margin-top:11px}.journey-progress p{margin:8px 0 0;font-size:12px;color:#526252;line-height:1.6}.journey-camera{position:absolute;bottom:65px;right:24px;display:flex;flex-direction:column;align-items:flex-end;gap:7px;max-width:220px}.journey-camera>span{font-size:11px;padding:4px 6px;background:#f5f6eecc;border-radius:4px;color:#556451}.journey-camera button[hidden]{display:none}body[data-mode=walk] #detail{top:327px;max-width:235px}body[data-mode=walk] .credit{background:#eeede8c9;border-radius:3px;padding:3px 6px}
#route-planner{width:min(900px,calc(100vw - 36px));max-height:calc(100dvh - 40px);padding:25px;border:1px solid #cdd4c6;border-radius:12px;background:#f2f1e9;color:#343b38;box-shadow:0 24px 80px #26342d40;overflow:auto}#route-planner::backdrop{background:#29332c70;backdrop-filter:blur(3px)}#route-planner .route-heading{position:static;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:auto;margin-bottom:20px}#route-planner .route-heading p{margin:0 0 8px;font-size:11px;color:#64705f;letter-spacing:.16em}#route-planner h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:23px;font-weight:500;letter-spacing:.04em;margin:0 0 9px}#route-planner .route-heading .route-intro{font:13px/1.6 "Yu Gothic UI",Meiryo,sans-serif;letter-spacing:0;margin:0}#route-close{font-size:24px;padding:0;width:42px;min-height:42px;box-shadow:none;background:transparent;border-color:transparent}.route-content{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,1fr);gap:24px}.route-map-column{min-width:0}.map-pick-tools{display:flex;gap:7px;margin-bottom:8px}.map-pick-tools button{flex:1;padding:0 7px;min-height:44px;font-size:12px;line-height:1.5}.map-pick-tools button[aria-pressed=true]{background:#dce3d7;border-color:#879b84;color:#344e38}#route-map{display:block;width:100%;height:auto;aspect-ratio:450/400;background:#e9eae1;border:1px solid #d3d8cc;border-radius:7px;cursor:crosshair;touch-action:manipulation}#map-pick-help{font-size:12px;line-height:1.7;margin:9px 0;color:#5b6858}.route-fields{display:flex;flex-direction:column;min-width:0}.route-character{display:flex;align-items:center;gap:14px;padding:0 8px 8px;margin-bottom:6px;border-bottom:1px solid #d7dccf}.route-character img{object-fit:contain;width:65px;height:100px;border-radius:6px}.route-character p{font-family:"Yu Mincho",serif;font-size:14px;line-height:1.9;margin:0;color:#596951}.route-fields>label{font-size:13px;margin:10px 0 6px;display:flex;align-items:center;gap:6px}.route-fields>label span{display:inline-grid;place-items:center;background:#49644e;color:#fff;width:20px;height:20px;border-radius:50%;font:11px sans-serif}.route-fields select{font:inherit;font-size:13px;min-height:44px;border:1px solid #bfcab8;background:#fffef9;border-radius:5px;padding:0 9px;color:#343b38;width:100%}.route-fields select:focus-visible,#route-planner input:focus-visible{outline:3px solid #5d8178;outline-offset:3px}#route-swap{align-self:flex-end;min-height:32px;padding:0 8px;font-size:11px;border:0;box-shadow:none;background:transparent;margin:3px 0 -10px}.route-speed{border:0;padding:0;margin:17px 0 12px;display:flex;gap:8px}.route-speed legend{font-size:12px;color:#5d6a57;margin-bottom:7px}.route-speed label{display:flex;align-items:center;gap:6px;flex:1;padding:10px;border:1px solid #cbd4c4;border-radius:5px;background:#fbfbf5;font-size:13px}.route-speed input{accent-color:#4a6650}#route-summary{font-size:13px;line-height:1.8;min-height:54px;color:#50634b;padding:7px 0 13px}#route-summary.error{color:#805447}#route-depart{background:#3e5745;border-color:#3e5745;color:#fff;min-height:46px;font-size:14px}#route-cancel{margin-top:7px;box-shadow:none;background:transparent;border:0;min-height:36px;font-size:12px;color:#66705e}
@media(max-width:1000px){.journey-toolbar{top:20px;right:18px;max-width:calc(100% - 225px);flex-wrap:wrap;justify-content:flex-end}.journey-toolbar>span{display:none}.journey-camera{bottom:188px;right:18px}.journey-camera>span{display:none}.journey-progress{bottom:60px}.journey-map{left:24px;top:140px}}
@media(max-width:650px){#route-planner{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:16px;border-radius:9px}#route-planner h2{font-size:20px}#route-planner .route-heading{margin-bottom:12px}.route-content{display:flex;flex-direction:column-reverse;gap:15px}.route-fields{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px}.route-character{grid-column:1/-1;margin:0;gap:12px;padding:0 4px 8px}.route-character img{width:47px;height:69px}.route-character p{font-size:12px;line-height:1.7}.route-fields>label{margin:6px 0 2px}.route-fields>label[for=route-from]{grid-column:1;grid-row:2}.route-fields>label[for=route-to]{grid-column:2;grid-row:2}#route-from{grid-column:1;grid-row:3}#route-to{grid-column:2;grid-row:3}#route-swap{grid-column:1/-1;justify-self:center;min-height:30px;margin:0;grid-row:4}.route-speed{grid-column:1/-1;margin:2px 0 3px}#route-summary{grid-column:1/-1;min-height:0;padding:6px 0;font-size:12px}#route-depart,#route-cancel{grid-column:1/-1}.map-pick-tools button{min-height:44px;font-size:11px}#map-pick-help{font-size:11px}.journey-toolbar{top:15px;right:13px;max-width:calc(100% - 170px);padding:5px;gap:4px}#walk-panel .journey-toolbar button{min-height:36px;font-size:11px;padding:0 8px}.journey-toolbar #journey-plan{display:none}.journey-map{width:112px;left:18px;top:106px;padding:5px}.journey-map svg{width:100px;height:96px}.journey-map>div{font-size:9px;flex-wrap:wrap}.journey-progress{bottom:62px;padding:10px 12px}.journey-progress>div{font-size:12px}.journey-camera{right:16px;bottom:182px}#walk-panel .journey-camera button{min-height:38px;font-size:11px;padding:0 9px}body[data-mode=walk] header{left:18px;top:19px}body[data-mode=walk] header h1{font-size:20px}body[data-mode=walk] header small{display:none}body[data-mode=walk] .credit{left:10px;right:10px;bottom:6px;font-size:8px}body[data-mode=walk] .credit>span:first-child{display:none}body[data-mode=walk] #detail{left:18px;top:245px;max-width:210px;max-height:calc(100% - 450px);overflow:auto}}
@media(max-height:540px){#route-planner{max-height:calc(100dvh - 16px);padding:16px}#route-planner .route-heading{margin-bottom:10px}.route-character{display:none}.route-content{grid-template-columns:1fr 1fr;gap:18px}body[data-mode=walk] header{display:none}.journey-map{top:15px;left:14px;width:105px}.journey-map svg{width:93px;height:86px}.journey-toolbar{top:15px;max-width:calc(100% - 150px)}.journey-progress{bottom:40px;width:min(380px,calc(100% - 180px))}.journey-camera{bottom:50px}.journey-camera>span{display:none}body[data-mode=walk] .credit>span:first-child{display:none}}
@media(max-width:650px){.journey-toolbar #journey-plan{display:inline-block}#walk-panel .journey-toolbar button{min-height:44px}}
