/* PhotoSales Studio 4.3.16 – Mobile gallery search/filter drawer */
.pss-mobile-filter-launcher,
.pss-mobile-filter-drawer{display:none}

@media (max-width:768px){
  .pss-mobile-filter-launcher{
    display:inline-flex;
    position:fixed;
    z-index:1150;
    top:78px;
    left:12px;
    align-items:center;
    gap:8px;
    min-height:42px;
    max-width:calc(100vw - 88px);
    padding:9px 13px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:13px;
    background:#123d76;
    color:#fff;
    box-shadow:0 9px 25px rgba(10,36,76,.28);
    font:800 13px/1.15 inherit;
    cursor:pointer;
    -webkit-tap-highlight-color:transparent;
  }
  .pss-mobile-filter-launcher:focus-visible{outline:3px solid rgba(82,153,255,.45);outline-offset:3px}
  .pss-mobile-filter-launcher .pss-mobile-filter-icon{font-size:18px;line-height:1}
  .pss-mobile-filter-launcher .pss-mobile-filter-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .pss-mobile-filter-launcher .pss-mobile-filter-count{
    display:none;min-width:20px;height:20px;padding:0 5px;border-radius:999px;
    align-items:center;justify-content:center;background:#fff;color:#123d76;font-size:11px
  }
  .pss-mobile-filter-launcher.has-active-filters .pss-mobile-filter-count{display:inline-flex}

  .pss-mobile-filter-drawer{
    display:block;
    position:fixed;
    inset:0;
    z-index:3000;
    visibility:hidden;
    pointer-events:none;
  }
  .pss-mobile-filter-drawer.is-open{visibility:visible;pointer-events:auto}
  .pss-mobile-filter-backdrop{
    position:absolute;inset:0;background:rgba(4,13,29,.62);opacity:0;
    transition:opacity .22s ease;
  }
  .pss-mobile-filter-drawer.is-open .pss-mobile-filter-backdrop{opacity:1}
  .pss-mobile-filter-panel{
    position:absolute;top:0;bottom:0;left:0;
    width:min(90vw,390px);
    background:#f5f8fc;
    color:#15243a;
    box-shadow:18px 0 50px rgba(0,0,0,.32);
    transform:translateX(-104%);
    transition:transform .25s ease;
    display:flex;flex-direction:column;
    overflow:hidden;
  }
  .pss-mobile-filter-drawer.is-open .pss-mobile-filter-panel{transform:translateX(0)}
  .pss-mobile-filter-head{
    flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:17px 16px;background:#0c2f60;color:#fff;
    box-shadow:0 2px 12px rgba(0,0,0,.16)
  }
  .pss-mobile-filter-head div{min-width:0}
  .pss-mobile-filter-head strong{display:block;font-size:18px;line-height:1.2;color:#fff}
  .pss-mobile-filter-head small{display:block;margin-top:3px;color:rgba(255,255,255,.76)}
  .pss-mobile-filter-close{
    flex:0 0 42px;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);
    border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font-size:28px;line-height:1;cursor:pointer
  }
  .pss-mobile-filter-scroll{
    flex:1 1 auto;overflow:auto;-webkit-overflow-scrolling:touch;padding:14px 12px 96px
  }
  .pss-mobile-filter-slot{display:block}
  .pss-mobile-filter-slot>.gallery-search-card,
  .pss-mobile-filter-slot>#customerPhotoFilters{display:block!important;margin:0 0 14px!important;width:100%!important;max-width:none!important;box-sizing:border-box!important}
  .pss-mobile-filter-slot .gallery-search-card,
  .pss-mobile-filter-slot .customer-photo-filters{box-shadow:0 7px 22px rgba(15,38,70,.10)!important}
  .pss-mobile-filter-slot .form-grid.two,
  .pss-mobile-filter-slot .customer-photo-advanced-grid{grid-template-columns:1fr!important}
  .pss-mobile-filter-slot .admin-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .pss-mobile-filter-slot .admin-actions .btn{flex:1 1 130px!important;text-align:center!important}
  .pss-mobile-filter-slot .smart-search-panel{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .pss-mobile-filter-slot .customer-photo-filter-panel{display:grid!important;grid-template-columns:1fr!important;gap:12px!important}
  .pss-mobile-filter-slot input,
  .pss-mobile-filter-slot select,
  .pss-mobile-filter-slot textarea{max-width:100%!important;box-sizing:border-box!important}
  body.pss-mobile-filter-open{position:fixed;width:100%;overflow:hidden}
}

@media (max-width:430px){
  .pss-mobile-filter-launcher{top:72px;left:8px;padding:8px 11px;max-width:calc(100vw - 76px)}
  .pss-mobile-filter-panel{width:94vw}
}

/* PhotoSales Studio 4.3.17 – vertical mobile filter launcher
   A slim left-side tab positioned below the primary mobile search area. */
@media (max-width:768px){
  .pss-mobile-filter-launcher{
    position:fixed;
    top:190px;
    left:0;
    width:44px;
    min-width:44px;
    max-width:44px;
    height:154px;
    min-height:154px;
    padding:12px 7px;
    margin:0;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:8px;
    border-left:0;
    border-radius:0 14px 14px 0;
    box-sizing:border-box;
  }
  .pss-mobile-filter-launcher .pss-mobile-filter-icon{
    flex:0 0 auto;
    font-size:18px;
  }
  .pss-mobile-filter-launcher .pss-mobile-filter-label{
    display:block;
    max-width:none;
    overflow:visible;
    text-overflow:clip;
    white-space:nowrap;
    writing-mode:vertical-rl;
    transform:rotate(180deg);
    font-size:12px;
    line-height:1;
    letter-spacing:.2px;
  }
  .pss-mobile-filter-launcher .pss-mobile-filter-count{
    position:absolute;
    top:7px;
    right:-7px;
    box-shadow:0 2px 8px rgba(4,25,58,.28);
  }
}

@media (max-width:430px){
  .pss-mobile-filter-launcher{
    top:176px;
    left:0;
    width:42px;
    min-width:42px;
    max-width:42px;
    height:146px;
    min-height:146px;
    padding:10px 6px;
  }
}
