.map-layout .l-header,body:has(.map-layout) .l-header{display:none!important}.map-layout .l-footer,body:has(.map-layout) .l-footer{display:none!important}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-4{top:1rem}.top-\[200px\]{top:200px}.top-\[60px\]{top:60px}.z-10{z-index:10}.z-20{z-index:20}.z-\[10000\]{z-index:10000}.z-\[1000\]{z-index:1000}.z-\[2000\]{z-index:2000}.m-0{margin:0}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-\[60px\]{margin-top:60px}.line-clamp-1{-webkit-line-clamp:1}.line-clamp-1,.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.line-clamp-2{-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-0{height:0}.h-10{height:2.5rem}.h-32{height:8rem}.h-4{height:1rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-\[120px\]{height:120px}.h-\[35vh\]{height:35vh}.h-\[60px\]{height:60px}.h-\[90vh\]{height:90vh}.h-\[calc\(35vh-60px\)\]{height:calc(35vh - 60px)}.h-\[calc\(90vh-480px\)\]{height:calc(90vh - 480px)}.h-full{height:100%}.h-screen{height:100vh}.max-h-\[85vh\]{max-height:85vh}.w-10{width:2.5rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-\[120px\]{width:120px}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[150px\]{min-width:150px}.max-w-\[640px\]{max-width:640px}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.rotate-180{--tw-rotate:180deg}.rotate-180,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t-2{border-top-width:2px}.border-\[\#01569b\]{--tw-border-opacity:1;border-color:rgb(1 86 155/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.bg-\[\#01569b\]{--tw-bg-opacity:1;background-color:rgb(1 86 155/var(--tw-bg-opacity,1))}.bg-black{--tw-bg-opacity:1;background-color:rgb(0 0 0/var(--tw-bg-opacity,1))}.bg-black\/50{background-color:rgba(0,0,0,.5)}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-opacity-30{--tw-bg-opacity:0.3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pr-3{padding-right:.75rem}.text-center{text-align:center}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-light{font-weight:300}.font-medium{font-weight:500}.font-semibold{font-weight:600}.italic{font-style:italic}.text-\[\#01569b\]{--tw-text-opacity:1;color:rgb(1 86 155/var(--tw-text-opacity,1))}.text-blue-600{--tw-text-opacity:1;color:rgb(37 99 235/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.opacity-90{opacity:.9}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-md{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.outline{outline-style:solid}.blur{--tw-blur:blur(8px)}.blur,.grayscale{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.grayscale{--tw-grayscale:grayscale(100%)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:border-\[\#01569b\]:hover{--tw-border-opacity:1;border-color:rgb(1 86 155/var(--tw-border-opacity,1))}.hover\:bg-\[\#014a85\]:hover{--tw-bg-opacity:1;background-color:rgb(1 74 133/var(--tw-bg-opacity,1))}.hover\:bg-blue-50:hover{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:text-gray-800:hover{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.focus\:border-\[\#01569b\]:focus{--tw-border-opacity:1;border-color:rgb(1 86 155/var(--tw-border-opacity,1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}@media (min-width:1024px){.lg\:static{position:static}.lg\:bottom-0{bottom:0}.lg\:left-0{left:0}.lg\:right-0{right:0}.lg\:right-5{right:1.25rem}.lg\:right-\[400px\]{right:400px}.lg\:top-\[60px\]{top:60px}.lg\:mt-\[70px\]{margin-top:70px}.lg\:block{display:block}.lg\:hidden{display:none}.lg\:h-40{height:10rem}.lg\:h-48{height:12rem}.lg\:h-\[calc\(100vh-116px\)\]{height:calc(100vh - 116px)}.lg\:h-\[calc\(100vh-540px\)\]{height:calc(100vh - 540px)}.lg\:h-auto{height:auto}.lg\:w-\[400px\]{width:400px}.lg\:cursor-default{cursor:default}.lg\:border-r-2{border-right-width:2px}.lg\:border-t-0{border-top-width:0}}.loading-spinner{width:48px;height:48px;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}body:has(.map-layout){margin:0;padding:0;overflow:hidden}body:has(.map-layout) main{padding:0!important;margin:0!important;max-width:none!important;width:100%!important}.map-layout{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;overflow:hidden;display:flex;flex-direction:column;max-width:none!important;margin:0!important;padding:0!important}.map-layout~footer,body:has(.map-layout) footer{display:none!important}.map-search-page{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden;background:#f3f4f6}.search-header{background:#fff;border-bottom:1px solid #ddd;z-index:1000;box-shadow:0 1px 3px rgba(0,0,0,.1);flex-shrink:0}.header-compact{padding:15px 20px;background:#fff;border-bottom:2px solid #e74c3c}.header-main-row{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.page-title{font-size:18px;font-weight:700;color:#333;margin:0;white-space:nowrap}.header-quick-filters{display:flex;align-items:center;gap:10px;flex:1;flex-wrap:wrap}.quick-filter{display:flex;align-items:center;gap:8px;background:#f9f9f9;padding:8px 12px;border-radius:4px;border:1px solid #ddd}.quick-filter label{font-size:14px;color:#333;font-weight:600;white-space:nowrap}.quick-filter-inputs{display:flex;align-items:center;gap:5px}.quick-filter-inputs select{padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:14px;background:#fff;cursor:pointer}.quick-filter-inputs span{color:#666;font-size:14px}.quick-filter-keyword{flex:1;min-width:200px;padding:0;background:#fff}.keyword-quick-input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;outline:none}.keyword-quick-input:focus{border-color:#3498db;box-shadow:0 0 0 2px rgba(52,152,219,.1)}.filters-toggle-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;color:#333;border:1px solid #ddd;border-radius:4px;font-size:14px;font-weight:400;cursor:pointer;transition:all .2s}.filters-toggle-button:hover{background:#f9f9f9;border-color:#3498db}.filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#e74c3c;color:#fff;border-radius:10px;font-size:12px;font-weight:700}.toggle-icon{font-size:12px;color:#666}.search-button-compact{padding:10px 20px;background:#3498db;color:#fff;border:none;border-radius:4px;font-weight:400;font-size:14px;cursor:pointer;transition:all .2s;white-space:nowrap}.search-button-compact:hover{background:#2980b9}.search-button-compact:active{background:#21618c}.header-filters-form{background:#fff;border:1px solid #ddd;border-top:none;animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:2000px}}.header-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;padding:20px}.filter-group{display:flex;flex-direction:column;gap:10px}.filter-group>label{font-size:16px;color:#333;font-weight:700;margin-bottom:5px}.filter-group select{padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.filter-separator{display:inline-block;margin:0 8px;color:#666;font-size:14px}.search-button{padding:10px 20px;background:#3498db;color:#fff;border:none;border-radius:4px;font-weight:400;cursor:pointer;transition:background .2s;font-size:14px}.search-button:hover{background:#2980b9}.detailed-filter-toggle{padding:.5rem 1rem;background:#fff;color:#3b82f6;border:1px solid #3b82f6;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s}.detailed-filter-toggle:hover{background:#eff6ff}.detailed-filters{margin-top:1rem;padding:1rem;background:#f9fafb;border-radius:.5rem}.filter-section{margin-bottom:1.5rem}.filter-section:last-child{margin-bottom:0}.filter-section h3{font-size:1rem;font-weight:600;color:#374151;margin:0 0 .75rem}.filter-select{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;min-width:200px}.kodawari-options,.layout-options{display:flex;gap:.75rem;flex-wrap:wrap}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:8px}.checkbox-label:hover{color:#3498db}.checkbox-label input[type=checkbox]{margin-right:8px;cursor:pointer}.search-feedback{padding:.75rem 1rem;background:#fff;border-bottom:1px solid #e5e7eb;text-align:center;font-size:.875rem;flex-shrink:0}.search-feedback .loading{color:#3b82f6}.search-feedback .result-count{color:#059669;font-weight:500}.map-container{flex:1;position:relative;overflow:hidden;min-height:0}.leaflet-container{width:100%;height:100%;font-family:inherit;z-index:0}.map-loading{display:flex;align-items:center;justify-content:center;height:100%;background:#f3f4f6;color:#6b7280;font-size:1rem}.map-credit{position:absolute;bottom:130px;right:10px;background:hsla(0,0%,100%,.95);padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;z-index:1000;box-shadow:0 2px 4px rgba(0,0,0,.1)}.map-credit a{color:#374151;text-decoration:none;font-weight:500}.map-credit a:hover{color:#3b82f6;text-decoration:underline}.map-controls{position:absolute;top:10px;right:10px;display:flex;flex-direction:column;gap:.5rem;z-index:1000}@media (min-width:1024px){.map-controls{right:20px}}.map-control-button{width:40px;height:40px;background:#fff;border:2px solid #d1d5db;border-radius:.375rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px rgba(0,0,0,.1)}.map-control-button:hover{background:#f3f4f6;border-color:#3b82f6}.map-control-button:active{background:#e5e7eb}.map-control-button svg{color:#374151}.map-control-button:hover svg{color:#3b82f6}.custom-marker-wrapper{background:transparent;border:none}.custom-marker.selected{transform:rotate(-45deg) scale(1)}@keyframes pulse{0%,to{transform:rotate(-45deg) scale(1)}50%{transform:rotate(-45deg) scale(1.1)}}.cluster-marker{background:transparent;border:none;margin:0;padding:0}.cluster-marker:hover .cluster-marker-inner{transform:scale(1.15)!important;box-shadow:0 6px 20px rgba(0,0,0,.4)!important}.cluster-marker-inner{animation:clusterPop .3s ease-out}@keyframes clusterPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.leaflet-zoom-anim .cluster-marker-inner{transition:transform .25s cubic-bezier(0,0,.25,1)}.property-popup{min-width:200px}.property-popup h3{font-size:1rem;font-weight:600;margin:0 0 .5rem;color:#1f2937}.popup-details p{margin:.25rem 0;font-size:.875rem;color:#4b5563}.popup-detail-button{margin-top:.5rem;width:100%;padding:.5rem;background:#3b82f6;color:#fff;border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:600}.popup-detail-button:hover{background:#2563eb}.bottom-sheet{position:absolute;bottom:0;left:0;right:0;background:#fff;border-top-left-radius:1rem;border-top-right-radius:1rem;box-shadow:0 -4px 12px rgba(0,0,0,.15);transition:height .3s ease;z-index:1000}.bottom-sheet.minimized{height:120px}.bottom-sheet.expanded{height:60vh}.bottom-sheet-header{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.drag-handle{display:flex;justify-content:center;margin-bottom:.5rem}.handle-bar{width:40px;height:4px;background:#d1d5db;border-radius:2px}.header-content{display:flex;justify-content:space-between;align-items:center}.header-content h3{font-size:1rem;font-weight:600;color:#1f2937;margin:0}.expand-button{background:none;border:none;font-size:1.25rem;color:#6b7280;cursor:pointer;padding:.25rem .5rem}.bottom-sheet-content{height:calc(100% - 80px);overflow-y:auto;overflow-x:hidden;padding:1rem}.no-properties{text-align:center;padding:2rem;color:#6b7280}.property-cards-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.property-card{background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;overflow:hidden;cursor:pointer;transition:all .2s}.property-card:hover{border-color:#3b82f6;box-shadow:0 4px 8px rgba(0,0,0,.1);transform:translateY(-2px)}.property-card.selected{border-color:#3b82f6;box-shadow:0 4px 12px rgba(59,130,246,.3)}.property-image{position:relative;width:100%;height:180px;background:#f3f4f6}.property-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.badge{position:absolute;top:.5rem;left:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;color:#fff;border-radius:.25rem}.new-badge{background:#ef4444}.recommended-badge{background:#10b981}.property-info{padding:1rem}.property-name{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.property-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.detail-row{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#4b5563}.detail-row .icon{font-size:1rem}.detail-row.rent .value{font-weight:600;color:#ef4444;font-size:1rem}.detail-button{width:100%;padding:.5rem;background:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}.detail-button:hover{background:#2563eb}.filter-madori-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.filter-building-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.filter-kodawari-popular{display:flex;flex-wrap:wrap;gap:8px}.kodawari-add-button{padding:10px 16px;background:#fff;color:#3498db;border:1px solid #3498db;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:8px}.kodawari-add-button:hover{background:#3498db;color:#fff}.kodawari-count{font-weight:700}.kodawari-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:10000}.kodawari-modal{background:#fff;border-radius:.5rem;max-width:800px;max-height:80vh;width:90%;display:flex;flex-direction:column;box-shadow:0 10px 25px rgba(0,0,0,.2)}.kodawari-modal-header{padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.kodawari-modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.kodawari-modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s}.kodawari-modal-close:hover{background:#f3f4f6;color:#1f2937}.kodawari-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.kodawari-category{margin-bottom:1.5rem}.kodawari-category:last-child{margin-bottom:0}.kodawari-category-title{font-size:1rem;font-weight:600;color:#374151;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.kodawari-items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}.kodawari-item{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;cursor:pointer;transition:all .2s;background:#fff;font-size:.875rem;text-align:center}.kodawari-item:hover{border-color:#3b82f6;background:#eff6ff}.kodawari-item.selected{border-color:#3b82f6;background:#dbeafe;color:#1e40af;font-weight:500}.kodawari-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;gap:.75rem}.kodawari-modal-cancel{padding:.5rem 1.5rem;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.kodawari-modal-cancel:hover{background:#f3f4f6}.kodawari-modal-apply{padding:.5rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:.375rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.kodawari-modal-apply:hover{background:#2563eb}.keyword-input{width:100%;padding:8px;border:1px solid #ddd;border-radius:4px;font-size:14px}.keyword-input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px rgba(52,152,219,.1)}.checkbox-label-inline{display:inline-flex;align-items:center;gap:8px;margin-right:16px;cursor:pointer;font-size:14px}.checkbox-label-inline input[type=checkbox]{cursor:pointer}.filter-rent-range{margin-bottom:10px}.filter-area-range,.filter-rent-range{display:flex;align-items:center;gap:8px}.filter-checkboxes{display:flex;flex-wrap:wrap;gap:8px}@media (max-width:768px){.header-compact{padding:.75rem}.header-main-row{flex-direction:column;align-items:stretch;gap:.75rem}.page-title{text-align:center;font-size:1.125rem}.header-quick-filters{flex-direction:column;gap:.5rem}.quick-filter{width:100%;justify-content:space-between}.quick-filter-keyword{min-width:100%}.filters-toggle-button,.search-button-compact{width:100%;justify-content:center}.header-filters{grid-template-columns:1fr;gap:1rem;padding:1rem}.filter-group select{font-size:.875rem}.bottom-sheet.minimized{height:100px}.bottom-sheet.expanded{height:70vh}.property-cards-container{grid-template-columns:1fr;gap:.75rem}.property-card{display:flex}.property-image{width:120px;height:auto}.property-info{flex:1;padding:.75rem}.kodawari-modal{width:95%;max-height:85vh}.kodawari-items-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.kodawari-modal-header{padding:.75rem 1rem}.kodawari-modal-body{padding:1rem}.kodawari-modal-footer{padding:.75rem 1rem;flex-direction:column}.kodawari-modal-apply,.kodawari-modal-cancel{width:100%}.filter-madori-grid{grid-template-columns:repeat(auto-fill,minmax(60px,1fr))}.filter-kodawari-popular{flex-direction:column}.filter-kodawari-popular .checkbox-label{width:100%}}