/* Faithful BALI website mobile calendar and menu geometry in Telegram.
   The month grid sits ABOVE 3 square posters as on baliminsk.by, without
   a second tab, backplate, date label on photo or extra vertical scroll. */
.tg-page-calendar #screen{display:flex;flex-direction:column;min-height:0;flex:1;gap:0;overflow:hidden}
.tg-page-calendar #screen>.tg-eyebrow{display:none}
.tg-page-calendar #screen>.tg-title{
 flex:none;font:750 clamp(17px,2.8dvh,23px)/1.12 Manrope,Inter,sans-serif!important;
 color:#f4f5ee!important;letter-spacing:0!important;margin:0 0 3px!important;
}
.tg-page-calendar .tg-calendar-panel{
 display:flex;flex-direction:column;flex:none!important;
 min-height:0!important;height:auto!important;max-height:none!important;
 margin:0 0 2px!important;padding:0!important;border:0!important;border-radius:0!important;
 background:none!important;box-shadow:none!important;
}
.tg-page-calendar .tg-calendar-toolbar{flex:none;margin:0 0 3px!important}
.tg-page-calendar .tg-calendar-toolbar .tg-eyebrow{display:none}
.tg-page-calendar .tg-calendar-toolbar .tg-panel-title{
 color:#f4f5ee;font-size:clamp(12px,2.2dvh,16px);
 font-weight:720;text-transform:capitalize;
}
.tg-page-calendar .tg-calendar-month-controls .button{
 width:27px;height:25px;min-height:25px;padding:0!important;border-radius:4px;
 border-color:#47574a;background:#121b18!important;color:#dbedce;font-size:18px;
}
.tg-page-calendar .tg-calendar-weekdays{margin:0 0 2px!important;gap:3px}
.tg-page-calendar .tg-calendar-weekdays span{
 color:#9fa6a0;font-size:8px;font-weight:750;line-height:1.1;
}
.tg-page-calendar #tgCalendarDays{
 display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;
 grid-auto-rows:clamp(20px,3dvh,25px)!important;gap:1px 4px!important;
}
.tg-page-calendar .tg-calendar-day{
 width:100%;min-height:0!important;height:100%!important;aspect-ratio:auto!important;
 border-radius:0!important;box-shadow:none!important;
 background:rgba(8,16,13,.33)!important;color:#c6d0c8!important;
 border:1px solid rgba(230,243,228,.14)!important;
 font:650 clamp(10px,2.4vw,12px)/1 Manrope,Inter,sans-serif;
}
.tg-page-calendar .tg-calendar-day[data-outside="true"]{opacity:.24}
.tg-page-calendar .tg-calendar-day[data-ring="future"]{border-color:#81c950!important;color:#c9f89d!important}
.tg-page-calendar .tg-calendar-day[data-ring="past"]{border-color:#c56660!important;color:#e3a8a6!important}
.tg-page-calendar .tg-calendar-day[data-ring="today"]{border-color:#f4f5ee!important;color:#fff!important}
.tg-page-calendar .tg-calendar-day.is-selected{
 background:rgba(185,255,81,.13)!important;border-color:#b9ff51!important;
 color:#e3ffac!important;box-shadow:inset 0 0 0 1px #8ac54145!important;
}
.tg-page-calendar .tg-calendar-day i{
 bottom:1px;width:3px;height:3px;background:#b9ff51;box-shadow:none;
}
.tg-page-calendar .tg-calendar-stage{
 display:flex!important;flex:1 1 0!important;min-height:0!important;
 margin:0!important;padding:0!important;overflow:hidden;
}
.tg-page-calendar .tg-calendar-poster-stack{
 flex:1;min-height:0!important;max-height:100%!important;
 height:auto!important;overflow:hidden;
 background:none!important;
}
.tg-page-calendar .tg-calendar-poster-stack::before,
.tg-page-calendar .tg-calendar-poster-stack::after{content:none!important}
.tg-page-calendar .tg-event-poster{
 width:min(52vw,calc((100dvh - 350px) * .88),230px)!important;
 max-width:min(70%,230px)!important;
 border:1px solid rgba(201,255,105,.43)!important;border-radius:5px!important;
 background:#060907!important;
 box-shadow:0 10px 22px #0009!important;
 filter:brightness(.86) saturate(.82);
}
.tg-page-calendar .tg-event-poster.is-current{
 border-color:#c9ff86!important;
 box-shadow:0 0 20px #aaf36444,0 11px 26px #000a!important;
 filter:brightness(1) saturate(1);
}
.tg-page-calendar .tg-event-poster::before,.tg-page-calendar .tg-event-poster::after{
 content:none!important;
}
.tg-page-calendar .tg-event-poster-gloss{display:none!important}
.tg-page-calendar .tg-calendar-poster-controls{
 flex:none;height:26px;padding:0!important;gap:10px!important;margin:0;
}
.tg-page-calendar .tg-calendar-poster-controls .button{
 width:31px;height:24px;min-height:24px!important;padding:0!important;
 border-color:#52674f;color:#dfecce;background:#101a15!important;
 border-radius:5px;font-size:18px!important;
}
.tg-page-calendar .tg-calendar-counter{font:800 9px/1 Inter,sans-serif;color:#a9d98b}
.tg-page-calendar .tg-event-detail{
 flex:none!important;margin:0 0 3px!important;padding:0!important;min-height:0!important;
 border:0!important;border-radius:0!important;box-shadow:none!important;
 background:none!important;overflow:visible;
}
.tg-page-calendar .tg-event-detail::before,.tg-page-calendar .tg-event-detail::after{display:none}
.tg-calendar-actions{display:flex;align-items:stretch;gap:7px}
.tg-calendar-actions>.tg-event-interest-bar{
 display:flex;flex:1 1 auto;min-width:0;margin:0!important;padding:0!important;border:0!important;
}
.tg-calendar-actions>.tg-event-interest-bar>.button{
 width:100%;max-width:none;min-height:clamp(31px,5.1dvh,40px)!important;
 background:#c3fb61!important;border:1px solid #c3fb61!important;
 color:#12200e!important;box-shadow:none!important;border-radius:5px!important;
 font:750 clamp(9px,1.7dvh,12px)/1 Manrope,Inter,sans-serif!important;
}
.tg-calendar-actions>.tg-event-interest-bar>.tg-interest-selected{
 background:#364b30!important;border-color:#c3fb61!important;color:#eaffde!important;
}
.tg-calendar-actions>.tg-event-interest-bar>.tg-event-interest-count{display:none}
.tg-calendar-actions>.tg-calendar-share{
 flex:1 1 auto;min-width:0;height:auto;min-height:clamp(31px,5.1dvh,40px)!important;
 background:#09100c!important;border:1px solid rgba(231,239,225,.6)!important;
 color:#eef4e9!important;box-shadow:none!important;border-radius:5px!important;
 font:750 clamp(9px,1.7dvh,12px)/1 Manrope,Inter,sans-serif!important;
}
.tg-page-calendar .tg-event-interest-note{font-size:9px;margin:0;line-height:1.3}
@media(max-height:640px){
 .tg-page-calendar #tgCalendarDays{grid-auto-rows:clamp(18px,3.15dvh,21px)!important;gap:0 3px!important}
 .tg-page-calendar .tg-calendar-weekdays{margin-bottom:0!important}
 .tg-page-calendar .tg-calendar-toolbar{margin-bottom:2px!important}
 .tg-page-calendar .tg-calendar-poster-controls{height:23px}
}
@media(min-width:650px){
 .tg-page-calendar .tg-event-poster{
  width:min(33vw,calc((100dvh - 365px) * .9),280px)!important;max-width:280px!important;
 }
}
/* Published menu from the website: same heading, text and controls, NO extra generated imagery. */
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .menu-item--no-image::before{
 display:none!important;content:none!important;
}
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .menu-item{
 border-radius:11px!important;border:1px solid #242a36!important;
 background:linear-gradient(115deg,#111722,#0a0f17)!important;
 box-shadow:none!important;transform:none!important;
}
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .menu-item-content{
 justify-content:center;gap:5px;padding:clamp(10px,2dvh,16px)!important;
}
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .menu-item-name{
 color:#fff!important;font-weight:750!important;
 font-size:clamp(13px,2.3dvh,17px)!important;
}
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .menu-item-description{
 color:#aeb7c7!important;font-size:clamp(10px,1.6dvh,12px)!important;
 -webkit-line-clamp:3!important;line-height:1.4!important;
}
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .menu-item-price{color:#edc882!important}
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .menu-quantity{
 border-radius:8px;background:#202630!important;
}
body.bali-guest-theme .tg-page-menu #menuPage.tg-menu #menuGrid .add-to-cart-btn{
 background:linear-gradient(#ffe098,#edb34f)!important;color:#221506!important;
 border:0!important;border-radius:8px!important;box-shadow:none!important;font-weight:800!important;
}
