.nn-cfilters{color:var(--nn-cfilter-text);font-family:var(--font-body-family)}
.nn-cfilters button,.nn-cfilters summary{font:inherit;color:inherit}
.nn-cfilters summary{list-style:none}
.nn-cfilters summary::-webkit-details-marker{display:none}
.nn-cfilters__open{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0;border:0;background:transparent;color:var(--nn-cfilter-text);font-family:var(--font-heading-family);font-style:var(--font-heading-style);font-weight:var(--font-heading-weight);font-size:14px;line-height:1;cursor:pointer}
.nn-cfilters__open svg{width:19px;height:19px;flex:0 0 auto}
.nn-cfilters__badge{display:grid;place-items:center;min-width:21px;height:21px;padding:0 6px;border-radius:999px;background:var(--nn-cfilter-text);color:#fff;font-family:var(--font-body-family);font-size:10px}
.nn-cfilters__drawer{position:fixed;z-index:1005;inset:0;display:block;visibility:hidden;pointer-events:none}
.nn-cfilters__drawer.is-open{visibility:visible;pointer-events:auto}
.nn-cfilters__overlay{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;background:rgba(19,34,48,.42);opacity:0;cursor:default;transition:opacity .25s ease}
.nn-cfilters__drawer.is-open .nn-cfilters__overlay{opacity:1}
.nn-cfilters__panel{position:absolute;top:0;bottom:0;left:0;width:min(var(--nn-cfilter-drawer-width,500px),calc(100vw - 24px));height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--nn-cfilter-bg);box-shadow:18px 0 45px rgba(18,34,49,.14);transform:translateX(-101%);transition:transform .32s cubic-bezier(.22,1,.36,1);overflow:hidden}
.nn-cfilters__drawer.is-open .nn-cfilters__panel{transform:none}
.nn-cfilters__panel-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:106px;padding:25px 34px 22px;border-bottom:1px solid var(--nn-cfilter-line);background:var(--nn-cfilter-bg)}
.nn-cfilters__panel-header h2{margin:0;color:var(--nn-cfilter-text);font-family:var(--font-heading-family);font-size:30px;font-style:var(--font-heading-style);font-weight:var(--font-heading-weight);line-height:1}
.nn-cfilters__panel-header p{margin:8px 0 0;color:var(--nn-cfilter-muted);font-family:var(--font-heading-family);font-size:12px;line-height:1.2}
.nn-cfilters__close{display:grid;place-items:center;width:42px;height:42px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer;transition:background .18s ease}
.nn-cfilters__close:hover{background:color-mix(in srgb,var(--nn-cfilter-text) 7%,transparent)}
.nn-cfilters__close svg{width:22px;height:22px}
.nn-cfilters__form--drawer{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto}
.nn-cfilters__panel-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 34px 28px;scrollbar-width:thin}
.nn-cfilters__drawer-group{border-bottom:1px solid var(--nn-cfilter-line)}
.nn-cfilters__drawer-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:82px;padding:0;cursor:pointer;color:var(--nn-cfilter-text);font-family:var(--font-heading-family);font-size:18px;font-style:var(--font-heading-style);font-weight:var(--font-heading-weight);line-height:1.2}
.nn-cfilters__drawer-summary svg{width:15px;height:15px;flex:0 0 auto;transition:transform .22s ease}
.nn-cfilters__drawer-group[open]>.nn-cfilters__drawer-summary svg{transform:rotate(180deg)}
.nn-cfilters__drawer-content{padding:0 0 26px}
.nn-cfilters__panel-footer{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px;padding:18px 34px 22px;border-top:1px solid var(--nn-cfilter-line);background:var(--nn-cfilter-bg);box-shadow:0 -12px 30px rgba(18,34,49,.04)}
.nn-cfilters__clear{min-height:48px;padding:0;border:0;background:transparent;color:var(--nn-cfilter-text);font-family:var(--font-heading-family);font-size:13px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.nn-cfilters__apply{min-height:50px;padding:0 28px;border:1px solid var(--nn-cfilter-accent);border-radius:999px;background:var(--nn-cfilter-accent);color:#fff;font-family:var(--font-heading-family);font-size:13px;letter-spacing:.02em;cursor:pointer;transition:opacity .18s ease,transform .18s ease}
.nn-cfilters__apply:hover{opacity:.9}
.nn-cfilters__apply:active{transform:scale(.985)}
.nn-cfilters__sidebar{width:100%;min-width:0}
.nn-cfilters__sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
.nn-cfilters__sidebar-title{display:flex;align-items:center;gap:10px;color:var(--nn-cfilter-text);font-family:var(--font-heading-family);font-style:var(--font-heading-style);font-weight:var(--font-heading-weight);font-size:23px;line-height:1.1}
.nn-cfilters__sidebar-title svg{width:22px;height:22px}
.nn-cfilters__reset-link{padding:0;border:0;background:transparent;color:var(--nn-cfilter-muted);font-size:11px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.nn-cfilters__sidebar-groups{display:flex;flex-direction:column;gap:14px}
.nn-cfilters__card{overflow:hidden;border:1px solid var(--nn-cfilter-line);border-radius:var(--nn-cfilter-card-radius);background:var(--nn-cfilter-bg);transition:border-color .18s ease,box-shadow .18s ease}
.nn-cfilters__card[open]{box-shadow:0 10px 28px rgba(18,34,49,.045)}
.nn-cfilters__card-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:0 20px;cursor:pointer;color:var(--nn-cfilter-text);font-family:var(--font-heading-family);font-size:16px;font-style:var(--font-heading-style);font-weight:var(--font-heading-weight);line-height:1.2}
.nn-cfilters__toggle-icon{position:relative;display:block;width:28px;height:28px;flex:0 0 28px;border:1px solid var(--nn-cfilter-line);border-radius:50%}
.nn-cfilters__toggle-icon:before,.nn-cfilters__toggle-icon:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1px;background:currentColor;transform:translate(-50%,-50%);transition:transform .2s ease}
.nn-cfilters__toggle-icon:after{transform:translate(-50%,-50%) rotate(90deg)}
.nn-cfilters__card[open] .nn-cfilters__toggle-icon:after{transform:translate(-50%,-50%) rotate(0deg)}
.nn-cfilters__card-content{padding:0 20px 20px}
.nn-cfilters__options{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
.nn-cfilters__option{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:24px;color:var(--nn-cfilter-muted);font-size:13px;line-height:1.35;cursor:pointer}
.nn-cfilters__option.is-disabled{opacity:.35;cursor:not-allowed}
.nn-cfilters__option input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
.nn-cfilters__checkbox{display:grid;place-items:center;width:20px;height:20px;border:1px solid color-mix(in srgb,var(--nn-cfilter-line) 75%,#98a5af 25%);border-radius:3px;background:#fff;color:#fff;transition:border-color .15s ease,background .15s ease}
.nn-cfilters__checkbox svg{width:12px;height:12px;opacity:0}
.nn-cfilters__option input:checked+.nn-cfilters__checkbox{border-color:var(--nn-cfilter-accent);background:var(--nn-cfilter-accent)}
.nn-cfilters__option input:checked+.nn-cfilters__checkbox svg{opacity:1}
.nn-cfilters__option-count{color:color-mix(in srgb,var(--nn-cfilter-muted) 72%,transparent);font-size:11px}
.nn-cfilter-price{display:block;padding-top:4px}
.nn-cfilter-price__range{position:relative;height:28px;margin:0 8px 20px;--nn-price-start:0%;--nn-price-end:100%}
.nn-cfilter-price__rail,.nn-cfilter-price__fill{position:absolute;top:50%;left:0;right:0;height:3px;border-radius:999px;transform:translateY(-50%);pointer-events:none}
.nn-cfilter-price__rail{background:color-mix(in srgb,var(--nn-cfilter-line) 74%,#cfd7dc 26%)}
.nn-cfilter-price__fill{left:var(--nn-price-start);right:calc(100% - var(--nn-price-end));background:var(--nn-cfilter-accent)}
.nn-cfilter-price__range input[type=range]{position:absolute;z-index:2;inset:0;width:100%;height:28px;margin:0;padding:0;border:0;background:transparent;appearance:none;-webkit-appearance:none;pointer-events:none}
.nn-cfilter-price__range input[type=range]::-webkit-slider-runnable-track{height:3px;background:transparent}
.nn-cfilter-price__range input[type=range]::-moz-range-track{height:3px;background:transparent}
.nn-cfilter-price__range input[type=range]::-webkit-slider-thumb{width:16px;height:16px;margin-top:-6.5px;border:2px solid #fff;border-radius:50%;background:var(--nn-cfilter-accent);box-shadow:0 0 0 1px var(--nn-cfilter-accent);appearance:none;-webkit-appearance:none;pointer-events:auto;cursor:pointer}
.nn-cfilter-price__range input[type=range]::-moz-range-thumb{width:16px;height:16px;border:2px solid #fff;border-radius:50%;background:var(--nn-cfilter-accent);box-shadow:0 0 0 1px var(--nn-cfilter-accent);pointer-events:auto;cursor:pointer}
.nn-cfilter-price__fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nn-cfilter-price__field{min-width:0}
.nn-cfilter-price__label{display:block;margin-bottom:7px;color:var(--nn-cfilter-muted);font-size:10px;letter-spacing:.06em;text-transform:uppercase}
.nn-cfilter-price__input-wrap{display:flex;align-items:center;min-height:44px;padding:0 11px;border:1px solid var(--nn-cfilter-line);border-radius:8px;background:#fff}
.nn-cfilter-price__currency{margin-right:6px;color:var(--nn-cfilter-muted);font-size:12px}
.nn-cfilter-price__field input{width:100%;min-width:0;padding:0;border:0;outline:0;background:transparent;color:var(--nn-cfilter-text);font:inherit;font-size:12px;appearance:textfield}
.nn-cfilter-price__field input::-webkit-outer-spin-button,.nn-cfilter-price__field input::-webkit-inner-spin-button{margin:0;appearance:none}
html.nn-filter-drawer-open,html.nn-filter-drawer-open body{overflow:hidden}
@media(min-width:990px){.nn-cfilters--drawer .nn-cfilters__open{font-size:15px}.nn-cfilters--sidebar{width:var(--nn-cfilter-sidebar-width)}.nn-cfilters__sidebar{position:sticky;top:110px}}
@media(max-width:989px){.nn-cfilters--sidebar .nn-cfilters__sidebar{display:none}.nn-cfilters--sidebar:before{content:""}.nn-cfilters__panel{width:min(var(--nn-cfilter-drawer-width,500px),calc(100vw - 24px))}}
@media(max-width:749px){.nn-cfilters__panel{width:calc(100vw - 18px)}.nn-cfilters__panel-header{min-height:88px;padding:20px 22px 18px}.nn-cfilters__panel-header h2{font-size:26px}.nn-cfilters__panel-body{padding:0 22px 20px}.nn-cfilters__drawer-summary{min-height:72px;font-size:16px}.nn-cfilters__drawer-content{padding-bottom:22px}.nn-cfilters__panel-footer{grid-template-columns:1fr;padding:14px 22px 18px}.nn-cfilters__clear{order:2;min-height:34px}.nn-cfilters__apply{order:1}.nn-cfilters__option{font-size:13px}}
