/* Scoped to the real server application; demo files remain unchanged. */
body.bd-ui{background:#f7f9f8;color:#173b38}
body.bd-ui #app{max-width:none;height:100dvh;margin:0;border-radius:0;box-shadow:none}
.bd-ui .view{background:#fff}.bd-ui .scroll{scrollbar-width:thin}.bd-ui button,.bd-ui a{touch-action:manipulation}
.bd-ui .btn{border-radius:12px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}
.bd-ui .btn.brand{background:#0b7a75;color:#fff;box-shadow:0 4px 14px #0b7a751a}
.bd-ui .btn:hover:not(:disabled){filter:brightness(.96)}.bd-ui button:disabled{cursor:not-allowed}
.bd-ui .num,.bd-ui bdi{font-variant-numeric:tabular-nums;unicode-bidi:isolate}
.bd-ui input[type=email],.bd-ui input[type=tel],.bd-ui input[inputmode=numeric]{direction:ltr;text-align:start}
.bd-ui .bd-header{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px max(24px,calc((100% - 1240px)/2));border-bottom:1px solid #e6eeec;background:#fff}
.bd-brand{display:flex;align-items:center;gap:9px;color:#0b7a75;font-size:25px;font-weight:800;letter-spacing:-1px}.bd-brand svg{width:34px;height:34px}
.bd-header-actions{display:flex;gap:16px;align-items:center}.bd-icon-label{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px}.bd-icon-label svg{width:20px;height:20px}
.bd-home{background:#fff}.bd-hero{max-width:1240px;margin:28px auto 0;padding:42px 48px;background:linear-gradient(115deg,#edf7f4,#f5f8ec);border:1px solid #deece6;border-radius:26px;position:relative}
.bd-eyebrow{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#46716a;display:block;margin-bottom:10px}.bd-hero h1{font-size:clamp(28px,4vw,46px);font-weight:650;letter-spacing:-.04em;color:#123e38;line-height:1.2}.bd-hero>p{margin-top:12px;font-size:17px;color:#58716b}
.bd-search{margin-top:28px;display:grid;grid-template-columns:1.5fr 1fr 1fr;border:1px solid #d9e5df;border-radius:18px;background:#fff;box-shadow:0 10px 28px #163c3610;padding:8px;gap:0}
.bd-search>button{padding:13px 22px;display:flex;align-items:center;gap:14px;border-inline-end:1px solid #e3eae7;min-width:0}.bd-search>button:last-child{border:0}.bd-search b,.bd-search small{display:block}.bd-search small{color:#657570;font-size:13px;margin-top:3px}.bd-search svg{width:22px;height:22px;flex-shrink:0;color:#0b7a75}.bd-search>button:last-child svg{margin-inline-start:auto;background:#0b7a75;color:#fff;box-sizing:content-box;padding:12px;border-radius:13px}
.bd-hero-actions{display:flex;justify-content:space-between;margin-top:16px;gap:16px}.bd-location{display:flex;gap:8px;align-items:center;min-height:40px;font-size:13px;font-weight:600}.bd-location svg{width:17px;height:17px}
.bd-catalog{max-width:1240px;margin:0 auto;padding:36px 0 70px}.bd-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.bd-section-heading h2{font-size:25px}.bd-section-heading .bd-eyebrow{margin-bottom:5px}.bd-section-heading svg{width:18px;height:18px}.bd-cities{display:flex;gap:10px;overflow:auto;padding-bottom:20px}.bd-cities .chip{flex-shrink:0;border-radius:24px;padding:10px 20px;min-height:44px;background:#f7faf9;border-color:#e1e9e6}
.bd-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px}.bd-grid .card{width:100%;min-width:0}.bd-grid .ph{border-radius:17px;aspect-ratio:1.12;overflow:hidden}.bd-grid .card .t{font-size:16px;margin-top:12px;font-weight:650}.bd-grid .card .s{font-size:13px;line-height:1.9}.bd-grid .heart{top:12px;inset-inline-end:12px}.bd-grid img{transition:transform .25s}.bd-grid .card:hover img{transform:scale(1.025)}
.bd-empty{padding:48px 24px;text-align:center;display:grid;justify-items:center;gap:16px;max-width:580px;margin:auto}.bd-empty>svg{width:36px;height:36px;color:#678a81}.bd-empty p{color:#657570;line-height:1.6}
.bd-ui [data-page=results] .res-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;max-width:1240px;margin:auto;padding:20px 24px}.bd-ui .rcardL{width:100%;min-width:0}.bd-ui .rcardL .ph{border-radius:18px}.bd-ui .rcardL .meta{gap:12px}
.bd-ui [data-page=listing] .dsheet{max-width:1080px;padding:30px 32px 45px;margin:auto}.bd-ui [data-page=listing] .d-title{font-size:clamp(25px,3vw,34px);line-height:1.25}.bd-ui [data-page=listing] .gal-wrap{max-width:1240px;margin:auto}.bd-ui [data-page=listing] .gal{max-height:520px}.bd-ui .gal img{object-fit:cover}.bd-ui .d-sub{line-height:1.8;color:#60706b}.bd-ui [data-page=listing] .hr{margin-block:30px}.bd-ui .host-card{box-shadow:none;border:1px solid #e1e8e5;border-radius:20px;background:#fafcfb}
.bd-price-panel{border:1px solid #dce6e1;background:#fbfdfc;border-radius:20px;padding:24px;margin:24px 0}.bd-price-panel h2{font-size:19px}.bd-total{font-size:23px;font-weight:700}.bd-trip-controls{display:grid;grid-template-columns:1fr 1fr;border:1px solid #dce6e1;border-radius:12px;overflow:hidden;margin-bottom:18px}.bd-trip-controls button{display:grid;grid-template-columns:1fr auto;gap:4px;padding:14px;border-inline-end:1px solid #dce6e1}.bd-trip-controls button:last-child{border:0}.bd-trip-controls b{font-size:12px}.bd-trip-controls span{grid-column:1;font-size:13px}.bd-trip-controls svg{grid-column:2;grid-row:1/3;width:16px;height:16px;align-self:center}.bd-price-rows>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0;color:#4e605b}.bd-price-rows bdi{white-space:nowrap;color:#173b38}.bd-price-total{border-top:1px solid #dce6e1;margin-top:8px;padding-top:15px!important;font-size:17px}.bd-price-panel>.btn{margin-top:18px;width:100%}
.bd-ui .cta{border-top:1px solid #dce6e1;box-shadow:0 -5px 24px #163c3608;background:#fff;padding-block:14px;padding-bottom:max(14px,env(safe-area-inset-bottom));gap:20px}.bd-ui .cta .btn{min-width:150px}.bd-ui .cta .price{min-width:0}.bd-ui .cta b{font-size:19px}
.bd-map{background:#f4f8f6;border:1px solid #dfe9e4;border-radius:18px;padding:24px;display:flex;flex-wrap:wrap;gap:14px;align-items:center}.bd-map>p{width:100%}.bd-map-label{display:flex;gap:10px;align-items:center}.bd-map svg{width:22px;height:22px}.bd-google-map{width:100%;height:340px;border:0;border-radius:12px;background:#e6eeea}.bd-map-results{padding:24px;max-width:1080px;width:100%;margin:auto}.bd-map-results section{margin-block:24px}.bd-map-results h2{margin-bottom:12px;font-size:20px}
.bd-ui [data-page=book] #bkScroll>.gutter{max-width:780px;margin:auto;padding:24px}.bd-ui [data-page=book] .bkbox{border:1px solid #e0e8e4;border-radius:18px;background:#fff}.bd-book-progress{font-size:12px;line-height:1.8;padding:12px 0 20px;color:#53746b}.bd-book-summary{padding:22px;background:#f5f9f7;border-radius:16px;margin-top:20px}.bd-book-summary h2{font-size:19px;margin-bottom:12px}
.bd-ui .bub{line-height:1.7;overflow-wrap:anywhere}.bd-ui .msg.me .bub{background:#e6f3ef;color:#17473e}.bd-ui .composer{border-top:1px solid #e2ebe7}.bd-ui .composer textarea{border-radius:18px;min-height:46px}.bd-ui .sheet{border-radius:24px 24px 0 0;max-height:92dvh}.bd-ui .sheet-h{min-height:64px}.bd-ui .sheet-b{line-height:1.65}.bd-ui .sheet-f{padding-bottom:max(18px,env(safe-area-inset-bottom))}.bd-ui .ferr{line-height:1.6}.bd-ui .toast{max-width:min(560px,calc(100% - 32px));line-height:1.6}
.bd-browse-back{padding:16px;text-decoration:underline;min-height:48px;flex-shrink:0;border-top:1px solid #e1e8e5}.bd-splash{position:fixed;inset:0;background:#f5faf8;z-index:99999;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;color:#0b7a75;font-size:32px;font-weight:750;pointer-events:none}.bd-splash svg{width:72px;height:72px}
.bd-network{position:absolute;z-index:10000;inset-inline:12px;top:8px;background:#fff5db;border:1px solid #e5c479;border-radius:12px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 4px 20px #0001;font-size:13px}.bd-network button{min-height:40px;flex-shrink:0}
.bd-settlement{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;background:#eaf4ef;padding:14px;border-radius:12px;margin-block:16px;font-size:13px}.bd-settlement bdi{font-weight:700}
@media(min-width:900px){.bd-ui [data-page=explore]>.tabbar button:last-child{position:static}.bd-ui [data-page=explore]>.tabbar{flex-shrink:0}}
@media(min-width:900px){.bd-ui .tabbar{border-bottom:1px solid #e6eeec}.bd-ui [data-page=explore]>.tabbar{position:relative;order:-1;height:60px;padding:0;justify-content:center}.bd-ui [data-page=explore]>.tabbar::before{display:none}.bd-ui [data-page=explore] .tabbar button{min-width:120px}.bd-ui [data-page=listing] .gal{display:grid;grid-template-columns:2fr 1fr;gap:8px;height:460px;overflow:auto}.bd-ui [data-page=listing] .gal>*{width:100%;height:460px;min-width:0}.bd-ui [data-page=listing] .gal>*:nth-child(n+3){display:none}.bd-ui [data-page=listing] .gal-count{cursor:default}}
@media(max-width:1300px){.bd-hero{margin-inline:24px}.bd-catalog{padding-inline:24px}.bd-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:600px) and (max-width:899px){.bd-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bd-ui [data-page=results] .res-list{grid-template-columns:repeat(2,minmax(0,1fr))}.bd-hero{padding:30px}.bd-search>button{padding:12px}.bd-ui .tabbar{width:100%}}
@media(max-width:599px){.bd-header{padding:14px 20px!important;min-height:68px!important}.bd-brand{font-size:23px}.bd-brand svg{width:29px;height:29px}.bd-header-actions{gap:10px}.bd-icon-label{font-size:11px}.bd-header-actions .btn{padding:8px 12px}.bd-icon-label svg{display:none}.bd-hero{margin:16px 16px 0;padding:25px 20px;border-radius:22px}.bd-hero h1{font-size:29px}.bd-hero>p{font-size:14px}.bd-search{grid-template-columns:1fr 1fr;margin-top:22px;padding:6px;border-radius:14px}.bd-search>button{padding:12px;gap:8px}.bd-search>button:first-child{grid-column:1/-1;border-inline-end:0;border-bottom:1px solid #e5ece8}.bd-search>button:last-child svg{padding:8px;width:16px;height:16px}.bd-search small{font-size:11px}.bd-search b{font-size:12px}.bd-catalog{padding:28px 20px 90px}.bd-section-heading h2{font-size:24px}.bd-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.bd-grid .ph{aspect-ratio:.95;border-radius:14px}.bd-grid .card .t{font-size:14px}.bd-grid .card .s{font-size:11px}.bd-grid .badge{font-size:10px;max-width:70%;overflow:hidden}.bd-grid .heart{width:29px;height:29px;inset-inline-end:7px;top:7px}.bd-grid .card .num{line-height:1.7}.bd-ui [data-page=results] .res-list{grid-template-columns:1fr;padding:16px 20px}.bd-ui [data-page=listing] .dsheet{padding:24px 20px}.bd-price-panel{padding:18px;margin-block:20px}.bd-total{font-size:19px}.bd-price-panel .bd-section-heading{align-items:flex-start;flex-wrap:wrap}.bd-trip-controls button{padding:12px 10px}.bd-ui .cta{padding-inline:20px}.bd-ui .cta .btn{min-width:120px}.bd-ui .cta b{font-size:16px}.bd-ui .cta .price{font-size:12px}.bd-map{padding:18px}.bd-ui .sheet{max-width:none}.bd-ui .host-card .r{min-width:0}.bd-ui .tabbar{padding-bottom:env(safe-area-inset-bottom)}}
@media(prefers-reduced-motion:reduce){.bd-ui *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(min-width:900px){body.bd-ui .view[data-page=listing] .gal{height:544px;padding-top:84px;grid-template-columns:minmax(0,2fr) minmax(0,1fr)}body.bd-ui .view[data-page=listing] .gal>*{width:100%;height:460px}}
