/* Blisko Ludzi v1.3 Mobilne PWA PRO */
:root{--bl-bottom-nav-h:72px;--bl-warm:#8b5e3c;--bl-soft:#fff8f1;--bl-border:rgba(139,94,60,.18)}
@media (max-width: 991.98px){
  body.blisko-user-mobile{padding-bottom:calc(var(--bl-bottom-nav-h) + env(safe-area-inset-bottom,0px));}
  .public-navbar .navbar-nav .nav-link{font-size:1rem;padding:.7rem 0;}
  .public-navbar .dropdown-menu{border:0;box-shadow:none;background:rgba(255,255,255,.65);padding:.25rem 0 .65rem 1rem;}
  .bl-mobile-bottom-nav{display:flex!important;position:fixed;left:0;right:0;bottom:0;z-index:1040;min-height:var(--bl-bottom-nav-h);padding:7px 8px calc(7px + env(safe-area-inset-bottom,0px));background:rgba(255,250,245,.96);backdrop-filter:blur(14px);border-top:1px solid var(--bl-border);box-shadow:0 -10px 28px rgba(70,45,25,.10);}
  .bl-mobile-bottom-nav a{flex:1;text-decoration:none;color:#7c6656;font-size:.74rem;line-height:1.1;text-align:center;border-radius:16px;padding:8px 3px 6px;position:relative;}
  .bl-mobile-bottom-nav a .ico{display:block;font-size:1.25rem;margin-bottom:3px;}
  .bl-mobile-bottom-nav a.active{color:var(--bl-warm);background:#fff;box-shadow:0 6px 18px rgba(139,94,60,.10);font-weight:700;}
  .bl-mobile-bottom-nav .notif-dot{position:absolute;top:5px;right:calc(50% - 20px);min-width:18px;height:18px;border-radius:999px;background:#dc3545;color:#fff;font-size:.65rem;line-height:18px;font-weight:700;}
  .card,.profile-card,.group-card,.event-card{border-radius:1.25rem!important;}
  .btn{min-height:42px;}
  .table-responsive{border-radius:1rem;}
  .mobile-stack > *{width:100%!important;margin-bottom:.5rem;}
}
@media (min-width: 992px){.bl-mobile-bottom-nav{display:none!important;}}
.pwa-install-banner{position:fixed;left:1rem;right:1rem;bottom:calc(var(--bl-bottom-nav-h) + 1rem);z-index:1050;border:1px solid var(--bl-border);border-radius:1.25rem;background:#fff;box-shadow:0 18px 45px rgba(64,40,25,.15);padding:1rem;display:none;}
@media (min-width: 992px){.pwa-install-banner{max-width:420px;left:auto;bottom:1.5rem;}}

/* 3.6.0.53 Public mobile UX */
@media (max-width: 575.98px){
  .public-navbar .container{padding-left:1rem;padding-right:1rem}
  .navbar-brand{font-size:1rem}
  .hero h1{font-size:2.35rem}
  .hero-card{padding:1.4rem!important}
  .feature-card,.cms-card{padding:1.25rem}
  .form-control-lg{font-size:1rem;min-height:50px}
}


/* 3.6.0.89 Accessibility & Mobile */
@media (max-width: 767.98px){
  .bl-mobile-bottom-nav{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none}
  .bl-mobile-bottom-nav::-webkit-scrollbar{display:none}
  .bl-mobile-bottom-nav a{min-width:62px;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center}
  .bl-mobile-bottom-nav a>span:not(.ico){display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .row>.col-md-4,.row>.col-md-6,.row>.col-lg-4,.row>.col-lg-8{min-width:0}
  .d-flex.mobile-stack,.mobile-stack{display:grid!important;grid-template-columns:1fr;gap:.65rem}
  .mobile-stack>*{width:100%!important;margin:0!important}
  .form-check{padding-top:.25rem;padding-bottom:.25rem}
  .form-check-input{width:1.25rem;height:1.25rem;margin-top:.15rem}
  .form-check-label{padding-left:.2rem;line-height:1.45}
}
@media (max-width: 420px){
  .bl-mobile-bottom-nav a{min-width:58px;font-size:.7rem}
  .bl-mobile-bottom-nav a .ico{font-size:1.15rem}
}
