.kakao-directions{box-sizing:border-box;max-width:1160px;margin:24px auto;padding:clamp(20px,3vw,36px);border:1px solid #d7e4df;border-radius:20px;background:#f5f9f6;color:#193c38;scroll-margin-top:100px}
.kakao-directions h2{margin:0 0 12px;font-size:clamp(23px,3vw,30px);line-height:1.4;color:#173d37}
.kakao-directions .kd-intro{margin:0 0 20px;line-height:1.8;color:#48655f}
.kd-map-shell{position:relative;width:100%;height:400px;overflow:hidden;border:1px solid #dce4df;border-radius:12px;background:#fff}
.kd-map-shell iframe{display:block;width:100%;height:400px;border:0;background:#fff}
.kd-map-status{position:absolute;inset:0;z-index:1;display:grid;place-items:center;padding:24px;text-align:center;color:#536960;background:#fff;font-size:15px;line-height:1.8;pointer-events:none}
.kd-map-shell[data-map-ready] .kd-map-status{display:none}
.kd-address{display:grid;grid-template-columns:6em 1fr;gap:12px;margin:0;padding:22px 0;border-bottom:1px solid #dce4df;line-height:1.85}
.kd-address dt{font-weight:700}.kd-address dd{margin:0;overflow-wrap:anywhere}
.kd-traffic{margin:0;padding:0;list-style:none}
.kd-traffic>li{padding:22px 0;border-bottom:1px solid #dce4df}.kd-traffic>li:last-child{border-bottom:0}
.kd-traffic h3{font-size:17px;line-height:1.6;margin:0 0 12px;color:#193c38}
.kd-stations,.kd-stops{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0;padding:0;list-style:none}
.kd-stations li,.kd-stops li{display:flex;align-items:baseline;gap:7px;line-height:1.8;font-size:15px;overflow-wrap:anywhere}
.kd-subway-line{display:inline-block;flex:0 0 auto;border-radius:12px;padding:0 7px;background:#e3efec;color:#326354;font-size:12px;line-height:1.8}
.kd-stop-number{display:inline-grid;place-items:center;flex:0 0 22px;min-width:22px;height:22px;border:1px solid #9ca59b;border-radius:50%;font-size:13px;color:#52604d;background:#fff}
.kd-buses{margin:0;padding:0;list-style:none}.kd-buses>li{display:flex;gap:10px;align-items:baseline;line-height:1.9;margin:7px 0;font-size:15px}
.kd-bus-type{display:inline-block;flex:0 0 auto;background:#e9eff4;color:#27465e;border-radius:4px;padding:0 7px;font-size:13px;font-weight:700}
.kd-bus-0101,.kd-bus-0107{background:#e4edfc;color:#294e9d}.kd-bus-0102,.kd-bus-0106,.kd-bus-0109{background:#e3f1e0;color:#326033}.kd-bus-0103,.kd-bus-0110{background:#fbe6e1;color:#a03d32}
.kd-bus-numbers{display:flex;flex-wrap:wrap;gap:2px 13px}.kd-source{margin:18px 0 0;font-size:13px;line-height:1.8;color:#60736b}
.kd-hub-select{display:block;width:100%;max-width:620px;min-height:48px;margin:10px 0 20px;padding:10px 14px;border:1px solid #b8cbc1;border-radius:8px;background:#fff;font:inherit;color:#193c38}
.kd-hub-link{display:inline-block;margin-top:18px;font-weight:700;color:#225b4b;text-underline-offset:4px}
.kakao-directions [hidden]{display:none!important}
@media(max-width:640px){.kakao-directions{margin:20px 0;padding:20px 12px;border-radius:16px}.kd-address{grid-template-columns:1fr;gap:4px}.kd-map-shell,.kd-map-shell iframe{height:360px}.kd-stations,.kd-stops{gap:9px 14px}.kd-buses>li{gap:8px}.kd-source{font-size:13px}}
