/* IBS APP v273 shared text-only adaptive sidebar, independent of booking data. */
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273{display:flex;flex-direction:column;gap:12px;margin:12px 0 18px}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273[hidden]{display:none!important}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273{
 background:#fff;border:1px solid #DEDEDE;border-radius:5px;
 box-shadow:0 0 10px 0 rgba(0,0,0,.29);
 box-sizing:border-box;overflow-wrap:break-word;padding:0 0 12px;margin:0
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 h3{
 margin:0 0 10px;padding:9px 10px;color:#fff;background:#8BC34A;border-bottom:1px solid #86BD3F;
 font-family:var(--ibs-ref-heading,Georgia,serif);font-size:20px;line-height:1.4;font-weight:400;text-align:center
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 p{
 padding:0 14px;margin:0;font-size:14px;line-height:1.66;color:#294239;
 text-align:justify;text-align-last:left;hyphens:auto
}
@media(max-width:767px){
 body.ibs-preview-page .ibs-app-dynamic-sidebar-v273{gap:10px;margin:10px 0 14px}
}
/* APP v277: compact, dated converter, styled to match approved IBS green bars. */
body.ibs-preview-page .ibs-app-dynamic-card-v273 .ibs-app-fx-v277{padding:4px 14px 0;color:#294239}
body.ibs-preview-page .ibs-app-dynamic-card-v273 .ibs-app-fx-v277 p{padding:0!important;margin:0 0 8px!important;text-align:justify;text-align-last:left;line-height:1.5}
body.ibs-preview-page .ibs-app-fx-v277 .ibs-app-fx-rate-v277{font-size:16px;font-weight:600;color:#225A40}
body.ibs-preview-page .ibs-app-fx-converter-v277{margin:9px 0 12px}
body.ibs-preview-page .ibs-app-fx-converter-v277 label{display:block;font-size:13px;font-weight:600;margin-bottom:5px;color:#225A40}
body.ibs-preview-page .ibs-app-fx-inputrow-v277{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:#f5faef;border:1px solid #d9e8c9;padding:8px;border-radius:4px}
body.ibs-preview-page .ibs-app-fx-inputrow-v277 input{box-sizing:border-box;min-width:76px;width:100px;max-width:130px;padding:6px 7px;border:1px solid #bccbb8;background:white;color:#253b2d;border-radius:3px;font:600 15px/1.35 var(--ibs-ref-body,Arial,sans-serif)}
body.ibs-preview-page .ibs-app-fx-inputrow-v277 output{display:inline-block;font-size:15px;font-weight:700;color:#225A40;overflow-wrap:anywhere;min-width:0}
body.ibs-preview-page .ibs-app-fx-equals-v277{font-size:18px;color:#507450}
body.ibs-preview-page .ibs-app-fx-v277 .ibs-app-fx-date-v277{font-size:12px;color:#596b60}
body.ibs-preview-page .ibs-app-fx-v277 .ibs-app-fx-note-v277{font-size:12px;color:#52645a}
body.ibs-preview-page .ibs-app-fx-v277 a{color:#225A40;text-decoration:underline;font-weight:600}
body.ibs-preview-page .ibs-app-fx-v277 .ibs-app-fx-unavailable-v277{font-size:13px}
/* APP v280: consistent justified descriptions and semantic weather bullet points.
   Protect this alignment from the older Bangladesh right-column text overrides. */
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 p,
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 li,
body.ibs-preview-page.ibs-app-v109-group-visual .ibs-bd-v131-right-column .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 p,
body.ibs-preview-page.ibs-app-v109-group-visual .ibs-bd-v131-right-column .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 li{
 text-align:justify!important;text-align-last:left!important;hyphens:auto;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-list-v280{
 list-style:disc outside;
 margin:0 14px 0 29px;
 padding:0 4px 0 10px;
 font-size:14px;
 line-height:1.64;
 color:#294239;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-list-v280 li{
 margin:0 0 8px;
 padding:0 0 1px;
 overflow-wrap:break-word;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-list-v280 li:last-child{margin-bottom:0;}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-list-v280 li::marker{color:#8BC34A;}
/* APP v281 — inherit each page's approved sidebar typography.
   The existing APP JavaScript reads actual computed sidebar font sizes,
   instead of fixing a new size for every private/group page. */
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273{
 font-family:var(--ibs-dynamic-copy-font,inherit);
 font-size:var(--ibs-dynamic-copy-size,inherit);
 line-height:var(--ibs-dynamic-copy-line,inherit);
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 h3{
 font-family:var(--ibs-dynamic-heading-font,var(--ibs-ref-heading,Georgia,serif))!important;
 font-size:var(--ibs-dynamic-heading-size,1.35em)!important;
 line-height:var(--ibs-dynamic-heading-line,1.35)!important;
 font-weight:400;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 p,
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 li,
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 .ibs-app-fx-v277 p,
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 .ibs-app-fx-v277 label,
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 .ibs-app-fx-v277 output,
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273 .ibs-app-fx-v277 input {
 font-family:var(--ibs-dynamic-copy-font,inherit)!important;
 font-size:var(--ibs-dynamic-copy-size,inherit)!important;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-list-v280{
 list-style:none;
 margin:0 13px 0;
 padding:0 13px;
 font-size:inherit;
 line-height:inherit;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-list-v280 li{
 display:flex;
 gap:.55em;
 align-items:flex-start;
 line-height:inherit;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-icon-v281{
 display:inline-flex;
 flex:none;
 width:1.12em;
 height:1.12em;
 align-items:center;
 justify-content:center;
 margin-top:.28em;
 color:#8BC34A;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-icon-v281 .ibs-ref-icon{
 width:1em;
 height:1em;
 fill:currentColor;
 stroke:none;
 margin:0;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-copy-v281{
 display:block;
 flex:1;
 min-width:0;
 text-align:justify;
 text-align-last:left;
 hyphens:auto;
}
/* APP v283 universal anti-gap rule: no unused right-hand card container,
   and a currency-only full-width continuation if it cannot fit alongside. */
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273[hidden],
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-dynamic-card-v273[hidden]{
 display:none!important;
}
body.ibs-preview-page .ibs-app-dynamic-overflow-v283{
 width:100%;
 box-sizing:border-box;
 max-width:100%;
 margin:12px 0 17px;
 padding:0;
}
body.ibs-preview-page .ibs-app-dynamic-overflow-v283 .ibs-app-dynamic-card-v273{
 width:100%;
}
/* APP v285: live weather from the provider, in the existing IBS green/white card. */
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-live-weather-v285{
 padding:0 13px 11px;
 font-family:inherit;
 font-size:inherit;
 color:inherit;
}
body.ibs-preview-page .ibs-app-live-weather-v285 .weatherwidget-io{
 display:block;
 width:100%;
 min-height:80px;
 overflow:hidden;
}
body.ibs-preview-page .ibs-app-live-weather-v285 iframe{
 border:0;
 max-width:100%;
}
body.ibs-preview-page .ibs-app-live-weather-v285 .ibs-app-weather-location-v285,
body.ibs-preview-page .ibs-app-live-weather-v285 .ibs-app-weather-credit-v285,
body.ibs-preview-page .ibs-app-live-weather-v285 .ibs-app-weather-safety-v285{
 padding:4px 0!important;
 margin:0 0 4px!important;
 font-family:inherit!important;
 font-size:inherit!important;
 line-height:inherit!important;
 text-align:justify!important;
}
body.ibs-preview-page .ibs-app-live-weather-v285 a:not(.weatherwidget-io){
 color:#225A40;
 text-decoration:underline;
}
/* v286: fully server-rendered destination weather, no external iframe. */
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-live-weather-v286{
 padding:0 13px 12px;
 font-size:inherit;
 font-family:inherit;
 line-height:inherit;
}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-weather-now-v286{
 display:flex;align-items:center;gap:12px;
 border-bottom:1px solid #e1e9dc;padding:4px 2px 8px;margin-bottom:8px;
 color:#225A40;
}
body.ibs-preview-page .ibs-app-weather-now-v286 svg{flex:none;color:#8BC34A;width:35px;height:35px}
body.ibs-preview-page .ibs-app-weather-now-v286 span{display:flex;flex-direction:column;gap:1px;min-width:0}
body.ibs-preview-page .ibs-app-weather-now-v286 strong{font-size:1.2em;line-height:1.2}
body.ibs-preview-page .ibs-app-weather-now-v286 small{font-size:1em;line-height:1.3}
body.ibs-preview-page .ibs-app-weather-forecast-v286{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
 gap:3px;margin-bottom:8px;
}
body.ibs-preview-page .ibs-app-weather-day-v286{
 min-width:0;display:flex;align-items:center;flex-direction:column;
 justify-content:flex-start;gap:4px;padding:5px 2px;
 border-left:1px solid #e4ebdf;
 text-align:center;
}
body.ibs-preview-page .ibs-app-weather-day-v286:first-child{border-left:0}
body.ibs-preview-page .ibs-app-weather-daylabel-v286{font-weight:700;line-height:1.25}
body.ibs-preview-page .ibs-app-weather-dayicon-v286 svg{width:26px;height:26px;display:block;color:#7cb63e}
body.ibs-preview-page .ibs-app-weather-daytemps-v286{font-weight:600;white-space:nowrap;letter-spacing:-.3px;line-height:1.3}
body.ibs-preview-page .ibs-app-dynamic-sidebar-v273 .ibs-app-live-weather-v286 p{
 padding:2px 0!important;margin:0 0 3px!important;
 font-size:inherit!important;line-height:1.4!important;text-align:justify!important;
}
body.ibs-preview-page .ibs-app-live-weather-v286 a{color:#225A40;font-weight:600}