
/* LocalHub global mobile hardening */
html,body{max-width:100%;overflow-x:hidden}
*,*::before,*::after{box-sizing:border-box}
img,video,iframe,canvas,svg{max-width:100%}
input,textarea,select,button{max-width:100%}
a,button,label,input[type="button"],input[type="submit"],input[type="radio"],input[type="checkbox"],select{
    touch-action:manipulation;
    -webkit-tap-highlight-color:transparent;
}
button,a{cursor:pointer}
@media(max-width:768px){
    html,body{width:100%;min-width:0;overflow-x:hidden!important}
    body{overscroll-behavior-x:none}
    main,section,article,header,footer,nav,div,form{min-width:0}
    input,textarea,select{font-size:16px!important}
    button,a.btn,.btn,.action,.filter-btn,.chip,.lh-nav-item,.owner-app-item{min-height:44px}
    .chips,.filters,.category-scroll,.publish-type-grid{
        overflow-x:visible!important;
        flex-wrap:wrap!important;
        scroll-snap-type:none!important;
        scrollbar-width:none;
    }
    .chips::-webkit-scrollbar,.filters::-webkit-scrollbar,.category-scroll::-webkit-scrollbar,.publish-type-grid::-webkit-scrollbar{display:none}
    .chip,.filter,.filter-btn{flex:0 1 auto!important}
    .publish-type-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .type-option{min-width:0!important;flex:auto!important}
    .post,.place-card,.card,.panel,.glass{max-width:100%}
}
@media(max-width:390px){
    .publish-type-grid{grid-template-columns:1fr 1fr!important}
}


.lh-tour-overlay{position:fixed;inset:0;z-index:2147483000;background:rgba(0,0,0,.68);font-family:Inter,system-ui,sans-serif}
.lh-tour-focus{position:fixed;border-radius:16px;box-shadow:0 0 0 9999px rgba(0,0,0,.14),0 0 0 2px rgba(255,116,88,.9);pointer-events:none;transition:.22s ease}
.lh-tour-card{position:fixed;width:min(360px,calc(100vw - 20px));padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:#151519;color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.55)}
.lh-tour-close{position:absolute;right:10px;top:8px;width:35px;height:35px;border:0;border-radius:50%;background:rgba(255,255,255,.06);color:#aaa;font-size:22px}
.lh-tour-count{color:#ff8065;font-size:11px;font-weight:900;margin-bottom:8px}
.lh-tour-title{display:block;padding-right:35px;font-size:18px;letter-spacing:-.02em}
.lh-tour-text{margin:8px 0 16px;color:#aeb1bb;line-height:1.55;font-size:14px}
.lh-tour-actions{display:flex;justify-content:space-between;gap:9px}
.lh-tour-actions button{min-height:44px;border-radius:12px;padding:9px 14px;font-weight:850}
.lh-tour-skip{border:1px solid rgba(255,255,255,.1);background:transparent;color:#999}
.lh-tour-next{margin-left:auto;border:0;background:linear-gradient(135deg,#ff7657,#ff376f);color:#fff}
.lh-help-button{width:42px;height:42px;display:inline-grid;place-items:center;border-radius:12px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.04);color:#fff;font-weight:900}


/* Clean app UI: navigation + content, onboarding replaces permanent explainers */
.feed-page main,.catalog-page main{padding-top:24px}
@media(max-width:768px){
  main{padding-top:12px}
  .page-subtitle,.hero-subtitle,.page-description{display:none!important}
}

@media(max-width:768px){
 body,html{overflow-x:clip!important;max-width:100%!important}
 .wrap,.shell,.main-container,.dashboard-content,.main,.section,.card,.post,.place-card,form{max-width:100%!important;min-width:0!important}
 input,textarea,select{width:100%;min-width:0!important}
 .lh-mobile-nav,.owner-app-nav,.admin-mobile-nav{max-width:calc(100% - 14px)!important}
}

/* V3 hard mobile bounds */
@media(max-width:768px){
 html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important}
 body>*{max-width:100%}
 .wrap,.shell,.main-container,.dashboard-content,.main,.grid,.feed,.feed-layout,.saved-main{min-width:0!important;max-width:100%!important}
 input,textarea,select,button{min-width:0!important}
}
