:root{interpolate-size:allow-keywords;--bg: #f6f4f1;--surface: #ffffff;--fill: #f1eee9;--fill-2: #e6e1d9;--ink: #1d1b18;--ink-2: #3f3b36;--muted: #6d675f;--faint: #857f77;--line: rgba(29, 27, 24, .09);--warm: #bf5320;--warm-soft: #fbece2;--accent: #1d1b18;--accent-ink: #ffffff;--ok: #248a3d;--ok-soft: #eef7f0;--danger: #d70015;--danger-soft: #fdf3f3;--hero: #1f1c19;--on-hero: #f7f4ef;--on-hero-2: rgba(245, 245, 247, .6);--hero-line: rgba(255, 255, 255, .1);--font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, monospace;--r-sm: 8px;--r-md: 12px;--r-lg: 18px;--r-full: 999px;--shadow: 0 1px 2px rgba(0, 0, 0, .04);--shadow-lg: 0 20px 50px -12px rgba(0, 0, 0, .3);--ease: cubic-bezier(.22, 1, .36, 1);--transition-fast: .16s var(--ease);--tab-h: 62px;color-scheme:light}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{scroll-behavior:smooth;scroll-padding-top:70px;scroll-padding-bottom:calc(var(--tab-h) + 12px + env(safe-area-inset-bottom))}body{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--bg);color:var(--ink-2);font-family:var(--font-body);font-size:15px;line-height:1.47;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}button{font:inherit;color:inherit;cursor:pointer}svg{flex-shrink:0}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.portal-wrap{flex:1 0 auto;width:100%;max-width:600px;margin:0 auto;padding:12px 16px 28px;display:flex;flex-direction:column;gap:12px}.portal-top-bar{position:sticky;top:0;z-index:120;background:var(--bg);border-bottom:1px solid var(--line)}.portal-top-bar-inner{max-width:600px;margin:0 auto;padding:10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-brand-link{display:flex;flex:1 1 auto;align-items:center;gap:10px;min-width:0;color:var(--ink);text-decoration:none}.brand-text-wrap{display:flex;flex-direction:column;min-width:0;line-height:1}.top-room{display:grid;place-items:center;align-content:center;flex:none;min-width:46px;height:32px;padding:0 8px;border-radius:9px;background:var(--ink);color:#fff;line-height:1}.top-room[hidden]{display:none}.top-room small{font-size:7.5px;font-weight:700;letter-spacing:.12em;opacity:.7}.top-room b{margin-top:2px;font-size:14px;font-weight:750;font-variant-numeric:tabular-nums}.top-wx{display:grid;justify-items:center;flex:none;color:var(--ink);line-height:1}.top-wx[hidden]{display:none}.top-wx span{display:inline-flex;align-items:center;gap:4px;font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}.top-wx small{margin-top:4px;color:var(--faint);font-size:9px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}@media (max-width: 399px){.lang-chevron-icon{display:none}.lang-dropdown-btn{padding:0 11px}}@media (max-width: 359px){.lang-current-label{display:none}.brand-name{font-size:13.5px;letter-spacing:.1em}.brand-subname{letter-spacing:.22em}}.brand-name{white-space:nowrap;font-size:15px;font-weight:700;letter-spacing:.14em}.brand-subname{margin-top:4px;color:var(--faint);font-size:9px;font-weight:600;letter-spacing:.32em}.lang-dropdown-wrapper{position:relative}.top-actions{display:flex;flex:none;align-items:center;gap:12px}.lang-dropdown-btn{display:inline-flex;white-space:nowrap;align-items:center;gap:6px;height:32px;padding:0 10px 0 11px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--ink);font-size:13px;font-weight:500}.lang-globe-icon,.lang-chevron-icon{color:var(--muted)}.lang-chevron-icon{transition:transform var(--transition-fast)}.lang-dropdown-wrapper.open .lang-chevron-icon{transform:rotate(180deg)}.lang-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;width:180px;padding:4px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--transition-fast),transform var(--transition-fast),visibility var(--transition-fast)}.lang-dropdown-wrapper.open .lang-dropdown-menu{opacity:1;visibility:visible;transform:none}.lang-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:var(--r-sm);background:transparent;color:var(--ink);font-size:14px;text-align:left}.lang-menu-item:hover{background:var(--fill)}.lang-menu-item.active{font-weight:600}.lang-item-name{flex:1}.lang-check{color:var(--ink);opacity:0}.lang-menu-item.active .lang-check{opacity:1}.portal-toast{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom));left:50%;z-index:1000;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:var(--r-full);background:var(--ink);color:#fff;font-size:13px;font-weight:500;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transform:translate(-50%,12px);transition:opacity .2s var(--ease),transform .2s var(--ease)}.portal-toast.show{opacity:1;transform:translate(-50%)}.qna-heading{margin:22px 0 2px;color:var(--muted);font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.qna-list{display:flex;flex-direction:column}.qna-item+.qna-item{border-top:1px solid var(--line)}.qna-item summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;color:var(--ink);font-size:15px;font-weight:500;list-style:none;cursor:pointer}.qna-item summary::-webkit-details-marker{display:none}.qna-item summary svg{flex:none;color:var(--faint);transition:transform var(--transition-fast)}.qna-item[open] summary svg{transform:rotate(180deg)}.qna-item p{margin:0;padding:0 24px 14px 0;color:var(--ink-2);font-size:14px;line-height:1.5}.qna-item::details-content,.bus-timetable::details-content,.smoking-map-details::details-content{block-size:0;overflow:clip;transition:block-size .32s var(--ease),content-visibility .32s allow-discrete}.qna-item[open]::details-content,.bus-timetable[open]::details-content,.smoking-map-details[open]::details-content{block-size:auto}.qna-item[open]>:not(summary),.bus-timetable[open]>:not(summary),.smoking-map-details[open]>:not(summary){animation:detailsIn .32s var(--ease)}@keyframes detailsIn{0%{opacity:0;transform:translateY(-4px)}}.portal-tabs,.tab-panel{display:flex;flex-direction:column;gap:12px}.tab-panel[hidden]{display:none!important}.portal-card,.guest-essential-card,.desk-wifi-bar,.install-bar{border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.portal-card{--card-pad: 20px;display:flex;flex-direction:column;gap:16px;padding:var(--card-pad)}.card-title-combo{display:flex;align-items:center;gap:12px}.card-title-combo h2{color:var(--ink);font-size:19px;font-weight:600;letter-spacing:-.02em;line-height:1.25}.card-icon-pill,.essential-card-icon,.desk-wifi-icon{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:10px;background:var(--fill);color:var(--ink)}.card-icon-pill svg,.essential-card-icon svg,.desk-wifi-icon svg{width:18px;height:18px}.essential-action-btn,.btn-copy-sm,.compare-cta-btn,.taxi-modal-close{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:0 16px;border:0;border-radius:var(--r-full);background:var(--fill);color:var(--ink);font-size:14px;font-weight:500;text-decoration:none;transition:background var(--transition-fast),transform .1s var(--ease)}.essential-action-btn:hover,.compare-cta-btn:hover,.taxi-modal-close:hover{background:var(--fill-2)}.essential-action-btn:active,.btn-copy-sm:active,.compare-cta-btn:active{transform:scale(.98)}.essential-action-primary,.btn-copy-sm,.compare-cta-uber{background:var(--ink);color:#fff}.essential-action-primary:hover,.btn-copy-sm:hover,.compare-cta-uber:hover{background:#000}.hotel-rule-item+.hotel-rule-item,.nearby-item+.nearby-item,.compare-spec-row+.compare-spec-row{border-top:1px solid var(--line)}.guest-essentials-grid{display:grid}.guest-essential-card{display:flex;flex-direction:column;gap:14px;padding:20px}.guest-essential-card h2{color:var(--ink);font-size:19px;font-weight:600;letter-spacing:-.02em}.location-address p{color:var(--ink);font-size:15px}.location-address .location-address-ko{margin-top:2px;color:var(--muted);font-size:14px}html[lang=ko] .location-address-ko{display:none}.location-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.location-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:0;padding:14px 6px 12px;border:0;border-radius:var(--r-md);background:var(--fill);color:var(--ink);font-size:13px;font-weight:500;text-align:center;transition:background var(--transition-fast),transform .1s var(--ease)}.location-action:hover{background:var(--fill-2)}.location-action:active{transform:scale(.98)}.desk-wifi-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:20px}.desk-wifi-left{display:flex;align-items:center;gap:14px;min-width:0}.desk-wifi-title{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--ink);font-size:17px;font-weight:600}.desk-wifi-tag{padding:1px 7px;border-radius:6px;background:var(--fill);color:var(--ink-2);font-family:var(--font-mono);font-size:12px;font-weight:500}.desk-wifi-sub{display:block;margin-top:2px;color:var(--muted);font-size:13px}.desk-wifi-right{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:6px 6px 6px 16px;border-radius:var(--r-md);background:var(--fill)}.desk-wifi-password{color:var(--ink);font-family:var(--font-mono);font-size:17px;font-weight:600;letter-spacing:.1em}.btn-copy-sm{min-height:34px;padding:0 14px;font-size:13px}.install-bar{display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px}.install-bar img{width:36px;height:36px;flex-shrink:0;border-radius:9px;box-shadow:0 0 0 1px var(--line)}.install-text{display:flex;flex:1;flex-direction:column;min-width:0;line-height:1.35}.install-text strong{color:var(--ink);font-size:14px;font-weight:600}.install-text span{color:var(--muted);font-size:12.5px}.install-dismiss{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border:0;border-radius:50%;background:transparent;color:var(--faint)}.rules-lead{display:flex;gap:12px;padding:16px;border-radius:var(--r-md);background:var(--danger-soft)}.rules-lead>svg{width:18px;height:18px;margin-top:2px;color:var(--danger)}.rules-lead>div{flex:1;min-width:0}.rules-lead-kicker{color:var(--danger);font-size:12px;font-weight:600}.smoking-ban-title{margin-top:2px;color:var(--ink);font-size:16px;font-weight:600}.smoking-ban-desc{margin-top:4px;color:var(--ink-2);font-size:14px}.smoking-map-details{margin-top:10px}.smoking-map-details summary{display:inline-flex;align-items:center;gap:6px;color:var(--danger);font-size:14px;font-weight:500;list-style:none;cursor:pointer}.smoking-map-details summary::-webkit-details-marker{display:none}.smoking-map-details summary:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform var(--transition-fast)}.smoking-map-details[open] summary:after{transform:translateY(1px) rotate(-135deg)}.smoking-map-legend{display:flex;gap:14px;margin:12px 0 8px;color:var(--ink-2);font-size:12px}.smoking-map-legend>span{display:inline-flex;align-items:center;gap:6px}.map-dot{width:9px;height:9px;border-radius:50%}.map-dot-hotel,.map-pin-hotel{background:#1d1d1f}.map-dot-smoking,.map-pin-smoking{background:#d70015}.smoking-map-frame{height:240px;border-radius:var(--r-md);background:var(--fill);overflow:hidden}.smoking-map-frame .leaflet-tile-pane{filter:grayscale(1) contrast(.9) brightness(1.05)}.smoking-map-external{display:inline-block;margin-top:8px;color:var(--danger);font-size:13px;font-weight:500}.leaflet-custom-marker{border:0;background:transparent}.map-pin{position:relative;display:block;width:22px;height:22px;border:2px solid #ffffff;border-radius:50% 50% 50% 0;box-shadow:0 2px 6px #0000004d;transform:rotate(-45deg)}.map-pin:after{content:"";position:absolute;top:5px;left:5px;width:8px;height:8px;border-radius:50%;background:#fff}.hotel-rule-item{display:grid;grid-template-columns:1fr auto;align-items:baseline;column-gap:16px;padding:14px 0}.hotel-rule-item:last-child{padding-bottom:0}.hotel-rule-item>div:last-child{display:contents}.hotel-rule-title{grid-column:1;grid-row:1}.hotel-rule-desc{grid-column:1 / -1}.hotel-rule-fee{grid-column:2;grid-row:1;color:var(--ink);font-size:14px;font-weight:600;text-align:right;font-variant-numeric:tabular-nums}.hotel-rule-title{color:var(--ink);font-size:15px;font-weight:500}.hotel-rule-desc{margin-top:2px;color:var(--muted);font-size:13px}.nearby-list{display:flex;flex-direction:column}.nearby-item{position:relative;display:flex;align-items:center;gap:14px;padding:14px 24px 14px 0;color:inherit;text-decoration:none}.nearby-item:first-child{padding-top:0}.nearby-item:last-child{padding-bottom:0}.nearby-item:after{content:"";position:absolute;right:4px;top:50%;width:7px;height:7px;border-top:1.5px solid var(--faint);border-right:1.5px solid var(--faint);transform:translateY(-50%) rotate(45deg)}.nearby-icon{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:10px;background:var(--fill);color:var(--ink)}.nearby-text{display:flex;flex:1;flex-direction:column;min-width:0;line-height:1.35}.nearby-tag{color:var(--muted);font-size:12px}.nearby-text strong{color:var(--ink);font-size:15px;font-weight:600}.nearby-text small{color:var(--muted);font-size:13px}.nearby-walk{margin-top:2px;color:var(--ink-2);font-size:13px}.luggage-location-grid{display:grid;grid-template-columns:1fr 1fr;padding-bottom:16px;border-bottom:1px solid var(--line)}.luggage-location-card+.luggage-location-card{padding-left:16px;border-left:1px solid var(--line)}.luggage-loc-time{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.luggage-loc-time svg{width:14px;height:14px}.luggage-loc-place{margin-top:4px;color:var(--ink);font-size:15px;font-weight:600;line-height:1.3}.luggage-process-grid{display:flex;flex-direction:column}.luggage-step-card{position:relative;display:grid;grid-template-columns:24px 1fr;column-gap:14px;padding-bottom:16px}.luggage-step-card:last-child{padding-bottom:0}.luggage-step-card:not(:last-child):before{content:"";position:absolute;top:28px;bottom:4px;left:11.5px;width:1px;background:var(--line)}.step-badge-num{grid-row:span 2;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;font-weight:600}.step-card-title{padding-top:2px;color:var(--ink);font-size:15px;font-weight:500}.step-card-desc{color:var(--muted);font-size:13px}.transit-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;padding:3px;border-radius:10px;background:var(--fill)}.transit-tabs button{min-height:34px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:14px;font-weight:500;transition:background var(--transition-fast),color var(--transition-fast)}.transit-tabs button[aria-selected=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #0000001a}.transit-compare-grid{display:grid;grid-template-columns:1fr;gap:10px;padding-top:8px}.transit-compare-grid[data-active=bus] .transit-compare-col:not([data-transit=bus]),.transit-compare-grid[data-active=arex] .transit-compare-col:not([data-transit=arex]),.transit-compare-grid[data-active=taxi] .transit-compare-col:not([data-transit=taxi]){display:none}.timetable-extra{padding:0 14px 6px}.transit-compare-col{position:relative;display:flex;flex-direction:column;gap:10px;padding:16px;border:1px solid var(--line);border-radius:var(--r-md)}.compare-col-recommended{border-color:var(--ink)}.compare-recommended-tag{position:absolute;top:-9px;right:14px;padding:2px 8px;border-radius:var(--r-full);background:var(--ink);color:#fff;font-size:11px;font-weight:600}.compare-col-header{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:16px;font-weight:600}.compare-col-header svg{width:18px;height:18px;color:var(--muted)}.compare-col-badge{align-self:flex-start;color:var(--muted);font-size:13px}.compare-col-sub{margin:-6px 0 0 28px;color:var(--muted);font-size:13px;line-height:1.4}.compare-spec-list{display:flex;flex-direction:column}.compare-spec-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:13.5px}.compare-spec-label{color:var(--muted)}.compare-spec-value{color:var(--ink);font-weight:500;text-align:right}.compare-highlight{font-size:15px;font-weight:600}.compare-cta-btn{width:100%}.hotel-taxi{display:flex;flex-direction:column;gap:4px;margin-top:4px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;line-height:1.45}.hotel-taxi strong{color:var(--ink);font-size:14px}.hotel-taxi .hotel-taxi-btn{margin-top:8px;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.next-bus{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;padding:10px 12px;border-radius:var(--r-sm);background:var(--ok-soft);color:var(--ink-2);font-size:13px}.next-bus:empty{display:none}.next-bus-label{color:var(--ok);font-weight:600}.next-bus strong{color:var(--ink);font-size:16px;font-weight:600;font-variant-numeric:tabular-nums}.next-bus-then{color:var(--muted)}.bus-timetable{border-radius:var(--r-sm);background:var(--fill)}.bus-timetable summary{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;color:var(--ink);font-size:14px;font-weight:500;list-style:none;cursor:pointer}.bus-timetable summary::-webkit-details-marker{display:none}.bus-timetable summary svg{color:var(--muted);transition:transform var(--transition-fast)}.bus-timetable[open] summary svg{transform:rotate(180deg)}.timetable-periods{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 14px 14px}.timetable-period h3{margin-bottom:4px;color:var(--ink);font-size:12px;font-weight:600}.timetable-times{color:var(--ink-2);font-family:var(--font-mono);font-size:11px;line-height:1.7}.departure-checklist{padding-top:16px;border-top:1px solid var(--line)}.departure-checklist-heading{display:flex;align-items:center;gap:8px;color:var(--ink);font-size:15px;font-weight:600}.departure-checklist-heading svg{width:16px;height:16px;color:var(--muted)}.departure-checklist-list{display:flex;flex-direction:column;gap:6px;margin-top:10px;list-style:none}.departure-checklist-list li{position:relative;padding-left:22px;color:var(--ink-2);font-size:14px}.departure-checklist-list li:before{content:"";position:absolute;top:4px;left:0;width:12px;height:12px;border:1.5px solid var(--faint);border-radius:3px}.terminal-warn-note{padding:12px 14px;border-radius:var(--r-sm);background:var(--fill);color:var(--ink);font-size:14px;font-weight:500}.driver-card{position:fixed;inset:0;z-index:1001;display:flex;flex-direction:column;padding:calc(20px + env(safe-area-inset-top)) 24px calc(24px + env(safe-area-inset-bottom));background:#fff;color:#000;animation:fadeIn .2s var(--ease)}.driver-card-close{align-self:flex-end;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:var(--fill);color:var(--ink)}.driver-card-body{display:flex;flex:1;flex-direction:column;justify-content:center;gap:14px}.driver-card-ask{color:var(--muted);font-size:clamp(20px,6vw,28px);font-weight:600}.driver-card-name{font-size:clamp(36px,11vw,56px);font-weight:700;line-height:1.1;letter-spacing:-.02em}.driver-card-addr{font-size:clamp(26px,8vw,40px);font-weight:600;line-height:1.3}.driver-card-en{padding-top:14px;border-top:1px solid var(--line);color:var(--muted);font-size:15px}.driver-card-foot{display:flex;flex-direction:column;gap:10px}.driver-card-hint{color:var(--muted);font-size:13px;text-align:center}.driver-card-uber{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:var(--r-full);background:#000;color:#fff;font-size:15px;font-weight:600;text-decoration:none}.taxi-modal-overlay{display:none;position:fixed;inset:0;z-index:999;align-items:flex-end;justify-content:center;padding:12px;background:#0006;animation:fadeIn .2s var(--ease)}.taxi-modal-box{width:100%;max-width:420px;padding:22px 18px calc(18px + env(safe-area-inset-bottom));border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-lg);animation:sheetUp .26s var(--ease)}.taxi-modal-title{color:var(--ink);font-size:19px;font-weight:600;letter-spacing:-.02em}.map-chooser-desc{margin-top:2px;color:var(--muted);font-size:14px}.map-provider-list{display:flex;flex-direction:column;margin:14px 0 12px}.map-provider-btn{display:flex;align-items:center;gap:12px;padding:12px 0;color:var(--ink);text-decoration:none}.map-provider-btn+.map-provider-btn{border-top:1px solid var(--line)}.map-provider-btn strong{flex:1;font-size:15px;font-weight:500}.map-provider-btn>span:last-child{color:var(--muted);font-size:14px}.map-provider-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;color:#fff;font-size:15px;font-weight:700}.map-icon-google{background:#4285f4}.map-icon-naver{background:#03c75a}.map-icon-apple{background:#000}.taxi-modal-close{width:100%}@keyframes fadeIn{0%{opacity:0}}@keyframes sheetUp{0%{transform:translateY(40px);opacity:0}}@media (min-width: 600px){.taxi-modal-overlay{align-items:center}}@media (max-width: 320px){.portal-wrap{padding-left:10px}}@media (min-width: 640px){.portal-wrap{gap:18px;padding-top:24px}.portal-card{--card-pad: 24px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}}.signin-prompt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px 16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow);color:var(--ink-2);font-size:14px;line-height:1.4}.signin-prompt-btn{flex:none;min-height:36px;padding:6px 16px;border:0;border-radius:999px;background:var(--accent);color:var(--accent-ink);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.stay-card{padding:18px 18px 8px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.stay-list{margin:0;padding:0;list-style:none}.stay-day-sub{margin:-2px 0 6px;color:var(--muted);font-size:13px}.stay-list .day-row{display:grid;grid-template-columns:44px 14px minmax(0,1fr);align-items:start;gap:0 10px;padding:9px 0}.day-row time{padding-top:1px;color:var(--muted);font-size:13px;font-weight:650;font-variant-numeric:tabular-nums}.day-row.is-now time{color:var(--warm)}.day-dot{position:relative;align-self:stretch}.day-dot:before{content:"";position:absolute;top:5px;left:2px;z-index:1;width:10px;height:10px;box-sizing:border-box;border:2px solid var(--faint);border-radius:50%;background:var(--surface)}.day-dot:after{content:"";position:absolute;top:17px;bottom:-16px;left:6px;width:2px;background:var(--line)}.day-row:last-child .day-dot:after{display:none}.day-row.is-done .day-dot:before{border-color:var(--ok);background:var(--ok)}.day-row.is-now .day-dot:before{border-color:var(--warm);background:var(--warm)}.day-body{display:grid;justify-items:start;line-height:1.4}.day-title{display:flex;align-items:center;gap:6px;color:var(--ink);font-size:15px;font-weight:650}.day-title .sky-icon{flex:none;color:var(--muted)}.day-detail{margin-top:2px;color:var(--muted);font-size:13.5px}.day-body>.stay-action,.day-chips{margin-top:10px}.day-body>.day-cancel{margin:8px 0 0}.day-row.is-done time,.day-row.is-done .day-body{opacity:.5}.day-chips{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;width:100%}.day-chip{padding:8px 0;border:0;border-radius:var(--r-full);background:var(--fill);color:var(--ink);font:inherit;font-size:13px;font-weight:650;font-variant-numeric:tabular-nums;cursor:pointer}.day-chip:hover{background:var(--fill-2)}.day-chip.is-picked{background:var(--ink);color:#fff;cursor:default}.day-chip:disabled{opacity:.5;cursor:default}.stay-action{flex:none;padding:6px 14px;border:0;border-radius:var(--r-full);background:var(--fill);color:var(--ink);font:inherit;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer}.stay-action.is-primary{background:var(--accent);color:var(--accent-ink)}.guest-gate{width:min(400px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:var(--r-lg);background:transparent}.guest-gate::backdrop{background:#0006}.guest-gate[open]{animation:popIn .22s var(--ease)}@keyframes popIn{0%{opacity:0;transform:scale(.96)}}.guest-gate-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:#ffffffd9;color:var(--ink);cursor:pointer}.guest-gate-card{width:100%;max-width:400px;overflow:hidden;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.guest-gate-photo{position:relative;height:130px;background:linear-gradient(180deg,#1d1d1f00 40%,#1d1d1f59),url(../images/hero.jpg?v=2) center 30% / cover no-repeat,var(--hero)}.guest-gate-body{display:flex;flex-direction:column;gap:14px;padding:22px 20px 20px}.guest-gate-title{color:var(--ink);font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.25}.guest-gate-desc{margin-top:-6px;color:var(--muted);font-size:14px}.guest-gate-field{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:13px;font-weight:500}.guest-gate-field small{color:var(--faint);font-size:12px;font-weight:400}.guest-gate-input{width:100%;padding:12px 14px;border:1px solid transparent;border-radius:var(--r-md);background:var(--fill);color:var(--ink);font:inherit;font-size:16px}.guest-gate-input:focus{border-color:var(--accent);outline:none;background:var(--surface)}.guest-gate-msg{padding:12px 14px;border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger);font-size:14px}.guest-gate-btn{min-height:48px;border:0;border-radius:var(--r-md);background:var(--accent);color:var(--accent-ink);font:inherit;font-size:16px;font-weight:600;cursor:pointer}.guest-gate-btn:disabled{opacity:.5}.guest-gate-terms{margin:-2px 2px 0;color:var(--muted);font-size:12.5px;line-height:1.5;text-align:center;word-break:keep-all}.guest-gate-terms a{color:var(--ink-2);text-decoration:underline;text-underline-offset:2px}.portal-legal{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 8px;padding:8px 0 4px;color:var(--faint);font-size:12.5px}.portal-legal a{color:var(--muted);text-decoration:none}.portal-legal a:hover{text-decoration:underline}body[data-tab=chat] .portal-legal{display:none}.review-desc{margin:-6px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.req-option{display:flex;align-items:center;gap:10px;min-height:56px;padding:12px 14px;border:0;border-radius:var(--r-md);background:var(--fill);color:var(--ink);font:inherit;font-size:14px;font-weight:600;line-height:1.25;text-align:left;cursor:pointer}.req-option:hover{background:var(--fill-2)}.req-option svg{flex:none;color:var(--muted)}.req-note{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.req-cancel{margin-left:auto;padding:4px 12px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--muted);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.req-cancel.is-sure{border-color:var(--danger);background:var(--danger-soft);color:var(--danger)}.req-dialog .guest-gate-body{position:relative}.req-dialog .guest-gate-title{padding-right:36px}.req-fields{display:flex;flex-direction:column;gap:10px}.req-ask{margin:0;color:var(--muted);font-size:13px;font-weight:500}.req-chips{display:flex;flex-wrap:wrap;gap:8px}.req-chip input{position:absolute;opacity:0;pointer-events:none}.req-chip span{display:inline-block;padding:9px 14px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--ink);font-size:14px;font-weight:500;cursor:pointer}.req-chip input:checked+span{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.req-chip input:focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}.req-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.req-hint{margin:-4px 0 0;white-space:pre-line;color:var(--muted);font-size:13px;line-height:1.5}.req-text{resize:vertical}.req-warn{margin:0;padding:10px 12px;border-radius:var(--r-md);background:var(--danger-soft);color:var(--danger);font-size:13px;font-weight:600;line-height:1.5}:lang(ja) .req-option span{word-break:keep-all}:lang(ko) .review-desc,:lang(ko) .req-option,:lang(ko) .chat-msg,:lang(ko) .review-nudge p,:lang(ko) .req-hint,:lang(ko) .req-note,:lang(ko) .req-chip span,:lang(ko) .review-hint,:lang(ko) .day-body p,:lang(ko) .req-answer p,:lang(ko) .today-title,:lang(ko) .hero-title,:lang(ko) .hero-text,:lang(ko) .tab-desc,:lang(ko) .extra-card h3,:lang(ko) .extra-card p,:lang(ko) .review-gift-text,:lang(ko) .review-steps li,:lang(ko) .req-warn,:lang(ko) .hotel-taxi{word-break:keep-all;overflow-wrap:anywhere}.review-card{overflow:hidden}.review-gift{display:flex;align-items:center;gap:16px;margin:calc(-1 * var(--card-pad)) calc(-1 * var(--card-pad)) 0;padding:22px var(--card-pad);background:linear-gradient(135deg,#fff6e8,#fdeeee)}.review-gift-art{flex:none}.review-gift-text{display:flex;flex-direction:column;gap:4px;min-width:0}.review-gift-tag{align-self:flex-start;padding:3px 10px;border-radius:var(--r-full);background:#e1251b;color:#fff;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.review-gift-title{margin:2px 0 0;color:var(--ink);font-size:19px;font-weight:700;letter-spacing:-.01em;line-height:1.3}.review-gift .review-desc{margin:0;color:var(--ink-2)}.review-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none}.review-steps li{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 6px;border-radius:var(--r-md);background:var(--fill);color:var(--ink);font-size:13px;font-weight:600;line-height:1.35;text-align:center}.review-steps b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--accent-ink);font-size:12px}.review-ask{margin:0;color:var(--ink);font-size:14px;font-weight:600}.review-sites{display:flex;flex-wrap:wrap;gap:8px}.review-site{padding:10px 16px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;text-decoration:none}.review-site.is-google{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.review-hint{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.guest-signed{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 12px;padding:8px 0;color:var(--faint);font-size:13px}.guest-signout{padding:0;border:0;background:none;color:var(--muted);font:inherit;text-decoration:underline;cursor:pointer}.portal-notices,.guest-msgs{display:grid;gap:8px}.portal-notices[hidden],.guest-msgs[hidden]{display:none}.portal-notice{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;padding:12px 8px 12px 14px;border-radius:var(--r-lg);background:#fff4e5;color:#7a4100;font-size:14px;line-height:1.5}.portal-notice svg{margin-top:2px}.portal-notice p{margin:0;overflow-wrap:anywhere;white-space:pre-line}.portal-notice strong{display:block;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.portal-notice-x{width:28px;height:28px;border:0;border-radius:50%;background:none;color:inherit;font-size:18px;line-height:1;cursor:pointer}.portal-notice-x:hover{background:#7a41001a}.guest-msg{display:grid;gap:8px;padding:16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow),inset 3px 0 0 var(--ok)}.guest-msg-head{display:flex;align-items:center;gap:8px;color:var(--ok);font-size:13px}.guest-msg-head time{margin-left:auto;color:var(--muted);font-size:12px}.guest-msg p{margin:0;color:var(--ink);font-size:15px;line-height:1.5;overflow-wrap:anywhere;white-space:pre-line}.guest-msg-ok{justify-self:end;min-height:36px;padding:0 18px;border:0;border-radius:999px;background:var(--accent);color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.push-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;margin:0 0 10px;padding:12px 0 4px;border-top:1px solid var(--line)}.push-row[hidden]{display:none}.push-row p{display:flex;flex:1 1 200px;align-items:flex-start;gap:8px;margin:0;color:var(--ink-2);font-size:14px;line-height:1.45}.push-row svg{flex:none;margin-top:2px;color:var(--muted)}.push-btn{min-height:36px;padding:0 16px;border:0;border-radius:999px;background:var(--accent);color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}.push-btn:disabled{opacity:.5}.tab-bar{position:sticky;bottom:0;z-index:115;display:grid;grid-template-columns:repeat(4,1fr);flex-shrink:0;width:min(100%,600px);height:calc(var(--tab-h) + env(safe-area-inset-bottom));margin:0 auto;padding:4px 4px env(safe-area-inset-bottom);border-top:1px solid var(--line);background:var(--surface)}.tab-bar a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;color:var(--faint);font-size:11px;font-weight:600;text-decoration:none;transition:color var(--transition-fast)}.tab-bar svg{width:52px;height:30px;padding:4px 15px;border-radius:var(--r-full);transition:background var(--transition-fast)}.tab-bar span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tab-bar a[aria-current=page]{color:var(--ink)}.tab-bar a[aria-current=page] svg{background:var(--fill)}.tab-badge{position:absolute;top:2px;left:calc(50% + 8px);display:grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--warm);box-shadow:0 0 0 2px var(--surface);color:#fff;font-size:10.5px;font-weight:700}.tab-badge.is-dot{top:6px;left:calc(50% + 10px);min-width:9px;width:9px;height:9px;padding:0}.portal-toast{bottom:calc(var(--tab-h) + 16px + env(safe-area-inset-bottom))}.today-head{padding:8px 4px 2px}.today-date{color:var(--muted);font-size:13px;font-weight:600}.arrive-hotel{overflow:hidden;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.arrive-hotel[hidden],.arrive-facts[hidden]{display:none}.arrive-hotel img{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover}.arrive-hotel-body{padding:14px 16px 16px}.arrive-hotel h2{color:var(--ink);font-size:18px;font-weight:700;letter-spacing:-.01em}.arrive-hotel p{margin-top:2px;color:var(--muted);font-size:14px;line-height:1.4}.arrive-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.arrive-facts{padding:16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.arrive-facts h2{color:var(--ink);font-size:17px;font-weight:700}.arrive-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.arrive-grid div{padding:12px;border-radius:12px;background:var(--fill)}.arrive-grid span{color:var(--muted);font-size:12.5px;font-weight:600}.arrive-grid b{display:block;margin-top:2px;color:var(--ink);font-size:clamp(15px,4.4vw,17px);font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}.arrive-grid small{display:block;margin-top:4px;color:var(--muted);font-size:12.5px;line-height:1.35}:lang(ko) .arrive-grid small,:lang(ko) .arrive-hotel p{word-break:keep-all;overflow-wrap:anywhere}.desk-line{display:flex;align-items:center;gap:8px;padding:13px 16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow);color:var(--muted);font-size:14px;text-decoration:none}.desk-line[hidden]{display:none}.desk-line-text{display:grid;gap:1px}.desk-line b{color:var(--ink);font-weight:650}.desk-line-more{margin-left:auto;color:var(--ink);font-weight:600;white-space:nowrap}.desk-line-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--danger)}.desk-line.is-open .desk-line-dot{background:var(--ok)}.today-title{margin-top:4px;color:var(--ink);font-size:28px;font-weight:750;letter-spacing:-.028em;line-height:1.14}.today-title.is-long{font-size:24px}.today-name{display:inline-block;max-width:100%;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.today-strip{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;color:var(--ink-2);font-size:14px;font-weight:550}.today-floor{display:inline-grid;place-items:center;flex-shrink:0;width:26px;height:26px;border:1.4px solid currentColor;border-radius:50%;font-size:9.5px;font-weight:750;letter-spacing:-.02em}.today-floor.is-lit{border-color:var(--warm);background:var(--warm);color:#fff}.today-nights{display:flex;gap:4px;margin-top:12px}.today-nights i{flex:1;height:4px;border-radius:2px;background:var(--fill-2)}.today-nights i.is-done{background:var(--ink)}.today-nights i.is-now{background:linear-gradient(90deg,var(--warm) 55%,var(--fill-2) 55%)}.today-hero{padding:20px;border-radius:var(--r-lg);background:var(--hero);color:var(--on-hero)}.today-hero.is-booking{display:flex;flex-direction:column;justify-content:flex-end;min-height:300px;background-color:var(--hero);background-position:center;background-size:cover}.today-hero .hero-kicker{color:var(--on-hero-2);font-size:13px;font-weight:600}.today-hero .hero-ready{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:var(--r-full);background:#5fcb8c29;color:#7be0a5}.today-hero .hero-ready:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.today-hero .hero-title{margin-top:8px;color:#fff;font-size:22px;font-weight:720;letter-spacing:-.02em;line-height:1.2}.today-hero .hero-text{margin-top:8px;color:var(--on-hero-2);font-size:14.5px;line-height:1.45}.today-hero .hero-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:18px;list-style:none;color:var(--on-hero-2);font-size:12px;font-weight:600}.today-hero .hero-steps li:before{content:"";display:block;height:4px;margin-bottom:8px;border-radius:2px;background:#ffffff24}.today-hero .hero-steps li.is-done,.today-hero .hero-steps li.is-now{color:#fff}.today-hero .hero-steps li.is-done:before{background:#5fcb8c}.today-hero .hero-steps li.is-now:before{background:linear-gradient(90deg,rgba(255,255,255,.14),var(--warm),rgba(255,255,255,.14));background-size:200% 100%;animation:heroStep 1.6s linear infinite}@keyframes heroStep{0%{background-position:100% 0}to{background-position:-100% 0}}.today-hero .hero-acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.today-hero .hero-act{display:inline-flex;align-items:center;min-height:36px;padding:0 15px;border-radius:var(--r-full);background:#fff;color:var(--ink);font-size:14px;font-weight:650;text-decoration:none}.today-hero .hero-lift{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:16px;padding:12px 14px;border-radius:var(--r-md);background:#ffffff14;color:#fff;font-size:14px;font-weight:550}.today-hero .hero-arrow{color:var(--on-hero-2)}.today-hero .hero-time{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:4px}.today-hero .hero-big{color:#fff;font-size:50px;font-weight:720;letter-spacing:-.04em;line-height:1.05;font-variant-numeric:tabular-nums}.today-hero .hero-ring{position:relative;flex-shrink:0;width:78px;height:78px}.today-hero .hero-ring svg{transform:rotate(-90deg)}.today-hero .hero-ring-bg{stroke:#ffffff1f}.today-hero .hero-ring-fg{stroke:var(--warm);stroke-linecap:round}.today-hero .hero-ring span{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:12.5px;line-height:1.1;text-align:center}.today-hero .hero-ring small{color:var(--on-hero-2);font-size:10px}.today-hero .hero-late{margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1);color:var(--on-hero-2);font-size:13px;font-weight:600}.today-hero .hero-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.today-hero .hero-opt{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:11px 12px;border:0;border-radius:var(--r-md);background:#ffffff14;color:#fff;font:inherit;text-align:left;cursor:pointer}.today-hero .hero-opt b{font-size:16px;font-variant-numeric:tabular-nums}.today-hero .hero-opt span{color:var(--on-hero-2);font-size:12.5px}.stay-day-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}.stay-day-head .stay-day-sub{margin:0}.stay-day-title{margin-bottom:2px;color:var(--ink);font-size:17px;font-weight:680;letter-spacing:-.01em}.floors-desc{margin-top:-6px;color:var(--muted);font-size:14px}.lift{position:relative}.lift-track{position:absolute;top:26px;bottom:26px;left:17px;width:2px;background:repeating-linear-gradient(var(--fill-2) 0 5px,transparent 5px 9px)}.lift-car{position:absolute;top:0;left:0;z-index:2;display:grid;place-items:center;width:36px;height:44px;overflow:hidden;border-radius:10px;background:var(--warm);box-shadow:0 6px 16px -6px #00000073;color:#fff;font-size:11px;font-weight:750;pointer-events:none;transition:transform .7s var(--ease)}.lift-car:before,.lift-car:after{content:"";position:absolute;top:0;bottom:0;width:50%;background:var(--ink);transition:transform .4s var(--ease)}.lift-car:before{left:0;border-right:1px solid rgba(255,255,255,.2)}.lift-car:after{right:0}.lift-car.is-open:before{transform:translate(-100%)}.lift-car.is-open:after{transform:translate(100%)}.lift-car b{position:relative;z-index:1}.lift-floor+.lift-floor{border-top:1px solid var(--line)}.lift-head{display:flex;align-items:center;gap:14px;width:100%;min-height:56px;padding:8px 0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.lift-num{position:relative;z-index:1;display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border:1.5px solid var(--ink);border-radius:50%;background:var(--surface);color:var(--ink);font-size:11px;font-weight:750}.lift-floor.is-mine .lift-num{border-color:var(--warm);color:var(--warm)}.lift-main{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0}.lift-name{display:flex;flex:1 0 auto;flex-direction:column;max-width:100%}.lift-notes{display:flex;flex-wrap:wrap;gap:6px}.lift-name b{color:var(--ink);font-size:15px;font-weight:650}.lift-name small{color:var(--muted);font-size:13px}.lift-note{flex-shrink:0;padding:3px 9px;border-radius:var(--r-full);background:var(--fill);color:var(--ink-2);font-size:12px;font-weight:650}.lift-note.is-mine{background:var(--warm-soft);color:var(--warm)}.lift-note.is-ok{background:#248a3d1a;color:var(--ok)}.lift-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}.lift-floor.is-open .lift-body{grid-template-rows:1fr}.lift-body>div{min-height:0;overflow:hidden}.lift-facts{display:grid;gap:7px;margin:0;padding:2px 0 4px 50px;font-size:14px}.lift-facts>div{display:flex;justify-content:space-between;gap:12px}.lift-facts dt{flex:none;color:var(--muted)}.lift-facts dd{margin:0;color:var(--ink);font-weight:600;text-align:right;text-wrap:balance}.lift-more{margin:6px 0 14px;padding-left:50px;color:var(--muted);font-size:13px}.lift-acts{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0 14px 50px}.lift-link{color:var(--warm);font-size:14px;font-weight:650;text-decoration:none}.lift-link.is-primary{padding:7px 18px;border-radius:var(--r-full);background:var(--ink);color:#fff}body[data-tab=chat] .portal-wrap{padding-bottom:12px}body.is-typing .tab-bar{display:none}body.is-typing[data-tab=chat] .portal-wrap{padding-bottom:calc(12px + env(safe-area-inset-bottom))}body.is-typing .chat-card{height:calc(100vh - var(--top-h, 54px) - 24px - env(safe-area-inset-bottom));height:calc(100dvh - var(--top-h, 54px) - 24px - env(safe-area-inset-bottom))}@media (hover: none) and (pointer: coarse){body.is-typing[data-tab=chat] .chat-card{position:fixed;z-index:60;top:calc(var(--vv-top, 0px) + 8px);left:50%;width:min(568px,calc(100% - 16px));height:calc(var(--vv-h, 100vh) - 16px);min-height:0;transform:translate(-50%)}}.chat-card{display:flex;flex-direction:column;height:calc(100vh - var(--top-h, 54px) - var(--tab-h) - 24px - env(safe-area-inset-bottom));height:calc(100dvh - var(--top-h, 54px) - var(--tab-h) - 24px - env(safe-area-inset-bottom));min-height:400px;overflow:hidden;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.chat-head{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.chat-back{display:grid;place-items:center;flex-shrink:0;width:32px;height:40px;margin:0 -8px;color:var(--ink)}.chat-face{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--warm-soft);color:var(--warm)}.chat-head h2{color:var(--ink);font-size:16px;font-weight:700}.chat-sub{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12.5px}.chat-dot{flex:none;width:7px;height:7px;border-radius:50%;background:var(--line-strong, #c7c7cc)}.chat-sub.is-open .chat-dot{background:#34c759}.chat-log{display:flex;flex:1 1 auto;flex-direction:column;gap:8px;min-height:0;padding:14px 14px 10px;overflow-y:auto;overscroll-behavior:contain}.chat-msg{max-width:85%;padding:9px 13px;border-radius:18px;font-size:15px;line-height:1.42;overflow-wrap:anywhere}.chat-msg p{margin:0;white-space:pre-line}.chat-msg.is-me{align-self:flex-end;border-bottom-right-radius:6px;background:var(--ink);color:#fff}.chat-msg.is-desk{align-self:flex-start;border-bottom-left-radius:6px;background:var(--warm-soft);color:var(--ink)}.chat-who{display:flex;align-items:baseline;gap:6px;margin-bottom:2px;color:var(--warm);font-size:12px;font-weight:700}.chat-who time{color:var(--muted);font-weight:500}.chat-status{display:block;margin-top:3px;color:#ffffffb3;font-size:12px}.chat-acts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.chat-act{display:inline-flex;align-items:center;min-height:34px;padding:0 13px;border:0;border-radius:var(--r-full);background:var(--surface);box-shadow:0 0 0 1px var(--line);color:var(--ink);font:inherit;font-size:13.5px;font-weight:650;text-decoration:none;cursor:pointer}.chat-act.is-primary{background:var(--ink);box-shadow:none;color:#fff}.chat-file-chips{display:flex;flex-wrap:wrap;gap:4px}.chat-msg p+.chat-file-chips{margin-top:6px}.chat-file-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:var(--r-full);background:#ffffff29;font-size:12.5px}.chat-file-chip svg{flex:none}.chat-dock{display:grid;gap:8px;padding:10px 12px 12px;border-top:1px solid var(--line)}.chat-form{display:flex;align-items:flex-end;gap:8px;min-width:0}.chat-input{display:block;flex:1;min-width:0;height:44px;max-height:122px;padding:10px 16px;border:1px solid var(--line);border-radius:22px;background:var(--fill);color:var(--ink);font:inherit;font-size:16px;line-height:22px;resize:none;outline:none}.chat-input:focus{border-color:var(--ink);background:var(--surface)}.chat-attach,.chat-send{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border:0;border-radius:50%;cursor:pointer}.chat-attach{background:var(--fill);color:var(--ink)}.chat-send{background:var(--ink);color:#fff}.chat-send:disabled,.chat-send.is-empty{opacity:.35}.chat-files{display:flex;flex-wrap:wrap;gap:8px}.chat-file{position:relative;display:grid;place-items:center;width:56px;height:56px;border-radius:var(--r-md);background:var(--fill);color:var(--muted)}.chat-file img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.chat-file button{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border:2px solid var(--surface);border-radius:50%;background:var(--ink);color:#fff;font-size:14px;line-height:1;cursor:pointer}.review-nudge{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--r-lg);background:#fdf6ec;color:var(--ink);font-size:14px;font-weight:600;line-height:1.4}.review-nudge[hidden]{display:none}.review-nudge p{flex:1;margin:0}.review-nudge-art{flex:none;transform:rotate(-6deg)}.tab-head{padding:8px 4px 2px}.tab-title{color:var(--ink);font-size:28px;font-weight:750;letter-spacing:-.028em;line-height:1.14}.tab-desc{margin-top:6px;color:var(--muted);font-size:15px;line-height:1.45}.tab-label{margin:10px 4px -2px;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.req-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.req-grid .req-option{display:grid;align-content:start;justify-items:start;gap:4px;min-height:132px;padding:16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.req-grid .req-option:hover{background:var(--surface)}.req-grid .req-option strong{color:var(--ink);font-size:15.5px;font-weight:650;line-height:1.3}.req-grid .req-option small{color:var(--muted);font-size:13px;font-weight:500;line-height:1.35}.req-tile-icon{display:grid;place-items:center;flex:none;width:40px;height:40px;margin-bottom:8px;border-radius:12px;background:var(--fill);color:var(--ink)}.req-tile-icon svg{color:inherit}.req-msg{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow);color:var(--ink);text-decoration:none}.req-msg .req-tile-icon{margin:0;background:var(--warm-soft);color:var(--warm)}.req-msg-text{display:grid;flex:1;gap:2px;min-width:0}.req-msg-text strong{font-size:15.5px;font-weight:650;line-height:1.3}.req-msg-text small{color:var(--muted);font-size:13px;line-height:1.35}.req-msg-go{color:var(--faint);font-size:22px;line-height:1}.req-msg-badge{display:grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--warm);color:#fff;font-size:12px;font-weight:700}.req-msg-badge[hidden]{display:none}.req-mine-box,.req-mine{display:grid;gap:10px}.req-card{display:grid;gap:12px;padding:16px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.req-card-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px}.req-card .req-tile-icon{margin:0}.req-card-what{display:grid;gap:2px;min-width:0}.req-card-what strong{color:var(--ink);font-size:15.5px;font-weight:650}.req-card-what small{color:var(--muted);font-size:13px;line-height:1.35}.req-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-full);background:var(--fill);color:var(--ink-2);font-size:12.5px;font-weight:650;white-space:nowrap}.req-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.req-pill.is-seen,.req-pill.is-done{background:var(--ok-soft);color:var(--ok)}.req-pill.is-coming{background:var(--warm-soft);color:var(--warm)}.req-pill.is-declined{background:var(--danger-soft);color:var(--danger)}.req-pill.is-cancelled{color:var(--faint)}.req-steps{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px}.req-steps span{display:grid;gap:6px;color:var(--faint);font-size:12px;font-weight:600}.req-steps i{height:4px;border-radius:2px;background:var(--fill-2)}.req-steps .is-on{color:var(--ok)}.req-steps .is-on i{background:var(--ok)}.req-steps .is-next i{background:linear-gradient(90deg,var(--fill-2),var(--ok),var(--fill-2));background-size:200% 100%;animation:heroStep 1.6s linear infinite}.req-outcome{margin:0;color:var(--ink-2);font-size:14px;line-height:1.45}.req-answer{padding:12px 14px;border-radius:var(--r-md);background:var(--fill)}.req-answer p{margin:2px 0 0;color:var(--ink);font-size:14.5px;line-height:1.45;white-space:pre-line}.req-card .req-cancel{justify-self:end;margin:0}.desk-avatar{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--warm);color:#fff;font-style:normal}.desk-orig{display:block;margin-top:6px;padding:0;border:0;background:none;color:var(--warm);font:inherit;font-size:12.5px;font-weight:600;text-align:left;cursor:pointer}p.desk-original{margin-top:4px;color:var(--muted);font-size:13.5px}.today-extra{display:grid;gap:12px}.extra-card{display:grid;gap:14px;padding:18px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.extra-top{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px}.extra-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--fill);color:var(--ink)}.extra-card h3{color:var(--ink);font-size:17px;font-weight:680;line-height:1.3}.extra-card p{margin-top:4px;color:var(--muted);font-size:14px;line-height:1.45}.extra-btn{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:var(--r-full);background:var(--fill);color:var(--ink);font-size:15px;font-weight:650;text-decoration:none}.extra-btn.is-primary,.location-action.is-primary,.location-action.is-primary:hover{background:var(--ink);color:#fff}.area-map{display:block;width:100%;margin:2px 0 4px;padding:0;overflow:hidden;border:0;border-radius:var(--r-md);background:#efe9e0;cursor:pointer}.area-map svg{display:block;width:100%;height:auto}.bus-live{display:flex;align-items:center;gap:8px;margin:8px 0 0;color:var(--ink);font-size:14px;font-weight:650}.bus-live.is-live:before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.seoul-card{padding:18px;border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow)}.seoul-eyebrow,.fl-eyebrow{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:var(--muted);font-size:13px;font-weight:600}.seoul-eyebrow small,.fl-eyebrow small{margin-left:auto;color:var(--faint);font-size:11.5px;font-weight:500}.seoul-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px}.seoul-tile{padding:14px;border-radius:14px;background:var(--fill)}.seoul-tile small{display:block;color:var(--muted);font-size:12.5px;font-weight:600}.seoul-tile b{display:block;margin-top:4px;font-size:24px;font-weight:750;letter-spacing:-.02em;line-height:1.15}.seoul-tile>span{display:block;margin-top:3px;color:var(--ink-2);font-size:13px}.seoul-dust.is-l0{background:#e9f6ee}.seoul-dust.is-l0 b{color:#1c7c3f}.seoul-dust.is-l1{background:#fff5dc}.seoul-dust.is-l1 b{color:#a16207}.seoul-dust.is-l2{background:#fdebe3}.seoul-dust.is-l2 b{color:#c2410c}.seoul-dust.is-l3{background:#fbe4e4}.seoul-dust.is-l3 b{color:#b91c1c}.dust-scale{display:flex!important;gap:3px;margin-top:10px!important}.dust-scale i{flex:1;height:5px;border-radius:3px;background:#00000014}.dust-scale i.is-l0,.dust-hours i.is-l0{background:#22a35a}.dust-scale i.is-l1,.dust-hours i.is-l1{background:#eab308}.dust-scale i.is-l2,.dust-hours i.is-l2{background:#ea580c}.dust-scale i.is-l3,.dust-hours i.is-l3{background:#b91c1c}.dust-hours{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:12px}.dust-hours span{display:grid;justify-items:center;gap:4px;color:var(--muted);font-size:12px}.dust-hours i{width:10px;height:10px;border-radius:50%}.seoul-tip{margin:12px 0 0;padding:11px 12px;border-radius:12px;background:var(--fill);color:var(--ink-2);font-size:14px;line-height:1.45}.extra-rest{display:contents}.fl-card{gap:0}.fl-eyebrow svg{width:16px;height:16px}.fl-lead{margin:0 0 10px!important;color:var(--ink-2)!important;font-size:15px!important}.fl-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.fl-form input{min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--fill);color:var(--ink);font:inherit;font-size:17px;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.fl-form input::placeholder{color:var(--faint);font-weight:500;letter-spacing:0;text-transform:none}.fl-form button{padding:0 18px;border:0;border-radius:12px;background:var(--ink);color:#fff;font:inherit;font-size:15px;font-weight:650;cursor:pointer}.fl-form button:disabled{opacity:.5}.fl-err{margin:10px 0 0!important;color:var(--danger)!important;font-size:13.5px!important}.fl-foot{display:flex;justify-content:space-between;gap:8px;margin:10px 0 0!important;color:var(--faint)!important;font-size:12px!important}.fl-foot button{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:12.5px;font-weight:600;text-decoration:underline;cursor:pointer}.fl-head{display:flex;align-items:center;gap:10px}.fl-head b{font-size:20px;font-weight:750;letter-spacing:.01em}.fl-head small{color:var(--muted);font-size:13px}.fl-chip{margin-left:auto;padding:5px 10px;border-radius:999px;font-size:12.5px;font-weight:700;white-space:nowrap}.fl-chip.is-ok{background:#e9f6ee;color:#1c7c3f}.fl-chip.is-late{background:#fdebe3;color:#c2410c}.fl-chip.is-bad{background:var(--danger-soft);color:var(--danger)}.fl-route{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:14px 0 12px}.fl-route div b{display:block;font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1}.fl-route div small{display:block;margin-top:5px;color:var(--muted);font-size:12.5px}.fl-route div:last-child{text-align:right}.fl-route svg{color:var(--faint)}.fl-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.fl-facts div{padding:10px;border-radius:12px;background:var(--fill)}.fl-facts small{display:block;color:var(--muted);font-size:11.5px;font-weight:600}.fl-facts b{display:block;margin-top:2px;font-size:17px;font-weight:750;overflow-wrap:anywhere}.fl-facts s{margin-right:4px;color:var(--faint);font-size:13px;font-weight:500}.fl-leave{margin-top:12px;padding:14px;border-radius:14px;background:var(--hero);color:var(--on-hero)}.fl-leave small{color:var(--on-hero-2);font-size:12.5px;font-weight:600}.fl-leave b{display:block;margin:2px 0 6px;font-size:24px;font-weight:800}.fl-leave p{margin:0!important;color:var(--on-hero)!important;font-size:14px!important;line-height:1.5;opacity:.92}.fl-leave .bus-live{margin-top:10px!important;color:#4ade80!important;font-weight:650}.tour-box{display:grid;gap:14px}.tour-sub{margin:4px 0 -4px;color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.tour-now{display:flex;gap:10px;margin:2px calc(-1 * var(--card-pad, 20px)) 0;padding:0 var(--card-pad, 20px) 4px;overflow-x:auto;scrollbar-width:none}.tour-now::-webkit-scrollbar{display:none}.tour-event{flex:none;width:236px;overflow:hidden;border-radius:16px;background:var(--fill);color:inherit;text-decoration:none}.tour-event .tour-ph{display:block;height:104px}.tour-ev-t{display:block;padding:10px 12px 12px}.tour-ev-t b{display:block;font-size:15px;font-weight:700;line-height:1.3}.tour-ev-t small{display:block;margin-top:4px;color:var(--muted);font-size:12.5px}.tour-when{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:999px;background:var(--warm-soft);color:var(--warm);font-size:11.5px;font-weight:700}.tour-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.tour-chips button{flex:none;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink-2);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.tour-chips button[aria-selected=true]{border-color:var(--ink);background:var(--ink);color:#fff}.tour-places{display:grid}.tour-place{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none}.tour-place:first-child{border-top:0}.tour-place .tour-ph{width:64px;height:64px;border-radius:12px}.tour-txt{min-width:0}.tour-txt b{display:block;font-size:15.5px;font-weight:700}.tour-txt small{display:block;overflow:hidden;margin-top:2px;color:var(--muted);font-size:12.5px;text-overflow:ellipsis;white-space:nowrap}.tour-walk{color:var(--ink-2);font-size:12.5px;font-weight:650;text-align:right;white-space:nowrap}.tour-walk em{display:block;color:var(--faint);font-style:normal;font-weight:500}.tour-ph{position:relative;overflow:hidden;background:var(--fill-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23a59f96' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6.5-5.6-6.5-11a6.5 6.5 0 0 1 13 0c0 5.4-6.5 11-6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.4'/%3E%3C/svg%3E") center / 26px no-repeat}.tour-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.tour-more{padding:12px;border:0;border-radius:12px;background:var(--fill);color:var(--ink);font:inherit;font-size:14.5px;font-weight:650;cursor:pointer}.tour-credit{margin:-4px 0 0;color:var(--faint);font-size:11.5px}#tourPicks{margin-bottom:-6px}.seoul-tile>span:first-letter{text-transform:uppercase}.chat-desk-photos{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.chat-desk-photos img{display:block;width:140px;max-width:100%;height:auto;max-height:200px;object-fit:cover;border-radius:10px}
