/* Document shell only. Fonts and design typography are separate assets. */
html { scroll-behavior:smooth; scroll-padding-top:108px; }
body { margin:0; background:#fff; }
[hidden] { display:none!important; }
/* Exact business-card lettering; size and color inherit from each text role. */
.imada-card-slogan {display:inline-block;position:relative;width:12.171783em;max-width:100%;vertical-align:-.08em;}
.imada-card-slogan::before {content:"";display:block;aspect-ratio:83.263397 / 6.840691;background:currentColor;-webkit-mask:url('./card-slogan.svg') center / contain no-repeat;mask:url('./card-slogan.svg') center / contain no-repeat;}
.imada-card-slogan-text {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;}
.about-intro .imada-card-slogan,.sc-about-intro .imada-card-slogan {color:#9fa0a0;}
@media (prefers-reduced-motion:reduce) { html {scroll-behavior:auto;} }

/* Shared map runtime: used by every design without styling the rest of the page. */
[data-naver-map] {position:relative;isolation:isolate;overflow:hidden;}
#legacy-root [data-naver-map] {height:370px;}
[data-naver-map] .imada-map-canvas {position:absolute;inset:0;}
[data-naver-map] .imada-map-message {position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;text-align:center;box-sizing:border-box;}
[data-naver-map] .imada-map-message strong {font-size:16px;line-height:1.6;}
[data-naver-map] .imada-map-message p {margin:0;max-width:30em;font-size:13px;line-height:1.7;}
[data-naver-map] .imada-map-retry {min-height:44px;padding:8px 18px;border:1px solid currentColor;border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:13px;cursor:pointer;}
[data-naver-map] .imada-map-retry:focus-visible {outline:2px solid currentColor;outline-offset:4px;}
[data-naver-map] .live-map-pin {position:relative;box-sizing:border-box;width:134.4px;height:57.4px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;}
[data-naver-map] .live-map-pin__body {position:absolute;inset:8.4px 0 0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:8.4px;padding:8.4px;border:1.05px solid #c7c9c9;border-radius:8.4px;background:#f6f7f7;}
[data-naver-map] .live-map-pin::before,[data-naver-map] .live-map-pin::after {content:"";position:absolute;left:50%;width:0;height:0;transform:translateX(-50%);pointer-events:none;}
[data-naver-map] .live-map-pin::before {top:0;border-left:6.3px solid transparent;border-right:6.3px solid transparent;border-bottom:9.1px solid #c7c9c9;}
[data-naver-map] .live-map-pin::after {top:2.1px;border-left:4.9px solid transparent;border-right:4.9px solid transparent;border-bottom:7.7px solid #f6f7f7;}
[data-naver-map] .live-map-pin img {display:block;flex:none;width:78.4px;height:auto;object-fit:contain;}
[data-naver-map] .live-map-pin__floor {display:block;flex:none;color:#000;font:700 23.8px/1 Arial,sans-serif;letter-spacing:0;white-space:nowrap;}
[data-naver-map] .imada-map-canvas img {max-width:none;}
@media (max-width:600px) {#legacy-root [data-naver-map] {height:315px;}}

/* Shared visit guidance; each design keeps its own card and text styles. */
.imada-visit-travel .imada-travel-title {display:flex;align-items:center;gap:10px;}
.imada-visit-travel .imada-travel-title svg.imada-heading-icon {flex:none;margin:0;}
.imada-visit-travel .imada-parking-notes {display:grid;gap:0;list-style:none;margin:12px 0 0;padding:0;}
.imada-visit-travel .imada-parking-notes > li {display:grid;grid-template-columns:1em minmax(0,1fr);gap:6px;margin:0;line-height:1.85;}
#legacy-root .imada-visit-travel .imada-parking-notes {font-size:13px;color:var(--muted);}
.imada-shadcn .imada-visit-travel .imada-parking-notes {font-size:var(--text-sm);color:var(--muted-foreground);}
.imada-untitled .imada-visit-travel .imada-parking-notes {font-size:var(--text-sm);color:var(--muted-foreground);}
.imada-material .imada-visit-travel .imada-parking-notes {font:var(--mt-type-body2);color:var(--muted-foreground);}
.imada-flat .imada-visit-travel .imada-parking-notes {font-size:var(--fl-text-sm);color:var(--muted-foreground);}
.imada-visit-travel .imada-subway-sentence {margin:0;line-height:1.85;}
.imada-visit-travel .imada-subway-line {display:inline-block;padding:1px 7px;border-radius:999px;color:#fff;font-size:.85em;font-weight:600;line-height:1.5;vertical-align:baseline;white-space:nowrap;}
.imada-visit-travel .imada-station-exit {font-weight:700;white-space:nowrap;}
.imada-visit-travel .imada-exit-number {display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:1.4em;height:1.4em;margin-right:.12em;border:2px solid #87776f;border-radius:50%;background:#ffeb5b;color:#3f3728;font-size:1em;line-height:1;vertical-align:baseline;}
.imada-visit-travel .imada-bus-list {display:grid;gap:14px;list-style:none;margin:0;padding:0;}
#legacy-root .imada-visit-travel .imada-bus-list {font-size:14px;}
@media (max-width:720px) {#legacy-root .imada-visit-travel .imada-bus-list {font-size:13px;}}
.imada-visit-travel .imada-bus-row {display:flex;align-items:flex-start;gap:10px;margin:0;min-width:0;}
.imada-visit-travel .imada-bus-icon {display:block;flex:0 0 28px;width:28px;height:30.8px;margin-top:calc((1.85em - 30.8px) / 2);object-fit:contain;}
.imada-visit-travel .imada-bus-content {flex:1;min-width:0;padding-top:0;}
.imada-visit-travel .imada-bus-content > p {margin:0;line-height:1.85;word-break:keep-all;overflow-wrap:break-word;}
.imada-visit-travel .imada-bus-content strong {font-weight:700;}
