/* Bid2Stay 28.14.0 — Clean Mobile Baseline UI
Surgical mobile-only layer on 28.8.9.4. No desktop workflow inheritance changes. */

@media(max-width:900px){
  html,body{max-width:100%;overflow-x:hidden!important}
  body{font-size:15px!important;line-height:1.42!important;-webkit-text-size-adjust:100%}

  /* Mobile must not be a squeezed desktop layout */
  main,.admin-main,.guest-main,.provider-main{width:100%!important;max-width:100%!important;min-width:0!important}

  /* Compact section/card rhythm */
  .card,.panel,.guest-card,.provider-card,.admin-card,.form-card,.auth-card,.login-card,.register-card,
  [data-review-detail],[data-review-host]{
    min-height:0!important;height:auto!important;padding:12px!important;border-radius:13px!important
  }

  /* Mobile controls */
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),
  select{min-height:44px!important;height:44px!important;padding:0 11px!important;font-size:15px!important;border-radius:10px!important}
  textarea{min-height:88px!important;padding:10px 11px!important;font-size:15px!important;border-radius:10px!important}
  button,.btn,a.btn,input[type="submit"],input[type="button"]{
    min-height:42px!important;height:auto!important;padding:9px 12px!important;font-size:13px!important;
    line-height:1.15!important;border-radius:10px!important;white-space:normal!important;overflow-wrap:anywhere!important
  }

  /* Typography */
  main h1,.admin-main h1{font-size:clamp(24px,7vw,30px)!important;line-height:1.08!important;overflow-wrap:break-word!important}
  main h2,.admin-main h2{font-size:clamp(19px,5.2vw,22px)!important;line-height:1.15!important}
  main h3,.admin-main h3{font-size:17px!important}
  label,.form-label,.field-label,legend{font-size:12px!important;line-height:1.2!important;color:#344054!important;font-weight:800!important}
  .helper,.help-text,.field-help,.form-help,.hint,small{font-size:11px!important;line-height:1.35!important;color:#667085!important}

  /* No text spill */
  p,li,label,button,a,span,td,th{overflow-wrap:anywhere}
  img,svg,video,canvas,iframe{max-width:100%}

  /* Avoid sticky mobile actions covering fields */
  .sticky-actions,.bottom-actions,.mobile-actions,.mobile-bottom-actions,.form-actions.sticky,.wizard-actions,.provider-actions,
  body.admin-page [data-admin-edit-form] .actions,body.admin-page [data-review-detail] .actions{
    position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;
    box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important
  }

  /* Auth contrast */
  body.login-page,body.register-page,body.auth-page,
  body:has(form[action*="login"]),body:has(form[action*="register"]){background:#f5f3ed!important;color:#172033!important}
  .auth-card,.login-card,.register-card,body:has(form[action*="login"]) form,body:has(form[action*="register"]) form{
    background:#fff!important;color:#172033!important
  }
  .auth-card label,.login-card label,.register-card label,
  body:has(form[action*="login"]) label,body:has(form[action*="register"]) label{color:#344054!important}
  .auth-card input,.login-card input,.register-card input,
  body:has(form[action*="login"]) input,body:has(form[action*="register"]) input{
    background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important
  }
  ::placeholder{color:#98a2b3!important;opacity:1!important}

  /* Map switchers: compact labels/spacing only */
  .b2s-map-switcher,.map-layer-switcher{
    display:flex!important;gap:4px!important;overflow-x:auto!important;scrollbar-width:none;white-space:nowrap!important
  }
  .b2s-map-switcher::-webkit-scrollbar,.map-layer-switcher::-webkit-scrollbar{display:none}
  .b2s-map-switcher-btn,.map-layer-switcher button{
    flex:0 0 auto!important;min-height:34px!important;height:34px!important;padding:0 9px!important;font-size:10.5px!important
  }

  /* Long tables stay contained */
  .table-wrap,.admin-table-wrap,.responsive-table{max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  table{font-size:12.5px!important}
  th,td{padding:9px 8px!important;white-space:normal!important}
}

/* Find requested control ordering and simplification */
@media(max-width:760px){
  body.b2s30-discovery-page .b2s28140-stay-switch{
    display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:8px 12px 7px;padding:4px;
    border:1px solid #dfe4e9;border-radius:13px;background:#fff
  }
  body.b2s30-discovery-page .b2s28140-stay-switch button{
    min-height:38px!important;padding:6px 8px!important;border:0!important;border-radius:9px!important;
    background:transparent!important;color:#667085!important;font-size:11.5px!important;font-weight:900!important
  }
  body.b2s30-discovery-page .b2s28140-stay-switch button.active{
    background:#111923!important;color:#fff!important;-webkit-text-fill-color:#fff!important
  }
  body.b2s30-discovery-page .b2s28140-search-summary{
    margin:0 12px 10px;min-height:54px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;
    padding:9px 10px 9px 12px;border:1px solid #dfe4e9;border-radius:14px;background:#fff;color:#172033;text-align:left
  }
  body.b2s30-discovery-page .b2s28140-search-summary strong{display:block;font-size:13.5px;line-height:1.08}
  body.b2s30-discovery-page .b2s28140-search-summary span{display:block;margin-top:3px;color:#667085;font-size:10.5px;font-weight:700}
  body.b2s30-discovery-page .b2s28140-search-summary i{
    width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#f7b91f;color:#111827;font-style:normal
  }
  body.b2s30-discovery-page .b2s2740-view-toggle,
  body.b2s30-discovery-page [data-view-toggle],
  body.b2s30-discovery-page [data-b2s-view-toggle],
  body.b2s30-discovery-page .b2s30-filter-bar{display:none!important}
}
