@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-ext-600-normal-4vooXBpG.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-600-normal-DRtaDpgU.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/dm-sans-latin-600-normal-Aqo67rzb.woff2) format("woff2"),url(/assets/dm-sans-latin-600-normal-BmdmIIQ2.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-cyrillic-600-normal-oLY6jnZ7.woff2) format("woff2"),url(/assets/playfair-display-cyrillic-600-normal-DbWAkkgN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-vietnamese-600-normal-ICsRR-qJ.woff2) format("woff2"),url(/assets/playfair-display-vietnamese-600-normal-BPJkAZPN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-latin-ext-600-normal-CEjQclLc.woff2) format("woff2"),url(/assets/playfair-display-latin-ext-600-normal-BumBfC1v.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-latin-600-normal-CZLGqjJe.woff2) format("woff2"),url(/assets/playfair-display-latin-600-normal-CxxueQ0Z.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-cyrillic-700-normal-Dw3uKy19.woff2) format("woff2"),url(/assets/playfair-display-cyrillic-700-normal-Dk1mTcxf.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-vietnamese-700-normal-CaKJSIny.woff2) format("woff2"),url(/assets/playfair-display-vietnamese-700-normal-Cr1rw0mr.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-latin-ext-700-normal-C58ejOkc.woff2) format("woff2"),url(/assets/playfair-display-latin-ext-700-normal-D5HUU8GT.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-latin-700-normal-CuDiGg7c.woff2) format("woff2"),url(/assets/playfair-display-latin-700-normal-Bc_1Q1cG.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.city-selector{width:100%}.city-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%238a95a7' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .6rem center;background-repeat:no-repeat;background-size:1.4em 1.4em;padding-right:2.5rem}.filters{padding:1.75rem;margin-bottom:1.5rem}.filters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;margin-bottom:1.5rem}.filter-group{display:flex;flex-direction:column}.price-inputs,.bed-inputs{display:flex;align-items:center;gap:.5rem}.price-separator{color:var(--text-muted);font-size:.85rem}.filters-actions{display:flex;justify-content:flex-end;gap:.75rem}@media (max-width: 640px){.filters-grid{grid-template-columns:1fr}.filters-actions{flex-direction:column}.filters-actions button{width:100%}}.property-card{display:flex;flex-direction:column;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s var(--ease);text-decoration:none;color:inherit;border-radius:var(--radius-lg)}.property-card:hover{text-decoration:none;transform:translateY(-4px);box-shadow:var(--shadow-lg)}.property-image{position:relative;aspect-ratio:4/3;background:var(--bg-tertiary);overflow:hidden}.property-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}.property-card:hover .property-image img{transform:scale(1.04)}.property-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.85rem}.price-reduced-badge{position:absolute;top:.75rem;right:.75rem;background:var(--danger);color:#fff;padding:.3rem .6rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:700;letter-spacing:.02em;box-shadow:0 2px 6px #c0392b4d}.property-content{padding:1.1rem;display:flex;flex-direction:column;gap:.45rem}.property-price{font-family:Playfair Display,Georgia,serif;font-size:1.3rem;font-weight:700;color:var(--text-primary);display:flex;align-items:baseline;gap:.5rem}.original-price{font-family:DM Sans,sans-serif;font-size:.85rem;font-weight:400;color:var(--text-muted);text-decoration:line-through}.property-specs{display:flex;gap:1rem;font-size:.85rem;color:var(--text-secondary)}.property-specs span{display:flex;align-items:center;gap:.25rem}.property-transit{font-size:.78rem;font-weight:600;color:#1a56db}.property-address{font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.property-location{font-size:.75rem;color:var(--text-muted)}.property-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.6rem;border-top:1px solid var(--border-light);font-size:.75rem;color:var(--text-muted)}.property-type{background:var(--bg-tertiary);padding:.2rem .6rem;border-radius:9999px;font-weight:500;font-size:.7rem}.property-grid-container{display:flex;flex-direction:column;gap:1.25rem}.results-header{display:flex;justify-content:space-between;align-items:center;padding:0 .5rem}.results-count{font-weight:700;color:var(--text-primary);font-size:.95rem}.results-page{font-size:.85rem;color:var(--text-muted)}.property-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border-light)}.pagination-info{font-size:.85rem;color:var(--text-secondary)}@media (max-width: 640px){.property-grid{grid-template-columns:1fr}}.search-page{padding-bottom:2.5rem}.search-header{margin-bottom:2rem}.search-header h2{font-family:Playfair Display,Georgia,serif;font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:.35rem}.search-header p{color:var(--text-muted);font-size:.9rem}.price-history{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:1.75rem}.price-history-title{font-size:1rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary)}.price-history-empty{text-align:center;padding:2rem;color:var(--text-muted);font-size:.9rem}.price-history-chart{display:flex;align-items:flex-end;justify-content:space-around;height:180px;padding:0}.price-bar-container{display:flex;flex-direction:column;align-items:center;gap:.35rem;flex:1;max-width:80px;height:100%;justify-content:flex-end}.price-bar-label{font-size:.7rem;font-weight:600;color:var(--text-primary);white-space:nowrap}.price-bar{width:28px;background:var(--primary);border-radius:4px 4px 0 0;transition:height .3s var(--ease),background .15s}.price-bar:hover{background:var(--primary-dark)}.price-bar.increase{background:var(--danger)}.price-bar.decrease{background:var(--success)}.price-bar-date{font-size:.6rem;color:var(--text-muted);text-align:center;white-space:nowrap}.property-detail{padding-bottom:2.5rem}.back-link{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:1.5rem;color:var(--text-muted);font-size:.85rem;font-weight:500;transition:color .15s}.back-link:hover{color:var(--primary)}.property-detail-grid{display:grid;grid-template-columns:1fr 370px;gap:1.5rem}.property-detail-main{display:flex;flex-direction:column;gap:1.5rem}.property-detail-image{aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius-lg)}.property-detail-image img{width:100%;height:100%;object-fit:cover}.property-detail-image .property-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);color:var(--text-muted)}.property-detail-info{padding:1.75rem}.property-detail-info h3{font-size:1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.25rem}.info-item{display:flex;flex-direction:column;gap:.3rem}.info-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.info-value{font-size:.9rem;font-weight:600;color:var(--text-primary)}.property-detail-sidebar{display:flex;flex-direction:column;gap:1.25rem}.price-card{padding:1.75rem;text-align:center;position:relative;overflow:hidden}.price-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent)}.price-main{font-family:Playfair Display,Georgia,serif;font-size:2.25rem;font-weight:700;color:var(--text-primary)}.price-original{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem}.price-original .original{color:var(--text-muted);text-decoration:line-through}.address-card{padding:1.75rem}.address-card h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.address-card .location{color:var(--text-secondary);margin-bottom:.25rem}.address-card .postal{color:var(--text-muted);font-size:.85rem}.transit-card{padding:1.75rem;border-left:3px solid #1a56db}.transit-card h4{font-size:.85rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.5rem}.transit-card .station-name{font-size:1.05rem;font-weight:700;color:#1a56db;margin-bottom:.25rem}.transit-card .walk-time{font-size:.9rem;color:var(--text-secondary)}.mls-card{padding:1.25rem 1.75rem}.mls-item{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid var(--border-light)}.mls-item:last-child{border-bottom:none}.mls-label{color:var(--text-muted);font-size:.85rem}.mls-value{font-weight:600;font-size:.85rem;color:var(--text-primary)}.map-card{padding:1.75rem}.map-card h4{font-size:.85rem;font-weight:600;margin-bottom:.5rem}.map-card .coords{font-size:.75rem;color:var(--text-muted);margin-bottom:1rem}.btn-block{width:100%}@media (max-width: 1024px){.property-detail-grid{grid-template-columns:1fr}.property-detail-sidebar{order:-1}}@media (max-width: 640px){.property-detail{padding-bottom:1.5rem}.info-grid{grid-template-columns:1fr 1fr}}.image-carousel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;z-index:10000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.image-carousel-container{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 80px 120px}.image-carousel-close{position:absolute;top:20px;right:20px;background:#0009;border:2px solid rgba(255,255,255,.3);color:#fff;font-size:36px;line-height:1;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.image-carousel-close:hover{background:#fff3;border-color:#fff9;transform:scale(1.05)}.image-carousel-main{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;width:100%;max-width:1400px;margin:0 auto;overflow:hidden}.image-carousel-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px;box-shadow:0 8px 30px #0009}.image-carousel-image.image-carousel-image--crop-wm{object-position:center 55%;transform:scale(1.06);transform-origin:center 55%}.image-carousel-thumbnail.image-carousel-thumbnail--crop-wm{object-position:center 60%}.image-carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:#0009;border:2px solid rgba(255,255,255,.3);color:#fff;font-size:48px;line-height:1;width:60px;height:60px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.image-carousel-nav:hover{background:#fff3;border-color:#fff9;transform:translateY(-50%) scale(1.05)}.image-carousel-nav-prev{left:20px}.image-carousel-nav-next{right:20px}.image-carousel-counter{position:absolute;top:20px;left:50%;transform:translate(-50%);background:#000000b3;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;font-weight:600;letter-spacing:.5px;z-index:10}.image-carousel-thumbnails{position:absolute;bottom:0;left:0;right:0;padding:20px;background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 50%,transparent 100%)}.image-carousel-thumbnails-scroll{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;padding:8px 0;justify-content:center;max-width:1400px;margin:0 auto}.image-carousel-thumbnails-scroll::-webkit-scrollbar{height:4px}.image-carousel-thumbnails-scroll::-webkit-scrollbar-track{background:#ffffff1a;border-radius:2px}.image-carousel-thumbnails-scroll::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.image-carousel-thumbnails-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff80}.image-carousel-thumbnail{width:100px;height:70px;object-fit:cover;border-radius:4px;cursor:pointer;opacity:.5;transition:all .2s;border:2px solid transparent;flex-shrink:0}.image-carousel-thumbnail:hover{opacity:.8;transform:scale(1.05)}.image-carousel-thumbnail.active{opacity:1;border-color:#2563eb;box-shadow:0 0 10px #2563eb99}@media (max-width: 768px){.image-carousel-container{padding:50px 20px 100px}.image-carousel-close{width:40px;height:40px;font-size:28px;top:10px;right:10px}.image-carousel-nav{width:50px;height:50px;font-size:36px}.image-carousel-nav-prev{left:10px}.image-carousel-nav-next{right:10px}.image-carousel-counter{font-size:12px;padding:6px 12px}.image-carousel-thumbnail{width:70px;height:50px}.image-carousel-thumbnails{padding:10px}}@media (min-width: 769px) and (max-width: 1024px){.image-carousel-thumbnail{width:80px;height:60px}}.saved-page{padding-bottom:2.5rem}.saved-list{display:flex;flex-direction:column;gap:1.25rem}.fav-filter-bar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md, 8px)}.fav-filter-select{padding:.4rem .6rem;font-size:.8rem;border:1px solid var(--border-light);border-radius:var(--radius-sm, 4px);background:var(--bg-primary);color:var(--text-primary);min-width:120px}.fav-filter-price-group{display:flex;align-items:center;gap:4px}.fav-filter-price-select{width:110px;padding:.4rem .5rem;font-size:.8rem;border:1px solid var(--border-light);border-radius:var(--radius-sm, 4px);background:var(--bg-primary);color:var(--text-primary);cursor:pointer}.fav-sort-btn{display:inline-flex;align-items:center;gap:4px;padding:.4rem .7rem;font-size:.78rem;font-weight:500;color:var(--text-secondary);background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-light);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:all .15s ease;white-space:nowrap}.fav-sort-btn:hover{border-color:var(--primary, #2563eb);color:var(--primary, #2563eb)}.fav-sort-btn.active{background:var(--primary, #2563eb);border-color:var(--primary, #2563eb);color:#fff}.fav-sort-priority-dots{display:inline-flex;gap:2px;align-items:center}.fav-sort-priority-dots span{width:6px;height:6px;border-radius:50%;display:inline-block}.fav-filter-count{margin-left:auto;font-size:.75rem;color:var(--text-muted);white-space:nowrap}.fav-card{display:grid;grid-template-columns:180px 1fr;gap:1.25rem;padding:1rem;transition:box-shadow .2s var(--ease)}.fav-card:hover{box-shadow:var(--shadow-md)}.fav-photo{width:180px;height:130px;border-radius:var(--radius-md, 8px);overflow:hidden;background:var(--bg-tertiary);flex-shrink:0;transition:opacity .15s}.fav-photo:hover{opacity:.85}.fav-photo img{width:100%;height:100%;object-fit:cover}.fav-photo img.fav-photo--crop-wm{object-position:center 55%;transform:scale(1.06);transform-origin:center 55%}.fav-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.8rem}.fav-details{display:flex;flex-direction:column;justify-content:space-between;min-width:0}.fav-details-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem}.fav-details-top h3{font-size:1.05rem;font-weight:600;color:var(--text-primary);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fav-price-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.fav-price{font-size:1.1rem;font-weight:700;color:var(--primary, #2563eb);white-space:nowrap}.fav-price-change{font-size:.72rem;font-weight:600;padding:1px 6px;border-radius:4px;white-space:nowrap}.fav-price-change--up{color:#15803d;background:#dcfce7}.fav-price-change--down{color:#b91c1c;background:#fee2e2}.fav-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem}.fav-meta-item{background:var(--bg-tertiary);padding:.2rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:500;color:var(--text-secondary)}.fav-mls-text{font-family:monospace;font-size:.75rem;color:var(--text-muted);margin-left:.25rem}.fav-description{font-size:.8rem;line-height:1.5;color:var(--text-secondary);margin:0 0 .5rem;display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.fav-priority-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem}.fav-priority-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.fav-priority-pills{display:flex;gap:4px}.fav-priority-pill{width:28px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;border:1.5px solid var(--border-light);border-radius:4px;background:transparent;cursor:pointer;transition:all .12s ease;padding:0}.fav-priority-pill:hover{transform:scale(1.1)}.fav-priority-pill.active{transform:scale(1.1);box-shadow:0 1px 4px #00000026}.fav-notes-field{position:relative;margin:.25rem 0 .5rem;flex-shrink:0}.fav-notes-input{width:100%;min-height:60px;font-size:.8rem;color:var(--text-secondary);font-style:italic;font-family:inherit;background:#f8f9fa;border:1.5px solid #d1d5db;border-radius:var(--radius-sm, 4px);padding:.35rem .5rem;resize:vertical;transition:border-color .15s,background .15s;line-height:1.45}.fav-notes-input::placeholder{color:var(--text-muted);font-style:italic}.fav-notes-input:hover{border-color:var(--border-light)}.fav-notes-input:focus{outline:none;border-color:var(--primary, #2563eb);background:var(--bg-primary)}.fav-notes-input--limit{border-color:var(--danger, #c0392b)}.fav-notes-meta{display:flex;justify-content:space-between;align-items:center;min-height:1rem;padding:0 .5rem}.fav-notes-limit{font-size:.65rem;color:var(--danger, #c0392b)}.fav-notes-status{font-size:.65rem;font-style:italic;margin-left:auto}.fav-notes-status--saving{color:var(--text-muted)}.fav-notes-status--saved{color:var(--success, #27ae60)}.fav-notes-status--error{color:var(--danger, #c0392b)}.fav-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid var(--border-light)}.fav-remove-btn{background:none;border:1px solid var(--danger, #c0392b);color:var(--danger, #c0392b);padding:.3rem .75rem;border-radius:var(--radius-sm, 4px);font-size:.75rem;cursor:pointer;transition:background .15s,color .15s}.fav-remove-btn:hover{background:var(--danger, #c0392b);color:#fff}@media (max-width: 600px){.fav-card{grid-template-columns:1fr}.fav-photo{width:100%;height:180px}.fav-filter-bar{padding:.5rem;gap:.4rem}.fav-filter-price{width:80px}}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4.5rem 2rem;text-align:center;background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.loading-state p{margin-top:1rem;color:var(--text-secondary);font-size:.9rem}.error-state{color:var(--danger);background:var(--danger-light);border-color:#c0392b1f}.empty-state h3{font-family:Playfair Display,Georgia,serif;color:var(--text-primary);margin-bottom:.5rem;font-size:1.1rem}.empty-state p{color:var(--text-muted);font-size:.9rem}.saved-date{font-size:.75rem;color:var(--text-muted)}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out,-o-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{width:30px;height:30px;margin-left:5px;margin-top:5px;text-align:center;border-radius:15px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.popup-carousel{position:relative;border-radius:var(--radius);overflow:hidden;margin-bottom:var(--popup-sp-sm, 8px);background:var(--bg-tertiary, #eceef2)}.popup-carousel:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.popup-carousel__viewport{position:relative;aspect-ratio:4 / 3;overflow:hidden}.popup-carousel__image{width:100%;height:100%;object-fit:cover;display:block}.popup-carousel__image--crop-wm{object-position:center 55%;transform:scale(1.06);transform-origin:center 55%}.popup-carousel__thumb--crop-wm{object-position:center 60%}.popup-carousel__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary, #eceef2);color:var(--text-muted, #8a95a7)}.popup-carousel__nav{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;border:none;background:#ffffffb3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s var(--ease, cubic-bezier(.4, 0, .2, 1)),transform .15s var(--ease);z-index:2;padding:0}.popup-carousel:hover .popup-carousel__nav,.popup-carousel:focus-within .popup-carousel__nav{opacity:1}.popup-carousel__nav:hover{background:#ffffffe6;transform:translateY(-50%) scale(1.08)}.popup-carousel__nav:focus-visible{outline:2px solid var(--accent);outline-offset:2px;opacity:1}.popup-carousel__nav--prev{left:8px}.popup-carousel__nav--next{right:8px}.popup-carousel__counter{position:absolute;bottom:8px;right:8px;padding:2px 8px;border-radius:10px;background:#0000008c;color:#fff;font-size:.65rem;font-weight:600;z-index:2;pointer-events:none}.popup-carousel__thumbs{display:flex;gap:4px;overflow-x:auto;padding:6px 4px 4px;scrollbar-width:thin}.popup-carousel__thumbs::-webkit-scrollbar{height:3px}.popup-carousel__thumbs::-webkit-scrollbar-thumb{background:var(--border, #e0e4ea);border-radius:2px}.popup-carousel__thumb{width:56px;height:42px;object-fit:cover;border-radius:4px;flex-shrink:0;cursor:pointer;border:2px solid transparent;opacity:.6;transition:opacity .15s,border-color .15s,transform .15s}.popup-carousel__thumb:hover{opacity:.9;transform:scale(1.03)}.popup-carousel__thumb--active{border-color:var(--accent, #c8a255);opacity:1}@media (max-width: 640px){.popup-carousel__nav{width:44px;height:44px}.popup-carousel__thumb{width:48px;height:36px}}.listing-popup{--popup-font-xs: .65rem;--popup-font-sm: .75rem;--popup-font-base: .875rem;--popup-font-lg: 1rem;--popup-font-price: 1.75rem;--popup-sp-xs: 4px;--popup-sp-sm: 8px;--popup-sp-md: 12px;--popup-sp-lg: 16px;--popup-sp-xl: 24px;font-size:var(--popup-font-base);line-height:1.6;min-width:420px;max-width:520px;max-height:calc(100vh - 140px);overflow-y:auto}.listing-popup::-webkit-scrollbar{width:4px}.listing-popup::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:2px}.popup-image-container{position:relative}.listing-popup img.popup-thumb{width:100%;max-height:min(320px,30vh);object-fit:cover;border-radius:var(--radius);margin-bottom:var(--popup-sp-sm);box-shadow:var(--shadow-sm)}.popup-fav-btn{position:absolute;top:var(--popup-sp-sm);right:var(--popup-sp-sm);width:36px;height:36px;border-radius:50%;border:none;background:#ffffffb3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;transition:transform .2s var(--ease),background .2s var(--ease);z-index:2}.popup-fav-btn:hover{transform:scale(1.1);background:#ffffffe6}.popup-fav-btn.is-fav{color:#ef4444}.popup-fav-btn:not(.is-fav){color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.4)}.popup-fav-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.listing-popup .popup-addr{font-weight:700;font-size:var(--popup-font-lg);margin-bottom:var(--popup-sp-xs);color:var(--text-primary);line-height:1.3}.popup-addr-city{font-weight:400;font-size:var(--popup-font-sm);color:var(--text-secondary)}.popup-priority-row{display:flex;align-items:center;gap:6px;margin:4px 0 2px}.popup-priority-label{font-size:var(--popup-font-xs);color:var(--text-muted);font-weight:500}.popup-priority-pills{display:flex;gap:3px}.popup-priority-pill{width:24px;height:20px;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;border:1.5px solid var(--border-light);border-radius:4px;background:transparent;cursor:pointer;transition:all .12s ease;padding:0}.popup-priority-pill:hover{transform:scale(1.12)}.popup-priority-pill.active{transform:scale(1.12);box-shadow:0 1px 4px #0000002e}.popup-price-section{margin-bottom:2px}.popup-price-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.listing-popup .popup-price{font-family:Playfair Display,Georgia,serif;font-size:var(--popup-font-price);font-weight:700;color:var(--success);line-height:1}.popup-price-spacer{flex:1;min-width:4px}.popup-price-badge{font-size:var(--popup-font-xs);font-weight:600;border:1px solid;border-radius:4px;padding:1px 6px;white-space:nowrap}.popup-price-change{font-size:var(--popup-font-xs);font-weight:500;white-space:nowrap}.listing-popup .popup-detail{color:var(--text-secondary);font-size:var(--popup-font-sm)}.listing-popup .popup-detail.popup-detail--transit{color:#1a56db;font-weight:600;font-size:.85em}.listing-popup .popup-mls{font-size:var(--popup-font-xs);color:var(--text-muted);margin-top:var(--popup-sp-xs)}.listing-popup .popup-mls a{color:var(--primary-light);font-weight:500}.listing-popup .popup-mls a:hover{color:var(--accent)}.listing-popup .popup-desc{font-size:var(--popup-font-sm);color:var(--text-secondary);margin-top:var(--popup-sp-sm);padding:var(--popup-sp-xs);background:var(--bg-secondary);border-radius:var(--radius-sm);max-height:100px;overflow-y:auto;line-height:1.5}.listing-popup .popup-price-range{margin:2px 0}.popup-price-range-track{position:relative;height:12px;margin-bottom:2px}.popup-price-range-track-bg{position:absolute;top:4px;left:0;right:0;height:4px;background:#e5e7eb;border-radius:2px}.popup-price-range-iqr{position:absolute;top:4px;height:4px;background:var(--primary);opacity:.25;border-radius:2px}.popup-price-range-marker{position:absolute;top:2px;width:8px;height:8px;border-radius:50%;border:1.5px solid #fff;box-shadow:0 1px 3px #0000004d;transform:translate(-4px)}.popup-price-range-labels{display:flex;justify-content:space-between;font-size:var(--popup-font-xs);color:var(--text-muted)}.popup-price-range-median{color:var(--text-secondary)}.popup-price-range--compact{display:inline-flex;align-items:center;width:80px;flex-shrink:0}.popup-price-range--compact .popup-price-range-track{position:relative;height:10px;width:100%;margin-bottom:0}.popup-price-range--compact .popup-price-range-track-bg,.popup-price-range--compact .popup-price-range-iqr{top:3px;height:4px}.popup-price-range--compact .popup-price-range-marker{top:1px;width:8px;height:8px}.popup-nearby{margin-top:var(--popup-sp-sm);border-top:1px solid var(--border-light);padding-top:var(--popup-sp-xs)}.popup-nearby-title{font-size:var(--popup-font-xs);font-weight:600;color:var(--text-secondary);margin-bottom:var(--popup-sp-xs)}.popup-nearby-scroll{max-height:85px;overflow-y:auto;padding-right:2px}.popup-nearby table{width:100%;font-size:var(--popup-font-xs);border-collapse:collapse}.popup-nearby td{padding:2px var(--popup-sp-xs)}.popup-nearby td:first-child{padding-left:0;width:20px;vertical-align:middle}.popup-nearby td:last-child{text-align:right;color:var(--text-muted);white-space:nowrap;padding-right:0}.popup-nearby tr{border-bottom:1px solid var(--border-light)}.popup-travel-btn{margin-top:var(--popup-sp-xs);font-size:var(--popup-font-xs);padding:5px var(--popup-sp-md);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;transition:all .2s var(--ease)}.popup-travel-btn:hover{border-color:var(--primary-light);color:var(--primary);background:var(--bg-primary)}.popup-travel-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.popup-transit-calc{margin-top:var(--popup-sp-sm)}.popup-travel-results{padding:var(--popup-sp-sm);background:#eff6ff;border-radius:var(--radius-sm);font-size:var(--popup-font-xs)}.popup-travel-results-title{font-weight:600;color:#1a56db;margin-bottom:var(--popup-sp-xs)}.popup-travel-results table{width:100%;border-collapse:collapse}.popup-travel-results td{padding:1px 0}.popup-travel-results td:nth-child(2){text-align:right;color:#1a56db;font-weight:600}.popup-travel-results td:nth-child(3){text-align:right;color:var(--text-muted);font-size:var(--popup-font-xs);padding-left:var(--popup-sp-xs)}.popup-loading{display:flex;align-items:center;gap:var(--popup-sp-sm);font-size:var(--popup-font-xs);color:var(--text-muted);margin-top:var(--popup-sp-sm)}.popup-spinner{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.popup-hide-btn{display:block;width:100%;margin-top:var(--popup-sp-md);padding:7px 0;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--popup-font-sm);font-weight:600;cursor:pointer;text-align:center;transition:all .2s var(--ease)}.popup-hide-btn:hover{background:var(--bg-tertiary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.popup-hide-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.popup-extra-detail{font-size:var(--popup-font-xs);color:var(--text-secondary);margin-top:2px}.popup-source{font-size:var(--popup-font-xs);color:var(--text-muted);margin-top:2px}.popup-price-history{margin-top:var(--popup-sp-sm);border-top:1px solid var(--border-light);padding-top:var(--popup-sp-xs)}.popup-price-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--popup-sp-xs)}.popup-price-history-title{font-size:var(--popup-font-xs);font-weight:600;color:var(--text-secondary)}.popup-price-history-trend{font-size:var(--popup-font-xs);font-weight:600}.popup-price-history svg{width:100%;display:block}.popup-price-history-labels{display:flex;justify-content:space-between;font-size:var(--popup-font-xs);color:var(--text-muted);margin-top:1px}.popup-price-history-labels span{text-align:center}.popup-commute{margin-top:var(--popup-sp-sm);padding-top:var(--popup-sp-sm);border-top:1px solid var(--border-light)}.popup-commute-title{font-size:var(--popup-font-xs);font-weight:600;color:var(--text-secondary);margin-bottom:var(--popup-sp-xs)}.popup-commute-scroll{max-height:180px;overflow-y:auto;padding-right:2px}.popup-commute table{width:100%;font-size:var(--popup-font-xs);border-collapse:collapse}.popup-commute thead th{text-align:left;padding:var(--popup-sp-xs);font-weight:600;color:var(--text-muted);font-size:var(--popup-font-xs);border-bottom:1px solid var(--border)}.popup-commute thead th:nth-child(2),.popup-commute thead th:nth-child(3){text-align:right}.popup-commute tbody tr{border-bottom:1px solid var(--border-light)}.popup-commute td{padding:3px var(--popup-sp-xs)}.popup-commute-place{display:flex;align-items:center;gap:4px}.popup-commute-time{text-align:right;color:#1a56db;font-size:var(--popup-font-xs);white-space:nowrap;font-weight:600}.popup-poi-dist{text-align:right;color:var(--text-muted);white-space:nowrap}.popup-poi-travel{text-align:right;color:#1a56db;white-space:nowrap;font-size:var(--popup-font-xs);font-weight:600}.listing-popup button,.listing-popup a{transition:all .2s var(--ease)}@media (max-width: 640px){.listing-popup{min-width:unset;max-width:calc(100vw - 40px);font-size:var(--popup-font-sm)}.listing-popup img.popup-thumb{max-height:200px}.listing-popup button,.listing-popup a{min-height:44px}.popup-fav-btn{width:44px;height:44px;font-size:22px}.popup-hide-btn{min-height:44px;display:flex;align-items:center;justify-content:center}.popup-travel-btn{min-height:44px}}.popup-category-details{margin:6px 0;padding:6px 8px;background:#f8fafc;border-radius:6px;border-left:3px solid #6366f1}.popup-detail--accent{font-weight:600;color:#4338ca}.bottom-sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0000004d;animation:bs-fade-in .2s ease forwards}.bottom-sheet-backdrop.closing{animation:bs-fade-out .25s ease forwards}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;z-index:2001;background:var(--bg-primary, #fff);border-radius:16px 16px 0 0;box-shadow:0 -4px 24px #0000001f,0 -1px 4px #0000000f;display:flex;flex-direction:column;max-height:95vh;animation:bs-slide-up .25s cubic-bezier(.22,1,.36,1) forwards;will-change:transform}.bottom-sheet.closing{animation:bs-slide-down .25s cubic-bezier(.55,0,1,.45) forwards}.bottom-sheet__handle{display:flex;align-items:center;justify-content:center;padding:12px 0 4px;cursor:grab;touch-action:none;flex-shrink:0;-webkit-user-select:none;user-select:none}.bottom-sheet__handle:active{cursor:grabbing}.bottom-sheet__handle-pill{width:36px;height:4px;border-radius:2px;background:var(--text-muted, #8a95a7);opacity:.5}.bottom-sheet__content{flex:1;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 16px 24px}.bottom-sheet__content::-webkit-scrollbar{width:3px}.bottom-sheet__content::-webkit-scrollbar-thumb{background:var(--text-muted, #8a95a7);border-radius:2px}.bottom-sheet__content .listing-popup{min-width:unset;max-width:unset;width:100%;max-height:none;overflow-y:visible;font-size:var(--popup-font-base, .875rem)}.bottom-sheet__content .listing-popup img.popup-thumb{max-height:260px}@keyframes bs-fade-in{0%{opacity:0}to{opacity:1}}@keyframes bs-fade-out{0%{opacity:1}to{opacity:0}}@keyframes bs-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes bs-slide-down{0%{transform:translateY(0)}to{transform:translateY(100%)}}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-container{background:#fff;border-radius:8px;width:90%;max-width:400px;max-height:85vh;overflow-y:auto;box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;animation:modalFadeIn .2s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid #eee}.modal-header h3{margin:0;font-size:1.1rem;font-weight:600;color:#1f2937}.modal-close-btn{background:none;border:none;font-size:1.5rem;line-height:1;color:#6b7280;cursor:pointer;padding:0 4px}.modal-close-btn:hover{color:#111}.modal-body{padding:16px}.hidden-listings-modal{display:flex;flex-direction:column;max-height:60vh}.hidden-listings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.unhide-all-btn{background:none;border:none;color:var(--primary-color, #2563eb);cursor:pointer;font-weight:500;font-size:.9rem}.unhide-all-btn:hover{text-decoration:underline}.hidden-listings-list{overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.hidden-listing-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--bg-secondary, #f9fafb);border-radius:.5rem;border:1px solid var(--border-color, #e5e7eb)}.hidden-listing-info{display:flex;flex-direction:column;gap:.25rem}.hidden-listing-price{font-weight:600;color:var(--text-primary, #111827)}.hidden-listing-address{font-size:.9rem;color:var(--text-secondary, #4b5563)}.hidden-listing-mls{font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.unhide-btn{background:none;border:none;color:var(--text-secondary, #4b5563);cursor:pointer;padding:.5rem;border-radius:.25rem;transition:background-color .2s,color .2s;display:flex;align-items:center;justify-content:center}.unhide-btn:hover{background-color:var(--bg-hover, #e5e7eb);color:var(--primary-color, #2563eb)}.no-hidden-listings{text-align:center;color:var(--text-secondary, #4b5563);padding:2rem 0}.map-sidebar{width:300px;min-width:300px;height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary);border-right:1px solid var(--border-light);flex-shrink:0;font-size:13px;box-shadow:2px 0 8px #00000008}.sidebar-sticky-header{flex-shrink:0;z-index:10;background:var(--bg-primary, #fff);padding:8px 18px 6px;border-bottom:1px solid var(--border-light)}.sidebar-scroll-content{flex:1;overflow-y:auto;padding:0 18px 18px}.sidebar-category-tabs{display:flex;gap:4px;margin-bottom:10px;background:var(--bg-secondary, #f1f5f9);border-radius:10px;padding:3px}.sidebar-cat-tab{flex:1;padding:7px 4px;border:none;border-radius:8px;background:transparent;cursor:pointer;font-size:.78rem;font-weight:500;color:var(--text-secondary, #555);transition:background .2s,color .2s,box-shadow .2s;white-space:nowrap;-webkit-user-select:none;user-select:none;text-align:center}.sidebar-cat-tab:hover{background:#2563eb14;color:#2563eb}.sidebar-cat-tab.active{background:#2563eb;color:#fff;box-shadow:0 1px 4px #2563eb4d}.map-sidebar h2{font-family:Playfair Display,Georgia,serif;font-size:17px;font-weight:700;margin-bottom:4px;color:var(--primary);letter-spacing:.01em}.map-sidebar h3{font-size:10px;text-transform:uppercase;color:var(--text-muted);margin:16px 0 8px;letter-spacing:.08em;font-weight:600;border-bottom:1px solid var(--border-light);padding-bottom:5px}.sidebar-stat{font-size:12px;color:var(--text-secondary);margin-top:8px;padding-top:8px;border-top:1px solid var(--border-light)}.sidebar-stat strong{font-weight:700;color:var(--primary)}.sidebar-stat a{color:var(--accent);font-size:12px;font-weight:500;transition:color .15s}.sidebar-stat a:hover{color:var(--primary)}.favorites-filter-btn{display:flex;align-items:center;gap:6px;width:100%;margin-top:6px;padding:6px 10px;font-size:12px;font-weight:500;color:var(--text-secondary);background:var(--bg-secondary, #f5f5f5);border:1px solid var(--border-light);border-radius:6px;cursor:pointer;transition:all .15s ease}.favorites-filter-btn:hover{color:#e11d48;border-color:#e11d48;background:#e11d480f}.favorites-filter-btn.active{color:#fff;background:#e11d48;border-color:#e11d48}.favorites-filter-btn.active:hover{background:#be123c;border-color:#be123c;color:#fff}.favorites-filter-btn svg{flex-shrink:0}.filter-group label{display:flex;align-items:center;gap:7px;font-size:13px;cursor:pointer;padding:3px 0;color:var(--text-secondary);transition:color .15s}.filter-group label:hover{color:var(--text-primary)}.filter-group label input[type=checkbox],.filter-group label input[type=radio]{cursor:pointer;accent-color:var(--primary);width:14px;height:14px}.city-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:2px;box-shadow:0 0 0 1px #00000014}.overlay-subgroup{margin-left:22px;padding-left:8px;border-left:2px solid var(--border, rgba(255, 255, 255, .08));margin-top:1px;margin-bottom:2px}.overlay-subgroup label{font-size:.85em!important;padding:2px 0!important}.price-row{display:flex;gap:6px;align-items:center;font-size:13px;color:var(--text-secondary)}.price-row input[type=number]{width:78px;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;text-align:right;color:var(--text-primary);background:var(--bg-primary);transition:border-color .15s,box-shadow .15s}.price-row input[type=number]:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 2px #1b3a5c0f}.price-row span{color:var(--text-muted);font-size:12px}.small-label{font-size:11px!important;margin-left:4px}.filter-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:inherit;font-weight:inherit}.filter-toggle input[type=checkbox]{margin:0;accent-color:var(--primary)}.type-legend{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}.type-tag{font-size:10px;font-weight:500;padding:3px 8px;border-radius:9999px;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s;border:1px solid transparent}.type-tag:hover{border-color:var(--border)}.type-tag.active{background:#1b3a5c14;color:var(--primary);font-weight:700;border:2px solid var(--primary)}.size-row{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:var(--text-secondary);padding:3px 0}.size-row input[type=number]{width:54px;padding:4px 5px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;text-align:center;color:var(--text-primary);background:var(--bg-primary);transition:border-color .15s}.size-row input[type=number]:focus{outline:none;border-color:var(--primary-light)}.sidebar-section{margin:6px 0}.sidebar-btn{display:block;width:100%;padding:7px 12px;font-size:12px;font-weight:600;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;text-align:center;transition:all .2s var(--ease);letter-spacing:.01em}.sidebar-btn:hover{background:var(--bg-tertiary);border-color:var(--primary-light);color:var(--primary)}.sidebar-btn-success{background:var(--success-light);color:var(--success);border-color:#2d865933}.sidebar-btn-success:hover{background:#c5e8d2}.sidebar-btn-danger{background:var(--danger-light);color:var(--danger);border-color:#c0392b26}.sidebar-btn-danger:hover{background:#f9d5d0}.sidebar-btn-active{background:#1b3a5c0f;color:var(--primary);border-color:#1b3a5c33}.sidebar-btn-row{display:flex;gap:6px;margin-top:6px}.sidebar-btn-row .sidebar-btn{flex:1}.sidebar-hint{font-size:11px;color:var(--text-muted);margin-bottom:6px}.sidebar-badge{font-size:11px;padding:3px 10px;border-radius:9999px;font-weight:600;letter-spacing:.01em}.sidebar-badge-active{background:#1b3a5c14;color:var(--primary)}.sidebar-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600;margin:8px 0 3px}.sidebar-select{width:100%;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;background:var(--bg-primary);color:var(--text-primary);transition:border-color .15s}.sidebar-select:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 2px #1b3a5c0f}.sidebar-input{width:100%;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;color:var(--text-primary);background:var(--bg-primary);transition:border-color .15s}.sidebar-input:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 2px #1b3a5c0f}.travel-mode-row{display:flex;gap:4px}.mode-btn{flex:1;padding:5px 6px;font-size:11px;font-weight:600;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;text-align:center;transition:all .15s}.mode-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.mode-btn.active{background:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 1px 3px #1b3a5c33}.price-histogram{display:block;margin-top:6px;border-radius:var(--radius-sm);background:var(--bg-secondary)}.cluster-toggle{margin-top:6px;padding-top:6px;border-top:1px dashed var(--border)}.saved-items-list{display:flex;flex-direction:column;gap:3px}.saved-item-row{display:flex;align-items:center;justify-content:space-between;padding:4px 6px;border-radius:var(--radius-sm);background:var(--bg-secondary)}.saved-item-row.clickable{cursor:pointer;transition:background .2s,box-shadow .2s}.saved-item-row.clickable:hover{background:#d1fae5;box-shadow:0 1px 4px #0000000d}.shared-item-actions{display:flex;align-items:center;gap:4px}.shared-item-flyto{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s;opacity:.6}.saved-item-row:hover .shared-item-flyto{opacity:1}.shared-item-flyto:hover{background:#0000000f;color:var(--primary)}.save-polygon-form{margin-top:8px;display:flex;flex-direction:column;gap:6px}.client-select-list{display:flex;flex-direction:column;gap:2px;max-height:120px;overflow-y:auto;padding:4px;background:var(--bg-secondary);border-radius:var(--radius-sm)}.client-check{font-size:11px;display:flex;align-items:center;gap:4px}.color-swatch-row{display:flex;gap:5px;margin:4px 0 6px}.color-swatch{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;box-shadow:0 0 0 1px #00000014;transition:border-color .15s,transform .15s}.color-swatch:hover{transform:scale(1.15)}.color-swatch.selected{border-color:#333;box-shadow:0 0 0 2px #00000026}.saved-area-item{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:6px 8px;margin-bottom:4px}.saved-area-header{display:flex;align-items:center;gap:6px}.area-filter-btn{width:22px;height:22px;min-width:22px;border:1px solid var(--border);border-radius:3px;background:var(--bg-primary);color:var(--text-muted);font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s}.area-filter-btn:hover{border-color:var(--primary-light);color:var(--primary)}.area-filter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.saved-area-name-wrap{flex:1;min-width:0;border-left:3px solid #2563eb;padding-left:6px}.area-name-display{font-size:12px;font-weight:500;cursor:pointer;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.area-name-display:hover{color:var(--primary)}.area-name-input{width:100%;font-size:12px;font-weight:500;padding:1px 4px;border:1px solid var(--primary-light);border-radius:2px;background:var(--bg-primary);color:var(--text-primary);outline:none;box-shadow:0 0 0 2px #1b3a5c14}.area-color-dot{width:16px;height:16px;border-radius:50%;border:1.5px solid rgba(0,0,0,.15);cursor:pointer;flex-shrink:0;transition:transform .15s}.area-color-dot:hover{transform:scale(1.2)}.area-color-row{padding-left:28px;margin-top:2px}.area-color-row .color-swatch-row{margin:2px 0 0;gap:3px}.area-color-row .color-swatch{width:18px;height:18px}.place-card{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:8px 10px;border-radius:8px;border-left:4px solid;cursor:pointer;position:relative;transition:background .2s,box-shadow .2s}.place-card:hover{background:var(--place-color-10)!important;box-shadow:0 2px 12px var(--place-color-20)}.place-card:hover .place-card-icon{transform:scale(1.08)}.place-card:hover .place-card-actions{opacity:1}.place-card-icon{flex-shrink:0;width:36px;height:36px;border-radius:10px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:transform .2s,background .2s}.place-card-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.place-card-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;line-height:1.3}.place-card-name:hover{text-decoration:underline;text-decoration-color:var(--text-muted);text-underline-offset:2px}.place-card-name-input{font-size:13px;font-weight:600;color:var(--text-primary);background:transparent;border:none;border-bottom:2px solid;outline:none;padding:0 0 1px;width:100%;line-height:1.3}.place-card-city{font-size:11px;color:var(--text-muted);line-height:1.2}.place-card-shared-by{font-size:10px;color:var(--text-muted);font-style:italic;line-height:1.2}.place-card-actions{display:flex;align-items:center;gap:4px;opacity:0;transition:opacity .2s;flex-shrink:0}.place-card-flyto{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s;opacity:.5}.place-card:hover .place-card-flyto{opacity:1}.place-card-flyto:hover{background:#0000000f;color:var(--primary)}.place-card-color-dot{width:14px;height:14px;border-radius:50%;border:1.5px solid rgba(0,0,0,.15);cursor:pointer;flex-shrink:0;transition:transform .15s}.place-card-color-dot:hover{transform:scale(1.2)}.place-card-delete{background:none;border:none;color:#dc2626;font-size:16px;cursor:pointer;padding:0 3px;line-height:1;border-radius:3px;transition:background .15s}.place-card-delete:hover{background:#dc262614}.place-card-picker{position:absolute;left:50px;right:10px;bottom:-34px;z-index:10;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:8px;padding:6px 8px;box-shadow:0 4px 12px #0000001a}.place-card-picker .color-swatch-row{margin:0;gap:4px}.place-card-picker .color-swatch{width:20px;height:20px}.place-commute-row{flex-basis:100%;display:flex;align-items:center;gap:5px;margin-left:46px;padding-top:2px}.commute-mode-icon{flex-shrink:0;opacity:.35;cursor:default}.commute-mode-icon.active{opacity:.85;color:var(--place-color, #2563eb)}.commute-mode-icon.disabled{opacity:.22;cursor:not-allowed}.commute-input{width:48px;padding:2px 4px;border:1px solid var(--border-light);border-radius:4px;font-size:12px;text-align:center;background:var(--bg-primary);color:var(--text-primary);outline:none;transition:border-color .2s;-moz-appearance:textfield}.commute-input::-webkit-outer-spin-button,.commute-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.commute-input:focus{border-color:var(--place-color, #2563eb)}.commute-label{font-size:11px;color:var(--text-muted);-webkit-user-select:none;user-select:none}.commute-spinner{width:14px;height:14px;border:2px solid var(--border-light);border-top-color:var(--place-color, #2563eb);border-radius:50%;animation:commute-spin .6s linear infinite;flex-shrink:0}@keyframes commute-spin{to{transform:rotate(360deg)}}.commute-progress{font-size:10px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.polygon-label{background:#ffffffd9!important;border:1px solid rgba(0,0,0,.12)!important;border-radius:3px!important;padding:1px 5px!important;font-size:11px!important;font-weight:600!important;box-shadow:none!important}.city-dropdown{position:relative;margin-bottom:4px}.city-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:7px 10px;background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .15s,box-shadow .15s;min-height:36px}.city-dropdown-trigger:hover{border-color:var(--primary)}.city-dropdown-trigger.open{border-color:var(--primary);box-shadow:0 0 0 2px #2563eb26}.city-dropdown-chips{display:flex;flex-wrap:wrap;gap:4px;flex:1;min-width:0;overflow:hidden}.city-dropdown-placeholder{color:var(--text-muted);font-size:12px}.city-chip{display:inline-flex;align-items:center;padding:1px 7px;background:var(--bg-tertiary);border-radius:10px;font-size:11px;color:var(--text-primary);white-space:nowrap;max-width:80px;overflow:hidden;text-overflow:ellipsis}.city-chip-more{display:inline-flex;align-items:center;padding:1px 6px;font-size:11px;color:var(--primary);font-weight:600;white-space:nowrap}.city-dropdown-arrow{flex-shrink:0;color:var(--text-muted);transition:transform .2s}.city-dropdown-trigger.open .city-dropdown-arrow{transform:rotate(180deg)}.city-dropdown-panel{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 8px 24px #00000040;z-index:100;overflow:hidden}.city-dropdown-search{width:100%;padding:8px 10px;border:none;border-bottom:1px solid var(--border);background:var(--bg-secondary);color:var(--text-primary);font-size:12px;outline:none;box-sizing:border-box}.city-dropdown-search::placeholder{color:var(--text-muted)}.city-dropdown-list{max-height:200px;overflow-y:auto;padding:4px 0}.city-dropdown-item{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;cursor:pointer;transition:background .1s}.city-dropdown-item:hover{background:var(--bg-secondary)}.city-dropdown-item-left{display:flex;align-items:center;gap:8px;min-width:0}.city-checkbox{width:16px;height:16px;border-radius:3px;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,border-color .15s}.city-checkbox.checked{background:var(--primary);border-color:var(--primary)}.city-name{font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.city-count{font-size:11px;color:var(--text-muted);flex-shrink:0;margin-left:8px}.city-dropdown-empty{padding:12px 10px;text-align:center;color:var(--text-muted);font-size:12px}.city-dropdown-footer{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-top:1px solid var(--border);background:var(--bg-secondary)}.city-dropdown-count{font-size:11px;color:var(--text-muted)}.city-dropdown-actions{display:flex;gap:2px}.city-dropdown-action-btn{background:none;border:none;color:var(--primary);font-size:11px;cursor:pointer;padding:2px 6px;border-radius:var(--radius-sm);transition:background .15s}.city-dropdown-action-btn:hover{background:var(--bg-tertiary)}.admin-grid-divider{margin:8px 0 6px;border-top:1px dashed var(--border-light, #cbd5e1);position:relative}.admin-grid-divider:after{content:"ADMIN";position:absolute;top:-7px;left:8px;font-size:8px;font-weight:700;letter-spacing:.08em;color:#dc2626;background:var(--bg-primary, #fff);padding:0 5px}.grid-dot{background:repeating-linear-gradient(45deg,#94a3b8,#94a3b8 2px,transparent 2px,transparent 4px)!important;border:1px solid #64748b!important;border-radius:2px!important}.admin-badge{display:inline-block;margin-left:6px;font-size:8px;font-weight:700;letter-spacing:.06em;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:3px;padding:1px 4px;vertical-align:middle;line-height:1.2}.grid-region-picker{margin:4px 0 4px 20px}.grid-region-picker .sidebar-select{margin-bottom:6px}.grid-legend{display:flex;gap:8px;flex-wrap:wrap;font-size:10px;color:var(--text-secondary, #64748b)}.grid-legend-item{display:flex;align-items:center;gap:3px}.grid-swatch{width:10px;height:10px;border-radius:2px;display:inline-block;border:1px solid rgba(0,0,0,.1)}.grid-save-btn{margin-top:6px;width:100%;padding:5px 10px;font-size:11px;font-weight:600;color:#fff;background:#2563eb;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.grid-save-btn:hover{background:#1d4ed8}.grid-save-btn:disabled{background:#93c5fd;cursor:not-allowed}.grid-cell-label{background:none!important;border:none!important}@media (max-width: 640px){.map-sidebar{width:100%;min-width:unset;height:100%;border-right:none}.sidebar-sticky-header{padding-top:40px}}.map-fab-container{position:absolute;top:138px;right:16px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.map-fab-btn{width:52px;height:52px;border-radius:50%;border:none;background:var(--primary, #1b3a5c);color:#fff;cursor:pointer;box-shadow:0 4px 14px #00000040;display:flex;align-items:center;justify-content:center;transition:transform .25s cubic-bezier(.4,0,.2,1),background .2s ease,box-shadow .2s ease}.map-fab-btn:hover{background:var(--primary-light, #2a5580);box-shadow:0 6px 20px #0000004d;transform:scale(1.05)}.map-fab-btn.open{transform:rotate(45deg);background:var(--danger, #c0392b)}.map-fab-btn.open:hover{background:#a93226}.map-fab-plus{font-size:28px;font-weight:300;line-height:1;margin-top:-1px}.map-fab-menu{display:flex;flex-direction:column;gap:4px;background:#fff;border-radius:12px;box-shadow:0 6px 24px #00000026;padding:6px;min-width:220px;animation:fabMenuIn .2s cubic-bezier(.4,0,.2,1)}@keyframes fabMenuIn{0%{opacity:0;transform:translateY(-8px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.map-fab-option{display:flex;align-items:center;gap:10px;padding:10px 14px;border:none;border-radius:8px;background:transparent;color:var(--text-primary, #1a1a1a);font-size:13px;font-weight:500;cursor:pointer;text-align:start;transition:background .15s ease;white-space:nowrap}.map-fab-option:hover{background:var(--bg-secondary, #f3f4f6)}.map-fab-option-disabled{opacity:.5;cursor:not-allowed;color:var(--text-muted, #999)}.map-fab-option-disabled:hover{background:transparent}.map-fab-icon{font-size:16px;width:22px;text-align:center;flex-shrink:0}.map-fab-soon{margin-inline-start:auto;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #aaa);background:var(--bg-tertiary, #eee);padding:2px 6px;border-radius:4px}.map-style-switcher{display:flex;gap:2px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000026;padding:3px;margin-top:10px}.map-style-btn{width:32px;height:32px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary, #666);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.map-style-btn:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1a1a1a)}.map-style-btn.active{background:var(--primary, #1b3a5c);color:#fff}.map-style-btn.active:hover{background:var(--primary-light, #2a5580)}.map-area-wrapper{position:relative;flex:1;min-width:0;display:flex;height:100%}@media (max-width: 640px){.map-fab-container{top:130px;right:12px}.map-fab-btn{width:46px;height:46px}.map-fab-plus{font-size:24px}.map-fab-menu{min-width:190px}.map-fab-option{padding:8px 12px;font-size:12px}}.manual-listing-form{max-width:600px;margin:0 auto}.form-category-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:.82rem;font-weight:600;background:#eef2ff;color:#4338ca;margin-bottom:16px}.form-section{margin-bottom:20px}.form-section-title{font-size:1rem;font-weight:600;margin-bottom:10px;color:#333;border-bottom:1px solid #eee;padding-bottom:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}.form-group{display:flex;flex-direction:column;gap:4px}.form-group-full{grid-column:1 / -1}.form-group label{font-size:.85rem;font-weight:500;color:#666}.form-group input,.form-group select,.form-group textarea{padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;background:#fff;color:#333;transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.form-group textarea{resize:vertical;min-height:60px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #eee}.btn-cancel,.btn-submit{padding:9px 22px;border-radius:6px;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .15s}.btn-cancel{background:#fff;border:1px solid #ddd;color:#666}.btn-cancel:hover{background:#f5f5f5}.btn-submit{background:#2563eb;border:none;color:#fff}.btn-submit:hover{background:#1d4ed8}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.mlf-error{color:#dc2626;font-size:.88rem;margin-top:8px;padding:8px 12px;background:#fef2f2;border-radius:6px}@media (max-width: 640px){.form-row{grid-template-columns:1fr}}.map-view{display:flex;height:calc(100vh - 60px);overflow:hidden}.map-area-wrapper{position:relative}.zoom-pill{position:absolute;bottom:28px;left:10px;z-index:1000;display:flex;align-items:center;gap:6px;background:#000000b3;color:#fff;border-radius:14px;padding:4px 10px;font-size:.72rem;font-weight:600;font-family:SF Mono,Menlo,Consolas,monospace;pointer-events:auto;-webkit-user-select:none;user-select:none;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);line-height:1}.zoom-pill-level{opacity:.85}.zoom-pill-hidden{background:#ef4444cc;border-radius:10px;padding:2px 7px;font-size:.68rem;white-space:nowrap;cursor:help}.map-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:calc(100vh - 60px);gap:16px;color:var(--text-secondary);background:var(--bg-secondary)}.map-loading p{font-size:.9rem;font-weight:500}.map-error{display:flex;align-items:center;justify-content:center;height:calc(100vh - 60px);color:var(--danger);font-size:1rem;font-weight:500;background:var(--bg-secondary)}.poi-instruction-banner{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:1000;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:12px;box-shadow:0 4px 20px #00000026;padding:10px 16px;max-width:600px;width:calc(100% - 80px)}.poi-banner-content{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.poi-banner-icon{font-size:18px}.poi-banner-text{font-size:13px;font-weight:500;color:#333;white-space:nowrap}.poi-banner-search{display:flex;flex:1;min-width:180px;gap:6px}.poi-address-input{flex:1;padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;outline:none}.poi-address-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.poi-search-btn{padding:6px 14px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.poi-search-btn:hover{background:#1d4ed8}.poi-banner-close{background:none;border:none;font-size:16px;cursor:pointer;color:#999;padding:2px 6px}.poi-banner-close:hover{color:#333}.mls-search-bar{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:1000;display:flex;align-items:center;gap:8px;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:10px;box-shadow:0 2px 12px #0000001f;padding:6px 12px;max-width:340px;width:calc(100% - 80px)}.mls-search-icon{flex-shrink:0;color:#999}.mls-search-input{flex:1;border:none;background:transparent;font-size:14px;outline:none;padding:4px 0;color:#333;min-width:0}.mls-search-input::placeholder{color:#aaa}.mls-search-count{font-size:11px;color:#666;white-space:nowrap;font-weight:500}.mls-search-clear{background:none;border:none;font-size:18px;cursor:pointer;color:#999;padding:0 2px;line-height:1}.mls-search-clear:hover{color:#333}.search-results-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:8px;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:300px;overflow-y:auto;z-index:1001;display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.05)}.search-result-item{display:flex;align-items:center;gap:12px;padding:10px 12px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background .15s}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:#f8fafc}.search-result-icon{font-size:1.2rem;background:#f1f5f9;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#64748b}.search-result-info{flex:1;min-width:0}.search-result-addr{font-size:14px;font-weight:500;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-meta{font-size:12px;color:#64748b;margin-top:2px}.map-sidebar-wrapper{display:contents}.sidebar-close-btn,.sidebar-toggle-btn,.sidebar-backdrop{display:none}@media (max-width: 640px){.map-view{height:calc(100vh - 50px);position:relative}.sidebar-backdrop{display:block;position:absolute;top:0;right:0;bottom:0;left:0;background:#0006;z-index:499}.map-sidebar-wrapper{display:block;position:absolute;top:0;left:0;height:100%;width:85vw;max-width:340px;z-index:500;transform:translate(-100%);transition:transform .25s ease;background:var(--bg-primary);box-shadow:2px 0 12px #00000026}.map-sidebar-wrapper.sidebar-open{transform:translate(0)}.sidebar-close-btn{display:block;position:absolute;top:8px;right:8px;z-index:501;background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:4px 8px;line-height:1}.sidebar-close-btn:hover{color:var(--text-primary)}.sidebar-toggle-btn{display:flex;align-items:center;justify-content:center;position:absolute;top:12px;left:12px;z-index:450;width:40px;height:40px;border-radius:8px;background:#fff;border:1px solid rgba(0,0,0,.12);box-shadow:0 2px 8px #00000026;cursor:pointer;color:var(--primary, #1b3a5c);transition:background .15s,box-shadow .15s}.sidebar-toggle-btn:hover{background:#f5f5f5;box-shadow:0 2px 12px #0003}.mls-search-bar{top:60px;left:60px;transform:none;max-width:260px;width:auto}}.add-listing-fab{position:fixed;bottom:80px;right:20px;z-index:999;width:52px;height:52px;border-radius:50%;background:#2563eb;color:#fff;border:none;cursor:pointer;box-shadow:0 4px 12px #0000002e;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}.add-listing-fab:hover{background:#1d4ed8;transform:scale(1.06)}@media (max-width: 640px){.add-listing-fab{bottom:70px;right:14px;width:46px;height:46px}}.listing-hover-tooltip{padding:0!important;border-radius:6px!important;box-shadow:0 4px 16px #0000002e!important;border:none!important;overflow:hidden}.listing-hover-tooltip .leaflet-tooltip-content{margin:0}.ruler-label{background:none!important;border:none!important;box-shadow:none!important}.ruler-label span{display:inline-block;background:#f59e0beb;color:#fff;font-size:11px;font-weight:600;padding:2px 6px;border-radius:4px;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.2)}.ruler-total-label{background:none!important;border:none!important;box-shadow:none!important}.ruler-total-label span{display:inline-block;background:#1e293be0;color:#fbbf24;font-size:12px;font-weight:700;padding:3px 8px;border-radius:6px;white-space:nowrap;text-shadow:0 1px 1px rgba(0,0,0,.3)}.sidebar-ruler-total{font-size:13px;color:var(--text-primary, #1a1a1a);padding:6px 0}.school-detail-panel{position:fixed;top:0;right:0;width:380px;max-width:90vw;height:100vh;background:#fff;box-shadow:-4px 0 20px #0000001f;z-index:1100;display:flex;flex-direction:column;animation:slideInRight .25s ease-out;overflow:hidden}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.school-detail-header{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.school-detail-header h2{margin:0;font-size:1.1rem;font-weight:700;color:#1e293b;line-height:1.3}.school-detail-header .school-meta{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}.school-tag{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.school-tag.type-elementary{background:#dbeafe;color:#1e40af}.school-tag.type-intermediate{background:#fef3c7;color:#92400e}.school-tag.type-secondary{background:#ede9fe;color:#5b21b6}.school-tag.board{background:#f1f5f9;color:#475569}.school-close-btn{background:none;border:none;font-size:1.4rem;color:#94a3b8;cursor:pointer;padding:0 4px;line-height:1;flex-shrink:0}.school-close-btn:hover{color:#334155}.school-detail-body{flex:1;overflow-y:auto;padding:16px 20px}.school-rating-card{display:flex;align-items:center;gap:16px;padding:14px 16px;border-radius:10px;margin-bottom:16px}.school-rating-card.rating-high{background:linear-gradient(135deg,#dcfce7,#bbf7d0)}.school-rating-card.rating-mid{background:linear-gradient(135deg,#fef9c3,#fde68a)}.school-rating-card.rating-low{background:linear-gradient(135deg,#fee2e2,#fecaca)}.school-rating-card.rating-none{background:#f1f5f9}.school-rating-circle{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;color:#fff;flex-shrink:0}.rating-high .school-rating-circle{background:#22c55e}.rating-mid .school-rating-circle{background:#eab308}.rating-low .school-rating-circle{background:#ef4444}.rating-none .school-rating-circle{background:#94a3b8;font-size:1rem}.school-rating-info{flex:1}.school-rating-info .rating-label{font-size:.8rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.school-rating-info .rating-rank{font-size:.85rem;color:#475569;margin-top:2px}.school-scores{margin-bottom:16px}.school-scores h4{margin:0 0 8px;font-size:.85rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.score-bars{display:flex;flex-direction:column;gap:6px}.score-bar-row{display:flex;align-items:center;gap:8px}.score-bar-label{width:60px;font-size:.8rem;color:#475569;flex-shrink:0}.score-bar-track{flex:1;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.score-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.score-bar-value{width:36px;text-align:right;font-size:.8rem;font-weight:600;color:#334155}.school-info-list{margin-bottom:16px}.school-info-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f1f5f9;font-size:.85rem}.school-info-row .info-label{color:#64748b}.school-info-row .info-value{color:#1e293b;font-weight:500}.school-comments-section{margin-top:16px;border-top:1px solid #e2e8f0;padding-top:16px}.school-comments-section h4{margin:0 0 10px;font-size:.9rem;font-weight:700;color:#1e293b}.school-comment{padding:10px 12px;background:#f8fafc;border-radius:8px;margin-bottom:8px;border-left:3px solid #2563eb}.school-comment .comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.school-comment .comment-author{font-size:.8rem;font-weight:600;color:#334155}.school-comment .comment-date{font-size:.75rem;color:#94a3b8}.school-comment .comment-body{font-size:.85rem;color:#475569;line-height:1.5;white-space:pre-wrap}.school-comment .comment-actions{display:flex;gap:8px;margin-top:6px}.school-comment .comment-actions button{background:none;border:none;font-size:.78rem;cursor:pointer;padding:0;color:#64748b}.school-comment .comment-actions button:hover{color:#2563eb}.school-comment .comment-actions button.delete-btn:hover{color:#ef4444}.school-comment-form{margin-top:12px}.school-comment-form textarea{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;font-size:.85rem;resize:vertical;min-height:60px;font-family:inherit;line-height:1.4;box-sizing:border-box}.school-comment-form textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.school-comment-form-actions{display:flex;gap:8px;margin-top:8px}.school-comment-form-actions button{padding:6px 14px;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;border:1px solid #e2e8f0;background:#f8fafc;color:#475569}.school-comment-form-actions button.primary{background:#2563eb;color:#fff;border-color:#2563eb}.school-comment-form-actions button.primary:hover{background:#1d4ed8}.school-comment-form-actions button.primary:disabled{opacity:.5;cursor:not-allowed}.school-detail-loading{display:flex;align-items:center;justify-content:center;height:200px;color:#94a3b8;font-size:.9rem}.school-detail-error{padding:20px;text-align:center;color:#ef4444;font-size:.9rem}.eb-page{display:flex;align-items:center;justify-content:center;min-height:50vh;padding:2rem}.eb-page-card{background:var(--bg-card, #fff);border-radius:var(--radius, 12px);box-shadow:var(--shadow, 0 2px 8px rgba(0, 0, 0, .1));padding:2.5rem;text-align:center;max-width:480px;width:100%}.eb-page-icon{font-size:3rem;color:var(--danger, #e74c3c);display:block;margin-bottom:.75rem}.eb-page-title{margin:0 0 .5rem;font-size:1.25rem;color:var(--text, #1a1a2e)}.eb-page-message{margin:0 0 1rem;color:var(--text-muted, #6b7280);font-size:.9rem;line-height:1.5}.eb-page-detail{background:var(--bg-muted, #f3f4f6);border-radius:6px;padding:.5rem .75rem;font-size:.78rem;color:var(--danger, #e74c3c);margin:0 0 1.25rem;overflow-x:auto;text-align:left;white-space:pre-wrap;word-break:break-word}.eb-page-retry{background:var(--primary, #2563eb);color:#fff;border:none;border-radius:var(--radius, 12px);padding:.6rem 1.5rem;font-size:.9rem;cursor:pointer;transition:opacity .15s}.eb-page-retry:hover{opacity:.85}.eb-section{display:flex;align-items:center;gap:.75rem;background:var(--danger-light, #fef2f2);border:1px solid var(--danger, #e74c3c);border-radius:var(--radius, 12px);padding:.75rem 1rem;margin:.5rem 0}.eb-section-icon{font-size:1.25rem;color:var(--danger, #e74c3c);flex-shrink:0}.eb-section-text{flex:1;font-size:.85rem;color:var(--text, #1a1a2e)}.eb-section-retry{background:var(--danger, #e74c3c);color:#fff;border:none;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;cursor:pointer;flex-shrink:0;transition:opacity .15s}.eb-section-retry:hover{opacity:.85}.eb-widget{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .6rem;font-size:.78rem;color:var(--text-muted, #6b7280)}.eb-widget-text{opacity:.8}.eb-widget-retry{background:none;border:none;color:var(--primary, #2563eb);cursor:pointer;padding:0;font-size:.78rem;text-decoration:underline}.eb-widget-retry:hover{opacity:.7}.auth-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 140px);padding:2rem}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2.5rem;width:100%;max-width:400px;box-shadow:0 4px 24px #0000001f}.auth-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;text-align:center;color:var(--text-primary)}.auth-error{background:#dc35451f;color:#dc3545;padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:.85rem;margin-bottom:1rem}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-label{display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;font-weight:500;color:var(--text-secondary)}.auth-input{padding:.65rem .85rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;background:var(--bg-main);color:var(--text-primary);transition:border-color .2s}.auth-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c8a25526}.auth-btn{margin-top:.5rem;padding:.7rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s}.auth-btn:hover:not(:disabled){background:var(--accent-hover, #b8923f)}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-switch{margin-top:1.25rem;text-align:center;font-size:.85rem;color:var(--text-secondary)}.auth-switch a{color:var(--accent);font-weight:600}.auth-forgot-link{text-align:right;margin-top:-.25rem}.auth-forgot-link a{font-size:.8rem;color:var(--accent)}.auth-subtitle{font-size:.85rem;color:var(--text-secondary);margin-bottom:1rem;text-align:center;line-height:1.5}.auth-success-msg{background:#28a7451a;color:#28a745;padding:1rem;border-radius:var(--radius-sm);font-size:.9rem;margin-bottom:1rem;text-align:center;line-height:1.5}.auth-input--error{border-color:#dc3545}.auth-field-error{font-size:.75rem;color:#dc3545;margin-top:2px}@media (max-width: 640px){.auth-page{padding:1rem}.auth-card{padding:1.5rem}}.register-choice-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0e1a2b,#1a2744,#0e1a2b);padding:2rem}.choice-container{max-width:900px;width:100%}.choice-title{text-align:center;font-size:2.75rem;font-weight:700;color:#fff;margin-bottom:.5rem;letter-spacing:-.02em}.choice-subtitle{text-align:center;font-size:1.15rem;color:#ffffffb3;margin-bottom:3rem}.choice-cards{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}.choice-card{background:#fff;border-radius:12px;padding:2.5rem 2rem;cursor:pointer;transition:transform .2s,box-shadow .2s;text-align:center;border:2px solid transparent}.choice-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000040;border-color:#c8a255}.choice-icon{width:72px;height:72px;margin:0 auto 1.25rem;border-radius:50%}.choice-icon.agent-icon{background:linear-gradient(135deg,#c8a255,#e8c97a)}.choice-icon.client-icon{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.choice-card h2{font-size:1.35rem;margin-bottom:.75rem;color:#1a202c}.choice-card p{color:#64748b;margin-bottom:1.5rem;line-height:1.6;font-size:.95rem}.choice-btn{width:100%;padding:.875rem;font-size:1rem;font-weight:600;border:none;border-radius:8px;color:#fff;cursor:pointer;transition:opacity .2s}.choice-btn:hover{opacity:.9}.choice-btn.agent{background:linear-gradient(135deg,#0e1a2b,#1a2744)}.choice-btn.client{background:#3b82f6}.choice-footer{text-align:center;color:#ffffffb3;font-size:.95rem}.choice-footer a{color:#c8a255;text-decoration:none;font-weight:600}.choice-footer a:hover{text-decoration:underline}@media (max-width: 640px){.choice-cards{grid-template-columns:1fr}.choice-title{font-size:2rem}}.join-agent-page{min-height:100vh;background:#f8fafc}.join-hero{text-align:center;padding:4rem 2rem 3rem;background:linear-gradient(135deg,#0e1a2b,#1a2744);color:#fff}.join-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;letter-spacing:-.02em}.join-hero p{font-size:1.15rem;color:#ffffffbf;max-width:600px;margin:0 auto;line-height:1.6}.join-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;max-width:1100px;margin:3rem auto;padding:0 2rem}.feature-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 4px #0000000f;text-align:center}.feature-icon{width:56px;height:56px;margin:0 auto 1rem;border-radius:12px}.feature-icon.client-mgmt{background:linear-gradient(135deg,#c8a255,#e8c97a)}.feature-icon.map{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.feature-icon.ai{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.feature-card h3{font-size:1.15rem;margin-bottom:.5rem;color:#1a202c}.feature-card p{color:#64748b;line-height:1.6;font-size:.9rem}.join-pricing{max-width:460px;margin:3rem auto;padding:0 2rem 2rem}.pricing-card{background:#fff;border-radius:12px;padding:2.5rem 2rem;box-shadow:0 4px 16px #0000001a;text-align:center;border:2px solid #c8a255}.pricing-card h2{font-size:1.5rem;margin-bottom:.75rem;color:#1a202c}.price{margin-bottom:1.5rem}.price .amount{font-size:3rem;font-weight:700;color:#0e1a2b}.price .period{font-size:1.15rem;color:#64748b}.plan-features{list-style:none;padding:0;margin-bottom:2rem;text-align:left}.plan-features li{padding:.6rem 0;border-bottom:1px solid #f1f5f9;color:#334155;font-size:.95rem}.plan-features li:before{content:"✓";color:#22c55e;font-weight:700;margin-right:.75rem}.join-error{background:#fef2f2;color:#dc2626;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.checkout-form{display:flex;flex-direction:column;gap:.75rem}.join-input{padding:.8rem;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;font-family:inherit}.join-input:focus{outline:none;border-color:#c8a255;box-shadow:0 0 0 3px #c8a25526}.join-btn{padding:.9rem;background:linear-gradient(135deg,#0e1a2b,#1a2744);color:#c8a255;border:none;border-radius:8px;font-size:1.05rem;font-weight:600;cursor:pointer;transition:opacity .2s}.join-btn:hover:not(:disabled){opacity:.9}.join-btn:disabled{opacity:.5;cursor:not-allowed}.join-disclaimer{margin-top:1rem;font-size:.8rem;color:#94a3b8}.join-footer{text-align:center;padding-bottom:3rem;color:#64748b}.join-footer a{color:#0e1a2b;font-weight:600;text-decoration:none}.join-footer a:hover{text-decoration:underline}@media (max-width: 640px){.join-hero h1{font-size:1.75rem}.join-hero{padding:3rem 1.5rem 2rem}}.register-client-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0e1a2b,#1a2744);padding:2rem}.client-form-card{background:#fff;border-radius:12px;padding:2.5rem;max-width:560px;width:100%;box-shadow:0 8px 24px #0003}.client-form-card h2{font-size:1.75rem;margin-bottom:.5rem;color:#1a202c}.form-subtitle{color:#64748b;margin-bottom:1.75rem;line-height:1.5}.form-error{background:#fef2f2;color:#dc2626;padding:.75rem;border-radius:6px;margin-bottom:1.25rem;font-size:.9rem}.client-form{display:flex;flex-direction:column;gap:1rem}.client-form label{display:flex;flex-direction:column;font-weight:500;color:#334155;font-size:.9rem;gap:.35rem}.client-form input,.client-form select,.client-form textarea{padding:.7rem;border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;font-family:inherit}.client-form input:focus,.client-form select:focus,.client-form textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.submit-btn{padding:.9rem;background:#0e1a2b;color:#c8a255;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .2s;margin-top:.5rem}.submit-btn:hover:not(:disabled){opacity:.9}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.form-footer{margin-top:1.5rem;text-align:center;color:#64748b;font-size:.9rem}.form-footer a{color:#0e1a2b;text-decoration:none;font-weight:600}.form-footer a:hover{text-decoration:underline}.success-card{background:#fff;border-radius:12px;padding:3rem;max-width:460px;text-align:center;box-shadow:0 8px 24px #0003}.success-check{width:64px;height:64px;margin:0 auto 1.5rem;border-radius:50%;background:#22c55e}.success-card h2{font-size:1.75rem;color:#1a202c;margin-bottom:.75rem}.success-card p{color:#64748b;font-size:1.05rem;margin-bottom:2rem;line-height:1.6}.success-link{display:inline-block;padding:.8rem 2rem;background:#0e1a2b;color:#c8a255;border-radius:8px;text-decoration:none;font-weight:600;transition:opacity .2s}.success-link:hover{opacity:.9}@media (max-width: 640px){.client-form-card{padding:1.5rem}.client-form-card h2{font-size:1.35rem}}.avatar-upload{max-width:500px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.avatar-upload h3{margin-top:0;margin-bottom:20px;color:#333}.avatar-preview-section{display:flex;justify-content:center;margin-bottom:20px}.avatar-preview-img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:3px solid #ddd}.avatar-placeholder{width:150px;height:150px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700;color:#fff;border:3px solid #ddd}.avatar-upload-controls{display:flex;gap:10px;justify-content:center;margin-bottom:15px;flex-wrap:wrap}.avatar-file-input{display:none}.avatar-upload-controls .btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.avatar-upload-controls .btn:disabled{opacity:.6;cursor:not-allowed}.avatar-upload-controls .btn-primary{background:#4caf50;color:#fff}.avatar-upload-controls .btn-primary:hover:not(:disabled){background:#45a049}.avatar-upload-controls .btn-secondary{background:#2196f3;color:#fff}.avatar-upload-controls .btn-secondary:hover:not(:disabled){background:#0b7dda}.avatar-upload-controls .btn-danger{background:#f44336;color:#fff}.avatar-upload-controls .btn-danger:hover:not(:disabled){background:#da190b}.avatar-message{padding:10px;border-radius:4px;margin-bottom:10px;text-align:center;font-size:14px}.avatar-message.error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.avatar-message.success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.avatar-help-text{text-align:center;font-size:12px;color:#666;margin:0}.profile-page{padding:40px 20px;min-height:calc(100vh - 200px)}.profile-page .container{max-width:800px;margin:0 auto}.profile-page h1{margin-bottom:30px;color:#333}.profile-section{margin-bottom:40px}.profile-section h2{margin-bottom:20px;color:#555;font-size:20px}.profile-info{background:#fff;padding:20px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.profile-field{display:flex;padding:12px 0;border-bottom:1px solid #eee}.profile-field:last-child{border-bottom:none}.profile-field label{font-weight:600;min-width:120px;color:#666}.profile-field span{color:#333}.role-badge{display:inline-block;padding:4px 12px;border-radius:12px;background:#e3f2fd;color:#1976d2;font-size:13px;font-weight:500;text-transform:capitalize}.feature-toggles{margin:.75rem 0}.feature-toggles-title{display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;padding:.6rem .85rem;font-size:.95rem;font-weight:600;color:#1e293b;letter-spacing:.02em;background:linear-gradient(135deg,#eff6ff,#f8fafc);border-left:3px solid #2563eb;border-radius:0 8px 8px 0}.feature-toggles-title svg{flex-shrink:0}.feature-toggles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem}.feature-toggle-item{display:flex;align-items:center;justify-content:space-between;padding:.55rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s;-webkit-user-select:none;user-select:none}.feature-toggle-item:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 8px #2563eb14;transform:translateY(-1px)}.feature-toggle-item.enabled{border-color:#2563eb4d}.feature-toggle-item.disabled{opacity:.55}.feature-toggle-item.disabled:hover{opacity:.7;transform:translateY(-1px)}.feature-toggle-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#334155}.feature-toggle-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1.05rem;width:28px;height:28px;background:#f6f7f9;border-radius:14px;transition:background .2s}.feature-toggle-item.enabled .feature-toggle-icon{background:#eff6ff}.feature-toggle-item.disabled .feature-toggle-icon{background:#f1f1f3}.feature-toggle-switch-wrap{position:relative;display:inline-block;width:38px;height:20px;flex-shrink:0}.feature-toggle-switch-wrap input{opacity:0;width:0;height:0;position:absolute}.feature-toggle-switch{position:absolute;top:0;right:0;bottom:0;left:0;background:#cbd5e1;border-radius:20px;transition:background .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.feature-toggle-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .25s}.feature-toggle-switch-wrap input:checked+.feature-toggle-switch{background:#2563eb66}.feature-toggle-switch-wrap input:checked+.feature-toggle-switch:after{transform:translate(18px);background:#2563eb}.pref-panel{padding:12px 16px;background:var(--card-bg, #1e1e2e);border-radius:8px}.pref-panel h4{margin:0 0 12px;font-size:14px;color:var(--text-primary, #e0e0e0)}.pref-section{margin-bottom:12px}.pref-section label{display:block;font-size:12px;color:var(--text-secondary, #aaa);margin-bottom:6px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.pref-pills{display:flex;flex-wrap:wrap;gap:6px}.pref-pill{padding:4px 12px;border-radius:16px;border:1px solid var(--border-color, #444);background:transparent;color:var(--text-primary, #e0e0e0);font-size:12px;cursor:pointer;transition:all .15s}.pref-pill:hover{border-color:var(--accent, #2563eb)}.pref-pill.active{background:var(--accent, #2563eb);border-color:var(--accent, #2563eb);color:#fff}.pref-price-inputs{display:flex;align-items:center;gap:8px}.pref-price-inputs input{width:120px;padding:6px 10px;border-radius:6px;border:1px solid var(--border-color, #444);background:var(--input-bg, #2a2a3a);color:var(--text-primary, #e0e0e0);font-size:13px}.pref-price-inputs input:focus{outline:none;border-color:var(--accent, #2563eb)}.pref-dash{color:var(--text-secondary, #aaa)}.pref-muted{font-size:12px;color:var(--text-secondary, #888);font-style:italic}.pref-saving{font-size:11px;color:var(--accent, #2563eb);font-style:italic}.my-clients-page{max-width:960px;margin:0 auto;padding:2rem 1.5rem}.my-clients-page h2{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin-bottom:1.5rem}.loading-text,.error-text{text-align:center;color:var(--text-secondary, #666);padding:3rem 0}.error-text{color:#dc2626}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-secondary, #888);background:var(--bg-secondary, #f9fafb);border-radius:8px}.clients-table-wrap{overflow-x:auto}.clients-table{width:100%;border-collapse:collapse;font-size:.9rem}.clients-table th{text-align:start;padding:.75rem 1rem;background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #555);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--border, #e5e7eb)}.clients-table td{padding:.65rem 1rem;border-bottom:1px solid var(--border, #f0f0f0);vertical-align:middle}.clients-table tr.assigned{background:#eff6ff}.clients-table tr:hover{background:var(--bg-hover, #f9fafb)}.status-select{padding:4px 8px;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.82rem;background:#fff;cursor:pointer;min-width:130px}.status-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.status-na{color:var(--text-tertiary, #bbb)}.assign-btn{padding:5px 14px;border-radius:6px;font-size:.82rem;font-weight:500;cursor:pointer;border:1px solid #2563eb;background:#2563eb;color:#fff;transition:all .15s ease}.assign-btn:hover{background:#1d4ed8}.assign-btn.assigned{background:#fff;color:#dc2626;border-color:#dc2626}.assign-btn.assigned:hover{background:#fef2f2}.team-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.logo-section{display:flex;align-items:center;gap:.75rem}.team-logo-preview{height:40px;width:auto;max-width:120px;object-fit:contain;border-radius:4px;border:1px solid var(--border, #e5e7eb)}.team-stats{display:flex;gap:1.5rem;margin-bottom:1.5rem;font-size:.9rem;color:var(--text-secondary, #666)}.team-stats span{font-weight:600}.team-hierarchy{display:flex;flex-direction:column;gap:1rem}.agent-card{border:1px solid var(--border, #e5e7eb);border-radius:10px;overflow:hidden;background:#fff}.agent-card-header{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1.2rem;background:var(--bg-secondary, #f8fafc);border-bottom:1px solid var(--border, #e5e7eb)}.agent-info{display:flex;align-items:center;gap:.75rem}.agent-name{font-weight:600;font-size:.95rem;color:var(--text-primary, #1a1a1a)}.agent-role{font-size:.75rem;padding:2px 8px;border-radius:10px;background:#dbeafe;color:#1e40af;font-weight:500}.client-count{font-size:.82rem;color:var(--text-secondary, #888)}.agent-clients-list{padding:.5rem 0}.team-client-row{display:flex;align-items:center;gap:1rem;padding:.5rem 1.2rem .5rem 2rem;border-bottom:1px solid var(--border, #f5f5f5);font-size:.87rem}.team-client-row:last-child{border-bottom:none}.client-name{font-weight:500;min-width:120px}.client-email{color:var(--text-secondary, #888);flex:1}.business-view{display:flex;width:100%;padding:1.5rem 2rem;gap:1.5rem;min-height:calc(100vh - 180px)}.business-sidebar{display:flex;flex-direction:column;width:200px;flex-shrink:0;gap:4px;padding-top:.5rem}.business-sidebar-item{display:block;width:100%;padding:.7rem 1rem;border:none;border-radius:8px;background:transparent;color:var(--text-secondary, #555);font-size:.9rem;font-weight:500;text-align:start;cursor:pointer;transition:all .15s ease}.business-sidebar-item:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1a1a1a)}.business-sidebar-item.active{background:#eff6ff;color:#2563eb;font-weight:600}.business-content{flex:1;min-width:0}.my-team-content{width:100%}.my-team-content h2,.configuration-tab h2{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin-bottom:1.5rem}.config-section{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:1.2rem 1.5rem}.config-section h3{font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a);margin-bottom:1rem}.config-section+.config-section{margin-top:1rem}.config-hint{font-size:.85rem;color:var(--text-secondary, #6b7280);margin-bottom:.75rem}.brand-name-row{display:flex;align-items:center;gap:.75rem}.brand-name-input{flex:1;padding:.5rem .75rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.95rem;color:var(--text-primary, #1a1a1a);background:var(--bg-primary, #fff)}.brand-name-input:focus{outline:none;border-color:var(--accent, #c9a84c);box-shadow:0 0 0 2px #c9a84c26}.brand-preview-bar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;border-radius:8px;min-height:52px}.brand-preview-logo{height:40px;width:auto;max-width:80px;object-fit:contain}.brand-preview-text{font-size:1.4rem;font-weight:700;letter-spacing:.02em}.font-picker-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.font-picker-card{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;padding:.75rem 1rem;border:2px solid var(--border, #e5e7eb);border-radius:8px;background:#fff;cursor:pointer;transition:all .15s ease;text-align:start}.font-picker-card:hover{border-color:#93c5fd;background:#f0f7ff}.font-picker-card.selected{border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 2px #2563eb26}.font-picker-sample{font-size:1.15rem;font-weight:600;color:var(--text-primary, #1a1a1a);line-height:1.3}.font-picker-meta{font-size:.72rem;color:var(--text-secondary, #888);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.font-clear-btn{margin-top:.5rem;padding:.3rem .75rem;border:none;background:transparent;color:var(--text-secondary, #888);font-size:.8rem;cursor:pointer;text-decoration:underline}.font-clear-btn:hover{color:var(--text-primary, #333)}.color-swatch-row{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.6rem}.color-swatch{width:36px;height:36px;border-radius:8px;border:2px solid var(--border, #d1d5db);cursor:pointer;transition:all .15s ease;padding:0}.color-swatch:hover{transform:scale(1.1);border-color:#93c5fd}.color-swatch.selected{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb40;transform:scale(1.1)}.color-custom-row{display:flex;align-items:center;gap:.5rem}.color-hex-input{width:100px;padding:.4rem .6rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.85rem;font-family:monospace;color:var(--text-primary, #1a1a1a)}.color-hex-input:focus{outline:none;border-color:var(--accent, #c9a84c);box-shadow:0 0 0 2px #c9a84c26}.config-save-row{margin-top:1.25rem;display:flex;justify-content:flex-end}.config-save-btn{padding:.6rem 2rem!important;font-size:.95rem!important;font-weight:600!important;background:#2563eb!important;color:#fff!important;border:none!important;border-radius:8px!important;cursor:pointer;transition:background .15s ease}.config-save-btn:hover{background:#1d4ed8!important}.defaults-section{margin-bottom:1.5rem;padding:1rem 1.25rem;background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:12px;box-shadow:0 1px 4px #0000000a;transition:box-shadow .2s ease}.defaults-section:hover{box-shadow:0 2px 10px #00000012}.features-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1.5px solid #d1d5db;border-radius:8px;background:#fff;font-size:1rem;line-height:1;cursor:pointer;transition:all .18s ease}.features-btn:hover{background:#eff6ff;border-color:#93c5fd;box-shadow:0 2px 8px #2563eb1f;transform:scale(1.08)}.features-btn:active{transform:scale(.96)}.features-btn.expanded{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 2px 10px #2563eb4d}.features-btn.expanded:hover{background:#1d4ed8;border-color:#1d4ed8}.feature-row td{padding:.75rem 1rem!important;background:linear-gradient(180deg,#f8faff,#fafbff);border-bottom:2px solid var(--border, #e5e7eb);animation:featureRowSlide .25s ease-out}@keyframes featureRowSlide{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.locations-section{margin-bottom:1.5rem;border:1px solid var(--border, #e5e7eb);border-radius:10px;overflow:hidden}.locations-section-header{display:flex;align-items:center;width:100%;padding:.75rem 1.25rem;background:var(--bg-secondary, #f9fafb);border:none;cursor:pointer;font-size:.92rem;font-weight:600;color:var(--text-primary, #1a1a1a);transition:background .15s ease;text-align:start}.locations-section-header:hover{background:#eff6ff}.locations-section-body{padding:.75rem 1rem}.locations-empty{text-align:center;padding:1rem;color:var(--text-secondary, #888);font-size:.88rem}.locations-inventory{width:100%;border-collapse:collapse;font-size:.88rem}.locations-inventory th{text-align:start;padding:.5rem .75rem;color:var(--text-secondary, #666);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border, #e5e7eb)}.locations-inventory td{padding:.5rem .75rem;border-bottom:1px solid var(--border, #f0f0f0);vertical-align:middle}.visibility-toggle{display:inline-flex;border:1px solid var(--border, #d1d5db);border-radius:6px;overflow:hidden}.visibility-toggle button{padding:3px 12px;border:none;background:#fff;font-size:.78rem;font-weight:500;cursor:pointer;color:var(--text-secondary, #666);transition:all .15s ease}.visibility-toggle button+button{border-left:1px solid var(--border, #d1d5db)}.visibility-toggle button.active{background:#2563eb;color:#fff}.visibility-toggle button:hover:not(.active){background:#f3f4f6}.location-type-badge{display:inline-block;padding:1px 8px;border-radius:10px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.location-type-badge.area{background:#dbeafe;color:#1e40af}.location-type-badge.place{background:#dcfce7;color:#166534}.location-panel{padding:.5rem 0}.location-panel-loading,.location-panel-empty{padding:1rem;text-align:center;color:var(--text-secondary, #888);font-size:.88rem}.location-saving-indicator{height:2px;background:#2563eb;animation:loc-save-pulse .8s ease-in-out infinite alternate;margin-bottom:.5rem;border-radius:1px}@keyframes loc-save-pulse{0%{opacity:.3}to{opacity:1}}.location-group{margin-bottom:.75rem}.location-group:last-child{margin-bottom:0}.location-group-header{font-size:.78rem;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.03em;padding:.4rem .5rem;border-bottom:1px solid var(--border, #e5e7eb);margin-bottom:.25rem}.location-checkbox-row{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;cursor:pointer;border-radius:4px;transition:background .12s ease}.location-checkbox-row:hover{background:#f3f4f6}.location-checkbox-row input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#2563eb}.location-item-name{flex:1;font-size:.88rem;color:var(--text-primary, #1a1a1a)}.activity-panel{padding:.75rem .5rem}.activity-loading,.activity-error,.activity-empty{text-align:center;padding:1rem;color:var(--text-secondary, #888);font-size:.88rem;margin:0}.activity-error{color:#dc2626}.activity-section{margin-bottom:1rem}.activity-section:last-child{margin-bottom:0}.activity-section-title{font-size:.82rem;font-weight:600;color:var(--text-secondary, #555);text-transform:uppercase;letter-spacing:.03em;margin:0 0 .6rem;padding-bottom:.4rem;border-bottom:1px solid var(--border, #e5e7eb)}.activity-favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.activity-fav-card{display:flex;gap:.75rem;padding:.6rem;border:1px solid var(--border, #e5e7eb);border-radius:8px;background:#fff;transition:box-shadow .15s ease}.activity-fav-card:hover{box-shadow:0 2px 8px #00000014}.activity-fav-photo{width:80px;height:64px;border-radius:6px;overflow:hidden;background:var(--bg-secondary, #f3f4f6);flex-shrink:0}.activity-fav-photo img{width:100%;height:100%;object-fit:cover}.activity-fav-photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #aaa);font-size:.7rem}.activity-fav-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.activity-fav-address{font-size:.85rem;font-weight:600;color:var(--text-primary, #1a1a1a);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-fav-price{font-size:.9rem;font-weight:700;color:#2563eb}.activity-fav-meta{display:flex;gap:.4rem;flex-wrap:wrap;font-size:.72rem;color:var(--text-secondary, #888)}.activity-fav-meta span{background:var(--bg-secondary, #f3f4f6);padding:.1rem .45rem;border-radius:9999px}.activity-fav-map-btn{display:inline-block;margin-top:.2rem;padding:.15rem .5rem;border:1px solid #2563eb;border-radius:4px;background:transparent;color:#2563eb;font-size:.7rem;font-weight:500;cursor:pointer;transition:all .15s ease;align-self:flex-start}.activity-fav-map-btn:hover{background:#2563eb;color:#fff}.activity-locations-list{display:flex;flex-direction:column;gap:.25rem}.activity-location-item{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border:none;border-radius:6px;background:transparent;cursor:pointer;font-size:.88rem;color:var(--text-primary, #1a1a1a);text-align:start;transition:background .12s ease;width:100%}.activity-location-item:hover{background:#eff6ff}.activity-location-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.activity-location-name{flex:1;font-weight:500}.activity-location-city{font-size:.78rem;color:var(--text-secondary, #888)}@media (max-width: 640px){.my-clients-page{padding:1rem}.clients-table th,.clients-table td{padding:.5rem;font-size:.82rem}.team-client-row{flex-wrap:wrap;gap:.4rem;padding-inline-start:1rem}.team-header{flex-direction:column;align-items:flex-start}.business-view{flex-direction:column}.business-sidebar{width:100%;flex-direction:row;overflow-x:auto}.business-sidebar-item{white-space:nowrap}.clients-table-wrap{overflow-x:auto}}.hierarchy-section{margin-bottom:2rem}.hierarchy-title{font-size:1.1rem;font-weight:700;color:var(--text-secondary, #555);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--border, #e5e7eb);text-transform:uppercase;letter-spacing:.05em}.manager-card{border-left:4px solid #2563eb;background:#eff6ff}.manager-header{background:#dbeafe}.manager-info{display:flex;align-items:center;gap:.75rem}.manager-avatar-placeholder{width:32px;height:32px;border-radius:50%;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.manager-name-text{font-size:1rem;font-weight:700;color:#1e3a8a}.manager-role-badge{background:#2563eb;color:#fff}.team-hierarchy-container{display:flex;flex-direction:column;gap:2rem}.crm-dashboard{padding:.5rem 0}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.kpi-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:1.15rem 1.25rem;position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000a}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.kpi-card.kpi-clients:before{background:#2563eb}.kpi-card.kpi-deals:before{background:#c8a255}.kpi-card.kpi-followups:before{background:#c4890e}.kpi-card.kpi-closed:before{background:#2d8659}.kpi-label{font-size:.78rem;font-weight:500;color:var(--text-muted, #888);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.35rem}.kpi-value{font-size:1.85rem;font-weight:700;color:var(--text-primary, #1a1a1a);line-height:1.1}.kpi-sub{font-size:.78rem;color:var(--text-muted, #888);margin-top:.3rem;display:flex;align-items:center;gap:.3rem}.kpi-delta{font-weight:600}.kpi-delta.up{color:#2d8659}.kpi-delta.warn{color:#c4890e}.dash-cols{display:grid;grid-template-columns:1.5fr 1fr;gap:1.25rem;margin-bottom:1.5rem}.activity-feed{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:1rem 1.25rem;box-shadow:0 1px 3px #0000000a}.activity-feed-title{font-size:.95rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin-bottom:1rem}.feed-item{display:flex;align-items:flex-start;gap:.75rem;padding:.7rem 0;border-bottom:1px solid #f0f0f0;transition:background .12s ease}.feed-item:last-child{border-bottom:none}.feed-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.feed-icon.fav{background:#fce4ec}.feed-icon.view{background:#e3f2fd}.feed-icon.search{background:#fff3e0}.feed-icon.deal{background:#e8f5e9}.feed-icon.user{background:#f3e5f5}.feed-icon.note{background:var(--bg-secondary, #f9fafb)}.feed-text{flex:1;font-size:.88rem;color:var(--text-secondary, #555);line-height:1.45}.feed-text strong{color:var(--text-primary, #1a1a1a);font-weight:600}.feed-time{font-size:.75rem;color:var(--text-muted, #888);white-space:nowrap;flex-shrink:0;margin-top:2px}.followups-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:1rem 1.25rem;box-shadow:0 1px 3px #0000000a}.followup-item{display:flex;align-items:center;gap:.65rem;padding:.6rem .5rem;border-radius:8px;cursor:pointer;transition:background .12s ease}.followup-item:hover{background:var(--bg-secondary, #f9fafb)}.followup-item+.followup-item{border-top:1px solid #f0f0f0}.followup-check{width:18px;height:18px;border:2px solid var(--border, #e5e7eb);border-radius:4px;cursor:pointer;flex-shrink:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:all .15s ease;background:#fff}.followup-check:hover{border-color:#2563eb}.followup-check:checked{background:#2563eb;border-color:#2563eb;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");background-size:12px;background-position:center;background-repeat:no-repeat}.followup-info{flex:1;min-width:0}.followup-title{font-size:.88rem;font-weight:500;color:var(--text-primary, #1a1a1a);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.followup-when{font-size:.78rem;color:var(--text-muted, #888)}.followup-when.overdue{color:#c0392b;font-weight:600}.followup-when.today{color:#c4890e;font-weight:600}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.section-title{font-size:.78rem;font-weight:600;color:var(--text-secondary, #555);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.75rem}.quick-actions{display:flex;align-items:center;gap:.75rem;padding:1rem 0}.quick-actions .btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:1px solid transparent}.quick-actions .btn-primary{background:#2563eb;color:#fff;border-color:#2563eb}.quick-actions .btn-primary:hover{background:#1d4ed8;box-shadow:0 2px 8px #2563eb40}.quick-actions .btn-outline{background:#fff;color:var(--text-primary, #1a1a1a);border-color:var(--border, #e5e7eb)}.quick-actions .btn-outline:hover{border-color:#93c5fd;background:#eff6ff;color:#2563eb}.crm-dashboard .loading-text{text-align:center;padding:3rem 1rem;color:var(--text-muted, #888);font-size:.92rem}.feed-empty,.followup-empty{text-align:center;padding:2rem 1rem;color:var(--text-muted, #888);font-size:.85rem}@media (max-width: 1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-cols{grid-template-columns:1fr}}@media (max-width: 600px){.kpi-grid{grid-template-columns:1fr}.quick-actions{flex-wrap:wrap}}.client-card-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000040;z-index:500;animation:ccFadeIn .2s ease}@keyframes ccFadeIn{0%{opacity:0}to{opacity:1}}.client-card-panel{position:fixed;top:0;right:-520px;width:520px;max-width:100vw;height:100vh;background:#fff;box-shadow:-4px 0 30px #0000001f;z-index:501;overflow-y:auto;display:flex;flex-direction:column;transition:right .3s cubic-bezier(.4,0,.2,1)}.client-card-panel.open{right:0}.cc-header{position:sticky;top:0;background:#1b3a5c;color:#fff;padding:1.25rem 1.5rem;z-index:2;flex-shrink:0}.cc-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#ffffffb3;font-size:1.5rem;cursor:pointer;line-height:1;padding:.25rem;transition:color .15s ease}.cc-close:hover{color:#fff}.cc-avatar-lg{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;color:#fff;border:2px solid rgba(255,255,255,.3);margin-bottom:.5rem}.cc-name{font-family:Georgia,Playfair Display,serif;font-size:1.35rem;font-weight:700;margin-bottom:.15rem}.cc-email{font-size:.85rem;opacity:.8}.cc-badges{display:flex;gap:.5rem;margin-top:.65rem;flex-wrap:wrap}.cc-badge{padding:3px 10px;border-radius:12px;font-size:.72rem;font-weight:600;background:#fff3;color:#fff}.cc-body{padding:1.25rem 1.5rem;flex:1}.cc-section{margin-bottom:1.5rem}.cc-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted, #888);margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:1px solid var(--border, #e5e7eb)}.cc-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.cc-field.full{grid-column:1 / -1}.cc-field-label{font-size:.72rem;font-weight:600;color:var(--text-muted, #888);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.15rem}.cc-field-value{font-size:.92rem;color:var(--text-primary, #1a1a1a);font-weight:500;min-height:1.4em}.cc-field-value.editable{padding:.35rem .6rem;border:1px solid #f0f0f0;border-radius:6px;background:var(--bg-secondary, #f9fafb);cursor:text;transition:border-color .15s ease,background .15s ease;outline:none;font-family:inherit;font-size:.92rem;color:var(--text-primary, #1a1a1a);font-weight:500;width:100%;box-sizing:border-box}.cc-field-value.editable:hover{border-color:#93c5fd;background:#fff}.cc-field-value.editable:focus{border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb14}.cc-notes-area{width:100%;min-height:80px;padding:.6rem .75rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;font-family:inherit;font-size:.88rem;color:var(--text-primary, #1a1a1a);resize:vertical;background:var(--bg-secondary, #f9fafb);box-sizing:border-box}.cc-notes-area:focus{outline:none;border-color:#2563eb;background:#fff}.cc-timeline-mini{display:flex;flex-direction:column;gap:.5rem}.cc-timeline-item{display:flex;align-items:flex-start;gap:.6rem;padding:.5rem .65rem;border-radius:8px;background:var(--bg-secondary, #f9fafb)}.cc-timeline-icon{width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.8rem;flex-shrink:0;background:var(--bg-tertiary, #f3f4f6)}.cc-timeline-text{flex:1;font-size:.82rem;color:var(--text-secondary, #555);line-height:1.4}.cc-timeline-text strong{color:var(--text-primary, #1a1a1a)}.cc-timeline-time{font-size:.72rem;color:var(--text-muted, #888);white-space:nowrap}.cc-timeline-empty{font-size:.82rem;color:var(--text-muted, #888);padding:.5rem 0}.cc-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding:1rem 1.5rem;border-top:1px solid var(--border, #e5e7eb);background:var(--bg-secondary, #f9fafb);position:sticky;bottom:0;flex-shrink:0}.cc-action-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:6px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:1px solid transparent}.cc-action-btn.primary{background:#2563eb;color:#fff;border-color:#2563eb}.cc-action-btn.primary:hover{background:#1d4ed8}.cc-action-btn.outline{background:#fff;color:var(--text-primary, #1a1a1a);border-color:var(--border, #e5e7eb)}.cc-action-btn.outline:hover{border-color:#93c5fd;background:#eff6ff;color:#2563eb}.cc-saving{font-size:.75rem;color:#2563eb;margin-left:.5rem;animation:ccPulse 1s infinite}@keyframes ccPulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width: 560px){.client-card-panel{width:100vw;right:-100vw}.client-card-panel.open{right:0}.cc-fields{grid-template-columns:1fr}}.clients-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.crm-search-input{flex:1;min-width:200px;padding:.5rem .85rem .5rem 2.2rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;font-family:inherit;font-size:.88rem;color:var(--text-primary, #1a1a1a);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") .7rem center no-repeat;transition:border-color .15s ease}.crm-search-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.crm-search-input::placeholder{color:var(--text-muted, #888)}.filter-pills{display:flex;gap:.35rem;align-items:center}.crm-pill{display:inline-flex;align-items:center;padding:.3rem .7rem;border-radius:20px;font-size:.78rem;font-weight:600;border:1.5px solid var(--border, #e5e7eb);background:#fff;color:var(--text-secondary, #555);cursor:pointer;transition:all .12s ease;font-family:inherit}.crm-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.dot-hot{background:#c0392b}.dot-warm{background:#c4890e}.dot-cold{background:#2563eb}.col-config-wrap{position:relative}.col-config-btn{display:flex;align-items:center;gap:.35rem;padding:.45rem .75rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;background:#fff;font-family:inherit;font-size:.82rem;font-weight:500;color:var(--text-secondary, #555);cursor:pointer;transition:all .12s ease}.col-config-btn:hover{border-color:#93c5fd;background:#eff6ff;color:#2563eb}.col-config-btn.open{border-color:#2563eb;background:#eff6ff;color:#2563eb}.col-config-dropdown{position:absolute;top:calc(100% + 4px);right:0;width:280px;background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;box-shadow:0 8px 30px #0000001a;z-index:100;padding:.75rem 0;max-height:450px;overflow-y:auto;animation:crmFadeIn .15s ease}@keyframes crmFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.col-config-dropdown .dd-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted, #888);padding:.25rem 1rem .5rem}.col-config-item{display:flex;align-items:center;gap:.5rem;padding:.4rem 1rem;cursor:grab;transition:background .1s ease;-webkit-user-select:none;user-select:none}.col-config-item:hover{background:var(--bg-secondary, #f9fafb)}.col-config-item.dragging{background:#eff6ff;opacity:.8}.drag-handle{color:#bbb;font-size:.75rem;cursor:grab;flex-shrink:0;width:16px;text-align:center;letter-spacing:-1px}.col-config-item input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb;cursor:pointer;flex-shrink:0}.col-config-item label{flex:1;font-size:.85rem;color:var(--text-primary, #1a1a1a);cursor:pointer}.col-config-item .col-desc{font-size:.72rem;color:var(--text-muted, #888);display:block}.clients-table-wrap{overflow-x:auto;border-radius:10px;border:1px solid var(--border, #e5e7eb);background:#fff}table.clients-table{width:100%;border-collapse:collapse;font-size:.88rem}.clients-table th{text-align:start;padding:0;background:var(--bg-tertiary, #f3f4f6);border-bottom:2px solid var(--border, #e5e7eb);white-space:nowrap;position:relative}.clients-table th .th-inner{display:flex;align-items:center;gap:.35rem;padding:.65rem .85rem;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .1s ease;font-weight:600;font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #555)}.clients-table th .th-inner:hover{background:#e8ecf1;color:var(--text-primary, #1a1a1a)}.clients-table th .th-inner.sorted{color:#2563eb}.sort-arrow{font-size:.65rem;opacity:.4;transition:opacity .12s ease,transform .12s ease}.th-inner.sorted .sort-arrow{opacity:1}.th-inner.sorted.desc .sort-arrow{transform:rotate(180deg)}.clients-table .filter-row th{background:#fff;border-bottom:1px solid var(--border, #e5e7eb);padding:.35rem .5rem}.col-filter{width:100%;padding:.3rem .5rem;border:1px solid #f0f0f0;border-radius:4px;font-family:inherit;font-size:.78rem;color:var(--text-primary, #1a1a1a);background:var(--bg-secondary, #f9fafb)}.col-filter:focus{outline:none;border-color:#2563eb;background:#fff}.col-filter::placeholder{color:#bbb}.clients-table td{padding:.6rem .85rem;border-bottom:1px solid #f0f0f0;vertical-align:middle}.clients-table tbody tr{transition:background .1s ease;cursor:pointer}.clients-table tbody tr:hover{background:var(--bg-secondary, #f9fafb)}.client-name-cell{display:flex;align-items:center;gap:.6rem}.client-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;color:#fff;flex-shrink:0}.client-name-text{font-weight:600;color:#2563eb;cursor:pointer}.client-name-text:hover{text-decoration:underline}.status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.status-badge.onboarding{background:#e0e7ff;color:#3730a3}.status-badge.looking{background:#dbeafe;color:#1e40af}.status-badge.negotiations{background:#fef3cd;color:#856404}.status-badge.signed{background:#dcfce7;color:#166534}.status-badge.moved_in{background:#d1fae5;color:#065f46}.lead-score{display:flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:500}.client-note-cell{font-size:.82rem;color:var(--text-secondary, #555);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;cursor:help}.crm-create-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem 1rem;border-radius:6px;font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;border:1px solid transparent;background:#2563eb;color:#fff;transition:all .15s ease;margin-left:auto;white-space:nowrap}.crm-create-btn:hover{background:#1d4ed8;box-shadow:0 2px 8px #2563eb40}.crm-pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.75rem;padding:.5rem 0}.crm-pagination button{padding:.35rem .75rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;background:#fff;font-family:inherit;font-size:.82rem;color:var(--text-secondary, #555);cursor:pointer;transition:all .12s ease}.crm-pagination button:hover:not(:disabled){border-color:#93c5fd;background:#f0f7ff;color:#2563eb}.crm-pagination button:disabled{opacity:.4;cursor:not-allowed}.crm-pagination .page-info{font-size:.85rem;color:var(--text-secondary, #555)}.crm-loading,.crm-empty{text-align:center;padding:2rem;color:var(--text-muted, #888);font-size:.9rem}@media (max-width: 768px){.clients-toolbar{flex-direction:column;align-items:stretch}.crm-search-input{min-width:100%}.filter-pills{flex-wrap:wrap}.crm-create-btn{margin-left:0}}.pipeline-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:.75rem}.pipeline-value{font-size:.92rem;color:var(--text-secondary, #555)}.pipeline-value strong{color:var(--text-primary, #1a1a1a);font-size:1.15rem;font-weight:700}.pipeline-controls{display:flex;gap:.5rem;align-items:center}.pipeline-select{padding:.45rem .75rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;font-family:inherit;font-size:.85rem;background:#fff;color:var(--text-primary, #1a1a1a);cursor:pointer;min-width:150px}.pipeline-btn-new{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .85rem;border-radius:6px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;border:none;background:#2563eb;color:#fff;transition:background .15s ease}.pipeline-btn-new:hover{background:#1d4ed8}.kanban{display:flex;gap:.85rem;overflow-x:auto;padding-bottom:1rem}.kanban::-webkit-scrollbar{height:6px}.kanban::-webkit-scrollbar-track{background:var(--bg-tertiary, #f3f4f6);border-radius:3px}.kanban::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.kanban-col{min-width:230px;max-width:250px;flex-shrink:0;display:flex;flex-direction:column}.kanban-col-header{padding:.65rem .85rem;border-radius:8px 8px 0 0;display:flex;align-items:center;justify-content:space-between;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.kanban-col-header .col-count{font-weight:500;font-size:.72rem;opacity:.75}.col-lead .kanban-col-header{background:#f1f5f9;color:#475569}.col-viewing .kanban-col-header{background:#dbeafe;color:#1e40af}.col-offer .kanban-col-header{background:#fef3cd;color:#856404}.col-negotiation .kanban-col-header{background:#fed7aa;color:#9a3412}.col-won .kanban-col-header{background:#dcfce7;color:#166534}.col-lost .kanban-col-header{background:#fee2e2;color:#991b1b}.kanban-col-value{font-size:.72rem;color:var(--text-muted, #888);font-weight:500;padding:.35rem .85rem .5rem;background:var(--bg-secondary, #f9fafb);border-left:1px solid var(--border, #e5e7eb);border-right:1px solid var(--border, #e5e7eb)}.kanban-col-body{flex:1;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border, #e5e7eb);border-top:none;border-radius:0 0 8px 8px;padding:.5rem;display:flex;flex-direction:column;gap:.5rem;min-height:120px;transition:border-color .15s ease,background .15s ease}.kanban-col-body.drag-over{border-color:#93c5fd;background:#eff6ff}.deal-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:.75rem;cursor:grab;transition:box-shadow .15s ease,transform .15s ease}.deal-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-1px)}.deal-card:active{cursor:grabbing}.deal-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.deal-client{font-weight:600;font-size:.85rem;color:var(--text-primary, #1a1a1a);display:flex;align-items:center;gap:.4rem}.deal-client .lead-dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex-shrink:0}.lead-dot.hot{background:#c0392b}.lead-dot.warm{background:#c4890e}.lead-dot.cold{background:#2563eb}.lead-dot.none{background:#ccc}.deal-days{font-size:.68rem;padding:2px 6px;border-radius:4px;background:var(--bg-tertiary, #f3f4f6);color:var(--text-muted, #888);font-weight:600;white-space:nowrap}.deal-property{font-size:.8rem;color:var(--text-secondary, #555);margin-bottom:.35rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deal-value{font-size:.92rem;font-weight:700;color:var(--text-primary, #1a1a1a)}.deal-card.completed{opacity:.7}.deal-card.completed .deal-value{color:#2d8659}.deal-card.lost{opacity:.55}.deal-card.lost .deal-value{color:#c0392b;text-decoration:line-through}.pipeline-loading,.pipeline-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted, #888);font-size:.9rem}.comm-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}.comm-select{padding:.5rem .85rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;font-family:inherit;font-size:.88rem;background:#fff;color:var(--text-primary, #1a1a1a);cursor:pointer;min-width:160px}.comm-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.crm-pills{display:flex;gap:.35rem;flex-wrap:wrap}.crm-pill{display:inline-flex;align-items:center;padding:.3rem .7rem;border-radius:20px;font-size:.78rem;font-weight:600;border:1.5px solid var(--border, #e5e7eb);background:#fff;color:var(--text-secondary, #555);cursor:pointer;transition:all .12s ease}.crm-pill:hover{border-color:#93c5fd;background:#f0f7ff}.crm-pill.active{background:#2563eb;color:#fff;border-color:#2563eb}.comm-btn-log{display:inline-flex;align-items:center;gap:.3rem;padding:.45rem .85rem;border-radius:6px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;border:none;background:#2563eb;color:#fff;margin-left:auto;transition:background .15s ease}.comm-btn-log:hover{background:#1d4ed8}.log-form-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000000a}.log-form-title{font-size:.95rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin-bottom:1rem}.form-row{display:flex;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.form-group{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:150px}.form-label{font-size:.76rem;font-weight:600;color:var(--text-secondary, #555);text-transform:uppercase;letter-spacing:.03em}.form-input,.form-textarea{padding:.5rem .75rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;font-family:inherit;font-size:.88rem;color:var(--text-primary, #1a1a1a);background:#fff}.form-input:focus,.form-textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.form-textarea{resize:vertical;min-height:80px}.type-selector{display:flex;border:1px solid var(--border, #e5e7eb);border-radius:6px;overflow:hidden}.type-selector button{flex:1;padding:.5rem .75rem;border:none;background:#fff;font-family:inherit;font-size:.82rem;font-weight:500;cursor:pointer;color:var(--text-secondary, #555);transition:all .12s ease}.type-selector button+button{border-left:1px solid var(--border, #e5e7eb)}.type-selector button.active{background:#2563eb;color:#fff}.type-selector button:hover:not(.active){background:var(--bg-tertiary, #f3f4f6)}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:.5rem}.form-btn-cancel{padding:.45rem .85rem;border-radius:6px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;border:1px solid var(--border, #e5e7eb);background:#fff;color:var(--text-primary, #1a1a1a);transition:all .12s ease}.form-btn-cancel:hover{border-color:#93c5fd;background:#f0f7ff}.form-btn-save{padding:.45rem .85rem;border-radius:6px;font-family:inherit;font-size:.82rem;font-weight:600;cursor:pointer;border:none;background:#2563eb;color:#fff;transition:background .15s ease}.form-btn-save:hover{background:#1d4ed8}.form-btn-save:disabled{opacity:.55;cursor:not-allowed}.timeline{position:relative;padding-left:2.5rem}.timeline:before{content:"";position:absolute;left:17px;top:0;bottom:0;width:2px;background:var(--border, #e5e7eb)}.timeline-item{position:relative;margin-bottom:.25rem}.timeline-dot{position:absolute;left:-2.5rem;top:.85rem;width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:.95rem;z-index:1;border:2px solid #fff;box-shadow:0 1px 3px #0000000a}.timeline-dot.call{background:#dbeafe}.timeline-dot.email{background:#ede9fe}.timeline-dot.meeting{background:#dcfce7}.timeline-dot.note{background:var(--bg-tertiary, #f3f4f6)}.timeline-content{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:.85rem 1rem;margin-left:.75rem;transition:box-shadow .15s ease}.timeline-content:hover{box-shadow:0 2px 8px #0000000f}.timeline-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.3rem;gap:.5rem;flex-wrap:wrap}.timeline-client{font-weight:600;font-size:.88rem;color:var(--text-primary, #1a1a1a)}.timeline-type-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}.timeline-type-badge.call{background:#dbeafe;color:#1e40af}.timeline-type-badge.email{background:#ede9fe;color:#6d28d9}.timeline-type-badge.meeting{background:#dcfce7;color:#166534}.timeline-type-badge.note{background:var(--bg-tertiary, #f3f4f6);color:var(--text-secondary, #555)}.timeline-subject{font-size:.88rem;font-weight:500;color:var(--text-primary, #1a1a1a);margin-bottom:.2rem}.timeline-body{font-size:.85rem;color:var(--text-secondary, #555);line-height:1.5}.timeline-meta{font-size:.78rem;color:var(--text-muted, #888);margin-top:.4rem}.timeline-time{font-size:.75rem;color:var(--text-muted, #888);white-space:nowrap}.comm-loading,.comm-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted, #888);font-size:.9rem}.form-error{color:#ef4444;font-size:.82rem;margin-top:.25rem}.crm-section{padding:0}.crm-tab-bar{display:flex;gap:0;border-bottom:2px solid var(--border, #e5e7eb);margin-bottom:1.25rem}.crm-tab{padding:.65rem 1.25rem;border:none;background:transparent;font-family:inherit;font-size:.88rem;font-weight:600;color:var(--text-secondary, #555);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s ease}.crm-tab:hover{color:var(--text-primary, #1a1a1a);background:var(--bg-secondary, #f9fafb)}.crm-tab.active{color:#2563eb;border-bottom-color:#2563eb}.crm-scope-bar{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.crm-scope-label{font-size:.78rem;font-weight:600;color:var(--text-muted, #888);text-transform:uppercase;letter-spacing:.04em}.crm-scope-btn{padding:.3rem .7rem;border-radius:20px;font-size:.78rem;font-weight:600;border:1.5px solid var(--border, #e5e7eb);background:#fff;color:var(--text-secondary, #555);cursor:pointer;transition:all .12s ease}.crm-scope-btn:hover{border-color:#93c5fd;background:#f0f7ff}.crm-scope-btn.active{background:#2563eb;color:#fff;border-color:#2563eb}.info-tooltip-wrap{position:relative;display:inline-flex;align-items:center;margin-left:.35rem}.info-tooltip-btn{width:18px;height:18px;border-radius:50%;border:1.5px solid var(--text-muted);background:transparent;color:var(--text-muted);font-size:.65rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s var(--ease);padding:0;line-height:1;flex-shrink:0}.info-tooltip-btn:hover{border-color:var(--primary-light);color:var(--primary);background:#1b3a5c0d}.info-tooltip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--bg-dark);color:var(--text-inverse);font-size:.75rem;font-weight:400;line-height:1.45;padding:.6rem .85rem;border-radius:var(--radius);box-shadow:var(--shadow-lg);white-space:normal;width:max-content;max-width:260px;z-index:50;pointer-events:none;animation:tooltipIn .15s var(--ease)}.info-tooltip-bubble:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--bg-dark)}@keyframes tooltipIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.market-trends{padding-bottom:2.5rem}.mt-header{padding:2rem 0 1.25rem}.mt-header h1{font-family:Playfair Display,Georgia,serif;font-size:1.75rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.mt-header p{color:var(--text-muted);font-size:.9rem}.mt-filters{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:1rem 1.25rem;margin-bottom:1.25rem}.mt-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.5rem 2.2rem .5rem .75rem;font-size:.85rem;font-weight:500;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-primary) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' viewBox='0 0 12 12'%3e%3cpath stroke='%238a95a7' stroke-linecap='round' stroke-width='1.5' d='M3 5l3 3 3-3'/%3e%3c/svg%3e") no-repeat right .7rem center;color:var(--text-primary);cursor:pointer;min-width:160px;transition:border-color .2s var(--ease);font-family:inherit}.mt-select:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 3px #1b3a5c14}.mt-time-pills{display:flex;gap:.25rem;margin-left:auto}.mt-time-pill{padding:.4rem .75rem;font-size:.75rem;font-weight:600;border:1px solid var(--border);border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s var(--ease);font-family:inherit}.mt-time-pill:hover{border-color:var(--primary-light);color:var(--primary)}.mt-time-pill.active{background:var(--primary);color:#fff;border-color:var(--primary)}.mt-health-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}.mt-health-summary{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.mt-health-metrics{display:flex;align-items:center;gap:1.5rem}.mt-health-metric{flex:1}.mt-health-label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:.25rem;display:flex;align-items:center}.mt-health-value{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.mt-gauge-card{padding:1.5rem;display:flex;flex-direction:column;justify-content:center;gap:.75rem}.mt-gauge-labels{display:flex;justify-content:space-between;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.mt-gauge-labels .buyer{color:var(--success)}.mt-gauge-labels .balanced{color:var(--text-muted)}.mt-gauge-labels .seller{color:var(--danger)}.mt-gauge-bar{width:100%;height:14px;background:linear-gradient(90deg,#2d8659,#fbbf24,#c0392b);border-radius:7px;position:relative}.mt-gauge-needle{position:absolute;top:-4px;width:4px;height:22px;background:var(--text-primary);border-radius:2px;box-shadow:0 0 0 3px #fffc;transition:left .6s var(--ease)}.mt-gauge-reading{text-align:center;font-size:.95rem;font-weight:600}.mt-gauge-sub{font-size:.78rem;color:var(--text-muted);text-align:center}.mt-kpi-strip{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem;margin-bottom:1.25rem}.mt-kpi-card{padding:1.15rem;text-align:center;position:relative;overflow:hidden}.mt-kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border-light)}.mt-kpi-card.accent-green:before{background:var(--success)}.mt-kpi-card.accent-blue:before{background:var(--primary)}.mt-kpi-card.accent-gold:before{background:var(--accent)}.mt-kpi-card.accent-red:before{background:var(--danger)}.mt-kpi-num{font-family:Playfair Display,Georgia,serif;font-size:1.4rem;font-weight:700;color:var(--text-primary)}.mt-kpi-label{font-size:.72rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-top:.25rem;display:flex;align-items:center;justify-content:center}.mt-kpi-delta{font-size:.7rem;font-weight:600;margin-top:.3rem}.mt-kpi-delta.up{color:var(--success)}.mt-kpi-delta.down{color:var(--danger)}.mt-kpi-delta.neutral{color:var(--text-muted)}.mt-charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.25rem}.mt-chart-card{padding:1.5rem}.mt-chart-card h3{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:1.25rem;letter-spacing:.01em}.mt-transactions{padding:1.5rem;margin-bottom:1.25rem}.mt-transactions h3{font-size:.95rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.mt-table{width:100%;border-collapse:collapse;font-size:.82rem}.mt-table th{padding:.5rem .6rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border)}.mt-table td{padding:.55rem .6rem;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.mt-table .price{font-family:Playfair Display,Georgia,serif;font-weight:600}.mt-tag{display:inline-block;padding:.15rem .5rem;font-size:.68rem;font-weight:600;border-radius:9999px;text-transform:uppercase}.mt-tag-sold{background:var(--success-light);color:var(--success)}.mt-tag-leased{background:#2563eb14;color:#2563eb}.mt-empty-table{text-align:center;padding:2rem 1rem;color:var(--text-muted);font-size:.85rem}.mt-loading,.mt-error,.mt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4.5rem 2rem;text-align:center;background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.mt-loading p{margin-top:1rem;color:var(--text-secondary);font-size:.9rem}.mt-error{color:var(--danger);background:var(--danger-light);border-color:#c0392b1f}.mt-empty h3{font-family:Playfair Display,Georgia,serif;color:var(--text-primary);margin-bottom:.5rem;font-size:1.1rem}.mt-empty p{color:var(--text-muted);font-size:.9rem}.mt-donut-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;pointer-events:none}.mt-donut-center .num{font-family:Playfair Display,Georgia,serif;font-size:1.3rem;font-weight:700;color:var(--text-primary);display:block}.mt-donut-center .lbl{font-size:.68rem;color:var(--text-muted)}@media (max-width: 1024px){.mt-kpi-strip{grid-template-columns:repeat(3,1fr)}.mt-charts-grid,.mt-health-row{grid-template-columns:1fr}}@media (max-width: 640px){.mt-kpi-strip{grid-template-columns:repeat(2,1fr)}.mt-filters{padding:.75rem}.mt-select{min-width:0;flex:1}.mt-time-pills{margin-left:0;width:100%;justify-content:center}.mt-chart-card{padding:1rem}.mt-table{font-size:.75rem}.mt-table th,.mt-table td{padding:.4rem}.mt-health-metrics{flex-wrap:wrap;gap:.75rem}.mt-health-metric{flex:0 0 calc(50% - .375rem)}}.price-tracker-page{padding-bottom:2.5rem}.pt-toggle{display:inline-flex;border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;margin-bottom:1.5rem}.pt-toggle button{padding:.55rem 1.25rem;font-size:.85rem;font-weight:500;border:none;background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:all .2s var(--ease)}.pt-toggle button:not(:last-child){border-right:1px solid var(--border)}.pt-toggle button.active{background:var(--primary);color:#fff}.pt-toggle button:hover:not(.active){background:#1b3a5c0a;color:var(--primary)}.pt-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.pt-stat-card{padding:1.25rem;text-align:center;position:relative;overflow:hidden}.pt-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border-light)}.pt-stat-value{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.3rem}.pt-stat-label{font-size:.78rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.pt-movers-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}.pt-movers-section{padding:1.25rem}.pt-movers-section h3{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;letter-spacing:.01em}.pt-mover-card{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;border-radius:var(--radius);border:1px solid var(--border-light);margin-bottom:.5rem;transition:background .15s var(--ease)}.pt-mover-card:hover{background:#1b3a5c05}.pt-mover-card.gainer{border-left:3px solid var(--success)}.pt-mover-card.loser{border-left:3px solid var(--danger)}.pt-mover-thumb{width:72px;height:72px;border-radius:var(--radius-sm);object-fit:cover;background:var(--bg-secondary);flex-shrink:0;overflow:hidden}img.pt-mover-thumb.pt-mover-thumb--crop-wm{object-position:center 55%;transform:scale(1.06);transform-origin:center 55%}.pt-mover-info{flex:1;min-width:0}.pt-mover-address{font-size:.92rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pt-mover-city{font-size:.8rem;color:var(--text-muted)}.pt-mover-change{font-size:.95rem;font-weight:600;text-align:right;white-space:nowrap}.pt-mover-change.positive{color:var(--success)}.pt-mover-change.negative{color:var(--danger)}.pt-mover-pct{font-size:.78rem;font-weight:500;text-align:right}.pt-chart-section{padding:1.75rem;margin-bottom:1.5rem}.pt-chart-section h3{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:1.25rem;letter-spacing:.01em}.pt-recent-section{padding:1.25rem}.pt-recent-section h3{font-size:.95rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;letter-spacing:.01em}.pt-recent-table{width:100%;border-collapse:collapse;font-size:.82rem}.pt-recent-table th{text-align:left;padding:.55rem .65rem;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-bottom:2px solid var(--border-light)}.pt-recent-table td{padding:.55rem .65rem;border-bottom:1px solid var(--border-light);color:var(--text-secondary)}.pt-recent-table tr:hover td{background:#1b3a5c05}.pt-change-positive{color:var(--success);font-weight:600}.pt-change-negative{color:var(--danger);font-weight:600}.pt-no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.pt-no-data h3{font-family:Playfair Display,Georgia,serif;color:var(--text-primary);margin-bottom:.5rem;font-size:1.1rem}.pt-no-data p{color:var(--text-muted);font-size:.9rem}@media (max-width: 768px){.pt-movers-grid{grid-template-columns:1fr}}@media (max-width: 640px){.pt-chart-section{padding:1rem}.pt-stats-grid{grid-template-columns:1fr 1fr}.pt-stat-value{font-size:1.1rem}.pt-recent-table{font-size:.78rem}.pt-recent-table th,.pt-recent-table td{padding:.4rem .5rem}}.card-minimap{position:relative;width:100%;height:180px;border-radius:10px;overflow:hidden;margin-top:8px;border:1px solid #e5e7eb}.card-minimap .leaflet-container{width:100%;height:100%;cursor:default}.card-minimap .leaflet-container *{touch-action:none;pointer-events:none}.card-minimap__expand-btn{position:absolute;top:8px;right:8px;z-index:500;width:32px;height:32px;border:none;border-radius:6px;background:#fffffff2;box-shadow:0 1px 4px #0003;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#333;pointer-events:auto;touch-action:auto}.card-minimap__expand-btn:hover{background:#fff}.card-minimap__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0009;display:flex;align-items:center;justify-content:center;padding:20px}.card-minimap__overlay-inner{position:relative;width:90vw;height:80vh;max-width:800px;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 20px 60px #0000004d}.card-minimap__overlay-inner .leaflet-container{width:100%;height:100%}.card-minimap__overlay-inner .leaflet-container *{touch-action:auto;pointer-events:auto}.card-minimap__close-btn{position:absolute;top:10px;right:10px;z-index:1001;width:36px;height:36px;border:none;border-radius:50%;background:#fffffff2;box-shadow:0 2px 8px #0003;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#333}.card-minimap__close-btn:hover{background:#fff}.card-minimap__overlay-title{position:absolute;top:10px;left:10px;z-index:1001;background:#fffffff2;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:600;color:#333;box-shadow:0 1px 4px #00000026;max-width:60%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 480px){.card-minimap{height:150px}.card-minimap__overlay-inner{width:95vw;height:85vh}}.swipe-card{position:absolute;width:100%;max-width:400px;background:#fff;border-radius:16px;box-shadow:0 8px 30px #0000001f;overflow:hidden;-webkit-user-select:none;user-select:none;will-change:transform,opacity,box-shadow;cursor:grab}.swipe-card:active{cursor:grabbing}.swipe-card--top{z-index:2}.swipe-card--next{z-index:1;transform:scale(calc(.94 + var(--drag-intensity, 0) * .06)) translateY(calc(12px - var(--drag-intensity, 0) * 12px));pointer-events:none;filter:brightness(.97);transition:transform .3s ease-out,filter .3s ease-out}.swipe-indicator{position:absolute;top:50%;z-index:10;width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:box-shadow .15s ease;margin-top:-40px}.swipe-indicator--like{right:20px;background:#22c55ed9;box-shadow:0 0 20px #22c55e4d}.swipe-indicator--like.committed{box-shadow:0 0 40px #22c55e99,0 0 80px #22c55e33}.swipe-indicator--nope{left:20px;background:#ef4444d9;box-shadow:0 0 20px #ef44444d}.swipe-indicator--nope.committed{box-shadow:0 0 40px #ef444499,0 0 80px #ef444433}.swipe-card__photo{width:100%;height:280px;background:#f3f4f6;overflow:hidden;position:relative;cursor:pointer}.swipe-card__photo img{width:100%;height:100%;object-fit:cover;display:block}.swipe-card__photo img.swipe-card__img--crop-wm{object-position:center 55%;transform:scale(1.06);transform-origin:center 55%}.swipe-card__photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#f9fafb}.swipe-card__photo-skeleton{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;background:linear-gradient(90deg,#e5e7eb,#f3f4f6,#e5e7eb 80%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.swipe-card__photo-dots{position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:5;display:flex;gap:6px}.swipe-card__photo-dot{width:8px;height:8px;border-radius:50%;background:#ffffff73;transition:background .2s ease,box-shadow .2s ease}.swipe-card__photo-dot--active{background:#fff;box-shadow:0 0 4px #ffffff80}.swipe-card__photo-chevron{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:32px;height:32px;border-radius:50%;background:#00000040;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;pointer-events:auto;cursor:pointer}.swipe-card__photo:hover .swipe-card__photo-chevron{opacity:1}.swipe-card__photo-chevron--dim{opacity:0!important;pointer-events:none}.swipe-card__photo-chevron--left{left:6px}.swipe-card__photo-chevron--right{right:6px}.swipe-card__body{padding:16px 20px 20px;max-height:420px;overflow-y:auto;-webkit-overflow-scrolling:touch}.swipe-card__price{font-family:Playfair Display,Georgia,serif;font-size:1.6rem;font-weight:700;color:#111;margin-bottom:2px}.swipe-card__address{font-size:.95rem;color:#333;font-weight:500}.swipe-card__city{font-size:.85rem;color:#666;margin-bottom:10px}.swipe-card__stats{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.swipe-card__pill{display:inline-flex;align-items:center;padding:4px 10px;background:#f3f4f6;border-radius:20px;font-size:.8rem;color:#444;font-weight:500}.swipe-card__transit{font-size:.82rem;color:#1a56db;font-weight:600;margin-bottom:10px}.swipe-card__description{font-size:.8rem;color:#555;line-height:1.4;margin-bottom:10px;padding:8px 10px;background:#f9fafb;border-radius:8px}.swipe-card__desc-toggle{display:inline;background:none;border:none;color:#1a56db;font-size:.8rem;font-weight:600;cursor:pointer;padding:0;margin-left:4px}.swipe-card__desc-toggle:hover{text-decoration:underline}.swipe-card__mls{font-size:.75rem;color:#999;margin-top:8px;display:flex;align-items:center;justify-content:space-between}.swipe-card__view-listing{display:inline-flex;align-items:center;gap:4px;color:#1a56db;font-size:.78rem;font-weight:600;text-decoration:none;transition:color .15s}.swipe-card__view-listing:hover{color:#1040a0;text-decoration:underline}@media (min-width: 769px){.swipe-card{max-width:480px}.swipe-card__photo{height:320px}.swipe-card__body{max-height:440px}}@media (max-width: 480px){.swipe-card{max-width:100%;border-radius:12px}.swipe-card__photo{height:240px}.swipe-card__body{max-height:380px;padding:12px 16px 16px}.swipe-card__price{font-size:1.4rem}.swipe-indicator{width:64px;height:64px;margin-top:-32px}.swipe-indicator svg{width:28px;height:28px}.swipe-card__photo-chevron{opacity:.7}.swipe-card__photo-chevron--dim{opacity:0!important}}.category-tabs-container{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:1000;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:24px;box-shadow:0 2px 12px #0000001f;padding:5px;display:flex;gap:4px}.category-tab{padding:9px 18px;border-radius:20px;background:transparent;border:none;cursor:pointer;font-size:.88rem;font-weight:500;color:#555;transition:background .2s,color .2s,box-shadow .2s;white-space:nowrap;-webkit-user-select:none;user-select:none}.category-tab:hover{background:#2563eb14;color:#2563eb}.category-tab.active{background:#2563eb;color:#fff;box-shadow:0 2px 8px #2563eb4d}@media (max-width: 640px){.category-tabs-container{top:6px;left:50%;transform:translate(-50%);max-width:calc(100% - 16px);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.category-tabs-container::-webkit-scrollbar{display:none}.category-tab{padding:7px 14px;font-size:.82rem}}.matchmaker{max-width:480px;margin:0 auto;padding:16px;min-height:calc(100vh - 120px);display:flex;flex-direction:column;align-items:center}.matchmaker__category-tabs{position:relative;width:100%;display:flex;justify-content:center;margin-bottom:8px}.matchmaker__category-tabs .category-tabs-container{position:static;transform:none}.matchmaker__header{width:100%;display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.matchmaker__title{font-size:1.3rem;font-weight:700;color:#111;margin:0;flex:1}.matchmaker__stats{display:flex;gap:8px;font-size:.8rem;font-weight:600}.matchmaker__stat{padding:3px 8px;border-radius:12px;background:#f3f4f6}.matchmaker__stat--like{color:#22c55e}.matchmaker__stat--hide{color:#ef4444}.matchmaker__stat--skip{color:#3b82f6}.matchmaker__stat--remaining{color:#666}.matchmaker__filter-toggle{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:.85rem;font-weight:500;color:#333;cursor:pointer}.matchmaker__filter-toggle.active{background:#2563eb;color:#fff;border-color:#2563eb}.matchmaker__filter-toggle svg{flex-shrink:0}.matchmaker__filters{width:100%;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:12px 16px;margin-bottom:12px}.matchmaker__filter-group{margin-bottom:10px}.matchmaker__filter-group:last-of-type{margin-bottom:8px}.matchmaker__filter-group label{display:block;font-size:.75rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}.matchmaker__pills{display:flex;flex-wrap:wrap;gap:4px}.matchmaker__pill{padding:4px 10px;border:1px solid #d1d5db;border-radius:16px;background:#fff;font-size:.78rem;color:#555;cursor:pointer;transition:all .15s}.matchmaker__pill.active{background:#2563eb;color:#fff;border-color:#2563eb}.matchmaker__price-inputs{display:flex;align-items:center;gap:8px}.matchmaker__price-inputs input{width:100px;padding:5px 8px;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem}.matchmaker__price-inputs span{font-size:.8rem;color:#888}.matchmaker__reset-btn{padding:5px 14px;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:.8rem;color:#666;cursor:pointer}.matchmaker__reset-btn:hover{background:#f3f4f6}.matchmaker__deck{position:relative;width:100%;max-width:400px;height:580px;display:flex;align-items:center;justify-content:center;--drag-intensity: 0}.matchmaker__deck-tint{position:absolute;top:-40px;right:-40px;bottom:-40px;left:-40px;z-index:0;border-radius:50%;pointer-events:none;transition:opacity .1s ease}.matchmaker__empty{text-align:center;padding:40px 20px}.matchmaker__empty h3{font-size:1.2rem;color:#333;margin:16px 0 8px}.matchmaker__empty p{font-size:.9rem;color:#888;max-width:280px}.matchmaker__loading,.matchmaker__error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#666}.matchmaker__loading .spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.matchmaker__actions{display:flex;gap:20px;margin-top:16px;justify-content:center}.matchmaker__action-btn{width:56px;height:56px;border-radius:50%;border:2px solid;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 8px #00000014}.matchmaker__action-btn:active{transform:scale(.88)}.matchmaker__action-btn--hide{border-color:#ef4444;color:#ef4444}.matchmaker__action-btn--hide:hover{background:#fef2f2}.matchmaker__action-btn--hide.highlight{transform:scale(1.12);box-shadow:0 0 20px #ef444466;background:#fef2f2}.matchmaker__action-btn--skip{border-color:#3b82f6;color:#3b82f6}.matchmaker__action-btn--skip:hover{background:#eff6ff}.matchmaker__action-btn--like{border-color:#22c55e;color:#22c55e}.matchmaker__action-btn--like:hover{background:#f0fdf4}.matchmaker__action-btn--like.highlight{transform:scale(1.12);box-shadow:0 0 20px #22c55e66;background:#f0fdf4}@media (max-width: 480px){.matchmaker{padding:10px}.matchmaker__deck{max-width:100%;height:540px}.matchmaker__action-btn{width:50px;height:50px}.matchmaker__header{gap:8px}.matchmaker__title{font-size:1.1rem}}@media (min-width: 769px){.matchmaker{max-width:900px;padding:24px 32px}.matchmaker__deck{max-width:480px;height:640px}.matchmaker__header,.matchmaker__filters{max-width:480px;margin-left:auto;margin-right:auto}}[dir=rtl] .matchmaker__filter-toggle svg{margin-left:4px;margin-right:0}.leads-manager{margin-top:.75rem}.leads-filters{display:flex;gap:.4rem;margin-bottom:1rem}.leads-filters button{padding:.4rem .9rem;border:1px solid var(--border, #d1d5db);background:var(--bg-card, #fff);border-radius:6px;cursor:pointer;font-size:.85rem;color:var(--text-primary, #1a202c);transition:all .15s}.leads-filters button.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.leads-table-wrap{overflow-x:auto}.leads-table{width:100%;border-collapse:collapse;font-size:.85rem}.leads-table th,.leads-table td{padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--border-light, #e5e7eb)}.leads-table th{font-weight:600;color:var(--text-secondary, #64748b);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.intent-badge{display:inline-block;padding:.15rem .55rem;border-radius:10px;font-size:.8rem;font-weight:500}.intent-badge.buying{background:#dcfce7;color:#166534}.intent-badge.renting{background:#dbeafe;color:#1e40af}.leads-actions{display:flex;gap:.35rem}.lead-action{padding:.3rem .65rem;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:500;transition:opacity .15s}.lead-action:disabled{opacity:.4;cursor:not-allowed}.lead-action.approve{background:#22c55e;color:#fff}.lead-action.dismiss{background:#ef4444;color:#fff}.lead-action:hover:not(:disabled){opacity:.85}.lead-status-text{color:var(--text-secondary, #64748b);font-style:italic;font-size:.85rem}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:1.75rem 2rem;width:90%;max-width:400px;box-shadow:0 20px 60px #00000026}.modal-content h3{font-size:1.1rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin-bottom:.5rem}.convert-form{display:flex;flex-direction:column;gap:.9rem}.convert-form label{display:flex;flex-direction:column;font-weight:500;font-size:.85rem;color:var(--text-primary, #1a202c);gap:.3rem}.convert-form input[type=password]{padding:.6rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.9rem;font-family:inherit}.convert-form input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.modal-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.25rem}.modal-cancel{padding:.55rem 1.1rem;background:transparent;color:var(--text-secondary, #666);border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.85rem;font-weight:500;cursor:pointer}.modal-cancel:hover{background:var(--bg-secondary, #f3f4f6)}.modal-submit{padding:.55rem 1.3rem;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer}.modal-submit:hover:not(:disabled){background:#1d4ed8}.modal-submit:disabled{opacity:.5;cursor:not-allowed}.user-creation-form{margin-top:.75rem;max-width:560px}.ucf-error{background:#fef2f2;color:#dc2626;padding:.7rem;border-radius:6px;margin-bottom:.75rem;font-size:.85rem}.ucf-success{background:#f0fdf4;color:#166534;padding:.7rem;border-radius:6px;margin-bottom:.75rem;font-size:.85rem}.ucf-form{display:flex;flex-direction:column;gap:.85rem}.ucf-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.ucf-form label{display:flex;flex-direction:column;font-weight:500;font-size:.85rem;color:var(--text-primary, #1a202c);gap:.3rem}.ucf-form input,.ucf-form select{padding:.6rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.9rem;font-family:inherit}.ucf-form input:focus,.ucf-form select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.ucf-submit{padding:.7rem;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-weight:600;font-size:.9rem;cursor:pointer;transition:opacity .15s;margin-top:.25rem}.ucf-submit:hover:not(:disabled){opacity:.9}.ucf-submit:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 640px){.ucf-row{grid-template-columns:1fr}}.admin-panel{max-width:1000px;margin:0 auto;padding:2rem 1rem}.admin-panel h2{font-size:1.5rem;margin-bottom:1.5rem;color:var(--text-primary)}.admin-section{background:var(--bg-secondary, #fff);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.admin-section h3{font-size:1.1rem;margin:0 0 1rem;color:var(--text-primary)}.db-toggle-group{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.db-toggle-btn{padding:.5rem 1.25rem;border:2px solid var(--border-color, #cbd5e1);border-radius:6px;background:transparent;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .15s}.db-toggle-btn:hover{border-color:var(--primary, #3b82f6)}.db-toggle-btn.active-prod{background:#22c55e;color:#fff;border-color:#22c55e}.db-toggle-btn.active-demo{background:#f59e0b;color:#fff;border-color:#f59e0b}.db-badge{display:inline-block;padding:.2rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.db-badge.production{background:#dcfce7;color:#166534}.db-badge.demo{background:#fef3c7;color:#92400e}.db-unavailable{color:var(--text-secondary);font-size:.85rem;font-style:italic}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.health-card{background:var(--bg-primary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:6px;padding:.75rem;text-align:center}.health-card .label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.health-card .value{font-size:1.3rem;font-weight:600;color:var(--text-primary);margin-top:.25rem}.health-status{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.health-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.health-dot.healthy{background:#22c55e}.health-dot.unhealthy{background:#ef4444}.health-latency{font-size:.85rem;color:var(--text-secondary)}.confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.confirm-dialog{background:var(--bg-secondary, #fff);border-radius:10px;padding:1.5rem;max-width:400px;width:90%;box-shadow:0 20px 60px #00000026}.confirm-dialog h4{margin:0 0 .75rem}.confirm-dialog p{margin:0 0 1.25rem;color:var(--text-secondary);font-size:.9rem}.confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.confirm-actions button{padding:.4rem 1rem;border-radius:6px;border:1px solid var(--border-color, #cbd5e1);cursor:pointer;font-size:.85rem}.confirm-actions .btn-confirm{background:#f59e0b;color:#fff;border-color:#f59e0b}.confirm-actions .btn-cancel{background:transparent}.switch{position:relative;display:inline-block;width:48px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.2s}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.2s}input:checked+.slider{background-color:#3b82f6}input:focus+.slider{box-shadow:0 0 1px #3b82f6}input:checked+.slider:before{transform:translate(24px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}input:disabled+.slider{opacity:.5;cursor:not-allowed}.granularity-toggle{display:flex;gap:.5rem;margin-bottom:1rem}.granularity-toggle button{padding:.35rem .9rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;background:transparent;cursor:pointer;font-size:.85rem;color:var(--text-primary);transition:all .15s}.granularity-toggle button.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.granularity-toggle button:hover:not(.active){border-color:#3b82f6}.user-usage-table{width:100%;border-collapse:collapse;font-size:.85rem}.user-usage-table th,.user-usage-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--border-color, #e2e8f0)}.user-usage-table th{font-weight:600;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.user-usage-table td:nth-child(2),.user-usage-table td:nth-child(3),.user-usage-table th:nth-child(2),.user-usage-table th:nth-child(3){text-align:right}.ai-settings-form{display:flex;flex-direction:column;gap:.75rem}.ai-settings-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.ai-settings-row label{font-size:.9rem;font-weight:500;min-width:150px}.ai-settings-row select,.ai-settings-row input[type=number]{padding:.4rem .6rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.9rem;background:var(--bg-primary, #fff);color:var(--text-primary);min-width:180px}.ai-settings-hint{font-size:.8rem;color:var(--text-secondary)}.chat-log-table-wrap{overflow-x:auto}.chat-log-table{width:100%;border-collapse:collapse;font-size:.82rem}.chat-log-table th,.chat-log-table td{padding:.45rem .5rem;text-align:left;border-bottom:1px solid var(--border-color, #e2e8f0);white-space:nowrap}.chat-log-table th{font-weight:600;color:var(--text-secondary);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.chat-log-table .msg-preview{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-log-table .error-row{background:#ef44440f}.chat-log-table td:nth-child(5),.chat-log-table th:nth-child(5),.chat-log-table td:nth-child(6),.chat-log-table th:nth-child(6){text-align:right}.monitoring-dashboard{max-width:1200px;margin:0 auto;padding:2rem 1rem}.monitoring-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.monitoring-header h2{font-size:1.5rem;margin:0;color:var(--text-primary)}.monitoring-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.monitoring-controls .granularity-toggle{margin-bottom:0}.auto-refresh-toggle{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.auto-refresh-toggle input[type=checkbox]{accent-color:#3b82f6}.custom-range-inputs{display:flex;align-items:center;gap:.5rem}.custom-range-inputs input[type=datetime-local]{padding:.3rem .5rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.82rem;background:var(--bg-primary, #fff);color:var(--text-primary)}.custom-range-inputs span{font-size:.82rem;color:var(--text-secondary)}.alert-header{display:flex;align-items:center;gap:.5rem}.alert-dot{width:10px;height:10px;border-radius:50%;display:inline-block;flex-shrink:0}.alert-dot.ok{background:#22c55e}.alert-dot.danger{background:#ef4444;animation:pulse-dot 1.5s infinite}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.3)}}.health-card.success{border-color:#22c55e;background:#f0fdf4}.health-card.danger{border-color:#ef4444;background:#fef2f2}.health-card.danger .value{color:#ef4444}.health-card.success .value{color:#22c55e}.health-card.warning{border-color:#f59e0b;background:#fffbeb}.health-card.warning .value{color:#f59e0b}.perf-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-top:1rem}.perf-table th,.perf-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--border-color, #e2e8f0)}.perf-table th{background:var(--bg-primary, #f8fafc);font-weight:600;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.perf-table td{color:var(--text-primary)}.perf-table tbody tr:hover{background:var(--bg-primary, #f8fafc)}.perf-table .method-badge{display:inline-block;padding:.1rem .4rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.perf-table .method-badge.get{background:#dbeafe;color:#1d4ed8}.perf-table .method-badge.post{background:#dcfce7;color:#166534}.perf-table .method-badge.put,.perf-table .method-badge.patch{background:#fef3c7;color:#92400e}.perf-table .method-badge.delete{background:#fecaca;color:#991b1b}.error-rate-cell{font-weight:600}.error-rate-cell.high{color:#ef4444}.error-rate-cell.ok{color:#22c55e}.monitoring-chart{width:100%;height:280px;margin-top:1rem}.kpi-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:1rem}.kpi-card{background:var(--bg-primary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:6px;padding:.75rem;text-align:center}.kpi-card .kpi-value{font-size:1.4rem;font-weight:700;color:var(--text-primary)}.kpi-card .kpi-label{font-size:.72rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-top:.2rem}.monitoring-loading{text-align:center;padding:2rem;color:var(--text-secondary)}.monitoring-back{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;color:#3b82f6;text-decoration:none;margin-bottom:1rem}.monitoring-back:hover{text-decoration:underline}@media (max-width: 640px){.monitoring-header{flex-direction:column;align-items:flex-start}.monitoring-controls{width:100%}.custom-range-inputs{flex-direction:column;align-items:flex-start}.perf-table{font-size:.78rem}.perf-table th,.perf-table td{padding:.4rem .5rem}.kpi-row{grid-template-columns:repeat(2,1fr)}}.cloud-images-section .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.cloud-images-section .stat-card{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;text-align:center}.cloud-images-section .stat-value{font-size:2rem;font-weight:700;color:#2c3e50;margin:.5rem 0}.cloud-images-section .stat-sub{color:#7f8c8d;font-size:.9rem}.cloud-images-section .upload-controls{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a}.cloud-images-section .control-group{display:flex;align-items:center;gap:1.5rem;margin-top:1rem}.cloud-images-section input,.cloud-images-section select{padding:.5rem;border:1px solid #ddd;border-radius:4px;margin-left:.5rem}.cloud-images-section .message{margin-top:1rem;padding:.5rem;border-radius:4px}.cloud-images-section .message.success{background:#d4edda;color:#155724}.cloud-images-section .message.error{background:#f8d7da;color:#721c24}.user-mgmt-controls{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.user-mgmt-controls input[type=text]{flex:1;min-width:200px;padding:.45rem .75rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.88rem;background:var(--bg-primary, #fff);color:var(--text-primary)}.user-mgmt-controls select{padding:.45rem .6rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.88rem;background:var(--bg-primary, #fff);color:var(--text-primary)}.user-mgmt-table-wrap{overflow-x:auto}.user-mgmt-table{width:100%;border-collapse:collapse;font-size:.85rem}.user-mgmt-table th,.user-mgmt-table td{padding:.55rem .6rem;text-align:left;border-bottom:1px solid var(--border-color, #e2e8f0)}.user-mgmt-table th{font-weight:600;color:var(--text-secondary);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.user-mgmt-table tr:hover{background:var(--bg-primary, #f8fafc)}.user-mgmt-table tr.inactive-row{opacity:.55}.role-badge{display:inline-block;padding:.15rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.role-badge.admin{background:#fce7f3;color:#9d174d}.role-badge.manager{background:#e0e7ff;color:#3730a3}.role-badge.agent{background:#dcfce7;color:#166534}.role-badge.client{background:#f1f5f9;color:#475569}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:middle}.status-dot.active{background:#22c55e}.status-dot.inactive{background:#ef4444}.status-dot.unverified{background:#f59e0b}.user-action-btn{padding:.3rem .6rem;border:1px solid var(--border-color, #cbd5e1);border-radius:5px;background:transparent;cursor:pointer;font-size:.78rem;color:var(--text-primary);transition:all .12s}.user-action-btn:hover{border-color:var(--primary, #3b82f6);color:var(--primary, #3b82f6)}.user-mgmt-pagination{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;font-size:.85rem;color:var(--text-secondary)}.user-mgmt-pagination .pagination-btns{display:flex;gap:.5rem}.user-mgmt-pagination button{padding:.35rem .75rem;border:1px solid var(--border-color, #cbd5e1);border-radius:5px;background:transparent;cursor:pointer;font-size:.82rem;color:var(--text-primary)}.user-mgmt-pagination button:disabled{opacity:.4;cursor:not-allowed}.user-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-start;justify-content:center;z-index:1100;padding:2rem 1rem;overflow-y:auto}.user-detail-modal{background:var(--bg-secondary, #fff);border-radius:10px;max-width:720px;width:100%;box-shadow:0 20px 60px #0003;max-height:calc(100vh - 4rem);overflow-y:auto}.user-detail-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.user-detail-header h3{margin:0;font-size:1.1rem}.user-detail-close{background:none;border:none;font-size:1.3rem;cursor:pointer;color:var(--text-secondary);padding:.25rem;line-height:1}.user-detail-body{padding:1.25rem 1.5rem}.user-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1.5rem;margin-bottom:1.25rem}.user-info-item{display:flex;flex-direction:column}.user-info-item .info-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.15rem}.user-info-item .info-value{font-size:.9rem;color:var(--text-primary)}.user-detail-section{border-top:1px solid var(--border-color, #e2e8f0);padding-top:1rem;margin-top:1rem}.user-detail-section h4{font-size:.95rem;margin:0 0 .75rem;color:var(--text-primary)}.user-detail-form-row{display:flex;gap:.5rem;align-items:center;margin-bottom:.75rem}.user-detail-form-row input,.user-detail-form-row select{flex:1;padding:.4rem .6rem;border:1px solid var(--border-color, #cbd5e1);border-radius:6px;font-size:.88rem;background:var(--bg-primary, #fff);color:var(--text-primary)}.btn-primary{padding:.4rem .85rem;background:var(--primary, #3b82f6);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;white-space:nowrap}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-danger{padding:.4rem .85rem;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;white-space:nowrap}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-outline{padding:.4rem .85rem;background:transparent;color:var(--text-primary);border:1px solid var(--border-color, #cbd5e1);border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:500;white-space:nowrap}.btn-outline:hover{border-color:var(--primary, #3b82f6);color:var(--primary, #3b82f6)}.user-detail-actions{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.activity-log-list{max-height:280px;overflow-y:auto;border:1px solid var(--border-color, #e2e8f0);border-radius:6px}.activity-log-item{display:flex;justify-content:space-between;align-items:center;padding:.45rem .65rem;border-bottom:1px solid var(--border-color, #e2e8f0);font-size:.82rem}.activity-log-item:last-child{border-bottom:none}.activity-log-action{font-weight:500;color:var(--text-primary)}.activity-log-resource{color:var(--text-secondary);font-size:.78rem}.activity-log-time{color:var(--text-secondary);font-size:.75rem;white-space:nowrap;margin-left:.5rem}.user-detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color, #e2e8f0);margin-bottom:1rem}.user-detail-tab{padding:.5rem 1rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.85rem;color:var(--text-secondary);transition:all .12s}.user-detail-tab.active{color:var(--primary, #3b82f6);border-bottom-color:var(--primary, #3b82f6);font-weight:600}.user-detail-tab:hover:not(.active){color:var(--text-primary)}.user-detail-msg{padding:.5rem .75rem;border-radius:6px;font-size:.85rem;margin-bottom:.75rem}.user-detail-msg.success{background:#dcfce7;color:#166534}.user-detail-msg.error{background:#fee2e2;color:#991b1b}.delete-confirm-box{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1rem;margin-top:.75rem}.delete-confirm-box p{margin:0 0 .75rem;font-size:.88rem;color:#991b1b}.delete-confirm-box .confirm-btns{display:flex;gap:.5rem}@media (max-width: 600px){.user-info-grid{grid-template-columns:1fr}.user-detail-modal{max-width:100%}.user-detail-form-row{flex-direction:column;align-items:stretch}}.admin-layout{display:flex;min-height:calc(100vh - 80px);width:100%}.admin-sidebar{width:220px;min-width:220px;background:var(--bg-secondary, #fff);border-right:1px solid var(--border-color, #e2e8f0);display:flex;flex-direction:column;position:sticky;top:0;height:calc(100vh - 80px);overflow-y:auto}.admin-sidebar-header{padding:1.25rem 1rem .75rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.admin-sidebar-header h3{margin:0;font-size:1.1rem;color:var(--text-primary)}.admin-sidebar-nav{display:flex;flex-direction:column;padding:.5rem 0;gap:1px}.admin-sidebar-link{display:block;width:100%;padding:.6rem 1rem;background:none;border:none;text-align:left;font-size:.88rem;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .12s;border-left:3px solid transparent}.admin-sidebar-link:hover{color:var(--text-primary);background:var(--bg-primary, #f8fafc)}.admin-sidebar-link.active{color:var(--primary, #3b82f6);background:#3b82f60f;border-left-color:var(--primary, #3b82f6);font-weight:600}.admin-content{flex:1;padding:1.5rem;min-width:0;overflow-x:hidden}.admin-sidebar-toggle{display:none;width:100%;padding:.6rem 1rem;background:var(--bg-secondary, #fff);border:none;border-bottom:1px solid var(--border-color, #e2e8f0);font-size:.9rem;font-weight:500;color:var(--text-primary);cursor:pointer;text-align:left}@media (max-width: 768px){.admin-layout{flex-direction:column}.admin-sidebar{display:none;position:static;width:100%;min-width:100%;height:auto;border-right:none;border-bottom:1px solid var(--border-color, #e2e8f0)}.admin-sidebar.admin-sidebar-open{display:flex}.admin-sidebar-toggle{display:block}.admin-sidebar-header{display:none}.admin-sidebar-nav{flex-direction:row;flex-wrap:wrap;padding:.5rem;gap:.25rem}.admin-sidebar-link{padding:.5rem .75rem;border-left:none;border-radius:6px;font-size:.82rem;width:auto}.admin-sidebar-link.active{border-left-color:transparent;background:var(--primary, #3b82f6);color:#fff}.admin-content{padding:1rem}}.support-page{max-width:900px;margin:0 auto;padding:2rem 1rem}.support-page h2{margin-bottom:1.5rem;font-size:1.5rem}.support-form{background:var(--bg-card, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.support-form h3{margin:0 0 1rem;font-size:1.1rem}.support-form-row{display:flex;gap:1rem;margin-bottom:.75rem}.support-form-row>*{flex:1}.support-form label{display:block;font-size:.85rem;color:var(--text-secondary, #666);margin-bottom:.25rem}.support-form input,.support-form select,.support-form textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.9rem;background:var(--bg-input, #fff);color:var(--text-primary, #111);box-sizing:border-box}.support-form textarea{min-height:80px;resize:vertical}.support-form-actions{display:flex;justify-content:flex-end;margin-top:.75rem}.support-submit-btn{padding:.5rem 1.5rem;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.9rem;cursor:pointer;transition:background .15s}.support-submit-btn:hover{background:#1d4ed8}.support-submit-btn:disabled{opacity:.6;cursor:not-allowed}.support-tickets-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.support-tickets-header h3{margin:0;font-size:1.1rem}.support-filters{display:flex;gap:.5rem}.support-filters select{padding:.35rem .5rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.8rem;background:var(--bg-input, #fff);color:var(--text-primary, #111)}.support-ticket-card{background:var(--bg-card, #fff);border:1px solid var(--border, #e5e7eb);border-radius:10px;padding:1rem 1.25rem;margin-bottom:.75rem;cursor:pointer;transition:border-color .15s,box-shadow .15s}.support-ticket-card:hover{border-color:#2563eb;box-shadow:0 2px 8px #2563eb14}.support-ticket-card.expanded{border-color:#2563eb}.ticket-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.ticket-subject{font-weight:600;font-size:.95rem;flex:1;min-width:150px}.ticket-badge{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.75rem;font-weight:500}.badge-open{background:#dbeafe;color:#1d4ed8}.badge-in-progress{background:#fef3c7;color:#92400e}.badge-resolved{background:#d1fae5;color:#065f46}.badge-closed{background:#e5e7eb;color:#374151}.badge-low{background:#e0f2fe;color:#0369a1}.badge-medium{background:#fef3c7;color:#92400e}.badge-high{background:#fee2e2;color:#991b1b}.badge-category{background:#f3f4f6;color:#4b5563}.ticket-date{font-size:.8rem;color:var(--text-secondary, #888);white-space:nowrap}.ticket-replies-count{font-size:.8rem;color:var(--text-secondary, #888)}.ticket-detail{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-light, #e5e7eb)}.ticket-description{font-size:.9rem;line-height:1.5;color:var(--text-primary, #333);margin-bottom:1rem;white-space:pre-wrap}.ticket-meta{display:flex;gap:1rem;font-size:.8rem;color:var(--text-secondary, #888);margin-bottom:1rem;flex-wrap:wrap}.ticket-replies{margin-top:1rem}.ticket-replies h4{font-size:.9rem;margin-bottom:.5rem}.reply-item{padding:.75rem;background:var(--bg-secondary, #f9fafb);border-radius:8px;margin-bottom:.5rem}.reply-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.reply-author{font-weight:600;font-size:.85rem}.reply-date{font-size:.75rem;color:var(--text-secondary, #888)}.reply-content{font-size:.88rem;line-height:1.4;white-space:pre-wrap}.reply-form{display:flex;gap:.5rem;margin-top:.75rem}.reply-form textarea{flex:1;padding:.5rem .75rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.85rem;min-height:40px;resize:vertical;background:var(--bg-input, #fff);color:var(--text-primary, #111)}.reply-form button{padding:.5rem 1rem;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.85rem;cursor:pointer;white-space:nowrap;align-self:flex-end}.reply-form button:disabled{opacity:.6;cursor:not-allowed}.ticket-admin-actions{display:flex;gap:.75rem;align-items:center;margin-top:.75rem;flex-wrap:wrap}.ticket-admin-actions select{padding:.35rem .5rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.8rem;background:var(--bg-input, #fff);color:var(--text-primary, #111)}.ticket-admin-actions button{padding:.35rem .75rem;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.8rem;cursor:pointer}.support-empty{text-align:center;padding:2rem;color:var(--text-secondary, #888)}.support-error{color:#ef4444;font-size:.85rem;margin-top:.5rem}.support-success{color:#22c55e;font-size:.85rem;margin-top:.5rem}@media (max-width: 600px){.support-form-row{flex-direction:column;gap:.5rem}.support-filters{flex-wrap:wrap}.ticket-row{gap:.4rem}}.chat-bubble{position:fixed;bottom:28px;right:28px;z-index:9000;width:54px;height:54px;border-radius:50%;border:none;background:var(--primary, #1b3a5c);color:#fff;cursor:pointer;box-shadow:0 4px 16px #00000040;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.chat-bubble:hover{background:var(--primary-light, #2a5580);box-shadow:0 6px 24px #0000004d;transform:scale(1.06)}.chat-bubble-icon{font-size:24px;line-height:1}.chat-bubble:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;border:2px solid var(--accent, #c8a255);opacity:0;animation:chatPulse 3s ease-in-out infinite}@keyframes chatPulse{0%,to{opacity:0;transform:scale(1)}50%{opacity:.5;transform:scale(1.08)}}.chat-panel{position:fixed;bottom:28px;right:28px;z-index:9000;background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;overflow:hidden;animation:chatPanelIn .25s cubic-bezier(.4,0,.2,1)}.chat-resize-edge{position:absolute;z-index:10}.chat-resize-l{left:-3px;top:16px;bottom:0;width:6px;cursor:ew-resize}.chat-resize-t{top:-3px;left:16px;right:0;height:6px;cursor:ns-resize}.chat-resize-tl{top:-3px;left:-3px;width:16px;height:16px;cursor:nwse-resize}@keyframes chatPanelIn{0%{opacity:0;transform:translateY(16px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:var(--primary, #1b3a5c);color:#fff;flex-shrink:0}.chat-header-title{font-size:15px;font-weight:600;display:flex;align-items:center;gap:8px}.chat-header-dot{width:8px;height:8px;border-radius:50%;background:#4ade80}.chat-beta-badge{background:#fff3;color:#fff;font-size:10px;padding:2px 6px;border-radius:4px;margin-left:8px;letter-spacing:.5px;font-weight:700}.chat-close-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:20px;padding:0;line-height:1;opacity:.7;transition:opacity .15s}.chat-close-btn:hover{opacity:1}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}.chat-messages::-webkit-scrollbar{width:5px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.chat-msg{max-width:85%;padding:10px 14px;border-radius:12px;font-size:13.5px;line-height:1.55;word-wrap:break-word}.chat-msg-user{align-self:flex-end;background:var(--primary, #1b3a5c);color:#fff;border-bottom-right-radius:4px}.chat-msg-assistant{align-self:flex-start;background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1a1a1a);border-bottom-left-radius:4px}.chat-msg-assistant p{margin:0 0 8px}.chat-msg-assistant p:last-child{margin-bottom:0}.chat-msg-assistant table{width:100%;border-collapse:collapse;font-size:12px;margin:8px 0}.chat-msg-assistant th,.chat-msg-assistant td{border:1px solid #ddd;padding:4px 8px;text-align:left}.chat-msg-assistant th{background:#e8e8e8;font-weight:600}.chat-msg-assistant code{background:#e8e8e8;padding:1px 4px;border-radius:3px;font-size:12px}.chat-msg-assistant strong{font-weight:600}.chat-msg-assistant ul,.chat-msg-assistant ol{margin:4px 0;padding-left:20px}.chat-msg-assistant li{margin-bottom:2px}.chat-tool-indicator{align-self:flex-start;display:flex;align-items:center;gap:8px;padding:8px 14px;background:#fef9ee;border:1px solid #f5e6c8;border-radius:10px;font-size:12.5px;color:#92710e}.chat-tool-spinner{width:14px;height:14px;border:2px solid #e0c97a;border-top-color:#92710e;border-radius:50%;animation:chatSpin .7s linear infinite}@keyframes chatSpin{to{transform:rotate(360deg)}}.chat-welcome{text-align:center;color:var(--text-secondary, #666);font-size:13px;padding:20px 10px;line-height:1.6}.chat-welcome-title{font-size:16px;font-weight:600;color:var(--primary, #1b3a5c);margin-bottom:8px}.chat-welcome-suggestions{display:flex;flex-direction:column;gap:6px;margin-top:12px}.chat-suggestion-btn{background:var(--bg-secondary, #f3f4f6);border:1px solid #e0e0e0;border-radius:8px;padding:8px 12px;font-size:12.5px;color:var(--text-primary, #1a1a1a);cursor:pointer;text-align:left;transition:background .15s,border-color .15s}.chat-suggestion-btn:hover{background:#e8e8e8;border-color:var(--primary, #1b3a5c)}.chat-input-area{display:flex;align-items:flex-end;gap:8px;padding:12px 14px;border-top:1px solid #eee;flex-shrink:0}.chat-input{flex:1;resize:none;border:1px solid #ddd;border-radius:10px;padding:10px 14px;font-size:13.5px;font-family:inherit;line-height:1.4;max-height:100px;outline:none;transition:border-color .15s}.chat-input:focus{border-color:var(--primary, #1b3a5c)}.chat-input::placeholder{color:#aaa}.chat-send-btn{width:38px;height:38px;border-radius:50%;border:none;background:var(--accent, #c8a255);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s,transform .15s}.chat-send-btn:hover:not(:disabled){background:#b8923f;transform:scale(1.05)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.chat-send-icon{font-size:16px;margin-left:2px}@media (max-width: 640px){.chat-panel{bottom:0;right:0;width:100%!important;height:100%!important;border-radius:0}.chat-resize-edge{display:none}.chat-bubble{bottom:18px;right:18px;width:48px;height:48px}.chat-bubble-icon{font-size:20px}}.landing-page{min-height:100vh;background:#f8fafc}.landing-hero{text-align:center;padding:6rem 2rem 4rem;background:linear-gradient(135deg,#0e1a2b,#1a2744);color:#fff}.landing-hero-title{font-family:Playfair Display,Georgia,serif;font-size:3rem;font-weight:700;margin-bottom:1.5rem;letter-spacing:-.02em;color:var(--accent)}.landing-hero-subtitle{font-size:1.25rem;color:#fffc;max-width:700px;margin:0 auto;line-height:1.7}.landing-features-section{max-width:1200px;margin:0 auto;padding:4rem 2rem}.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.landing-feature-card{background:#fff;border-radius:12px;padding:2.5rem 2rem;box-shadow:0 1px 4px #0000000f;text-align:center;transition:transform .25s var(--ease),box-shadow .25s var(--ease);display:flex;flex-direction:column;align-items:center}.landing-feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.landing-feature-icon{width:64px;height:64px;min-height:64px;margin-bottom:1.5rem;border-radius:14px;flex-shrink:0}.landing-feature-icon.map{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.landing-feature-icon.tracker{background:linear-gradient(135deg,#10b981,#34d399)}.landing-feature-icon.matchmaker{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.landing-feature-icon.favorites{background:linear-gradient(135deg,#ef4444,#f87171)}.landing-feature-icon.crm{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.landing-feature-icon.clients{background:linear-gradient(135deg,#c8a255,#e0c882)}.landing-feature-icon.analytics{background:linear-gradient(135deg,#06b6d4,#22d3ee)}.landing-feature-title{font-size:1.2rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary)}.landing-feature-desc{color:var(--text-secondary);line-height:1.6;font-size:.95rem}.landing-cta{text-align:center;padding:3rem 2rem 4rem;max-width:700px;margin:0 auto}.landing-cta-title{font-family:Playfair Display,Georgia,serif;font-size:2.25rem;font-weight:700;margin-bottom:1rem;color:var(--bg-dark)}.landing-cta-subtitle{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.landing-cta-btn{display:inline-block;padding:1rem 3rem;background:linear-gradient(135deg,#0e1a2b,#1a2744);color:var(--accent);font-size:1.1rem;font-weight:600;text-decoration:none;border-radius:8px;transition:opacity .2s var(--ease),transform .2s var(--ease);box-shadow:0 4px 12px #0e1a2b33}.landing-cta-btn:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 6px 16px #0e1a2b4d;color:var(--accent);text-decoration:none}.landing-cta-btn:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.landing-footer{text-align:center;padding:2rem 2rem 4rem;color:var(--text-secondary);font-size:.95rem}.landing-footer-link{color:var(--bg-dark);font-weight:600;text-decoration:none;transition:color .2s var(--ease)}.landing-footer-link:hover{color:var(--accent);text-decoration:underline}@media (max-width: 768px){.landing-hero{padding:4rem 1.5rem 3rem}.landing-hero-title{font-size:2rem}.landing-hero-subtitle{font-size:1rem}.landing-features-section{padding:3rem 1.5rem}.landing-features{grid-template-columns:1fr;gap:1.5rem}.landing-feature-card{padding:2rem 1.5rem}.landing-cta-title{font-size:1.75rem}.landing-cta-btn{width:100%;padding:.9rem 2rem}}.notification-bell-wrapper{position:relative;display:flex;align-items:center}.notification-bell-btn{position:relative;background:none;border:none;cursor:pointer;padding:.35rem;color:#ffffffbf;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:color .15s,background .15s}.notification-bell-btn:hover{color:#fff;background:#ffffff1a}.notification-badge{position:absolute;top:-2px;right:-4px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;min-width:18px;height:18px;border-radius:9px;display:flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;box-shadow:0 0 0 2px var(--bg-dark, #1a1a2e)}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-height:500px;background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 4px 12px #00000026;z-index:200;display:flex;flex-direction:column;overflow:hidden}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid #e0e0e0;flex-shrink:0}.notification-dropdown-title{margin:0;font-size:.95rem;font-weight:600;color:#111}.notification-mark-all-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:#2563eb;font-size:.8rem;font-weight:500;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .15s}.notification-mark-all-btn:hover{background:#eff6ff}.notification-mark-all-btn:disabled{opacity:.5;cursor:not-allowed}.notification-dropdown-body{flex:1;overflow-y:auto;max-height:370px}.notification-loading{display:flex;align-items:center;justify-content:center;padding:2rem 1rem;color:#888;font-size:.85rem}.notification-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem 1rem;color:#999}.notification-empty-icon{margin-bottom:.5rem;opacity:.4}.notification-empty p{margin:0;font-size:.85rem}.notification-list{list-style:none;margin:0;padding:0}.notification-item{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background .12s;position:relative}.notification-item:last-child{border-bottom:none}.notification-item:hover{background:#f8f9fa}.notification-item.notification-unread{background:#eff6ff;border-left:3px solid #2563eb;padding-left:calc(1rem - 3px)}.notification-item.notification-unread:hover{background:#dbeafe}.notification-unread-dot{width:8px;height:8px;border-radius:50%;background:#2563eb;flex-shrink:0;margin-top:6px}.notification-item-content{flex:1;min-width:0}.notification-item-title{font-size:.85rem;font-weight:600;color:#111;line-height:1.3;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-item-body{font-size:.78rem;color:#555;line-height:1.35;margin-bottom:3px}.notification-item-time{font-size:.7rem;color:#999}.notification-item.notif-priority-high .notification-item-title:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#ef4444;margin-right:6px;vertical-align:middle}.notification-dropdown-footer{display:flex;align-items:center;justify-content:space-between;padding:.6rem 1rem;border-top:1px solid #e0e0e0;flex-shrink:0}.notification-footer-link{display:flex;align-items:center;gap:4px;background:none;border:none;color:#2563eb;font-size:.8rem;font-weight:500;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .15s}.notification-footer-link:hover{background:#eff6ff}@media (max-width: 640px){.notification-dropdown{position:fixed;top:60px;left:0;right:0;width:auto;max-height:calc(100vh - 60px);border-radius:0;border-left:none;border-right:none}.notification-dropdown-body{max-height:calc(100vh - 160px)}}.tour-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9998;transition:opacity .3s var(--ease)}.tour-backdrop.dim{background:#0000008c}.tour-backdrop.blur{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.tour-spotlight{position:fixed;z-index:9999;border-radius:var(--radius-lg);pointer-events:none;transition:top .4s var(--ease),left .4s var(--ease),width .4s var(--ease),height .4s var(--ease)}.tour-spotlight.with-shadow{box-shadow:0 0 0 9999px #0000008c}.tour-spotlight:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:inherit;border:2px solid var(--accent);animation:tour-pulse 2s ease-in-out infinite}.tour-spotlight.black-border:after{border-color:#000;animation-name:tour-pulse-black}@keyframes tour-pulse{0%,to{border-color:var(--accent);opacity:1}50%{border-color:var(--accent-light);opacity:.6}}@keyframes tour-pulse-black{0%,to{border-color:#000;opacity:1}50%{border-color:#333;opacity:.6}}.tour-tooltip{position:fixed;z-index:10000;background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg),0 0 40px #0000001f;border:1px solid var(--border-light);max-width:400px;min-width:300px;padding:1.5rem;transition:top .4s var(--ease),left .4s var(--ease),opacity .3s var(--ease),transform .3s var(--ease);animation:tour-tooltip-in .35s var(--ease-bounce)}@keyframes tour-tooltip-in{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.tour-tooltip-icon{font-size:2rem;margin-bottom:.5rem;display:block}.tour-tooltip-title{font-family:Playfair Display,Georgia,serif;font-size:1.2rem;font-weight:700;color:var(--text-primary);margin-bottom:.5rem;line-height:1.3}.tour-tooltip-desc{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin-bottom:1.25rem}.tour-tooltip-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tour-step-counter{font-size:.75rem;font-weight:600;color:var(--text-muted);letter-spacing:.03em}.tour-tooltip-actions{display:flex;align-items:center;gap:.5rem}.tour-btn{padding:.5rem 1rem;font-size:.8rem;font-weight:600;border-radius:var(--radius);border:none;cursor:pointer;transition:all .2s var(--ease);letter-spacing:.02em}.tour-btn-skip{background:transparent;color:var(--text-muted);padding:.5rem .6rem}.tour-btn-skip:hover{color:var(--text-secondary);background:var(--bg-secondary)}.tour-btn-back{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border)}.tour-btn-back:hover{background:var(--bg-tertiary);color:var(--text-primary)}.tour-btn-next{background:var(--primary);color:#fff;box-shadow:0 2px 8px #1b3a5c33}.tour-btn-next:hover{background:var(--primary-dark);box-shadow:0 4px 12px #1b3a5c4d;transform:translateY(-1px)}.tour-btn-finish{background:var(--accent);color:var(--bg-dark);box-shadow:0 2px 8px #c8a25540}.tour-btn-finish:hover{background:var(--accent-light);transform:translateY(-1px)}.tour-progress{display:flex;gap:5px;margin-top:1rem}.tour-dot{width:6px;height:6px;border-radius:50%;background:var(--border);transition:all .3s var(--ease)}.tour-dot.active{background:var(--accent);transform:scale(1.3)}.tour-dot.completed{background:var(--primary-light)}.tour-welcome-card{position:fixed;z-index:10000;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg),0 0 60px #00000026;border:1px solid var(--border-light);max-width:480px;width:90vw;padding:2.5rem 2rem;text-align:center;animation:tour-tooltip-in .4s var(--ease-bounce)}.tour-welcome-icon{font-size:3rem;margin-bottom:1rem;display:block}.tour-welcome-title{font-family:Playfair Display,Georgia,serif;font-size:1.6rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.tour-welcome-desc{font-size:.95rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1.5rem}.tour-welcome-actions{display:flex;justify-content:center;gap:.75rem}@media (max-width: 640px){.tour-tooltip{min-width:unset;max-width:calc(100vw - 32px);padding:1rem}.tour-tooltip-icon{font-size:1.5rem;margin-bottom:.25rem}.tour-tooltip-title{font-size:1rem}.tour-tooltip-desc{font-size:.8rem;margin-bottom:.75rem;line-height:1.5}.tour-tooltip-footer{flex-wrap:wrap;gap:.4rem}.tour-tooltip-actions{flex-wrap:wrap}.tour-welcome-card{width:95vw;padding:1.5rem 1.25rem}.tour-welcome-title{font-size:1.25rem}.tour-welcome-icon{font-size:2rem;margin-bottom:.5rem}.tour-btn{padding:.6rem 1rem;font-size:.85rem}.tour-spotlight{z-index:10001}}.notif-settings-page{max-width:800px;margin:0 auto;padding:2rem 1rem}.notif-settings-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:3rem 1rem;color:#666;font-size:.9rem}.notif-settings-header{margin-bottom:2rem}.notif-settings-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:#2563eb;font-size:.85rem;font-weight:500;cursor:pointer;padding:.3rem 0;margin-bottom:.75rem;transition:opacity .15s}.notif-settings-back:hover{opacity:.7}.notif-settings-header h2{margin:0 0 .35rem;font-size:1.5rem;color:var(--text-primary, #111)}.notif-settings-subtitle{margin:0;font-size:.9rem;color:var(--text-secondary, #666)}.notif-settings-categories{display:flex;flex-direction:column;gap:1.5rem}.notif-settings-category{background:var(--bg-card, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;overflow:hidden}.notif-settings-category-title{margin:0;padding:.85rem 1.25rem;font-size:1rem;font-weight:600;color:var(--text-primary, #111);background:#f9fafb;border-bottom:1px solid var(--border, #e5e7eb)}.notif-settings-type-list{display:flex;flex-direction:column}.notif-settings-type-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.25rem;border-bottom:1px solid #f0f0f0}.notif-settings-type-row:last-child{border-bottom:none}.notif-settings-type-info{flex:1;min-width:0}.notif-settings-type-label{font-size:.9rem;font-weight:600;color:var(--text-primary, #111);margin-bottom:2px}.notif-settings-type-desc{font-size:.78rem;color:var(--text-secondary, #888);line-height:1.35}.notif-settings-type-controls{display:flex;align-items:center;gap:1rem;flex-shrink:0}.notif-toggle-label{display:flex;align-items:center;gap:5px;cursor:pointer;font-size:.8rem;color:var(--text-primary, #333);-webkit-user-select:none;user-select:none}.notif-toggle-label input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb;cursor:pointer}.notif-toggle-text{white-space:nowrap}.notif-digest-select{padding:.3rem .5rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.78rem;background:var(--bg-input, #fff);color:var(--text-primary, #111);cursor:pointer}.freq-picker{display:flex;flex-direction:column;gap:6px}.freq-picker-modes{display:flex;gap:2px;background:#f1f5f9;border-radius:6px;padding:2px}.freq-picker-radio{display:flex;align-items:center;gap:0;padding:4px 10px;border-radius:5px;cursor:pointer;font-size:.75rem;color:#64748b;transition:all .15s;white-space:nowrap}.freq-picker-radio input{display:none}.freq-picker-radio--active{background:#fff;color:#1e293b;font-weight:600;box-shadow:0 1px 2px #00000014}.freq-picker-extras{display:flex;gap:8px;align-items:center}.freq-picker-select-label{display:flex;align-items:center;gap:4px;font-size:.72rem;color:#64748b}.freq-picker-select{padding:2px 6px;border:1px solid var(--border, #d1d5db);border-radius:5px;font-size:.72rem;background:var(--bg-input, #fff);color:var(--text-primary, #111);cursor:pointer}.notif-settings-msg{padding:.6rem 1rem;border-radius:8px;font-size:.85rem;margin-top:1rem}.notif-settings-msg-success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.notif-settings-msg-error{background:#fef2f2;color:#991b1b;border:1px solid #fca5a5}.notif-settings-actions{display:flex;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem}.notif-settings-save-btn{display:inline-flex;align-items:center;gap:6px;padding:.6rem 1.5rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.notif-settings-save-btn:hover{background:#1d4ed8}.notif-settings-save-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){.notif-settings-page{padding:1rem .75rem}.notif-settings-type-row{flex-direction:column;align-items:flex-start;gap:.6rem}.notif-settings-type-controls{width:100%;flex-wrap:wrap;gap:.75rem}.notif-digest-select{flex:1;min-width:100px}.notif-settings-header h2{font-size:1.25rem}}.notif-list-page{max-width:800px;margin:0 auto;padding:2rem 1rem}.notif-list-header{margin-bottom:1.5rem}.notif-list-header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.notif-list-back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:#2563eb;font-size:.85rem;font-weight:500;cursor:pointer;padding:.3rem 0;transition:opacity .15s}.notif-list-back:hover{opacity:.7}.notif-list-settings-link{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid var(--border, #d1d5db);color:var(--text-secondary, #666);font-size:.8rem;font-weight:500;cursor:pointer;padding:.35rem .75rem;border-radius:6px;transition:background .15s,border-color .15s}.notif-list-settings-link:hover{background:#f3f4f6;border-color:#aaa}.notif-list-title-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.notif-list-title-row h2{margin:0;font-size:1.5rem;color:var(--text-primary, #111)}.notif-list-unread-badge{background:#eff6ff;color:#2563eb;font-size:.75rem;font-weight:600;padding:.2rem .6rem;border-radius:12px}.notif-list-controls{display:flex;align-items:center;justify-content:space-between;gap:1rem}.notif-list-filters{display:flex;gap:0;border:1px solid var(--border, #d1d5db);border-radius:8px;overflow:hidden}.notif-filter-tab{padding:.4rem 1rem;background:var(--bg-card, #fff);border:none;font-size:.8rem;font-weight:500;color:var(--text-secondary, #666);cursor:pointer;transition:background .12s,color .12s}.notif-filter-tab:not(:last-child){border-right:1px solid var(--border, #d1d5db)}.notif-filter-tab:hover{background:#f3f4f6}.notif-filter-tab.notif-filter-active{background:#2563eb;color:#fff}.notif-list-mark-all{display:inline-flex;align-items:center;gap:5px;background:none;border:none;color:#2563eb;font-size:.8rem;font-weight:500;cursor:pointer;padding:.3rem .5rem;border-radius:4px;transition:background .15s;white-space:nowrap}.notif-list-mark-all:hover{background:#eff6ff}.notif-list-mark-all:disabled{opacity:.5;cursor:not-allowed}.notif-list-body{background:var(--bg-card, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;overflow:hidden}.notif-list-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:3rem 1rem;color:#666;font-size:.9rem}.spin{animation:notif-spin 1s linear infinite}@keyframes notif-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.notif-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center}.notif-list-empty-icon{color:#ccc;margin-bottom:.75rem}.notif-list-empty-title{margin:0 0 .35rem;font-size:1rem;font-weight:600;color:var(--text-primary, #333)}.notif-list-empty-desc{margin:0;font-size:.85rem;color:var(--text-secondary, #888)}.notif-list-items{display:flex;flex-direction:column}.notif-list-item{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem 1.25rem;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background .12s;position:relative}.notif-list-item:last-child{border-bottom:none}.notif-list-item:hover{background:#f8f9fa}.notif-list-item.notif-list-item-unread{background:#eff6ff;border-left:3px solid #2563eb;padding-left:calc(1.25rem - 3px)}.notif-list-item.notif-list-item-unread:hover{background:#dbeafe}.notif-list-item-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.notif-icon-listing{background:#dbeafe;color:#2563eb}.notif-icon-client{background:#dcfce7;color:#16a34a}.notif-icon-support{background:#fef3c7;color:#d97706}.notif-icon-system{background:#f3f4f6;color:#6b7280}.notif-icon-security{background:#fce7f3;color:#db2777}.notif-list-item-content{flex:1;min-width:0}.notif-list-item-title-row{display:flex;align-items:center;gap:6px;margin-bottom:2px}.notif-list-item-title{font-size:.9rem;font-weight:600;color:var(--text-primary, #111);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notif-list-item-dot{width:8px;height:8px;border-radius:50%;background:#2563eb;flex-shrink:0}.notif-list-item-body{font-size:.82rem;color:#555;line-height:1.4;margin-bottom:4px}.notif-list-item-meta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.notif-list-item-time{font-size:.72rem;color:#999}.notif-list-item-category{font-size:.68rem;font-weight:500;color:#888;background:#f3f4f6;padding:.1rem .45rem;border-radius:4px;text-transform:capitalize}.notif-list-item-priority-high{font-size:.68rem;font-weight:600;color:#dc2626;background:#fef2f2;padding:.1rem .45rem;border-radius:4px}.notif-list-item-delete{background:none;border:none;color:#ccc;cursor:pointer;padding:.3rem;border-radius:4px;opacity:0;transition:opacity .15s,color .15s,background .15s;flex-shrink:0;margin-top:2px}.notif-list-item:hover .notif-list-item-delete{opacity:1}.notif-list-item-delete:hover{color:#ef4444;background:#fef2f2}.notif-list-item-delete:disabled{opacity:.5;cursor:not-allowed}.notif-list-load-more{display:flex;justify-content:center;padding:.85rem 1rem;border-top:1px solid #f0f0f0}.notif-list-load-more-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--border, #d1d5db);color:var(--text-secondary, #555);font-size:.82rem;font-weight:500;cursor:pointer;padding:.4rem 1.2rem;border-radius:6px;transition:background .15s,border-color .15s}.notif-list-load-more-btn:hover{background:#f3f4f6;border-color:#aaa}.notif-list-load-more-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){.notif-list-page{padding:1rem .75rem}.notif-list-title-row h2{font-size:1.25rem}.notif-list-controls{flex-direction:column;align-items:flex-start}.notif-list-item{padding:.75rem .85rem}.notif-list-item-icon{width:32px;height:32px}.notif-list-item-delete{opacity:1}.notif-list-item-title{white-space:normal}}.app{min-height:100vh;display:flex;flex-direction:column}.demo-banner{background:#f59e0b;color:#fff;text-align:center;padding:.4rem 0;font-size:.85rem;font-weight:600;letter-spacing:.03em}.header{background:var(--bg-dark);position:sticky;top:0;z-index:100;box-shadow:0 2px 12px #00000026;display:flex;align-items:center;width:100%}.header-content{display:flex;align-items:center;height:60px;width:100%;min-width:0;padding:0 1rem;gap:.5rem}.logo-area{display:flex;align-items:center;gap:.6rem;flex-shrink:0;min-width:0}.header-org-logo{height:60px;width:auto;max-width:120px;object-fit:contain;flex-shrink:0;margin-right:.75rem}.logo{font-family:Playfair Display,Georgia,serif;font-size:1.5rem;font-weight:700;color:var(--accent);letter-spacing:.02em}.agent-badge{display:flex;align-items:center;gap:.4rem;background:#ffffff14;padding:.2rem .6rem .2rem .2rem;border-radius:20px}.agent-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.7rem;font-weight:700;flex-shrink:0;overflow:hidden}.agent-avatar-img{width:100%;height:100%;object-fit:cover}.agent-badge-name{font-size:.75rem;color:#ffffffb3;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav{display:flex;align-items:center;gap:.15rem;flex:1;justify-content:flex-end;min-width:0;flex-wrap:nowrap}.nav-link{padding:.45rem .65rem;font-size:.75rem;font-weight:500;color:#fff9;border-radius:var(--radius-sm);transition:all .2s var(--ease);letter-spacing:.03em;text-transform:uppercase;position:relative;white-space:nowrap;flex-shrink:0}.nav-link:hover{text-decoration:none;color:#ffffffe6;background:#ffffff0f}.nav-link.tour-not-seen{border:1.5px solid #ff4444;animation:tour-highlight-pulse 2s infinite;box-shadow:0 0 8px #f443}@keyframes tour-highlight-pulse{0%{border-color:#f44;box-shadow:0 0 #f440}50%{border-color:#f88;box-shadow:0 0 10px #f446}to{border-color:#f44;box-shadow:0 0 #f440}}.nav-link.active{color:var(--accent);background:#c8a2551a}.nav-link.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:16px;height:2px;background:var(--accent);border-radius:1px}.language-selector{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#ffffffb3;padding:.35rem 1.8rem .35rem .65rem;font-size:.75rem;font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s var(--ease);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='rgba(255,255,255,0.5)' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .4rem center;background-repeat:no-repeat;background-size:1.2em 1.2em;margin-left:.25rem;flex-shrink:0}.language-selector:hover{background-color:#ffffff1f;border-color:#fff3;color:#fff}.language-selector:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #c8a25526}.language-selector option{background:var(--bg-dark);color:#ddd}.nav-user{padding:.35rem .5rem;font-size:.7rem;font-weight:500;color:#ffffff8c;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0}.nav-logout-btn{background:none;border:none;cursor:pointer;font-family:inherit}button.nav-link{background:transparent;border:none;cursor:pointer;font-family:inherit}.auth-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-secondary);font-size:.9rem}.main{flex:1;padding:2rem 0}.main-map{padding:0;overflow:hidden}.main-landing{padding:0}.footer{background:var(--bg-dark);padding:1.25rem 0;text-align:center;color:#ffffff59;font-size:.8rem;letter-spacing:.02em;border-top:1px solid rgba(255,255,255,.06)}.hamburger-btn{display:none;flex-direction:column;justify-content:center;gap:4px;background:none;border:none;cursor:pointer;padding:8px;margin-left:auto}.hamburger-line{display:block;width:22px;height:2px;background:#fffc;border-radius:1px;transition:transform .2s,opacity .2s}@media (min-width: 1400px){.nav-link{padding:.45rem .9rem;font-size:.8rem}.nav{gap:.25rem}.nav-user{max-width:140px;font-size:.75rem}}@media (max-width: 1100px){.header-content{padding:0 .5rem;gap:.35rem}.logo{font-size:1.1rem!important}.nav-link{padding:.4rem .45rem;font-size:.68rem;letter-spacing:.01em}.nav{gap:.05rem}.agent-badge-name{max-width:90px;font-size:.65rem}.header-org-logo{max-width:90px;height:50px}.language-selector{padding:.3rem 1.6rem .3rem .5rem;font-size:.68rem;margin-left:.25rem}.nav-user{max-width:80px;font-size:.65rem;padding:.3rem .35rem}}@media (max-width: 640px){.header-content{flex-wrap:wrap;height:auto;min-height:50px;padding:6px 12px}.logo-area{flex:1;min-width:0}.logo{font-size:1rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-badge{display:none}.header-org-logo{height:40px;max-width:80px}.hamburger-btn{display:flex}.nav{display:none;flex-direction:column;width:100%;padding:4px 0 8px;gap:2px;flex:unset;justify-content:flex-start}.nav.nav-open{display:flex}.nav .nav-link,.nav button.nav-link{width:100%;text-align:left;padding:10px 12px;font-size:.85rem;border-radius:6px;flex-shrink:unset}.nav .nav-link.active:after{display:none}.nav-user{padding:8px 12px;max-width:none;font-size:.8rem}.language-selector{margin:4px 12px;width:calc(100% - 24px)}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #1b3a5c;--primary-dark: #122840;--primary-light: #2a5a8c;--accent: #c8a255;--accent-light: #e0c882;--accent-subtle: rgba(200, 162, 85, .08);--secondary: #5a6b7d;--success: #2d8659;--success-light: #d4edda;--warning: #c4890e;--warning-light: #fef3c7;--danger: #c0392b;--danger-light: #fde8e5;--bg-primary: #ffffff;--bg-secondary: #f6f7f9;--bg-tertiary: #eceef2;--bg-dark: #0e1a2b;--bg-card: #ffffff;--text-primary: #1a1e2c;--text-secondary: #4a5568;--text-muted: #8a95a7;--text-inverse: #f0f2f5;--border: #e0e4ea;--border-light: #edf0f4;--border-accent: rgba(200, 162, 85, .25);--shadow-sm: 0 1px 2px rgb(0 0 0 / .04);--shadow: 0 1px 3px rgb(0 0 0 / .06), 0 1px 2px rgb(0 0 0 / .04);--shadow-md: 0 4px 12px rgb(0 0 0 / .07), 0 1px 3px rgb(0 0 0 / .04);--shadow-lg: 0 10px 30px rgb(0 0 0 / .08), 0 4px 8px rgb(0 0 0 / .04);--shadow-accent: 0 4px 14px rgba(27, 58, 92, .12);--radius: 8px;--radius-sm: 5px;--radius-lg: 12px;--radius-xl: 16px;--ease: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1)}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background-color:var(--bg-secondary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--primary-light);text-decoration:none;transition:color .2s var(--ease)}a:hover{color:var(--accent);text-decoration:none}button{font-family:inherit;cursor:pointer}input,select,textarea{font-family:inherit}.container{max-width:1400px;margin:0 auto;padding:0 1.5rem}.card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow);border:1px solid var(--border-light);transition:box-shadow .25s var(--ease),transform .25s var(--ease)}.card:hover{box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.875rem;font-weight:600;letter-spacing:.01em;border-radius:var(--radius);border:1px solid transparent;transition:all .2s var(--ease)}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 1px 3px #1b3a5c33}.btn-primary:hover{background:var(--primary-dark);box-shadow:0 2px 8px #1b3a5c4d;transform:translateY(-1px)}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border)}.btn-secondary:hover{background:var(--bg-secondary);border-color:var(--primary-light);color:var(--primary)}.input{width:100%;padding:.6rem .875rem;font-size:.875rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.input:focus{outline:none;border-color:var(--primary-light);box-shadow:0 0 0 3px #1b3a5c14}.input::placeholder{color:var(--text-muted)}.label{display:block;font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem}.grid{display:grid;gap:1.25rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.spinner{width:28px;height:28px;border:2.5px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.badge{display:inline-flex;align-items:center;padding:.2rem .6rem;font-size:.7rem;font-weight:600;letter-spacing:.02em;border-radius:9999px}.badge-success{background:var(--success-light);color:var(--success)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-danger{background:var(--danger-light);color:var(--danger)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:#1b3a5c26;color:var(--text-primary)}@media (max-width: 640px){.container{padding:0 .75rem}}
