.ws-multiselect{min-width:0;font-size:var(--text-xs);align-items:center;font-weight:500;display:flex;position:relative}.ws-filter-label{display:none}.ws-filter-trigger{justify-content:space-between;align-items:center;gap:var(--space-1-5);min-width:0;height:32px;min-height:32px;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-secondary);text-align:left;font:inherit;font-size:var(--text-xs);cursor:pointer;white-space:nowrap;transition:border-color var(--duration-fast),background-color var(--duration-fast);-webkit-tap-highlight-color:transparent;display:inline-flex}.ws-filter-chip-label{color:var(--text-muted);font-weight:600;font-size:var(--text-xs);flex-shrink:0}.ws-filter-chip-value{color:var(--color-gray-800);font-weight:600;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}@media (width>=1400px){.ws-filter-chip-value{max-width:320px}}@media (width<=640px){.ws-filter-chip-value{max-width:130px}}.ws-filter-trigger>svg{color:var(--text-muted);flex-shrink:0;transform:rotate(90deg)}.ws-filter-trigger[aria-expanded=true],.ws-filter-trigger.is-filtered{border-color:var(--palette-blue-600);background:var(--palette-blue-50)}.ws-filter-trigger.is-filtered .ws-filter-chip-label{color:var(--palette-blue-600)}.ws-filter-trigger.is-filtered .ws-filter-chip-value{color:var(--palette-blue-700)}.ws-filter-trigger:focus-visible,.ws-filter-popover button:focus-visible{outline:2px solid var(--palette-blue-600);outline-offset:2px}.ws-filter-option:has(input:focus-visible){outline:2px solid var(--palette-blue-600);outline-offset:2px}.ws-filter-backdrop{z-index:999;background:color-mix(in srgb, var(--text-primary) 38%, transparent);-webkit-backdrop-filter:blur(2px);animation:.12s ease-out ws-fade-in;position:fixed;inset:0}@media (width>=641px){.ws-filter-backdrop{-webkit-backdrop-filter:none;background:0 0}}@keyframes ws-fade-in{0%{opacity:0}to{opacity:1}}.ws-filter-popover{z-index:1000;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);color:var(--navy-light);flex-direction:column;animation:.12s cubic-bezier(.16,1,.3,1) ws-popover-slide;display:flex;position:fixed;top:0;left:0;overflow:hidden}.ws-period-popover{z-index:1000;position:fixed;top:0;left:0}@keyframes ws-popover-slide{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.ws-filter-popover-heading{padding:var(--space-3) var(--space-3) var(--space-1);font-size:var(--text-base);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ws-filter-popover-heading .ws-icon-button{width:32px;height:32px}.ws-filter-search{margin:var(--space-1-5) var(--space-3) var(--space-2);flex-shrink:0;align-items:center;display:flex;position:relative}.ws-filter-search>svg{color:var(--text-muted);pointer-events:none;position:absolute;left:10px}.ws-filter-search input{width:100%;min-height:36px;padding:var(--space-1-5) var(--space-2) var(--space-1-5) var(--space-8);font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none}.ws-filter-actions{justify-content:space-between;gap:var(--space-3);padding:var(--space-half) var(--space-3) var(--space-2);border-bottom:1px solid var(--color-gray-200);flex-shrink:0;display:flex}.ws-filter-actions button{font:inherit;font-size:var(--text-xs);color:var(--blue);padding:var(--space-1) 0;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;text-decoration:underline}.ws-filter-options{padding:var(--space-1-5);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:48px;overflow-y:auto}.ws-filter-option{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-2);border-radius:var(--radius-xs);cursor:pointer;font-size:var(--text-sm);font-weight:400;line-height:1.4;display:flex}.ws-filter-option:hover{background:var(--blue-light)}.ws-filter-option:has(input:checked){background:var(--blue-light)}.ws-filter-option input[type=checkbox]{appearance:auto;width:16px;height:16px;min-height:0;margin:var(--space-0) 0 0;accent-color:var(--blue);cursor:pointer;flex:0 0 16px;padding:0}.ws-filter-option>span{overflow-wrap:anywhere}.ws-filter-empty{padding:var(--space-3) var(--space-2);color:var(--muted);font-size:var(--text-sm);font-weight:400}.ws-filter-footer{padding:var(--space-2) var(--space-3);background:var(--color-gray-50);border-top:1px solid var(--color-gray-200);font-size:var(--text-xs);z-index:5;flex-shrink:0;position:sticky;bottom:0}.ws-filter-footer>small{margin-top:var(--space-1);color:var(--muted);font-size:var(--text-2xs);font-weight:400;display:block}.ws-filter-footer>div{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);display:flex}.ws-filter-footer .ws-button{font-size:var(--text-xs);min-height:32px;padding:var(--space-1-5) var(--space-3)}.ws-period-presets-section{padding:var(--space-2) var(--space-3) var(--space-2);border-bottom:1px solid var(--color-gray-200);flex-shrink:0}.ws-period-section-title{font-size:var(--text-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2);font-weight:700;display:block}.ws-period-preset-grid{gap:var(--space-1-5);grid-template-columns:repeat(2,1fr);display:grid}.ws-period-preset-btn{border:1px solid var(--color-gray-200);border-radius:var(--radius-xs);background:var(--color-gray-50);color:var(--text-secondary);font-size:var(--text-xs);padding:var(--space-1-5) var(--space-2);cursor:pointer;text-align:center;transition:all var(--duration-fast);font-weight:500}.ws-period-preset-btn:hover{background:var(--blue-light);border-color:var(--border-strong);color:var(--navy-light)}.ws-period-preset-btn.active{background:var(--palette-blue-600);border-color:var(--palette-blue-600);color:var(--bg-surface);font-weight:700}.ws-period-custom-section{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-gray-200);flex-shrink:0}.ws-period-custom-inputs{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.ws-period-custom-inputs label{gap:var(--space-1);font-size:var(--text-2xs);color:var(--text-muted);font-weight:600;display:grid}.ws-period-custom-inputs input[type=date]{border:1px solid var(--border);border-radius:var(--radius-xs);padding:var(--space-1) var(--space-1-5);font-size:var(--text-xs);color:var(--color-gray-800);background:var(--bg-surface);width:100%}.ws-period-warning{color:var(--palette-red-700);font-size:var(--text-2xs);margin-top:var(--space-1-5);display:block}.ws-filter-spinner{width:12px;height:12px;margin-left:var(--space-half);border-width:2px;flex-shrink:0}.ws-filter-trigger.is-loading{border-color:var(--palette-blue-300);background:var(--color-gray-50)}@media (width<=760px){.ws-multiselect{flex:none;min-width:0}.ws-filter-trigger{white-space:nowrap;flex-shrink:0;height:34px;min-height:34px}.ws-filter-chip-label{flex-shrink:0}.ws-filter-chip-value{max-width:140px}}@media (width<=640px){.ws-filter-search input{min-height:40px;font-size:var(--text-lg)!important}.ws-filter-option{min-height:42px;padding:var(--space-2) var(--space-2);gap:var(--space-3)}.ws-filter-option input[type=checkbox]{flex:0 0 18px;width:18px;height:18px}.ws-filter-option>span{font-size:var(--text-base);line-height:1.35}.ws-filter-actions button{font-size:var(--text-sm);padding:var(--space-1-5) var(--space-half)}.ws-filter-footer .ws-button{font-size:var(--text-sm);min-height:36px;padding:var(--space-2) var(--space-3)}.ws-period-preset-btn{min-height:38px;font-size:var(--text-sm);padding:var(--space-2) var(--space-1-5)}.ws-period-custom-inputs input[type=date]{min-height:38px;font-size:var(--text-base)}}
