/* Scoped layout corrections for the existing public site. */
[hidden] { display:none !important; }
.san-map-section { clear:both; margin:20px 0; }
.san-map { width:100%; background:#f2f4ee; border:1px solid #a9b5a2; box-sizing:border-box; z-index:0; }
.san-map img { max-width:none !important; }
.san-map .leaflet-control-attribution { font-size:11px; }
.san-map .leaflet-popup-content a { color:#593500; font-size:14px; }
.empty-offers { padding:22px; background:#fff9df; border:1px solid #e1c76d; font-size:15px; line-height:1.6; }
.form_bad:focus { outline:3px solid #9e3000; }
input,select,textarea,button { box-sizing:border-box; }
@media(max-width:820px) {
  html,body { width:100%; margin:0; }
  body,td { font-size:14px; line-height:1.5; }
  #site-header { height:auto !important; background:none !important; }
  #site-header > div { height:auto !important; padding:8px !important; box-sizing:border-box; }
  #site-header > div > div { width:100% !important; display:flex; flex-wrap:wrap; gap:8px; }
  #site-header > div > div > div { float:none !important; width:auto !important; }
  #header-table,#layout,#site-footer { width:100% !important; max-width:100%; box-sizing:border-box; margin-top:0 !important; }
  #layout,#layout > tbody { display:block; }
  #header-table > tbody > tr:first-child { display:flex; flex-wrap:wrap; }
  #header-table > tbody > tr:first-child > td { width:100% !important; height:auto !important; background:none !important; padding:8px !important; }
  #header-table h1 { margin:8px 0 !important; padding:0 !important; }
  #header-table td > div { padding:0 !important; display:flex; flex-wrap:wrap; gap:6px 16px; }
  #header-table td > div > a { display:inline-block; margin:0 !important; padding:7px 0; }
  #header-table td[colspan] { padding:10px !important; height:auto !important; }
  #header-table fieldset { display:flex; flex-wrap:wrap; gap:8px; }
  #header-table select,#header-table input[type=text] { width:calc(50% - 4px) !important; min-width:0; min-height:40px; font-size:16px; }
  #header-table input[type=submit] { width:100% !important; height:40px !important; font-size:16px; }
  #layout > tbody > tr { display:flex; flex-direction:column; }
  #content { display:block; width:100% !important; box-sizing:border-box; padding:16px 12px !important; order:0; min-width:0; overflow-wrap:anywhere; }
  #layout .left { display:block; width:100% !important; box-sizing:border-box; order:1; padding:12px; }
  #layout .left table,#layout .left td { width:100% !important; box-sizing:border-box; }
  #content table { width:100% !important; max-width:100%; table-layout:fixed; box-sizing:border-box; }
  #content td { overflow-wrap:anywhere; max-width:100%; box-sizing:border-box; }
  #content img,#site-footer img,.left img { max-width:100%; height:auto; }
  #content iframe,#content video,#content object,#content embed { max-width:100%; }
  #content div:not(.leaflet-pane):not(.leaflet-tile-container):not(.leaflet-marker-icon):not(.leaflet-popup):not(.leaflet-control) { max-width:100%; box-sizing:border-box; }
  #san-card { width:100% !important; }
  #san-card > table > tbody > tr,#san-card > table > tbody > tr > td { display:block; width:100% !important; padding-left:0 !important; padding-right:0 !important; }
  #san-card-content,#san-card-content > tbody,#san-card-content > tbody > tr,#san-card-content > tbody > tr > td { display:block; width:100% !important; }
  #content .main_box,#content .main_box > tbody,#content .main_box > tbody > tr,#content .main_box > tbody > tr > td { display:block; width:100% !important; }
  .san_polecane,.san_inne { width:100%; height:auto; min-height:28px; box-sizing:border-box; }
  #form,#form_rez,#rezerwacja_cennik_table { width:100% !important; }
  #form td { padding:8px !important; }
  #form_rez table,#form_rez tbody,#form_rez tr,#form_rez td,#rezerwacja_cennik_table,#rezerwacja_cennik_table tbody,#rezerwacja_cennik_table tr,#rezerwacja_cennik_table td { display:block; width:100% !important; }
  #form_rez td,#rezerwacja_cennik_table td { padding:4px 0 !important; }
  #form form table,#form form tbody,#form form tr,#form form td { display:block; width:100% !important; }
  #form form td { padding:4px 0 !important; }
  #form input[type=text],#form input[type=email],#form textarea,#form select { max-width:100%; min-height:40px; font-size:16px; }
  #form select { width:100%; }
  #form select[id$='_rrrr'],#form select[id$='_mm'],#form select[id$='_dd'] { width:auto; max-width:42%; }
  #form input[type=submit],#form input[type=button] { float:none !important; max-width:100%; min-height:44px; white-space:normal; }
  #site-footer td { padding:8px; width:auto !important; }
  .belka_cennik b { width:auto; max-width:80%; }
  #showtel,#kontakt_button { width:auto; max-width:100%; }
  #cookies-message { box-sizing:border-box; padding:10px 12px !important; font-size:12px !important; line-height:1.4 !important; }
}
