.filters-grid{--filter-control-h: 38px;--filter-control-radius: 12px;--field-bg: color-mix(in srgb, var(--text-primary) 6%, var(--bg-elevated));--field-bg-hover: color-mix(in srgb, var(--text-primary) 11%, var(--bg-elevated));--accent: var(--color-primary);--accent-soft: color-mix(in srgb, var(--color-primary) 10%, var(--bg-elevated));container-type:inline-size;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:var(--spacing-4) var(--spacing-3);align-items:end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-1);min-width:0;max-width:100%}.filter-group>label,.filter-group__label{font-size:var(--ui-text-xs);font-weight:600;color:var(--text-secondary);line-height:1.3}.dark-mode .filters-grid{--accent: #4ec5cb;--accent-soft: color-mix(in srgb, #4ec5cb 16%, var(--bg-elevated))}@container (min-width: 561px){.filter-group.toggles{grid-column:span 2}}.filter-group select{width:100%;height:var(--filter-control-h, 38px);padding:0 var(--spacing-3);padding-right:var(--spacing-8);background-color:var(--field-bg);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%239a9aa5' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-3) center;background-size:10px 6px;border:1px solid transparent;border-radius:var(--filter-control-radius, 12px);font-size:var(--ui-text-base);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);appearance:none}.filter-group select:hover{background-color:var(--field-bg-hover)}.filter-group select:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.filter-group select:disabled{opacity:.5;cursor:not-allowed}.filter-group select.placeholder{color:var(--text-muted)}.filter-group select option{background:var(--bg-base);color:var(--text-primary);padding:var(--spacing-2)}.filter-group input[type=text],.filter-group input[type=number],.filter-group input[type=search]{width:100%;height:var(--filter-control-h, 38px);padding:0 var(--spacing-3);background:var(--field-bg);border:1px solid transparent;border-radius:var(--filter-control-radius, 12px);font-size:var(--ui-text-base);color:var(--text-primary);transition:all var(--transition-fast)}.filter-group input[type=text]:hover,.filter-group input[type=number]:hover,.filter-group input[type=search]:hover{background:var(--field-bg-hover)}.filter-group input[type=text]:focus,.filter-group input[type=number]:focus,.filter-group input[type=search]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.filter-group input::placeholder{color:var(--text-muted)}.price-inputs{display:flex;align-items:center;gap:var(--spacing-2);width:100%;max-width:100%}.price-inputs input{flex:1;min-width:0;height:var(--filter-control-h, 38px);padding:0 var(--spacing-3);background:var(--field-bg);border:1px solid transparent;border-radius:var(--filter-control-radius, 12px);font-size:var(--ui-text-base);color:var(--text-primary);transition:all var(--transition-fast)}.price-inputs input:hover{background:var(--field-bg-hover)}.price-inputs input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.price-inputs input::placeholder{color:var(--text-muted);opacity:1}.price-inputs input::-webkit-input-placeholder{color:var(--text-muted);opacity:1}.price-inputs input::-moz-placeholder{color:var(--text-muted);opacity:1}.price-inputs input:-ms-input-placeholder{color:var(--text-muted)}.price-inputs input:valid,.price-inputs input:invalid{box-shadow:none;border-color:transparent}.price-inputs input:valid:focus,.price-inputs input:invalid:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.price-separator{color:var(--text-muted);font-weight:600}.filter-group input[type=checkbox],.filter-group input[type=radio]{width:16px;height:16px;accent-color:var(--color-primary);cursor:pointer}.filter-toggles{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.toggle-btn{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-2) var(--spacing-3);background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--border-radius);font-size:var(--ui-text-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.toggle-btn:hover{border-color:var(--border-medium);background:var(--bg-hover)}.toggle-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:500;box-shadow:0 0 0 2px #14858b33}.toggle-btn.active:hover{background:var(--color-primary-dark, #117a7f);border-color:var(--color-primary-dark, #117a7f)}.checkbox-filters{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.checkbox-filter{display:inline-flex;align-items:center;gap:var(--spacing-2);height:var(--filter-control-h, 38px);padding:0 var(--spacing-4);background:var(--field-bg);border:1px solid transparent;border-radius:var(--border-radius-full);cursor:pointer;font-size:var(--ui-text-base);color:var(--text-secondary);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast)}.checkbox-filter:hover{background:var(--field-bg-hover);color:var(--text-primary)}.checkbox-filter:has(input:checked){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.checkbox-filter input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.checkbox-box{display:flex;align-items:center;flex-shrink:0;margin-left:calc(var(--spacing-1) * -1);color:var(--accent)}.checkbox-filter input:focus-visible~span{color:var(--accent)}.checkbox-filter:has(input:focus-visible){border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.custom-multiselect{position:relative}.multiselect-trigger{width:100%;height:var(--filter-control-h, 36px);display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-3);background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--border-radius);font-size:var(--ui-text-sm);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast);text-align:left}.multiselect-trigger:hover{border-color:var(--border-medium)}.multiselect-label{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chevron-wrapper{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-muted);transition:transform var(--transition-fast)}.chevron-wrapper :global(svg){width:16px;height:16px;flex-shrink:0}.chevron-wrapper.rotated{transform:rotate(180deg)}.multiselect-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:100;max-height:400px;background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column}.dropdown-content{flex:1;overflow-y:auto;padding:var(--spacing-2)}.province-group{margin-bottom:var(--spacing-2)}.province-header{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2);background:var(--bg-hover);border-radius:var(--border-radius);cursor:pointer;font-weight:600;font-size:var(--ui-text-sm);color:var(--text-primary);transition:background var(--transition-fast)}.province-header:hover{background:var(--bg-base)}.province-name{flex:1}.province-count{font-size:var(--ui-text-xs);color:var(--text-muted);font-weight:500}.town-list{display:flex;flex-direction:column;gap:1px;margin-top:var(--spacing-1);margin-left:var(--spacing-4)}.town-checkbox{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2);border-radius:var(--border-radius);cursor:pointer;font-size:var(--ui-text-sm);color:var(--text-primary);transition:background var(--transition-fast)}.town-checkbox:hover{background:var(--bg-hover)}.town-name{flex:1}.dropdown-footer{padding:var(--spacing-2);border-top:1px solid var(--border-subtle);display:flex;justify-content:flex-end}.clear-selection-btn{padding:var(--spacing-1) var(--spacing-2);font-size:var(--ui-text-xs);color:var(--color-primary);background:none;border:1px solid var(--color-primary);border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-fast);font-weight:500}.clear-selection-btn:hover{background:#14858b1a}@container (max-width: 560px){.filters-grid{gap:0;align-items:stretch}.filter-group{display:grid;grid-template-columns:minmax(0,clamp(6rem,38%,11rem)) minmax(0,22rem);align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) 0;border-bottom:1px solid var(--border-subtle)}.filter-group:first-child{padding-top:0}.filter-group:last-child{padding-bottom:0;border-bottom:none}.filter-group>label,.filter-group__label{font-size:var(--ui-text-base);font-weight:500;color:var(--text-primary)}.filter-group select{padding-right:calc(var(--spacing-3) + 16px);background-position:right var(--spacing-3) center}.price-inputs input{padding:0 var(--spacing-2)}.checkbox-filter{padding:0 var(--spacing-3)}}@container (max-width: 260px){.filter-group{grid-template-columns:1fr;gap:var(--spacing-1);align-items:stretch}}@media (max-width: 768px){.filters-grid{--filter-control-h: 44px;--filter-control-radius: 14px}.filter-group select,.filter-group input[type=text],.filter-group input[type=number],.filter-group input[type=search],.price-inputs input{font-size:16px}.price-inputs input{-webkit-appearance:none;appearance:none}}.list-page.svelte-1v45uhp{min-height:100vh;background:var(--bg-base)}.list-page__content.svelte-1v45uhp{max-width:1400px;margin:0 auto;padding:0 var(--spacing-6);padding-top:var(--spacing-4);padding-bottom:var(--spacing-4)}.list-page__toolbar.svelte-1v45uhp{--control-h: 38px;--control-radius: 12px;--field-bg: color-mix(in srgb, var(--text-primary) 6%, var(--bg-elevated));--field-bg-hover: color-mix(in srgb, var(--text-primary) 11%, var(--bg-elevated));--track-bg: color-mix(in srgb, var(--text-primary) 8%, var(--bg-base));--accent: var(--color-primary);--accent-soft: color-mix(in srgb, var(--color-primary) 10%, var(--bg-elevated));display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--border-subtle)}.dark-mode .list-page__toolbar.svelte-1v45uhp{--accent: #4ec5cb;--accent-soft: color-mix(in srgb, #4ec5cb 16%, var(--bg-elevated))}.list-page__toolbar-meta.svelte-1v45uhp{display:flex;align-items:center;gap:var(--spacing-2);min-width:0;margin-right:auto}.list-page__results-count.svelte-1v45uhp{font-size:var(--ui-text-base);color:var(--text-primary);font-weight:600}.list-page__clear-btn.svelte-1v45uhp{display:inline-flex;align-items:center;gap:var(--spacing-1);height:28px;padding:0 var(--spacing-2) 0 var(--spacing-1);font-size:var(--ui-text-xs);font-weight:600;color:var(--accent);background:var(--accent-soft);border:none;border-radius:var(--border-radius-full);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.list-page__clear-btn.svelte-1v45uhp:hover{background:var(--accent);color:var(--bg-elevated)}.list-page__clear-count.svelte-1v45uhp{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;background:var(--accent);color:var(--bg-elevated);font-size:var(--ui-text-2xs);font-weight:700;border-radius:var(--border-radius-full)}.list-page__clear-btn.svelte-1v45uhp:hover .list-page__clear-count:where(.svelte-1v45uhp){background:var(--bg-elevated);color:var(--accent)}.list-page__actions.svelte-1v45uhp,.list-page__controls.svelte-1v45uhp{display:flex;align-items:center;gap:var(--spacing-2);flex-shrink:0}.list-page__view-switch.svelte-1v45uhp{display:flex;min-width:0}.list-page__sort.svelte-1v45uhp{position:relative;display:flex;align-items:center;min-width:0}.list-page__sort-icon.svelte-1v45uhp{position:absolute;left:var(--spacing-3);display:flex;align-items:center;color:var(--text-muted);pointer-events:none}.list-page__sort.svelte-1v45uhp select:where(.svelte-1v45uhp){width:100%;height:var(--control-h);padding:0 calc(var(--spacing-3) + 16px) 0 calc(var(--spacing-3) + 15px + var(--spacing-2));background-color:var(--field-bg);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%239a9aa5' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-3) center;background-size:10px 6px;border:1px solid transparent;border-radius:var(--control-radius);font-size:var(--ui-text-base);font-weight:500;color:var(--text-primary);cursor:pointer;text-overflow:ellipsis;transition:all var(--transition-fast);appearance:none}.list-page__sort.svelte-1v45uhp select:where(.svelte-1v45uhp):hover{background-color:var(--field-bg-hover)}.list-page__sort.svelte-1v45uhp select:where(.svelte-1v45uhp):focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.list-page__filter-toggle.svelte-1v45uhp{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);height:var(--control-h);padding:0 var(--spacing-4);background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:var(--control-radius);box-shadow:0 1px 2px #0000000d;font-size:var(--ui-text-base);font-weight:600;color:var(--text-primary);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.list-page__filter-toggle.svelte-1v45uhp:hover{border-color:var(--border-strong);box-shadow:0 2px 6px #00000014}.list-page__filter-toggle.svelte-1v45uhp:active{box-shadow:none;transform:translateY(1px)}.list-page__filter-toggle.has-filters.svelte-1v45uhp{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.list-page__filter-toggle.svelte-1v45uhp:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}.list-page__filter-icon.svelte-1v45uhp{display:flex;align-items:center;color:currentColor;opacity:.75}.list-page__filter-toggle.has-filters.svelte-1v45uhp .list-page__filter-icon:where(.svelte-1v45uhp){opacity:1}.list-page__filter-badge.svelte-1v45uhp{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;background:var(--accent);color:var(--bg-elevated);font-size:var(--ui-text-2xs);font-weight:700;border-radius:var(--border-radius-full)}.list-page__filter-text.svelte-1v45uhp{white-space:nowrap}.list-page__chevron.svelte-1v45uhp{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:currentColor;opacity:.55;transition:transform var(--transition-fast)}.list-page__chevron.rotated.svelte-1v45uhp{transform:rotate(180deg)}.list-page__filters-panel.svelte-1v45uhp{margin-bottom:var(--spacing-4);padding:var(--spacing-4) var(--spacing-6);background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:16px}.list-page__filters-panel.hidden.svelte-1v45uhp{display:none}.list-page__grid.svelte-1v45uhp{display:grid;grid-template-columns:repeat(var(--grid-cols-default, 5),1fr);gap:var(--spacing-4)}@media (max-width: 1400px){.list-page__grid.svelte-1v45uhp{grid-template-columns:repeat(var(--grid-cols-xl, 4),1fr)}}@media (max-width: 1100px){.list-page__grid.svelte-1v45uhp{grid-template-columns:repeat(var(--grid-cols-lg, 3),1fr)}}@media (max-width: 800px){.list-page__grid.svelte-1v45uhp{grid-template-columns:repeat(var(--grid-cols-md, 2),1fr)}}@media (max-width: 1024px){.list-page__sort.svelte-1v45uhp select:where(.svelte-1v45uhp){max-width:190px}}@media (max-width: 768px){.list-page__content.svelte-1v45uhp{padding:var(--spacing-3)}.list-page__toolbar.svelte-1v45uhp{--control-h: 44px;--control-radius: 14px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"meta actions" "controls controls";align-items:center;gap:var(--spacing-2) var(--spacing-3)}.list-page__toolbar-meta.svelte-1v45uhp{grid-area:meta;margin-right:0;flex-wrap:wrap}.list-page__results-count.svelte-1v45uhp{font-size:var(--ui-text-sm)}.list-page__actions.svelte-1v45uhp{grid-area:actions}.list-page__controls.svelte-1v45uhp{grid-area:controls;display:grid;width:min(100%,32rem);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"view view" "sort filters";gap:var(--spacing-2)}.list-page__view-switch.svelte-1v45uhp{grid-area:view}.list-page__sort.svelte-1v45uhp{grid-area:sort}.list-page__sort.svelte-1v45uhp select:where(.svelte-1v45uhp){max-width:none;font-size:16px}.list-page__filter-toggle.svelte-1v45uhp{grid-area:filters}.list-page__filters-panel.svelte-1v45uhp{padding:var(--spacing-3) var(--spacing-4);border-radius:14px}.list-page__grid.svelte-1v45uhp{gap:var(--spacing-3)}}@media (max-width: 600px){.list-page__grid.svelte-1v45uhp{grid-template-columns:repeat(var(--grid-cols-sm, 1),1fr)}}.view-switch.svelte-135qzzi{position:relative;display:inline-grid;grid-template-columns:1fr 1fr;width:100%;height:var(--control-h, 38px);padding:4px;background:var(--track-bg, rgba(0, 0, 0, .06));border-radius:var(--border-radius-full)}.view-switch.svelte-135qzzi:before{content:"";position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);background:var(--bg-elevated);border-radius:var(--border-radius-full);box-shadow:0 1px 3px #00000024,0 0 0 1px #00000008;transition:transform var(--transition-base, .2s) cubic-bezier(.4,0,.2,1)}.view-switch--map.svelte-135qzzi:before{transform:translate(100%)}.view-switch__btn.svelte-135qzzi{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);min-width:0;padding:0 var(--spacing-3);background:none;border:none;border-radius:var(--border-radius-full);font-size:var(--ui-text-base);font-weight:500;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:color var(--transition-fast)}.view-switch__btn.svelte-135qzzi:hover{color:var(--text-primary)}.view-switch__btn.is-active.svelte-135qzzi{color:var(--accent, var(--color-primary));font-weight:600}.view-switch__btn.svelte-135qzzi:focus-visible{outline:2px solid var(--accent, var(--color-primary));outline-offset:2px}.view-switch.pulse.svelte-135qzzi{animation:svelte-135qzzi-pulse-ring 2s ease-out infinite}@keyframes svelte-135qzzi-pulse-ring{0%{box-shadow:0 0 #14858b66}70%{box-shadow:0 0 0 8px #14858b00}to{box-shadow:0 0 #14858b00}}@media (prefers-reduced-motion: reduce){.view-switch.pulse.svelte-135qzzi{animation:none;box-shadow:0 0 0 2px #14858b66}.view-switch.svelte-135qzzi:before{transition:none}}.saved-link.svelte-135qzzi{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-1);height:var(--control-h, 38px);padding:0 var(--spacing-3);font-size:var(--ui-text-base);font-weight:600;color:#e53e3e;text-decoration:none;background:var(--bg-elevated);border:1px solid var(--border-medium);border-radius:var(--control-radius, 12px);box-shadow:0 1px 2px #0000000d;transition:all var(--transition-fast)}.saved-link.svelte-135qzzi:hover{border-color:#e53e3e;box-shadow:0 2px 6px #00000014}.load-more.svelte-135qzzi{display:flex;justify-content:center;padding:var(--spacing-8) 0;min-height:80px}.loading-more.svelte-135qzzi{display:flex;align-items:center;justify-content:center}.loading-more.svelte-135qzzi .spinner{animation:svelte-135qzzi-spin 1s linear infinite;color:var(--color-primary)}@keyframes svelte-135qzzi-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.skeleton-card.svelte-135qzzi{pointer-events:none}.skeleton-image.svelte-135qzzi{background:linear-gradient(90deg,var(--bg-elevated) 25%,var(--bg-hover) 50%,var(--bg-elevated) 75%);background-size:200% 100%;animation:svelte-135qzzi-shimmer 1.5s infinite;aspect-ratio:16 / 9}.skeleton-line.svelte-135qzzi{height:16px;background:linear-gradient(90deg,var(--bg-elevated) 25%,var(--bg-hover) 50%,var(--bg-elevated) 75%);background-size:200% 100%;animation:svelte-135qzzi-shimmer 1.5s infinite;border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-2)}.skeleton-line.short.svelte-135qzzi{width:60%}@keyframes svelte-135qzzi-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state.svelte-135qzzi,.error-message.svelte-135qzzi{text-align:center;padding:var(--spacing-8)}.empty-state.svelte-135qzzi h2:where(.svelte-135qzzi),.error-message.svelte-135qzzi p:where(.svelte-135qzzi){margin-bottom:var(--spacing-4);color:var(--text-primary)}
