/* Shared reservation-only responsive layer; no order/payment/print selectors. */
.ig-reservation-popup,.ig-reservation-popup *,.ig-res-day-dialog,.ig-res-day-dialog *,.ig-res-edit-dialog,.ig-res-edit-dialog *,.ig-res-card,.reservation-view,.reservation-view *{box-sizing:border-box}
.ig-reservation-popup-head{min-height:60px}.ig-reservation-popup-head strong,.ig-res-edit-head strong{min-width:0;overflow-wrap:anywhere}.ig-reservation-popup-head button,.ig-res-edit-head button{min-height:44px;flex-shrink:0;touch-action:manipulation}.ig-reservation-popup iframe,.reservation-view{overscroll-behavior:contain}body:has(>.ig-reservation-popup[open]){overflow:hidden}
.ig-res-edit-head{flex:0 0 auto;gap:10px}.ig-res-card>div{min-width:0}.ig-res-card h3,.ig-res-card strong,.ig-res-sms{overflow-wrap:anywhere}.ig-res-actions button{min-height:44px;height:auto;padding:10px;touch-action:manipulation}.ig-res-day-body{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.ig-res-day-settings label{min-height:48px;line-height:1.4}.ig-res-day-settings button{min-height:48px}.ig-res-day-body #reservationDayList>.ig-reservations-title{display:none}
.reservation-page,.calendar-panel,.day-panel{min-width:0}.calendar-toolbar button{min-height:44px;touch-action:manipulation}.calendar-day{touch-action:manipulation}.day-panel p{overflow-wrap:anywhere}
.reservation-form-page{padding-bottom:max(24px,env(safe-area-inset-bottom))}.reservation-form-page input,.reservation-form-page select,.reservation-form-page textarea{font-size:16px;min-width:0;min-height:48px}.reservation-form-page label,.reservation-form-page .fields{min-width:0}.reservation-form-page button{min-height:48px;touch-action:manipulation;white-space:normal}.reservation-form-page p,.reservation-form-page h2{overflow-wrap:anywhere}.reservation-form-page #privateLink{font-size:16px}.reservation-form-page .phone-help a{display:inline-flex;align-items:center;min-height:44px}.reservation-form-page .privacy{font-size:13px;line-height:1.6}
@media(max-width:600px),(max-height:500px){
 .ig-reservation-popup{position:fixed;inset:0;margin:0;width:100%;max-width:100%;height:100vh;height:100dvh;max-height:100dvh;border-radius:0}.ig-reservation-popup-head{padding:8px max(10px,env(safe-area-inset-right)) 8px max(10px,env(safe-area-inset-left));padding-top:max(8px,env(safe-area-inset-top));gap:8px;min-height:60px}.ig-reservation-popup-head strong{font-size:18px}.ig-reservation-popup-head button{font-size:14px;padding:10px 12px}.ig-reservation-popup iframe{padding-bottom:env(safe-area-inset-bottom)}
 .ig-res-day-dialog,.ig-res-edit-dialog{position:fixed;inset:0;margin:0;width:100%;max-width:100%;max-height:100dvh;height:100dvh;border-radius:0}.ig-res-edit-head{padding:8px 10px;font-size:16px;min-height:60px}.ig-res-day-body{padding:12px;padding-bottom:max(16px,env(safe-area-inset-bottom));flex:1}.ig-res-day-settings h3{font-size:18px;margin-top:4px}.ig-res-day-settings label{padding:12px;gap:10px;font-size:15px}.ig-res-day-settings button{width:100%;font-size:16px}.ig-res-card{grid-template-columns:minmax(0,1fr);padding:12px;gap:8px;font-size:15px}.ig-res-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:none;grid-column:auto}.ig-res-actions button{min-width:0;font-size:14px}.ig-res-sms{font-size:12px;line-height:1.4}.ig-reservations-review{margin:0 0 12px;max-height:45dvh}.mobile-dashboard a[data-reservation-popup]{min-height:44px;white-space:normal;display:inline-flex;align-items:center;justify-content:center}
}
@media(max-width:600px){
 .reservation-page{padding:6px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.calendar-panel{padding:8px}.calendar-toolbar{gap:8px;margin-bottom:14px;flex-wrap:wrap}.calendar-toolbar h2{font-size:17px}.calendar-toolbar p{font-size:12px}.weekday-row,.calendar-grid{gap:3px}.weekday-row{font-size:11px}.calendar-day{min-height:91px;padding:7px 3px;overflow:hidden}.day-top{justify-content:center;width:100%}.day-top strong{font-size:21px}.day-month{font-size:0;align-self:center;margin-top:3px}.day-month::after{content:attr(data-short);font-size:10px}.day-holiday{display:none}.day-hint{font-size:0!important;align-self:center;padding-top:7px;white-space:nowrap}.day-hint::after{content:attr(data-short);font-size:9px;letter-spacing:-.2px}.day-count{font-size:0;align-self:center;white-space:nowrap;margin-top:4px}.day-count:not(:empty)::after{content:attr(data-count) ' R';font-size:11px}.calendar-legend{font-size:12px;gap:10px}.day-panel{padding:12px}.opening-rule,.information-note p{font-size:14px}.day-availability{font-size:14px}.calendar-footer{font-size:11px;line-height:1.5}.calendar-page-heading{flex-wrap:wrap}.calendar-page-heading a{min-height:44px;display:flex;align-items:center}.calendar-page-heading h1{font-size:20px}
 .reservation-form-page{padding:14px 12px max(24px,env(safe-area-inset-bottom));font-size:16px}.reservation-form-page .fields{grid-template-columns:minmax(0,1fr);gap:0}.reservation-form-page h1{font-size:26px}.reservation-form-page h2{font-size:22px}.reservation-form-page #reservationResult{padding:12px}.reservation-form-page #reservationLookup button,.reservation-form-page #reservationResult button,.reservation-form-page #submitReservation{display:block;width:100%;margin:12px 0 0}.reservation-form-page #backChoice,.reservation-form-page #editReservation{margin-left:0;margin-right:0}.reservation-form-page #reservationSummary{font-size:16px}.reservation-form-page .change-code{font-size:25px;letter-spacing:3px}
}
@media(min-width:601px) and (max-width:1024px){.ig-res-day-dialog{width:96vw;max-width:96vw}.ig-res-day-settings label{font-size:16px}.reservation-form-page{padding:20px}.ig-res-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ig-res-actions{grid-column:1/-1;max-width:none}}
@media(prefers-reduced-motion:reduce){.ig-reservation-popup,.ig-res-day-dialog,.ig-res-edit-dialog{scroll-behavior:auto}}
