.filter-panel-overlay{background:#00000080;border:0;inset:0;opacity:0;position:fixed;transition:opacity .3s ease,visibility .3s ease;visibility:hidden;z-index:1040}.filter-panel-overlay.visible{opacity:1;visibility:visible}.filter-panel{background:#fff;bottom:0;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;max-width:100vw;position:fixed;right:0;top:0;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:380px;z-index:1050}.filter-panel.open{transform:translate(0)}.filter-panel-header{align-items:center;background:#006db2;color:#fff;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.filter-panel-title{align-items:center;display:flex;font-size:1.15rem;font-weight:700;gap:.75rem}.filter-panel-close{align-items:center;background:#ffffff26;border:0;border-radius:50%;color:#fff;display:flex;height:36px;justify-content:center;width:36px}.filter-panel-body{flex:1;overflow-y:auto}.filter-section{border-bottom:1px solid #e9ecef}.filter-section-header{align-items:center;background:transparent;border:0;color:inherit;display:flex;justify-content:space-between;padding:1rem 1.5rem;text-align:left;width:100%}.filter-section-header .section-arrow{color:#6c757d;font-size:.75rem;transition:transform .2s ease}.filter-section-header.expanded .section-arrow{transform:rotate(180deg)}.filter-section-title{align-items:center;color:#1a1a2e;display:flex;font-size:.95rem;font-weight:700;gap:.75rem}.filter-section-title i{color:#006db2;text-align:center;width:20px}.filter-section-content{padding:0 1.5rem 1rem}.filter-checkbox,.filter-toggle{align-items:center;border-radius:8px;cursor:pointer;display:flex;margin:.25rem 0;padding:.6rem .75rem}.filter-checkbox:hover,.filter-checkbox.checked,.filter-toggle:hover,.filter-toggle.checked{background:#e8f4fc}.filter-checkbox input,.filter-toggle input{opacity:0;position:absolute}.checkbox-custom{border:2px solid #c7ced6;border-radius:4px;flex-shrink:0;height:20px;margin-right:.75rem;position:relative;width:20px}.filter-checkbox.checked .checkbox-custom{background:#006db2;border-color:#006db2}.filter-checkbox.checked .checkbox-custom:after{color:#fff;content:"";font-family:"Font Awesome 6 Free";font-size:.7rem;font-weight:900;left:3px;position:absolute;top:0}.checkbox-label,.toggle-label{color:#1a1a2e;flex:1;font-size:.9rem}.checkbox-count,.toggle-count{color:#6c757d;font-size:.8rem;margin-left:.5rem}.toggle-switch{height:26px;margin-left:1rem;position:relative;width:48px}.toggle-slider{background:#c7ced6;border-radius:26px;inset:0;position:absolute;transition:background .2s ease}.toggle-slider:before{background:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 4px #0003;content:"";height:20px;left:3px;position:absolute;transition:transform .2s ease;width:20px}.filter-toggle input:checked+.toggle-slider{background:#006db2}.filter-toggle input:checked+.toggle-slider:before{transform:translate(22px)}.filter-panel-footer{background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:.75rem;padding:1rem 1.5rem}.filter-btn{align-items:center;border:0;border-radius:8px;display:flex;flex:1;font-weight:700;gap:.5rem;justify-content:center;padding:.75rem 1rem}.filter-btn-clear{background:#fff;border:1px solid #e9ecef;color:#6c757d}.filter-btn-apply{background:#006db2;color:#fff}.filter-trigger-btn{align-items:center;background:#006db2;border:1px solid #006db2;border-radius:8px;color:#fff;display:flex;font-weight:700;gap:.5rem;padding:.55rem 1rem}.filter-trigger-btn .filter-badge{background:#fff;border-radius:10px;color:#006db2;font-size:.7rem;min-width:18px;padding:.15em .5em}@media(max-width:576px){.filter-panel{width:100vw}.filter-panel-footer{flex-direction:column}}
