/* The status bar and home indicator stay outside the expanding app surface. */
body .widget-app{background:transparent!important;box-shadow:none;overflow:visible}
.widget-app .app-surface{position:absolute;inset:62px 10px 58px;border-radius:32px;background:#fbfcfa;box-shadow:0 14px 32px -15px #18242038,0 2px 5px #18242012,inset 0 1px 0 #fff;overflow:hidden;isolation:isolate;display:flex;flex-direction:column}
.widget-app .app-surface>.app-header{position:absolute;z-index:500;top:0;left:0;right:0;background:transparent;pointer-events:none;flex:none;height:65px;padding:12px 16px 8px;box-sizing:border-box}
.widget-app .app-surface>.app-header>*{pointer-events:auto}
.widget-app .app-surface>.app-body{height:100%;flex:1;min-height:0;overflow:auto;padding-top:72px;scroll-padding-top:72px}
.widget-app.tool-app .app-surface>.app-body{padding-top:0}
.widget-app.tool-app .app-body>.trip-tool{padding-top:81px}
.widget-app.tool-app .app-body>.night-app{padding-top:73px}
.widget-app.tool-app .app-body>.every-content,.widget-app.tool-app .app-body>.resort-scroll{padding-top:89px;scroll-padding-top:73px}
.widget-app.tool-app .app-body>.music-content{padding-top:87px}
.widget-app.slang-app .app-surface>.app-body{position:absolute;inset:0;flex:none;height:100%;padding:0}
.widget-app.slang-app .slang-scroll{padding-top:83px;scroll-padding-top:73px}
.widget-app .app-surface .guide-nav{bottom:10px}
.widget-app .app-surface>.app-body:has(.city-guide){padding:0;overflow:hidden}
.widget-app .app-collapse{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);width:68px;height:28px;border:1px solid #e4e4e4;border-radius:99px;background:#ffffffd9;box-shadow:0 3px 9px #00000010;display:grid;place-items:center;cursor:pointer;color:#62686a;padding:0}
.widget-app .app-collapse svg{width:19px;height:19px;transform:rotate(90deg)}
.widget-app .home-indicator{bottom:7px}
.wabi-screen.app-expanded #wabi-widget,.wabi-screen.app-expanded #wabi-content,.wabi-screen.app-expanded .wabi-nav,.wabi-screen.app-expanded .wabi-compose{filter:blur(3px);opacity:.14}
@media(prefers-reduced-motion:reduce){.wabi-screen.app-expanded #wabi-widget,.wabi-screen.app-expanded #wabi-content,.wabi-screen.app-expanded .wabi-nav,.wabi-screen.app-expanded .wabi-compose{filter:none}}
@media(forced-colors:active){.widget-app .app-surface{border:1px solid CanvasText;background:Canvas}}

.wabi-screen #wabi-widget,.wabi-screen #wabi-content,.wabi-screen .wabi-nav,.wabi-screen .wabi-compose{transition:opacity 180ms cubic-bezier(.23,1,.32,1)}
.widget-app .app-surface{border:1px solid #e9ece655}

/* Guide content scrolls beneath floating controls inside the rounded mini-app. */
.widget-app .app-surface:has(.city-guide)>.app-header{position:absolute;z-index:500;top:0;left:0;right:0;background:none;pointer-events:none}
.widget-app .app-surface:has(.city-guide)>.app-header>*{pointer-events:auto}
.widget-app .app-surface:has(.city-guide)>.app-body{position:absolute;inset:0;flex:none;height:100%;overflow:hidden}
.widget-app .city-guide:not(.is-map) .guide-scroll{padding-top:73px;scroll-padding-top:73px}
.widget-app .city-guide .guide-categories{top:57px}
.widget-app .city-guide.is-map .guide-nav{bottom:10px;left:16px;right:16px}
.widget-app .city-guide.is-map .guide-map-deck{bottom:68px;padding-inline:23px;scroll-padding-inline:23px}
.widget-app .city-guide.is-map .mapboxgl-ctrl-top-right{top:82px;right:8px}
.widget-app .city-guide.is-map :is(.mapboxgl-ctrl-bottom-left,.mapboxgl-ctrl-bottom-right){bottom:4px}
.widget-app .city-guide.is-map .guide-feedback{bottom:98px}
