:root{--background:#eef2e6;--surface:#fffdf0;--surface-soft:#eef1c7;--text:#0a3323;--text-soft:#335c4b;--muted:#6b8463;--border:#c9d0a7;--purple:#105666;--purple-dark:#0a3323;--purple-soft:#e5ebbf;--yellow:#d3968c;--teal:#105666;--green:#839958;--green-dark:#526336;--rosy:#d3968c;--shadow:0 18px 48px rgba(10,51,35,0.14)}*{box-sizing:border-box}html{background:var(--background);color:var(--text);font-family:Arial,sans-serif}body{margin:0}.dev-build-badge{background:rgba(10,51,35,.92);border:1px solid rgba(255,253,240,.35);border-radius:8px;bottom:.75rem;color:#fffdf0;font-size:.78rem;font-weight:800;left:.75rem;line-height:1.2;max-width:calc(100vw - 1.5rem);padding:.45rem .65rem;position:fixed;z-index:50}a{color:inherit}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #105666;outline-offset:3px}.listing-icon{display:inline-block;flex:0 0 auto;height:1.125rem;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:1.125rem}.top-nav{align-items:center;background:var(--surface);border-bottom:1px solid var(--border);display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:1fr auto 1fr;min-height:74px;padding:.85rem clamp(1rem,3vw,2rem);position:relative;z-index:20}.menu-button{align-items:center;background:transparent;border:0;cursor:pointer;display:inline-grid;gap:4px;height:40px;justify-content:center;padding:0;width:40px}.menu-button span{background:var(--text);border-radius:999px;display:block;height:2px;transition:opacity .16s ease,transform .16s ease;width:22px}.menu-button[aria-expanded=true] span:first-child{transform:translateY(6px) rotate(45deg)}.menu-button[aria-expanded=true] span:nth-child(2){opacity:0}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-6px) rotate(-45deg)}.top-nav.compact{grid-template-columns:190px 1fr auto;box-shadow:0 2px 18px rgba(10,51,35,.08);position:-webkit-sticky;position:sticky;top:0}.top-nav.compact .menu-button{display:none}.top-nav.compact .brand{justify-self:start}.top-nav.compact .ghost-button{justify-self:end}.brand{color:var(--purple);font-size:1.55rem;font-weight:900;gap:.6rem;letter-spacing:0;text-decoration:none}.brand,.brand-symbol{align-items:center;display:inline-flex}.brand-symbol{background:var(--purple);border-radius:12px;color:white;font-size:1rem;height:38px;justify-content:center;width:38px}.top-nav:not(.compact) .brand{justify-self:center}.top-nav:not(.compact) .ghost-button{justify-self:end}.top-nav nav{display:flex;gap:clamp(1rem,3vw,2rem);justify-content:center}.top-nav:not(.compact) nav{display:none}.top-nav:not(.compact) nav.top-nav-menu{display:grid}.top-nav nav a{font-weight:800;text-decoration:none}.top-nav-menu{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 50px rgba(10,51,35,.16);display:grid;grid-gap:.2rem;gap:.2rem;left:clamp(1rem,3vw,2rem);min-width:210px;padding:.45rem;position:absolute;top:calc(100% - .45rem);z-index:8}.top-nav .top-nav-menu a,.top-nav .top-nav-menu button{background:transparent;border:0;border-radius:6px;color:var(--text);display:block;font-weight:800;padding:.7rem .8rem;text-align:left;text-decoration:none;width:100%}.top-nav .top-nav-menu a:focus-visible,.top-nav .top-nav-menu a:hover,.top-nav .top-nav-menu button:focus-visible,.top-nav .top-nav-menu button:hover{background:var(--mist)}.ghost-button{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-weight:800;min-height:42px;padding:.55rem .95rem;text-decoration:none}.auth-shell{min-height:100vh}.auth-nav{z-index:4}.auth-hero{background:linear-gradient(90deg,rgba(10,51,35,.88),rgba(16,86,102,.7)),url(https://images.unsplash.com/photo-1560518883-ce09059eeffa?auto=format&fit=crop&w=1800&q=80);background-position:50%;background-size:cover;color:white;min-height:290px;padding:clamp(3rem,7vw,5.5rem) clamp(1rem,5vw,5rem)}.auth-hero .eyebrow{color:rgba(255,255,255,.78)}.auth-hero h1{font-size:clamp(2.25rem,5vw,4.5rem);letter-spacing:0;line-height:.95;margin:0 0 1rem;max-width:760px}.auth-hero p{font-size:1.1rem;line-height:1.6;margin:0;max-width:680px}.account-grid,.admin-shell-panel,.auth-panel,.auth-state-card{margin:clamp(1.25rem,4vw,3rem) auto;max-width:1120px;width:calc(100% - 2rem)}.auth-panel,.auth-state-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:1.25rem;gap:1.25rem;padding:clamp(1.25rem,3vw,2rem)}.account-card h2,.account-summary h2,.admin-workspace h2,.auth-panel h2,.auth-state-card h2{font-size:clamp(1.45rem,3vw,2.25rem);letter-spacing:0;line-height:1.05;margin:.25rem 0 .65rem}.account-card p,.account-summary p,.admin-workspace p,.auth-panel p,.auth-state-card p{color:var(--text-soft);line-height:1.6;margin:0}.auth-form{display:grid;grid-gap:.85rem;gap:.85rem;max-width:520px}.auth-form.secondary{border-top:1px solid var(--border);margin-top:.25rem;padding-top:1.25rem}.auth-form label{color:var(--text);display:grid;font-weight:800;grid-gap:.45rem;gap:.45rem}.auth-form input{background:white;color:var(--text);min-height:48px;padding:.8rem .9rem}.auth-debug-token,.auth-form input{border:1px solid var(--border);border-radius:8px}.auth-debug-token{background:var(--purple-soft);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;padding:.8rem}.auth-status{background:var(--purple-soft);border-radius:8px;color:var(--text);font-weight:800;padding:.85rem 1rem}.auth-state-card.error,.auth-state-card.forbidden,.auth-status.error{border-color:rgba(211,150,140,.72)}.account-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1.15fr) repeat(2,minmax(0,.9fr))}.account-card,.account-summary,.admin-sidebar,.admin-workspace{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);padding:clamp(1.15rem,3vw,1.75rem)}.account-summary dl{display:grid;grid-gap:.75rem;gap:.75rem;margin:1.25rem 0}.account-summary dl div{border-top:1px solid var(--border);display:grid;grid-gap:.2rem;gap:.2rem;padding-top:.75rem}.account-summary dt{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.account-summary dd{margin:0;overflow-wrap:anywhere}.saved-listings-mini-list{display:grid;grid-gap:.6rem;gap:.6rem;margin-top:1rem}.saved-listings-mini-list a{background:white;border:1px solid var(--border);border-radius:8px;color:var(--text);display:grid;grid-gap:.25rem;gap:.25rem;padding:.75rem;text-decoration:none}.saved-listings-mini-list a:hover{border-color:rgba(16,86,102,.42)}.saved-listings-mini-list span{color:var(--text-soft);font-size:.9rem}.auth-mode-tabs{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.35rem;gap:.35rem;grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px;padding:.35rem}.auth-mode-tabs button{background:transparent;border:0;border-radius:6px;color:var(--text-soft);cursor:pointer;font-weight:900;min-height:42px}.auth-mode-tabs button.active{background:var(--purple);color:white}.auth-checkbox{align-items:start;display:grid;grid-gap:.65rem;gap:.65rem;grid-template-columns:auto minmax(0,1fr)}.auth-checkbox input{height:1.1rem;margin-top:.15rem;min-height:0;width:1.1rem}.auth-secondary-panel{border-top:1px solid var(--border);max-width:520px;padding-top:.85rem}.auth-secondary-panel summary{cursor:pointer;font-weight:900}.auth-state-card.compact{box-shadow:none;margin:0;width:100%}.saved-favourites-workspace{display:grid;grid-gap:1rem;gap:1rem;grid-column:1/-1}.saved-favourites-header{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between}.saved-favourites-header h2{font-size:clamp(1.45rem,3vw,2.25rem);line-height:1.05;margin:.25rem 0 0}.saved-favourites-empty{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);display:grid;grid-gap:.75rem;gap:.75rem;max-width:720px;padding:clamp(1.15rem,3vw,1.75rem)}.saved-favourites-empty h3,.saved-favourites-empty p{margin:0}.saved-favourites-empty p{color:var(--text-soft);line-height:1.55}.saved-favourites-layout{align-items:start;display:grid;grid-gap:clamp(1rem,1.4vw,1.5rem);gap:clamp(1rem,1.4vw,1.5rem);grid-template-columns:minmax(620px,3fr) minmax(420px,2fr)}.saved-favourites-list{display:grid;grid-gap:1rem;gap:1rem}.saved-listing-card{margin-bottom:0}.saved-listing-card .listing-media-link{height:clamp(248px,24vw,330px)}.saved-listing-card .listing-secondary-actions{align-items:flex-end}.saved-listing-card .listing-detail-link{display:inline-flex;min-height:40px;padding:.55rem 0}.saved-favourites-map-panel{align-self:start;display:grid;grid-gap:1rem;gap:1rem;position:-webkit-sticky;position:sticky;top:96px}.saved-favourites-map-card .tile-map{height:clamp(620px,calc(100vh - 190px),860px);min-height:620px}.admin-shell-panel{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:250px minmax(0,1fr)}.admin-sidebar{align-self:start;display:grid;grid-gap:.5rem;gap:.5rem;position:-webkit-sticky;position:sticky;top:96px}.admin-sidebar a{border-radius:8px;color:var(--text);font-weight:900;padding:.75rem .85rem;text-decoration:none}.admin-sidebar a:hover{background:var(--purple-soft)}.admin-metric-row{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:1.5rem}.admin-metric-row div{background:var(--purple-soft);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.25rem;gap:.25rem;min-height:92px;padding:1rem}.admin-metric-row span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.admin-metric-row strong{font-size:1.35rem}.admin-portal{display:grid;grid-gap:1rem;gap:1rem;margin:clamp(1.25rem,4vw,3rem) auto;max-width:1380px;width:calc(100% - 2rem)}.admin-card-grid,.admin-filter-row,.admin-operations,.admin-portal-header,.admin-split-view,.admin-toolbar,.admin-view-tabs{width:100%}.admin-portal-header{align-items:start;display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) minmax(260px,360px)}.admin-diagnostics h3,.admin-inline-state h3,.admin-portal-header h2{font-size:clamp(1.45rem,3vw,2.15rem);letter-spacing:0;line-height:1.05;margin:.25rem 0 .65rem}.admin-diagnostics p,.admin-inline-state p,.admin-portal-header p,.admin-toolbar p{color:var(--text-soft);line-height:1.55;margin:0}.admin-diagnostics,.admin-inline-state,.admin-mini-card,.admin-safety-note{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.admin-safety-note{display:grid;grid-gap:.4rem;gap:.4rem;padding:1rem}.admin-safety-note strong{color:var(--purple);font-size:1.1rem}.admin-safety-note span{color:var(--text-soft);line-height:1.45}.admin-view-tabs{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:flex;gap:.35rem;overflow-x:auto;padding:.35rem}.admin-view-tabs button{background:transparent;border:0;border-radius:7px;color:var(--text);cursor:pointer;flex:0 0 auto;font-weight:900;min-height:42px;padding:.65rem .9rem}.admin-view-tabs button.active,.admin-view-tabs button[aria-selected=true]{background:var(--purple);color:white}.admin-toolbar{align-items:center;display:flex;gap:1rem;justify-content:space-between}.admin-pagination{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.admin-pagination span{color:var(--muted);font-weight:900}.admin-pagination .ghost-button{min-height:36px;padding:.4rem .7rem}.admin-pagination .ghost-button:disabled{cursor:not-allowed;opacity:.55}.admin-filter-row{align-items:end;background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(5,minmax(130px,1fr)) auto;padding:.85rem}.admin-filter-row label{color:var(--text);display:grid;font-size:.78rem;font-weight:900;grid-gap:.35rem;gap:.35rem;text-transform:uppercase}.admin-filter-row input,.admin-filter-row select{background:white;border:1px solid var(--border);border-radius:8px;color:var(--text);min-height:42px;padding:.55rem .65rem;text-transform:none}.admin-split-view{align-items:start;display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1.45fr) minmax(340px,.85fr)}.admin-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow);overflow:auto}.admin-table{border-collapse:collapse;min-width:860px;width:100%}.admin-table td,.admin-table th{border-bottom:1px solid var(--border);padding:.85rem;text-align:left;vertical-align:top}.admin-table th{background:var(--purple-soft);color:var(--text);font-size:.75rem;font-weight:900;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:1}.admin-table td{color:var(--text-soft);font-size:.92rem}.admin-table td span,.admin-table td strong{display:block}.admin-table td strong{color:var(--text);line-height:1.25;margin-bottom:.25rem}.admin-table td span{color:var(--muted);font-size:.82rem}.admin-inline-state{display:grid;grid-gap:.35rem;gap:.35rem;padding:1.1rem}.admin-inline-state.error{border-color:rgba(211,150,140,.72)}.admin-diagnostics{display:grid;grid-gap:1rem;gap:1rem;max-height:calc(100vh - 120px);overflow:auto;padding:1rem;position:-webkit-sticky;position:sticky;top:96px}.admin-chip-row{display:flex;flex-wrap:wrap;gap:.4rem}.admin-chip-row span{background:var(--purple-soft);border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:.78rem;font-weight:900;padding:.25rem .55rem}.admin-diagnostic-grid{display:grid;grid-gap:.75rem;gap:.75rem}.admin-diagnostic-block{background:white;border:1px solid var(--border);border-radius:8px;overflow:hidden}.admin-diagnostic-block summary{cursor:pointer;font-weight:900;padding:.8rem}.admin-diagnostic-block pre{background:#f7f8ef;border-top:1px solid var(--border);color:var(--text);font-size:.78rem;line-height:1.45;margin:0;max-height:320px;overflow:auto;padding:.8rem;white-space:pre-wrap;word-break:break-word}.admin-card-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-mini-card{display:grid;grid-gap:.45rem;gap:.45rem;min-height:108px;padding:1rem}.admin-mini-card span{color:var(--muted);font-size:.82rem;font-weight:900;overflow-wrap:anywhere;text-transform:uppercase}.admin-mini-card strong{color:var(--text);font-size:2rem}.admin-operations{display:grid;grid-gap:1rem;gap:1rem}@media (max-width:860px){.auth-nav{grid-template-columns:1fr auto}.auth-nav nav{grid-column:1/-1;justify-content:flex-start;overflow-x:auto;padding-bottom:.15rem}.auth-hero{min-height:250px}.account-grid,.admin-metric-row,.admin-shell-panel{grid-template-columns:1fr}.admin-sidebar{position:static}.admin-card-grid,.admin-portal-header,.admin-split-view{grid-template-columns:1fr}.admin-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-diagnostics{max-height:none;position:static}}@media (max-width:560px){.admin-pagination,.admin-toolbar{align-items:stretch;flex-direction:column}.admin-filter-row{grid-template-columns:1fr}.admin-view-tabs button{min-width:max-content}}.hero{min-height:760px;position:relative}.hero-visual{background:linear-gradient(180deg,rgba(10,51,35,.08),rgba(10,51,35,.42)),url(https://images.unsplash.com/photo-1600566753190-17f0baa2a6c3?auto=format&fit=crop&w=1800&q=80);background-position:center 42%;background-size:cover;height:430px;overflow:hidden;position:relative}.photo-card{display:none}.photo-card.large{height:240px;right:11%;top:58px;transform:rotate(-3deg);width:340px}.photo-card.small{height:120px;width:180px}.photo-card.top{right:34%;top:36px;transform:rotate(5deg)}.photo-card.bottom{right:30%;top:205px;transform:rotate(-8deg)}.home-search-panel{background:var(--surface);border-radius:24px 24px 14px 14px;box-shadow:var(--shadow);left:50%;max-width:1040px;padding:2.25rem 2rem 2rem;position:absolute;top:338px;transform:translateX(-50%);width:calc(100% - 2rem)}.home-search-panel.guided-active{max-width:1180px;padding-bottom:1rem;top:318px}.home-search-panel.guided-active h1{font-size:clamp(2.25rem,3.8vw,3.65rem);max-width:940px}.home-search-panel.guided-active .hero-copy{margin-top:.9rem}.eyebrow{color:var(--purple);font-weight:900;margin:0 0 .8rem;text-align:center}.home-search-panel h1{font-size:clamp(2.35rem,4.6vw,4.15rem);line-height:1.03;margin:0 auto;max-width:860px;text-align:center}.hero-copy{color:var(--text-soft);font-size:1.15rem;line-height:1.45;margin:1.2rem auto 0;max-width:760px;text-align:center}.search-tabs{border-bottom:1px solid var(--border);display:grid;grid-template-columns:repeat(4,1fr);margin:1.35rem -2rem}.search-tabs a,.search-tabs button{align-items:center;background:transparent;border:0;border-bottom:3px solid transparent;color:var(--text-soft);cursor:pointer;display:inline-flex;font-weight:900;justify-content:center;min-height:52px;text-decoration:none}.kartsokning-page{display:grid;grid-gap:.85rem;gap:.85rem;min-height:100vh;padding:clamp(.75rem,2vw,1.25rem)}.kartsokning-header{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:auto minmax(0,1fr) auto;padding:.85rem}.kartsokning-header h1{font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.08;margin:0}.kartsokning-breadcrumbs,.kartsokning-mode-toggle{align-items:center;display:flex;flex-wrap:wrap;gap:.45rem}.kartsokning-mode-toggle{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;padding:.22rem}.kartsokning-breadcrumbs button,.kartsokning-mode-toggle button{border:0;cursor:pointer;font-weight:900}.kartsokning-mode-toggle button{background:transparent;border-radius:999px;color:var(--text-soft);min-height:36px;padding:.35rem .72rem}.kartsokning-mode-toggle button.active{background:#ffffff;box-shadow:0 6px 16px rgba(10,51,35,.12);color:var(--teal)}.kartsokning-breadcrumbs{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.55rem}.kartsokning-breadcrumbs button{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;color:var(--text-soft);min-height:36px;padding:.35rem .72rem}.kartsokning-breadcrumbs button[aria-current=page]{background:rgba(16,86,102,.12);border-color:rgba(16,86,102,.42);color:var(--text)}.kartsokning-region-strip{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;display:flex;gap:.45rem;overflow-x:auto;padding:.55rem;scrollbar-width:thin}.kartsokning-region-strip button{background:#ffffff;border:1px solid var(--border);border-radius:999px;color:var(--text-soft);cursor:pointer;flex:0 0 auto;font-weight:900;min-height:34px;padding:.34rem .68rem;white-space:nowrap}.kartsokning-region-strip button.active{background:rgba(16,86,102,.12);border-color:rgba(16,86,102,.42);color:var(--text)}.kartsokning-status{background:rgba(211,150,140,.16);border:1px solid rgba(180,109,99,.35);border-radius:8px;color:var(--text);font-weight:800;margin:0;padding:.65rem .8rem}.kartsokning-status.error{background:rgba(180,109,99,.16)}.kartsokning-workspace{align-items:stretch;display:grid;grid-gap:.85rem;gap:.85rem;grid-template-columns:minmax(0,1fr) minmax(320px,390px);min-height:calc(100vh - 184px)}.kartsokning-map-shell,.kartsokning-results{min-height:0;min-width:0}.kartsokning-map{background:#d7e0cc;border:1px solid var(--border);border-radius:8px;height:100%;min-height:620px;overflow:hidden;position:relative}.kartsokning-map .tile-layer img{height:256px;position:absolute;width:256px}.kartsokning-area-layer{height:100%;inset:0;pointer-events:none;position:absolute;width:100%;z-index:2}.kartsokning-area-layer path{cursor:pointer;fill:rgba(131,153,88,.26);pointer-events:auto;stroke:rgba(10,51,35,.78);stroke-width:2;transition:fill .16s ease,stroke-width .16s ease}.kartsokning-area-layer path.selected,.kartsokning-area-layer path:hover{fill:rgba(16,86,102,.28);stroke:var(--teal);stroke-width:3}.kartsokning-area-label{background:rgba(255,253,240,.94);border:1px solid rgba(10,51,35,.24);border-radius:999px;box-shadow:0 8px 18px rgba(10,51,35,.14);color:var(--text);cursor:pointer;font-size:.82rem;font-weight:900;max-width:170px;min-height:32px;overflow-wrap:anywhere;padding:.28rem .55rem;position:absolute;transform:translate(-50%,-50%);z-index:4}.kartsokning-listing-marker{background:var(--rosy);border:2px solid #ffffff;border-radius:999px;box-shadow:0 6px 14px rgba(10,51,35,.2);height:16px;position:absolute;transform:translate(-50%,-50%);width:16px;z-index:5}.kartsokning-map-state{background:rgba(255,253,240,.94);border:1px solid var(--border);border-radius:999px;bottom:.75rem;color:var(--text-soft);font-size:.82rem;font-weight:900;left:.75rem;padding:.32rem .62rem;position:absolute;z-index:7}.kartsokning-results{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.kartsokning-results-header{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:1rem;justify-content:space-between;padding:.9rem}.kartsokning-results-header h2{font-size:1.22rem;margin:0}.kartsokning-results-header>strong{align-items:center;background:rgba(16,86,102,.12);border-radius:999px;color:var(--teal);display:inline-flex;font-size:1rem;height:42px;justify-content:center;min-width:42px;padding:0 .65rem}.kartsokning-empty{color:var(--text-soft);font-weight:800;margin:0;padding:.9rem}.kartsokning-listings{display:grid;grid-gap:.65rem;gap:.65rem;overflow:auto;padding:.9rem}.kartsokning-listing{background:rgba(255,255,255,.56);border:1px solid var(--border);border-radius:8px;color:inherit;display:grid;grid-gap:.2rem;gap:.2rem;padding:.72rem;text-decoration:none}.kartsokning-listing:hover{border-color:var(--teal)}.kartsokning-listing span{color:var(--teal);font-weight:900}.kartsokning-listing small,.kartsokning-listing strong{min-width:0;overflow-wrap:anywhere}.kartsokning-listing small{color:var(--text-soft);font-weight:800}@media (max-width:900px){.kartsokning-header,.kartsokning-workspace{grid-template-columns:1fr}.kartsokning-workspace{min-height:auto}.kartsokning-map{min-height:min(68vh,620px)}.kartsokning-results{display:none;max-height:none}.kartsokning-workspace.show-list .kartsokning-map-shell{display:none}.kartsokning-workspace.show-list .kartsokning-results{display:grid;min-height:58vh}}@media (max-width:520px){.kartsokning-page{padding:.5rem}.kartsokning-header{align-items:stretch}.kartsokning-header .secondary-link-button,.kartsokning-mode-toggle{width:100%}.kartsokning-mode-toggle{justify-content:stretch}.kartsokning-mode-toggle button{flex:1 1}.kartsokning-area-label{font-size:.72rem;max-width:118px}.kartsokning-map{min-height:62vh}}.search-tabs a.active,.search-tabs button.active{border-color:var(--purple);color:var(--text)}.search-form{display:grid;grid-gap:1rem;gap:1rem}.search-form.hero{display:flex;align-items:flex-end;flex-wrap:wrap;gap:1rem;min-height:0}.search-form.hero label{align-self:flex-end}.search-form.hero .main-query{flex:1 1 420px;min-width:0}.search-form.hero .filter-button{flex:0 0 150px;height:58px}.search-form.hero .search-button{align-self:flex-end;flex:0 0 170px;height:58px;min-height:58px}.search-form.hero .filter-grid{flex:1 0 100%}.url-analysis-form{animation:revealPanel .22s ease-out both;background:#f4f6ed;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.9rem;gap:.9rem;padding:1rem}.url-analysis-copy{display:grid;grid-gap:.35rem;gap:.35rem}.url-analysis-copy h2,.url-analysis-copy p,.url-analysis-note{margin:0}.url-analysis-copy h2{font-size:1.2rem}.url-analysis-copy p,.url-analysis-note{color:var(--text-soft);line-height:1.5}.url-analysis-field{display:grid;grid-gap:.45rem;gap:.45rem}.url-analysis-field span{color:var(--text);font-size:.8rem;font-weight:900;text-transform:uppercase}.url-analysis-field input{background:white;border:1px solid var(--border);border-radius:8px;color:var(--text);min-height:54px;min-width:0;padding:0 1rem}.url-analysis-submit{min-height:54px}.url-analysis-state{border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.55rem;gap:.55rem;padding:.85rem}.url-analysis-state h3,.url-analysis-state p{margin:0}.url-analysis-state.loading{background:white}.url-analysis-state.loading ol{display:grid;grid-gap:.35rem;gap:.35rem;margin:0;padding-left:1.25rem}.url-analysis-state.error{background:#fff7f2;border-color:rgba(163,61,47,.28);color:#7a2f25}.guided-search{animation:revealPanel .22s ease-out both;background:#f4f6ed;border:1px solid var(--border);border-radius:18px;display:grid;grid-gap:0;gap:0;overflow:hidden}.guided-chat-header{align-items:center;background:var(--purple);color:white;display:flex;gap:.75rem;padding:.85rem 1rem}.guided-chat-header h2,.guided-chat-header p{margin:0}.guided-chat-header h2{font-size:1rem}.guided-chat-header p{font-size:.85rem;opacity:.82}.chat-avatar,.guided-avatar{align-items:center;background:white;border-radius:999px;color:var(--purple);display:inline-flex;flex:0 0 auto;font-size:.8rem;font-weight:900;height:32px;justify-content:center;width:32px}.guided-builder{background:linear-gradient(180deg,#f8faef,#edf2e5);padding:1rem}.guided-builder,.guided-step-grid{display:grid;grid-gap:.85rem;gap:.85rem}.guided-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guided-step{background:rgba(255,255,255,.78);border:1px solid rgba(16,86,102,.14);border-radius:8px;display:grid;grid-gap:.65rem;gap:.65rem;margin:0;min-width:0;padding:.85rem}.guided-refinement span,.guided-step label,.guided-step legend,.guided-token-panel>span{color:var(--text);font-size:.8rem;font-weight:900;text-transform:uppercase}.guided-option-row{display:flex;flex-wrap:wrap;gap:.5rem}.guided-inline-input button,.guided-option-row button,.guided-token-row button{border-radius:8px;cursor:pointer;font-weight:900}.guided-option-row button{background:#f8faf3;border:1px solid rgba(16,86,102,.22);color:var(--text);min-height:42px;padding:.55rem .75rem}.guided-option-row.compact button{min-height:38px;padding:.45rem .65rem}.guided-option-row button.selected,.guided-option-row button:hover,.guided-option-row button[aria-pressed=true]{background:var(--purple);border-color:var(--purple);color:white}.guided-inline-input{display:grid;grid-gap:.45rem;gap:.45rem;grid-template-columns:minmax(0,1fr) auto}.guided-inline-input input,.guided-refinement textarea{background:white;border:1px solid var(--border);border-radius:8px;color:var(--text);min-width:0;padding:.65rem .75rem}.guided-inline-input button{background:var(--teal);border:1px solid var(--teal);color:white;min-height:42px;padding:0 .75rem}.guided-refinement,.guided-token-panel{display:grid;grid-gap:.55rem;gap:.55rem}.guided-refinement textarea{min-height:82px;resize:vertical}.guided-token-panel{background:white;border:1px solid var(--border);border-radius:8px;padding:.75rem}.guided-token-row{display:flex;flex-wrap:wrap;gap:.5rem}.guided-token-row p{color:var(--text-soft);margin:0}.guided-token-row button{align-items:center;background:#fffdf0;border:1px solid rgba(16,86,102,.22);color:var(--text);display:inline-flex;gap:.45rem;max-width:100%;min-height:36px;overflow-wrap:anywhere;padding:.4rem .6rem}.guided-token-row button span{color:var(--muted);font-size:1rem;line-height:1}.guided-inline-error,.guided-inline-note{border-top:1px solid var(--border);font-weight:900;margin:0;padding:.75rem 1rem}.guided-inline-error{background:#fff7f2;color:#7a2f25}.guided-inline-note{background:#fffdf0;color:var(--text-soft)}.guided-chat{background:linear-gradient(180deg,#f8faef,#edf2e5);display:grid;grid-gap:.75rem;gap:.75rem;max-height:390px;min-height:250px;overflow:auto;padding:1rem 1rem .85rem}.sr-only{height:1px;margin:-1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.chat-row{align-items:flex-end;display:flex;gap:.45rem}.chat-row.user{justify-content:flex-end}.chat-bubble{box-shadow:0 4px 16px rgba(10,51,35,.08);border-radius:18px;line-height:1.45;margin:0;max-width:min(78%,620px);overflow-wrap:anywhere;padding:.75rem .9rem}.chat-bubble.assistant{background:white;border-bottom-left-radius:6px}.chat-bubble.user{background:#0b5f73;border-bottom-right-radius:4px;color:white}.chat-bubble.thinking{color:var(--text-soft);font-style:italic}.guided-quick-replies{align-items:center;display:flex;flex-wrap:wrap;gap:.55rem;margin-left:2.75rem}.guided-quick-replies button{background:white;border:1px solid rgba(16,86,102,.22);border-radius:999px;color:var(--text);cursor:pointer;font-weight:900;min-height:40px;padding:.5rem .8rem}.guided-quick-replies button:focus-visible,.guided-quick-replies button:hover{border-color:var(--purple);color:var(--purple)}.guided-quick-replies button.primary{background:var(--purple);border-color:var(--purple);color:white}.guided-chat-summary{background:rgba(255,255,255,.82);border:1px solid rgba(16,86,102,.14);border-radius:8px;display:grid;grid-gap:.55rem;gap:.55rem;margin-left:2.75rem;max-width:min(680px,calc(100% - 3rem));padding:.75rem}.guided-chat-summary>span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.chat-listing-card{background:white;border:1px solid var(--border);border-radius:18px;box-shadow:0 12px 28px rgba(10,51,35,.1);color:var(--text);display:grid;grid-template-columns:132px minmax(0,1fr);max-width:min(760px,calc(100% - 2rem));overflow:hidden;text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.chat-listing-card:hover{border-color:var(--purple);box-shadow:0 16px 34px rgba(10,51,35,.16);transform:translateY(-1px)}.chat-listing-card:focus-visible{outline:3px solid rgba(16,86,102,.32);outline-offset:3px}.chat-listing-media{background:var(--purple-soft);min-height:132px}.chat-listing-media img{display:block;height:100%;object-fit:cover;width:100%}.chat-listing-placeholder{background:radial-gradient(circle at 32% 36%,rgba(255,253,240,.88) 0 20%,transparent 21%),linear-gradient(135deg,#c8e7db 0 48%,#839958 49% 100%);display:block;height:100%;min-height:132px}.chat-listing-body{display:grid;grid-gap:.35rem;gap:.35rem;padding:.8rem .95rem}.chat-listing-kicker{color:var(--muted);font-size:.78rem;font-weight:900}.chat-listing-body h3,.chat-listing-body p{margin:0}.chat-listing-body h3{font-size:1.35rem}.chat-listing-title{font-weight:900;overflow-wrap:anywhere}.chat-listing-meta{color:var(--text-soft);font-size:.9rem;overflow-wrap:anywhere}.chat-listing-reason{background:var(--purple-soft);border-left:4px solid var(--purple);border-radius:10px;line-height:1.4;margin-top:.25rem!important;overflow-wrap:anywhere;padding:.55rem .65rem}.chat-preview-status{background:white;border:1px solid var(--border);border-left:4px solid var(--teal);border-radius:10px;box-shadow:0 8px 22px rgba(10,51,35,.08);color:var(--text);display:grid;grid-gap:.3rem;gap:.3rem;max-width:min(680px,calc(100% - 2rem));overflow-wrap:anywhere;padding:.85rem 1rem}.chat-preview-status.error{border-left-color:#a33d2f}.chat-preview-status p,.chat-preview-status strong{margin:0}.chat-preview-status p{color:var(--text-soft);line-height:1.45}.guided-input-row{align-items:end;background:white;border-top:1px solid var(--border);display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:minmax(0,1fr) 110px;padding:.85rem 1rem}.guided-input-row input{background:#f8faf3;border:1px solid var(--border);border-radius:999px;color:var(--text);min-height:54px;padding:0 1.05rem}.guided-input-row button,.guided-suggestion button{background:var(--purple);border:1px solid var(--purple);border-radius:999px;color:white;cursor:pointer;font-weight:900;min-height:54px;padding:0 1rem}.guided-input-row button{background:var(--purple);color:white}.guided-input-row button:disabled,.guided-prompts button:disabled,.guided-quick-replies button:disabled{cursor:wait;opacity:.65}.guided-prompts{background:white;display:flex;flex-wrap:wrap;gap:.6rem;padding:0 1rem 1rem}.guided-prompts button{background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);cursor:pointer;font-weight:900;padding:.55rem .8rem}.guided-prompts .prompt-chip{background:#f8faf3;border-color:rgba(16,86,102,.22)}.guided-prompts .prompt-chip:hover{border-color:var(--purple);color:var(--purple)}.guided-prompts .reset-chat-button{background:#fff7f2;border-color:rgba(163,61,47,.28);color:#7a2f25;margin-left:auto}.guided-prompts .reset-chat-button:hover{background:#ffe8df}.guided-suggestion{align-items:center;background:#fffdf0;border-top:1px solid var(--border);display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) auto;padding:.9rem 1rem}.guided-suggestion.ready{background:#e8edbd;border-top-color:rgba(16,86,102,.22)}.guided-suggestion span{color:var(--muted);font-size:.82rem;font-weight:900}.guided-suggestion p{font-size:1.05rem;font-weight:900;margin:.2rem 0}.guided-suggestion .suggested-query{background:rgba(255,255,255,.78);border:1px solid rgba(16,86,102,.16);border-radius:6px;margin:.35rem 0;overflow-wrap:anywhere;padding:.55rem .65rem}.guided-suggestion small{color:var(--text-soft);display:block;font-weight:800;margin-top:.25rem}.guided-suggestion button:disabled{cursor:not-allowed;opacity:.62}.guided-search-state{height:1px;margin:-1px;overflow:hidden;position:absolute;width:1px}.search-form.bar{align-items:end;grid-template-columns:minmax(260px,1fr) 140px 160px;margin:0 auto;max-width:1220px}label{color:var(--text);display:grid;font-size:.92rem;font-weight:900;grid-gap:.5rem;gap:.5rem}.filter-grid input,.main-query input{background:var(--surface);border:1px solid var(--border);border-radius:4px;color:var(--text);min-height:58px;padding:0 1rem}.lookup-input-wrap{display:block;position:relative}.lookup-input-wrap input{width:100%}.lookup-suggestions{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 18px 36px rgba(10,51,35,.16);left:0;overflow:hidden;position:absolute;right:0;top:calc(100% + .45rem);z-index:30}.lookup-suggestions ul{display:grid;list-style:none;margin:0;max-height:min(340px,58vh);overflow:auto;padding:.35rem}.lookup-suggestions li{min-width:0}.lookup-suggestions button{background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text);cursor:pointer;display:grid;font:inherit;grid-gap:.22rem;gap:.22rem;min-height:58px;padding:.65rem .75rem;text-align:left;width:100%}.lookup-suggestions button.active,.lookup-suggestions button:hover,.lookup-suggestions button[aria-selected=true]{background:var(--surface-soft);border-color:rgba(16,86,102,.24)}.lookup-suggestion-main{align-items:center;display:flex;gap:.65rem;justify-content:space-between;min-width:0}.lookup-suggestion-main strong{min-width:0;overflow-wrap:anywhere}.lookup-suggestion-main span{background:rgba(16,86,102,.1);border-radius:999px;color:var(--teal);flex:0 0 auto;font-size:.74rem;font-weight:900;padding:.18rem .45rem}.lookup-suggestion-state,.lookup-suggestions small{color:var(--text-soft);font-size:.84rem;font-weight:800}.lookup-suggestion-state{margin:0;padding:.85rem 1rem}.search-form.hero .main-query input{height:58px}.filter-grid input::placeholder,.main-query input::placeholder{color:var(--muted);opacity:1}.filter-button,.search-button{border-radius:4px;cursor:pointer;font-weight:900;min-height:58px;padding:0 1rem}.filter-button{background:var(--surface);border:1px solid var(--border)}.search-button{background:var(--purple);border:1px solid var(--purple);color:white}.search-button:disabled{cursor:wait;opacity:.92}.button-loading{align-items:center;display:inline-flex;gap:.65rem;justify-content:center}.button-loading span{animation:spin .9s linear infinite;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:999px;height:18px;width:18px}.filter-grid{background:var(--surface-soft);border:1px solid var(--border);border-radius:10px;display:grid;grid-gap:1rem;gap:1rem;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));padding:1rem}.quick-section{margin:2.75rem auto 4rem;max-width:980px;padding:0 1rem}.quick-section h2{font-size:1.45rem}.quick-searches{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(4,minmax(0,1fr))}.quick-searches button{background:var(--surface);border:1px solid var(--border);border-radius:999px;cursor:pointer;font-weight:900;min-height:46px;padding:.75rem 1rem}.filter-bar{background:var(--surface);border-bottom:1px solid var(--border);padding:1rem clamp(1rem,3vw,2rem) 1.15rem}.results-layout{display:grid;grid-gap:clamp(1rem,1.4vw,1.5rem);gap:clamp(1rem,1.4vw,1.5rem);grid-template-columns:minmax(420px,2fr) minmax(560px,3fr);margin:1.15rem auto 4rem;max-width:none;padding:0 clamp(.75rem,1.25vw,1.5rem);width:100%}.results-heading{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.results-heading h1{font-size:1.55rem;margin:0 0 .85rem}.results-heading p{color:var(--text-soft);margin:0}.status-group-tabs{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.35rem;gap:.35rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:1.35rem 0 0;padding:.35rem}.status-group-tabs button{align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text-soft);cursor:pointer;display:flex;font:inherit;font-weight:900;gap:.5rem;justify-content:center;min-height:48px;padding:.55rem .7rem}.status-group-tabs button.active{background:var(--surface-soft);border-color:var(--teal);color:var(--text)}.status-group-tabs button:disabled{color:var(--muted);cursor:not-allowed}.status-group-tabs button:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.status-group-tabs strong{color:inherit;font-size:.95rem}.result-tools{align-items:center;border-bottom:1px solid var(--border);border-top:1px solid var(--border);display:flex;gap:1.5rem;justify-content:space-between;margin:1.4rem 0;padding:.9rem 0}.result-tools a,.result-tools button,.result-tools>span{background:transparent;border:0;color:inherit;cursor:pointer;font:inherit;font-weight:900;padding:0;text-decoration:underline}.sort-control{align-items:center;display:inline-flex;font-weight:900;gap:.45rem;min-width:220px}.sort-control select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);cursor:pointer;font:inherit;font-weight:900;min-height:40px;padding:.45rem 2rem .45rem .75rem}.result-tools button:disabled{color:var(--muted);cursor:not-allowed;text-decoration:none}.listing-secondary-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.55rem}.compare-toggle-button,.map-select-button{align-items:center;background:#ffffff;border:1px solid rgba(16,86,102,.38);border-radius:8px;color:var(--teal);cursor:pointer;display:inline-flex;gap:.4rem;justify-content:center;font-weight:900;min-height:40px;padding:.55rem .8rem}.compare-toggle-button[aria-pressed=true],.map-select-button[aria-pressed=true]{background:rgba(16,86,102,.1);border-color:var(--teal)}.map-select-button[aria-pressed=true]{color:var(--teal)}.compare-toggle-button:disabled{color:var(--muted);cursor:not-allowed}.compare-limit-note{color:var(--text-soft);flex-basis:100%;font-size:.9rem;margin:0}.compare-tray{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px 8px 0 0;bottom:0;box-shadow:0 -12px 32px rgba(10,51,35,.14);display:flex;gap:1rem;justify-content:space-between;left:50%;max-width:920px;padding:.85rem 1rem;position:-webkit-sticky;position:sticky;transform:translateX(-50%);width:min(calc(100vw - 2rem),920px);z-index:20}.compare-tray p{color:var(--text-soft);margin:.2rem 0 0}.compare-tray-actions{display:flex;flex-wrap:wrap;gap:.6rem}.compare-tray-actions button,.comparison-ai-panel button,.comparison-column button{border:1px solid var(--border);border-radius:8px;cursor:pointer;font:inherit;font-weight:900;min-height:40px;padding:.55rem .8rem}.compare-tray-actions button:first-child,.comparison-ai-panel button{background:var(--teal);border-color:var(--teal);color:var(--surface)}.compare-tray-actions button:disabled,.comparison-ai-panel button:disabled{background:var(--border);border-color:var(--border);color:var(--muted);cursor:not-allowed}.comparison-page{margin:1.8rem auto 5rem;max-width:1180px;padding:0 clamp(1rem,3vw,2rem)}.comparison-ai-panel,.comparison-grid,.comparison-header{margin-top:1.25rem}.comparison-ai-panel h2,.comparison-header h1{margin:.25rem 0 .5rem}.comparison-ai-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:1rem;gap:1rem;padding:1rem}.comparison-ai-result{display:grid;grid-gap:.8rem;gap:.8rem}.comparison-ai-result h3,.comparison-ai-result p{margin:0}.comparison-columns{display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:repeat(var(--comparison-columns),minmax(0,1fr))}.comparison-column{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.55rem;gap:.55rem;padding:1rem}.comparison-column img{aspect-ratio:4/3;border-radius:6px;object-fit:cover;width:100%}.comparison-column h2,.comparison-column p{margin:0}.comparison-table{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;margin:1rem 0 0;overflow:hidden}.comparison-row{border-bottom:1px solid var(--border);display:grid;grid-template-columns:180px repeat(var(--comparison-columns),minmax(0,1fr))}.comparison-row:last-child{border-bottom:0}.comparison-row dd,.comparison-row dt{margin:0;padding:.8rem}.comparison-row dt{background:var(--surface-soft);font-weight:900}.comparison-row dd{border-left:1px solid var(--border)}.comparison-trust-note{color:var(--text-soft);font-size:.92rem}.watch-panel{animation:revealPanel .24s ease-out both;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 12px 32px rgba(10,51,35,.08);display:grid;grid-gap:1rem;gap:1rem;margin:0 0 1.35rem;padding:1.25rem}.watch-panel h2,.watch-panel h3,.watch-panel p{margin:0}.watch-panel h2{font-size:1.25rem;margin-bottom:.35rem}.watch-panel h3{font-size:1rem}.watch-panel label{color:var(--text);display:grid;font-weight:900;grid-gap:.45rem;gap:.45rem}.watch-panel input{background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);min-height:46px;padding:.7rem .85rem}.watch-actions button:disabled,.watch-panel input:disabled{cursor:wait;opacity:.66}.watch-kicker{color:var(--purple);font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.watch-help{color:var(--muted);font-size:.92rem;line-height:1.45}.watch-choice{align-items:start;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.85rem;gap:.85rem;padding:1rem}.watch-choice>div{display:grid;grid-gap:.35rem;gap:.35rem}.watch-choice>button{background:var(--green);border:1px solid var(--green);border-radius:8px;color:white;cursor:pointer;font-weight:900;min-height:42px;padding:.6rem 1rem;width:-moz-fit-content;width:fit-content}.email-watch-choice{background:var(--soft-green)}.watch-actions{display:flex;flex-wrap:wrap;gap:.75rem}.watch-actions button{background:var(--purple);border:1px solid var(--purple);border-radius:8px;color:white;cursor:pointer;font-weight:900;min-height:42px;padding:.6rem 1rem}.watch-actions button+button{background:transparent;color:var(--text)}.watch-status{background:var(--purple-soft);border-left:4px solid var(--purple);border-radius:8px;color:var(--text);font-weight:800;padding:.8rem .95rem}.watch-status.success{background:rgba(121,184,157,.16);border-left-color:var(--green)}.watch-status.error{background:rgba(211,150,140,.16);border-left-color:#d3968c}.search-state-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:1rem;gap:1rem;margin:0 0 1.25rem;padding:1rem}.search-state-card.empty{border-color:rgba(211,150,140,.45)}.search-state-card h2,.search-state-card p{margin:0}.search-state-card h2{font-size:1.2rem;margin-bottom:.35rem}.search-state-card p{color:var(--text-soft);line-height:1.45}.search-constraint-list{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:.8rem 0 0;padding:0}.search-constraint-list li{background:rgba(255,255,255,.76);border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:.82rem;font-weight:900;max-width:100%;overflow-wrap:anywhere;padding:.28rem .6rem}.state-kicker{color:var(--purple)!important;font-size:.78rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.geo-context-card{background:#f7fbf8;border:1px solid rgba(16,86,102,.22);border-left:5px solid #105666;border-radius:8px;display:grid;grid-gap:.9rem;gap:.9rem;margin:0 0 1.25rem;padding:1rem}.geo-context-card.warning{background:#fff7f2;border-color:rgba(180,109,99,.42) rgba(180,109,99,.42) rgba(180,109,99,.42) #b46d63}.geo-context-card h2,.geo-context-card p{margin:0}.geo-context-card h2{font-size:1.15rem;margin-bottom:.35rem}.geo-context-card p{color:var(--text-soft);line-height:1.45}.geo-context-grid{display:grid;grid-gap:.6rem;gap:.6rem;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.geo-context-grid div{background:rgba(255,255,255,.78);border:1px solid var(--border);border-radius:8px;min-width:0;padding:.7rem}.geo-context-grid dt{color:var(--muted);font-size:.78rem;font-weight:900;margin-bottom:.22rem}.geo-context-grid dd{font-size:.9rem;font-weight:900;margin:0;overflow-wrap:anywhere}.geo-warning-list{display:grid;grid-gap:.45rem;gap:.45rem;list-style:none;margin:0;padding:0}.geo-empty-note,.geo-warning-list li{background:rgba(255,255,255,.78);border:1px solid rgba(180,109,99,.28);border-radius:8px;color:var(--text);font-weight:800;line-height:1.4;padding:.7rem .8rem}.search-state-card{align-items:center;grid-template-columns:minmax(0,1fr) auto}.search-state-card.error{background:#fff7f2;border-color:rgba(163,61,47,.28)}.search-state-card button{background:var(--purple);border:1px solid var(--purple);border-radius:8px;color:white;cursor:pointer;font-weight:900;min-height:44px;padding:.7rem 1rem}.search-state-card button:disabled{background:#eef0e7;border-color:var(--border);color:var(--muted);cursor:not-allowed}.empty-recovery-panel{display:grid;grid-gap:.6rem;gap:.6rem;margin-top:.8rem}.recovery-chip-list{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0}.recovery-chip-list button{align-items:center;background:rgba(255,255,255,.82);border:1px solid var(--border);color:var(--text);display:inline-flex;gap:.45rem;min-height:36px;padding:.35rem .6rem}.empty-recovery-actions{display:grid;grid-gap:.55rem;gap:.55rem;min-width:190px}.active-filter-note{background:rgba(255,255,255,.68);border:1px solid var(--border);border-radius:8px;color:var(--text)!important;font-weight:800;margin-top:.8rem!important;padding:.7rem .8rem}.search-validation{background:#fff7f2;border:1px solid rgba(163,61,47,.28);border-radius:8px;color:var(--text);flex:1 0 100%;font-weight:800;grid-column:1/-1;padding:.7rem .8rem}.search-validation p{margin:0}.search-validation p+p{margin-top:.35rem}.location-result-section{display:grid;grid-gap:1rem;gap:1rem;margin-bottom:1.1rem}.location-section-heading{align-items:center;background:var(--surface);border:1px solid var(--border);border-left:5px solid #105666;border-radius:8px;display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) auto;padding:.95rem 1rem}.location-section-heading.good{border-left-color:#839958}.location-section-heading.neutral{border-left-color:#105666}.location-section-heading.watch{border-left-color:#d3968c}.location-section-heading h2,.location-section-heading p{margin:0}.location-section-heading h2{font-size:1.12rem;margin-bottom:.25rem}.location-section-heading p{color:var(--text-soft);line-height:1.4}.location-section-heading>strong{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;color:var(--text);display:inline-flex;font-size:1rem;height:42px;justify-content:center;min-width:42px;padding:0 .75rem}.search-loading-card{align-items:center;background:radial-gradient(circle at 18% 20%,rgba(211,150,140,.28),transparent 30%),linear-gradient(135deg,var(--surface),#f3f0d1 58%,#e8e9bd);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);display:grid;grid-gap:1.35rem;gap:1.35rem;grid-template-columns:104px minmax(0,1fr);margin:1.25rem 0;overflow:hidden;padding:1.35rem;position:relative}.search-loading-card:after{animation:shimmer 2.2s ease-in-out infinite;background:linear-gradient(90deg,transparent,rgba(255,253,240,.72),transparent);content:"";inset:0;position:absolute;transform:translateX(-100%)}.search-loading-card>*{position:relative;z-index:1}.loading-orbit{align-items:center;background:rgba(16,86,102,.08);border:1px solid rgba(16,86,102,.18);border-radius:999px;display:grid;height:92px;justify-items:center;place-self:center;position:relative;width:92px}.loading-orbit:before{animation:pulse 1.8s ease-in-out infinite;background:var(--purple);border-radius:999px;content:"";height:34px;opacity:.98;width:34px}.loading-orbit span{animation:orbit 1.8s linear infinite;border:2px solid var(--purple);border-radius:999px;height:76px;position:absolute;width:76px}.loading-orbit span:nth-child(2){animation-delay:-.6s;height:58px;opacity:.7;width:58px}.loading-orbit span:nth-child(3){animation-delay:-1.2s;height:42px;opacity:.5;width:42px}.loading-kicker{color:var(--purple);font-size:.9rem;font-weight:900;margin:0 0 .35rem}.search-loading-card h2{font-size:clamp(1.35rem,2vw,1.8rem);margin:0}.loading-progress{background:rgba(16,86,102,.12);border-radius:999px;height:8px;margin:1rem 0 .9rem;overflow:hidden}.loading-progress span{animation:loadingProgress 1.55s ease-in-out infinite;background:linear-gradient(90deg,var(--purple),var(--rosy));border-radius:inherit;display:block;height:100%;width:44%}.loading-steps{color:var(--text-soft);display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}.loading-steps li{background:rgba(255,253,240,.72);border:1px solid rgba(201,208,167,.75);border-radius:999px;font-size:.86rem;font-weight:900;padding:.38rem .65rem}.map-page{margin:1.5rem auto 3rem;max-width:1380px;padding:0 clamp(1rem,3vw,2rem)}.map-page-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1rem}.map-page-header h1{font-size:1.8rem;margin:0 0 .35rem}.map-page-header p{color:var(--text-soft);margin:0}.map-location-summary{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:flex;flex-wrap:wrap;gap:.65rem;margin:0 0 1rem;padding:.7rem}.map-location-summary div{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;display:inline-flex;gap:.4rem;min-height:34px;padding:.25rem .65rem}.map-location-summary strong{color:var(--text)}.map-location-summary span:last-child{color:var(--text-soft);font-size:.85rem;font-weight:900}.location-dot{border-radius:999px;display:inline-block;height:.75rem;width:.75rem}.location-dot.exact{background:#839958}.location-dot.nearby{background:#105666}.location-dot.outside{background:#b46d63}.location-dot.unknown{background:#d3968c}.map-verification-layout{align-items:start;display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) 360px}.map-workspace{display:grid;grid-gap:.75rem;gap:.75rem;min-width:0}.map-layer-toolbar{background:var(--surface);grid-template-columns:repeat(auto-fit,minmax(132px,1fr));grid-gap:.6rem;gap:.6rem;padding:.7rem}.map-layer-toggle,.map-layer-toolbar{align-items:center;border:1px solid var(--border);border-radius:8px;display:grid}.map-layer-toggle{background:var(--surface-soft);cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;font-weight:900;grid-gap:.5rem;gap:.5rem;min-height:44px;padding:.45rem .65rem}.map-layer-toggle.active{background:rgba(16,86,102,.12);border-color:rgba(16,86,102,.45)}.map-layer-toggle input{accent-color:var(--teal);height:1rem;width:1rem}.map-layer-toggle span{min-width:0;overflow-wrap:anywhere}.map-layer-toggle strong{background:#ffffff;border:1px solid var(--border);border-radius:999px;color:var(--text-soft);font-size:.74rem;padding:.16rem .42rem}.map-layer-toggle.active strong{color:var(--teal)}.map-verification-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.9rem;gap:.9rem;max-height:calc(100vh - 180px);overflow:auto;padding:1rem;position:-webkit-sticky;position:sticky;top:92px}.map-verification-panel.selected{border-color:rgba(16,86,102,.45);box-shadow:0 0 0 3px rgba(16,86,102,.1)}.panel-kicker{color:var(--muted);font-size:.85rem;font-weight:900;margin:0 0 .25rem}.map-verification-panel h2,.map-verification-panel h3{margin:0}.verification-card{background:rgba(255,255,255,.55);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.7rem;gap:.7rem;padding:.85rem}.verification-highlight{align-items:baseline;display:flex;gap:.65rem}.verification-highlight strong{color:var(--teal);font-size:1.5rem}.verification-card dl{display:grid;grid-gap:.45rem;gap:.45rem;margin:0}.mini-party-list div,.verification-card dl div{align-items:baseline;border-top:1px solid var(--border);display:flex;gap:.75rem;justify-content:space-between;padding-top:.45rem}.verification-card dt{color:var(--muted);font-weight:900}.verification-card dd{font-weight:900;margin:0;text-align:right}.location-verification-card.good{border-left:5px solid #839958}.location-verification-card.neutral{border-left:5px solid #105666}.location-verification-card.watch{border-left:5px solid #d3968c}.location-verification-card .verification-highlight strong{color:var(--text);font-size:1.1rem}.mini-party-list{display:grid;grid-gap:.45rem;gap:.45rem}.mini-party-list strong{color:var(--teal)}.planning-map-list{display:grid;grid-gap:.45rem;gap:.45rem}.planning-map-list div{align-items:baseline;border-top:1px solid var(--border);display:flex;gap:.75rem;justify-content:space-between;padding-top:.45rem}.planning-map-list span{display:grid;grid-gap:.18rem;gap:.18rem;min-width:0}.planning-map-list small{color:var(--text-soft);font-weight:800}.planning-map-list strong{color:var(--teal);text-align:right}.listing-card{align-items:start;background:#ffffff;border:1.5px solid rgba(0,110,78,.64);border-radius:10px;display:grid;grid-template-columns:minmax(220px,min(42%,330px)) minmax(0,1fr);margin-bottom:1rem;overflow:hidden;position:relative;scroll-margin-top:104px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.listing-card:hover{border-color:#007f58;box-shadow:0 12px 28px rgba(10,51,35,.12);transform:translateY(-2px)}.listing-card:focus-within{border-color:#007f58;box-shadow:0 0 0 3px rgba(16,86,102,.18)}.listing-card.map-selected{border-color:var(--teal);box-shadow:0 0 0 3px rgba(16,86,102,.18),0 14px 34px rgba(10,51,35,.14)}.listing-card.map-selected:before{background:var(--teal);bottom:0;content:"";left:0;position:absolute;top:0;width:5px;z-index:2}.listing-card.map-selected:focus{outline:3px solid rgba(16,86,102,.34);outline-offset:3px}.listing-media-link{aspect-ratio:4/3;background:var(--surface-soft);color:inherit;display:block;height:clamp(248px,24vw,330px);min-height:0;overflow:hidden;position:relative;text-decoration:none;width:100%}.heart-button:focus-visible,.listing-content h2 a:focus-visible,.listing-detail-link:focus-visible,.listing-media-link:focus-visible{outline:3px solid rgba(16,86,102,.32);outline-offset:3px}.listing-media-link img,.listing-placeholder{display:block;height:100%;object-fit:cover;object-position:center;width:100%}.listing-placeholder{background:radial-gradient(circle at 25% 30%,rgba(255,255,255,.95) 0 13%,transparent 14%),linear-gradient(135deg,#839958,#839958 43%,#105666 44%,#0a3323);position:relative}.listing-placeholder span{background:rgba(255,255,255,.86);border-radius:4px 4px 0 0;bottom:56px;height:66px;left:50%;position:absolute;transform:translateX(-50%);width:112px}.listing-placeholder span:before{border-bottom:54px solid rgba(255,255,255,.86);border-left:66px solid transparent;border-right:66px solid transparent;content:"";left:-10px;position:absolute;top:-53px}.photo-count{background:rgba(8,40,32,.42);border-radius:999px;bottom:.75rem;color:white;font-size:0;font-weight:900;min-height:1.6rem;min-width:5rem;padding:.45rem .7rem;position:absolute;right:50%;transform:translateX(50%)}.photo-count:before{background:#ffffff;box-shadow:.85rem 0 0 rgba(255,255,255,.62),1.7rem 0 0 rgba(255,255,255,.48),2.55rem 0 0 rgba(255,255,255,.38),3.4rem 0 0 rgba(255,255,255,.34);border-radius:50%;content:"";display:block;height:.55rem;width:.55rem}.listing-content{display:grid;align-content:start;grid-gap:.75rem;gap:.75rem;grid-template-rows:auto;min-height:0;padding:1.3rem 1.45rem 1.05rem;position:relative}.listing-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;min-width:0}.listing-content h2{font-size:clamp(1.25rem,1.5vw,1.65rem);line-height:1.15;margin:0;overflow-wrap:anywhere}.listing-content h2 a{color:inherit;text-decoration:none}.listing-content h2 a:hover{color:var(--purple);text-decoration:underline}.fee-pill,.match-pill{background:var(--purple-soft);border-radius:4px;color:var(--purple);font-size:.9rem;font-weight:900;padding:.35rem .55rem}.fee-pill{background:rgba(255,255,255,.72);border:1px solid var(--border);color:var(--text-soft)}.match-pill.good{background:rgba(121,184,157,.18);color:#235943}.match-pill.neutral{background:rgba(16,86,102,.12);color:var(--teal)}.match-pill.watch{background:#fff7f2;color:#9f4f43}.heart-button{align-items:center;background:transparent;border:0;border-radius:999px;color:#007f58;cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:1.25rem;font-weight:900;height:2.5rem;justify-content:center;line-height:1;padding:0;transition:background .16s ease,color .16s ease,transform .16s ease;width:2.5rem}.heart-button:hover,.heart-button[aria-pressed=true]{background:rgba(0,127,88,.1);color:#007f58}.heart-button:disabled{cursor:wait;opacity:.64}.heart-button[aria-pressed=true] .listing-icon path{fill:currentColor}.heart-button:active{transform:scale(.96)}.heart-button-label{clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.listing-save-status{background:rgba(211,150,140,.16);border:1px solid rgba(180,109,99,.35);border-radius:8px;color:var(--text);font-size:.9rem;font-weight:800;margin:0;padding:.6rem .75rem}.listing-primary-copy{display:grid;grid-gap:.45rem;gap:.45rem;min-width:0}.address{color:var(--text-soft);font-size:clamp(1rem,1.1vw,1.18rem);margin:0;overflow-wrap:anywhere}.listing-headline-facts{align-items:baseline;color:var(--text);display:flex;flex-wrap:wrap;gap:.35rem .7rem;font-size:clamp(1.08rem,1.2vw,1.35rem);line-height:1.25;margin-top:.35rem}.listing-headline-facts strong{font-weight:950}.listing-secondary-facts{color:var(--text-soft);font-size:clamp(1rem,1.05vw,1.16rem);margin:0;overflow-wrap:anywhere}.listing-facts-grid{display:grid;grid-gap:.55rem;gap:.55rem;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.listing-facts-grid div{background:var(--surface-soft);border:1px solid var(--border);border-radius:6px;display:grid;grid-gap:0 .5rem;gap:0 .5rem;grid-template-columns:auto minmax(0,1fr);min-width:0;padding:.55rem .6rem}.listing-facts-grid dt{color:var(--text-soft);font-size:.72rem;font-weight:900;grid-column:2;margin-bottom:.2rem;text-transform:uppercase}.listing-facts-grid dd{font-size:.92rem;font-weight:900;grid-column:2;margin:0;overflow-wrap:anywhere}.fact-icon{align-self:center;color:var(--green-dark);display:inline-flex;grid-row:1/3;margin-top:.05rem}.detail-facts-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 1rem}.cost-facts{font-size:.92rem;font-weight:800;margin:0 0 .65rem}.cost-facts,.summary{color:var(--text-soft)}.summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.45;margin:0 0 .75rem;overflow:hidden}.chips{display:flex;flex-wrap:wrap;gap:.5rem}.chips span{border:1px solid var(--border);border-radius:4px;font-size:.82rem;font-weight:800;max-width:100%;overflow-wrap:anywhere;padding:.35rem .65rem}.ai-panel{background:transparent;border:0;color:var(--text-soft);min-height:0;padding:.4rem 0 0}.ai-panel p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:clamp(.98rem,1vw,1.1rem);line-height:1.42;margin:0;overflow-wrap:anywhere;overflow:hidden}.ai-panel ul{display:none}.listing-detail-link{align-self:center;color:var(--teal);font-weight:900;margin-left:auto;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.detail-stack{display:grid;grid-gap:.65rem;gap:.65rem;margin:.8rem 0}details{border:1px solid var(--border);border-radius:6px}summary{cursor:pointer;font-weight:900;padding:.85rem 1rem}details:not(.timeline-event)>summary{align-items:center;display:flex;justify-content:space-between;gap:1rem}details:not(.timeline-event)>summary:after{content:"⌄";display:inline-block;font-size:1rem;line-height:1;transform:rotate(0deg);transition:transform .18s ease}details[open]:not(.timeline-event)>summary:after{transform:rotate(180deg)}.details-content{animation:revealPanel .22s ease-out both;border-top:1px solid var(--border);display:grid;grid-gap:1.15rem;gap:1.15rem;padding:1rem}.details-section{display:grid;grid-gap:.65rem;gap:.65rem}.details-section+.details-section{border-top:1px solid var(--border);padding-top:1rem}.details-section h4{font-size:.95rem;margin:0}.tile-map{background:#d9e6dc;border:1px solid var(--border);border-radius:8px;cursor:-webkit-grab;cursor:grab;height:280px;overscroll-behavior:contain;overflow:hidden;position:relative;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;width:100%}.tile-map.dragging{cursor:-webkit-grabbing;cursor:grabbing}.tile-map.large{height:calc(100vh - 180px);min-height:620px}.tile-layer,.tile-layer img{height:100%;left:0;position:absolute;top:0;width:100%}.tile-layer img{height:256px;max-width:none;pointer-events:none;transition:left .24s ease,top .24s ease;width:256px}.map-marker{align-items:center;background:var(--purple);border:3px solid white;border-radius:999px;box-shadow:0 6px 18px rgba(10,51,35,.25);color:white;display:inline-flex;font-size:.85rem;font-weight:900;height:34px;justify-content:center;position:absolute;text-decoration:none;transform:translate(-50%,-100%);transition:left .24s ease,top .24s ease,transform .18s ease;width:34px;z-index:2}.map-marker.selected{background:var(--teal);box-shadow:0 0 0 5px rgba(16,86,102,.22),0 10px 24px rgba(10,51,35,.32)}.map-marker.location-exact{background:#66803f}.map-marker.location-nearby{background:#105666}.map-marker.location-outside,.map-marker.location-unknown{background:#b46d63}.map-marker.location-exact.selected,.map-marker.location-nearby.selected,.map-marker.location-outside.selected,.map-marker.location-unknown.selected{box-shadow:0 0 0 5px rgba(16,86,102,.24),0 10px 24px rgba(10,51,35,.34)}.map-marker:focus-visible{outline:3px solid #ffffff;outline-offset:4px}.requested-location-marker{align-items:center;color:#0a3323;display:inline-flex;gap:.38rem;max-width:min(220px,calc(100% - 2rem));pointer-events:none;position:absolute;transform:translate(-50%,-50%);transition:left .24s ease,top .24s ease;z-index:3}.requested-location-marker strong{background:rgba(255,255,255,.92);border:1px solid rgba(16,86,102,.35);border-radius:999px;box-shadow:0 6px 18px rgba(10,51,35,.16);font-size:.76rem;font-weight:900;max-width:160px;overflow:hidden;padding:.24rem .5rem;text-overflow:ellipsis;white-space:nowrap}.requested-location-pulse{border:2px solid rgba(16,86,102,.32);border-radius:999px;height:58px;left:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:58px}.requested-location-dot{background:#ffffff;border:5px solid #105666;border-radius:999px;box-shadow:0 6px 18px rgba(10,51,35,.2);height:22px;position:relative;width:22px}.noise-map-overlay{border:3px solid rgba(255,255,255,.85);border-radius:999px;height:78px;opacity:.72;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:78px;z-index:1}.noise-map-overlay.quiet,.noise-map-overlay.very-quiet{background:rgba(131,153,88,.36);box-shadow:0 0 0 14px rgba(131,153,88,.12)}.noise-map-overlay.moderate{background:rgba(211,150,140,.3);box-shadow:0 0 0 14px rgba(211,150,140,.13)}.noise-map-overlay.high,.noise-map-overlay.very-high{background:rgba(123,42,31,.28);box-shadow:0 0 0 14px rgba(123,42,31,.12)}.planning-map-overlay{height:0;left:50%;overflow:visible;pointer-events:none;position:absolute;top:50%;width:0;z-index:2}.planning-map-overlay path{fill:rgba(221,183,81,.18);stroke:#8a6416;stroke-dasharray:7 5;stroke-linejoin:round;stroke-width:3;vector-effect:non-scaling-stroke}.planning-map-overlay circle{fill:rgba(221,183,81,.5);stroke:#8a6416;stroke-width:3;vector-effect:non-scaling-stroke}.planning-map-overlay .selected{fill:rgba(221,183,81,.26);stroke:var(--teal);stroke-width:4}.election-map-badge,.event-map-badge{align-items:center;border:2px solid white;border-radius:999px;color:white;display:inline-flex;font-size:.75rem;font-weight:900;height:24px;justify-content:center;min-width:24px;padding:0 .35rem;pointer-events:none;position:absolute;transform:translate(-50%,-50%);z-index:3}.event-map-badge{background:#d3968c}.election-map-badge{background:var(--green-dark)}.map-marker-cluster{background:var(--purple);cursor:pointer;font:inherit}.tile-map.dragging .election-map-badge,.tile-map.dragging .event-map-badge,.tile-map.dragging .map-marker,.tile-map.dragging .noise-map-overlay,.tile-map.dragging .planning-map-overlay circle,.tile-map.dragging .planning-map-overlay path,.tile-map.dragging .tile-layer img{transition:none}.map-marker:hover{transform:translate(-50%,-100%) scale(1.08)}.map-zoom-controls{display:grid;grid-gap:.35rem;gap:.35rem;position:absolute;right:.75rem;top:.75rem;z-index:3}.map-zoom-controls button{align-items:center;background:white;border:1px solid var(--border);border-radius:6px;box-shadow:0 4px 12px rgba(10,51,35,.15);color:var(--text);cursor:pointer;display:inline-flex;font-size:1.25rem;font-weight:900;height:36px;justify-content:center;line-height:1;width:36px}.map-zoom-controls button:hover{background:var(--purple-soft)}.map-zoom-controls button:disabled{cursor:not-allowed;opacity:.48}.map-zoom-controls button:disabled:hover{background:white}.map-reset-button{font-size:.92rem!important}.map-attribution{background:rgba(255,255,255,.88);border-radius:4px 0 0 0;bottom:0;color:var(--text);font-size:.72rem;font-weight:800;padding:.18rem .35rem;position:absolute;right:0;text-decoration:none;z-index:4}.map-attribution:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.map-link{align-items:center;display:inline-flex;gap:.4rem;font-weight:900}.single-listing-map-page{display:grid;grid-gap:1.25rem;gap:1.25rem;margin:0 auto 3rem;max-width:1440px;padding:1rem clamp(1rem,3vw,2rem)}.single-map-header{align-items:flex-end;display:flex;gap:1rem;justify-content:space-between}.single-map-header h1,.single-map-header p{margin:0}.single-map-header h1{font-size:clamp(1.8rem,3vw,2.7rem)}.single-map-header>div{display:grid;grid-gap:.35rem;gap:.35rem;min-width:0}.single-map-header .secondary-link-button{min-width:150px}.single-map-layout{align-items:start;display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) 360px}.single-map-workspace{min-width:0}.single-listing-tile-map{height:calc(100vh - 190px);min-height:620px}.single-map-context{display:grid;grid-gap:.85rem;gap:.85rem;max-height:calc(100vh - 190px);overflow:auto;padding-right:.2rem;position:-webkit-sticky;position:sticky;top:1rem}.single-map-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.7rem;gap:.7rem;padding:1rem}.single-map-card.featured{border-left:5px solid var(--purple)}.single-map-card h2,.single-map-card p{margin:0}.single-map-card>span{color:var(--muted);font-size:.78rem;font-weight:900;text-transform:uppercase}.single-map-card dl{display:grid;grid-gap:.5rem;gap:.5rem;margin:0}.single-map-card dl div{border-top:1px solid var(--border);display:grid;grid-gap:.18rem;gap:.18rem;padding-top:.5rem}.single-map-card dt{color:var(--muted);font-size:.8rem;font-weight:900}.single-map-card dd{font-weight:900;margin:0;overflow-wrap:anywhere}.metric-grid{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr))}.metric span{color:var(--muted);display:block;font-size:.78rem;font-weight:900;margin-bottom:.25rem}.metric strong{font-size:1.12rem}.daily-life-profile{display:grid;grid-gap:1rem;gap:1rem}.daily-life-summary{border-left:4px solid var(--purple);border-radius:8px;display:grid;grid-gap:.35rem;gap:.35rem;padding:.9rem 1rem}.daily-life-summary.good{background:rgba(131,153,88,.18);border-left-color:var(--green)}.daily-life-summary.neutral{background:rgba(16,86,102,.1);border-left-color:var(--purple)}.daily-life-summary.watch{background:rgba(211,150,140,.18);border-left-color:var(--rosy)}.daily-life-summary span{font-weight:900}.daily-life-summary p{color:var(--text-soft)}.daily-life-grid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.daily-life-card{background:#ffffff;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.25rem;gap:.25rem;padding:.9rem}.daily-life-card small,.daily-life-card span{align-items:center;color:var(--muted);display:inline-flex;font-size:.82rem;font-weight:900;gap:.35rem}.daily-life-card strong{font-size:1.8rem;line-height:1}.healthcare-provider-profile{display:grid;grid-gap:1rem;gap:1rem}.healthcare-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.healthcare-provider-list{display:grid;grid-gap:.75rem;gap:.75rem}.healthcare-provider-row{align-items:center;background:#ffffff;border:1px solid var(--border);border-radius:8px;display:flex;gap:1rem;justify-content:space-between;padding:.9rem 1rem}.healthcare-provider-row h3{font-size:1rem;line-height:1.25;margin:0 0 .15rem}.healthcare-provider-row p{color:var(--muted);font-size:.9rem;margin:0}.healthcare-provider-row a,.healthcare-source-note a{font-weight:900;white-space:nowrap}.healthcare-source-note{align-items:center;background:rgba(16,86,102,.08);border:1px solid var(--border);border-radius:8px;display:flex;gap:1rem;justify-content:space-between;padding:.85rem 1rem}.healthcare-source-note p{color:var(--text-soft);font-size:.9rem;margin:0}.listing-footer{align-items:center;border-top:1px solid var(--border);justify-content:space-between;margin-top:auto;padding-top:.9rem}.listing-footer,.listing-footer div{display:flex;gap:1rem}.listing-footer a{font-weight:900}.agency-logo{align-items:center;background:white;border:1px solid var(--border);border-radius:6px;display:inline-flex;min-width:110px;padding:.45rem .65rem}.agency-logo img{display:block;height:30px;object-fit:contain;width:92px}.agency-pill{background:var(--purple-soft);border-radius:6px;color:var(--purple-dark);font-weight:900;padding:.45rem .7rem}.results-map-panel{align-self:start;display:grid;grid-gap:1rem;gap:1rem;position:-webkit-sticky;position:sticky;top:96px}.results-map-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.75rem;gap:.75rem;overflow:hidden;padding:.75rem}.results-map-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.results-map-header h2,.results-map-header p{margin:0}.results-map-header h2{font-size:1.15rem;margin-bottom:.35rem}.results-map-header p:not(.state-kicker){color:var(--text-soft);line-height:1.45}.results-map-header .ghost-button{flex:0 0 auto;white-space:nowrap}.results-map-card .tile-map{height:clamp(700px,calc(100vh - 150px),920px);min-height:700px}.results-map-empty{align-items:center;background:var(--surface-soft);border:1px dashed var(--border);border-radius:8px;color:var(--text-soft);display:grid;grid-gap:.65rem;gap:.65rem;justify-items:center;min-height:360px;padding:1.25rem;text-align:center}.results-map-empty p{margin:0}.results-map-empty .listing-icon{color:var(--purple);height:30px;width:30px}.aside-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1rem}.aside-card h2{font-size:1.15rem;margin:0 0 .6rem}.aside-card p{color:var(--text-soft);line-height:1.45}.aside-card button{background:var(--surface);border:1px solid var(--purple-dark);border-radius:4px;cursor:pointer;display:block;font-weight:900;margin-top:.75rem;min-height:44px;width:100%}.muted{color:var(--muted)}.listing-detail-page{margin:0 auto 4rem;max-width:1180px;padding:2rem clamp(1rem,3vw,2rem)}.back-link{color:var(--purple-dark);display:inline-block;font-weight:900;margin-bottom:1rem}.detail-mobile-identity{display:none}.detail-hero{border-radius:10px;display:grid;grid-gap:.35rem;gap:.35rem;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);max-height:520px;overflow:hidden}.detail-photo-grid,.detail-photo-main{background:var(--surface-soft)}.detail-photo-grid img,.detail-photo-main img{display:block;height:100%;object-fit:cover;width:100%}.detail-photo-main{min-height:420px}.detail-hero.empty,.detail-hero.image-count-1{display:block}.detail-hero.empty .detail-photo-main,.detail-hero.image-count-1 .detail-photo-main{min-height:clamp(320px,48vw,540px)}.detail-hero.image-count-2,.detail-hero.image-count-3{grid-template-columns:minmax(0,1.45fr) minmax(220px,.8fr)}.detail-photo-grid{display:grid;grid-gap:.35rem;gap:.35rem;grid-template-columns:repeat(2,minmax(0,1fr))}.detail-hero.image-count-2 .detail-photo-grid,.detail-hero.image-count-3 .detail-photo-grid{grid-template-columns:1fr}.detail-photo-thumb{min-height:0;overflow:hidden;position:relative}.detail-photo-thumb span{align-items:center;background:rgba(10,51,35,.72);color:white;display:flex;gap:.4rem;font-weight:900;inset:0;justify-content:center;position:absolute;text-align:center}.detail-state-card{align-items:center;background:linear-gradient(135deg,var(--surface),#f7f1d9 60%,#e6ead1);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);display:grid;grid-gap:1.25rem;gap:1.25rem;grid-template-columns:96px minmax(0,1fr);margin-top:1rem;min-height:260px;padding:clamp(1.25rem,3vw,2rem)}.detail-state-card.error{background:#fff7f2}.detail-state-card h1,.detail-state-card p{margin:0}.detail-state-card h1{font-size:clamp(1.55rem,3vw,2.35rem)}.detail-state-card p{color:var(--text-soft);line-height:1.55}.detail-state-kicker{color:var(--purple)!important;font-size:.85rem;font-weight:900;margin-bottom:.45rem!important}.detail-state-mark,.detail-state-orbit{align-items:center;background:rgba(16,86,102,.08);border:1px solid rgba(16,86,102,.18);border-radius:999px;display:grid;height:86px;justify-items:center;place-self:center;position:relative;width:86px}.detail-state-orbit:before{animation:pulse 1.8s ease-in-out infinite;background:var(--purple);border-radius:999px;content:"";height:30px;width:30px}.detail-state-orbit span{animation:orbit 1.8s linear infinite;border:2px solid var(--purple);border-radius:999px;height:70px;position:absolute;width:70px}.detail-state-orbit span:nth-child(2){animation-delay:-.8s;height:52px;opacity:.6;width:52px}.detail-state-mark{background:#fee2e2;border-color:rgba(127,29,29,.18);color:#7f1d1d;font-size:2rem;font-weight:900}.detail-state-card .secondary-link-button{display:inline-flex;margin-top:1rem}.detail-layout{display:grid;grid-gap:2rem;gap:2rem;grid-template-columns:minmax(0,1fr) 300px;margin-top:2rem}.detail-main{display:grid;grid-gap:1.25rem;gap:1.25rem}.detail-title-row{align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between}.detail-price{font-size:clamp(2rem,4vw,3rem);font-weight:900;line-height:1;margin:0 0 .5rem}.detail-title-row h1{font-size:clamp(1.6rem,3vw,2.4rem);margin:0}.imported-badge-row{align-items:center;color:var(--text-soft);display:flex;flex-wrap:wrap;gap:.55rem;font-weight:800;margin-bottom:.75rem}.imported-analysis-badge{background:var(--purple-soft);border:1px solid rgba(91,61,112,.24);border-radius:999px;color:var(--purple-dark);display:inline-flex;font-size:.8rem;font-weight:900;padding:.28rem .6rem}.imported-warning{background:#fffdf0;border-color:rgba(16,86,102,.2)}.imported-action-button{border:1px solid var(--purple-dark);cursor:pointer;width:100%}.imported-action-button:disabled{cursor:not-allowed;opacity:.65}.agency-box{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.45rem;gap:.45rem;justify-items:center;min-width:180px;padding:.9rem}.agency-box img{display:block;max-height:42px;max-width:145px;object-fit:contain}.agency-box span{color:var(--text-soft);font-size:.85rem;text-align:center}.detail-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:1rem;gap:1rem;padding:1.25rem}.detail-section h2{font-size:1.25rem;margin:0}.detail-section h3{font-size:1rem;margin:.25rem 0 -.25rem}.detail-section p{line-height:1.6;margin:0}.planning-context-profile{display:grid;grid-gap:1.1rem;gap:1.1rem}.planning-detail-grid,.planning-summary-grid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.planning-card,.planning-card-list{display:grid;grid-gap:.9rem;gap:.9rem}.planning-card{background:#ffffff;border:1px solid var(--border);border-radius:8px;min-width:0;padding:1rem}.planning-card header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.planning-card header>div{min-width:0}.planning-card h3{overflow-wrap:anywhere}.planning-card header p{color:var(--text-soft);margin-top:.35rem;overflow-wrap:anywhere}.planning-status{border:1px solid var(--border);border-radius:999px;display:inline-flex;font-size:.78rem;font-weight:900;margin-bottom:.55rem;padding:.3rem .65rem}.planning-status.good{background:rgba(131,153,88,.16);border-color:rgba(131,153,88,.4);color:var(--green-dark)}.planning-status.neutral{background:rgba(16,86,102,.1);border-color:rgba(16,86,102,.28);color:var(--teal)}.planning-status.watch{background:rgba(211,150,140,.16);border-color:rgba(211,150,140,.45);color:#7a2f25}.planning-distance{background:var(--surface-soft);border:1px solid var(--border);border-radius:8px;flex:0 0 auto;padding:.45rem .7rem;white-space:nowrap}.planning-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.planning-detail-grid div{border-top:1px solid var(--border);display:grid;grid-gap:.25rem;gap:.25rem;min-width:0;padding-top:.65rem}.planning-date-row strong,.planning-detail-grid dt{color:var(--muted);font-size:.82rem;font-weight:900}.planning-detail-grid dd{font-weight:900;margin:0;min-width:0;overflow-wrap:anywhere}.planning-date-row,.planning-link-row{display:flex;flex-wrap:wrap;gap:.65rem}.planning-date-row span{background:var(--surface-soft);border-radius:6px;display:grid;grid-gap:.15rem;gap:.15rem;padding:.55rem .7rem}.planning-link-row a,.planning-link-row span{overflow-wrap:anywhere}.planning-link-row a{color:var(--green-dark);font-weight:900}.planning-empty-state{background:var(--surface-soft);border-left:4px solid var(--teal);border-radius:8px;display:grid;grid-gap:.45rem;gap:.45rem;padding:1rem}.air-quality-profile,.demographics-profile,.school-profile{display:grid;grid-gap:1.25rem;gap:1.25rem}.air-quality-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.air-quality-pollutant-grid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}.air-quality-pollutant-card{background:#ffffff;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.65rem;gap:.65rem;padding:1rem}.air-quality-pollutant-card dt,.air-quality-pollutant-card>span{color:var(--muted);font-size:.85rem;font-weight:900}.air-quality-pollutant-card>strong{font-size:1.35rem}.air-quality-pollutant-card dl{display:grid;grid-gap:.5rem;gap:.5rem;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.air-quality-pollutant-card dd{font-weight:900;margin:0;overflow-wrap:anywhere}.air-quality-source-note{align-items:center;background:var(--surface-soft);border-left:4px solid var(--teal);border-radius:8px;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;padding:.85rem 1rem}.air-quality-source-note p{color:var(--text-soft);font-weight:800;margin:0}.air-quality-source-note a{color:var(--green-dark);font-weight:900}.air-quality-more-button{justify-self:start}.air-quality-limitations{display:grid;grid-gap:.45rem;gap:.45rem;list-style:none;margin:0;padding:0}.air-quality-limitations li{background:rgba(211,150,140,.12);border:1px solid rgba(211,150,140,.34);border-radius:6px;color:#7a2f25;font-weight:800;padding:.65rem .75rem}.school-list{animation:revealPanel .22s ease-out both;display:grid;grid-gap:.9rem;gap:.9rem}.school-overview-grid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.school-overview-note{color:var(--text-soft);font-weight:800}.school-list-disclosure{background:#ffffff;border:1px solid var(--border);border-radius:8px;padding:1rem}.school-list-disclosure summary{cursor:pointer;font-weight:900}.school-list-disclosure[open] summary{margin-bottom:1rem}.school-card{background:#ffffff;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.75rem;gap:.75rem;padding:1rem}.school-card header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.school-card header p,.school-details p{color:var(--text-soft);font-size:.95rem}.school-card header a{border:1px solid var(--border);border-radius:999px;color:var(--dark-green);font-weight:900;padding:.35rem .7rem;text-decoration:none}.school-metric-grid{display:grid;grid-gap:.65rem;gap:.65rem;grid-template-columns:repeat(4,minmax(0,1fr))}.school-details{background:var(--surface-soft);border-radius:6px;display:grid;grid-gap:.35rem;gap:.35rem;padding:.85rem}.section-kicker{color:var(--text-soft);margin-top:.35rem!important}.section-heading-row{align-items:center;display:flex;gap:.55rem;justify-content:flex-start}.section-heading-row h2{margin:0}.section-info-button{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;color:var(--purple);cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:.85rem;font-weight:900;height:1.35rem;justify-content:center;line-height:1;padding:0;width:1.35rem}.section-info-button:hover{background:#ffffff;border-color:var(--purple)}.info-modal-backdrop{align-items:center;background:rgba(10,51,35,.38);display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:40}.info-modal{background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);color:var(--text);max-height:min(720px,calc(100vh - 2rem));max-width:620px;overflow:auto;width:min(100%,620px)}.info-modal header{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.1rem}.info-modal h3,.info-modal h4,.info-modal p{margin:0}.info-modal header button{align-items:center;background:#ffffff;border:1px solid var(--border);border-radius:999px;color:var(--text);cursor:pointer;display:inline-flex;font-size:1.4rem;font-weight:900;height:2rem;justify-content:center;line-height:1;padding:0 0 .12rem;width:2rem}.info-modal-content{display:grid;grid-gap:1rem;gap:1rem;padding:1.1rem}.info-modal-content section{display:grid;grid-gap:.35rem;gap:.35rem}.info-modal-content h4{color:var(--muted);font-size:.9rem}.info-modal-content p{line-height:1.5}.profile-summary{background:var(--surface-soft);border-left:4px solid var(--purple);border-radius:6px;font-weight:800;margin-top:.75rem!important;padding:.8rem 1rem}.data-transparency-panel>p{color:var(--text-soft);font-size:.9rem;line-height:1.45}.missing-data-state{background:var(--surface-soft);border-left:4px solid #d3968c;border-radius:8px;display:grid;grid-gap:.45rem;gap:.45rem;padding:1rem}.missing-data-state strong{color:var(--green-dark)}.data-transparency-panel{display:grid;grid-gap:.75rem;gap:.75rem}.data-source-list{display:grid;grid-gap:.45rem;gap:.45rem;list-style:none;margin:0;padding:0}.data-source-list li{background:rgba(255,255,255,.62);border:1px solid var(--border);border-radius:6px;color:var(--text-soft);font-size:.9rem;font-weight:800;padding:.55rem .65rem}.imported-location-card{background:#ffffff;border:1px solid var(--border);border-left:5px solid #839958;border-radius:8px;display:grid;grid-gap:.9rem;gap:.9rem;margin:1rem 0;padding:1rem}.imported-location-card.low-confidence{border-left-color:#d3968c}.imported-location-card.blocked{background:var(--surface-soft);border-left-color:#d3968c}.imported-location-card>div:first-child{display:grid;grid-gap:.35rem;gap:.35rem}.imported-location-card span{color:var(--muted);font-size:.85rem;font-weight:900}.imported-location-card strong{color:var(--green-dark);font-size:1.1rem}.imported-location-note{color:var(--text-soft);font-size:.9rem;font-weight:800;margin:0!important}.imported-location-notes{margin-top:.1rem}.profile-stat-grid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.profile-stat{background:#ffffff;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.35rem;gap:.35rem;padding:.85rem}.education-bar-row span,.profile-block-heading span,.profile-stat span{align-items:center;color:var(--muted);display:inline-flex;font-size:.85rem;font-weight:900;gap:.35rem}.profile-stat strong{font-size:1.2rem}.profile-block{display:grid;grid-gap:.75rem;gap:.75rem}.profile-block-heading{align-items:baseline;display:flex;gap:1rem;justify-content:space-between}.stacked-bar{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;display:flex;height:18px;overflow:hidden}.stacked-bar span{min-width:2px}.age-0-19{background:#839958}.age-20-39{background:#105666}.age-40-64{background:#0a3323}.age-65-plus{background:#d3968c}.bar-legend{display:flex;flex-wrap:wrap;gap:.6rem 1rem}.bar-legend span{align-items:center;color:var(--text-soft);display:inline-flex;font-size:.85rem;font-weight:800;gap:.35rem}.bar-legend i{border-radius:999px;display:inline-block;height:.75rem;width:.75rem}.education-bars{display:grid;grid-gap:.8rem;gap:.8rem}.education-bar-row{display:grid;grid-gap:.35rem;gap:.35rem}.education-bar-row>div:first-child{align-items:center;display:flex;justify-content:space-between}.progress-track{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;height:12px;overflow:hidden}.progress-track span{background:var(--purple);border-radius:inherit;display:block;height:100%}.detail-tile-map{height:360px}.election-profile{display:grid;grid-gap:1.25rem;gap:1.25rem}.election-meta-grid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.party-chart{display:grid;grid-gap:1rem;gap:1rem}.party-bar-row{align-items:start;display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:minmax(190px,1.1fr) minmax(160px,2fr) 4.5rem}.party-label{align-items:center;display:flex;gap:.7rem;min-width:0}.party-label>span:last-child{font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.party-bars{display:grid;grid-gap:.3rem;gap:.3rem}.party-bar-line{align-items:center;display:grid;grid-gap:.55rem;gap:.55rem;grid-template-columns:4rem minmax(0,1fr)}.party-bar-line>span{color:var(--muted);font-size:.75rem;font-weight:900}.party-bar-line.national{opacity:.58}.party-logo{align-items:center;border:1px solid var(--border);border-radius:999px;display:inline-flex;flex:0 0 auto;font-size:.8rem;font-weight:900;height:38px;justify-content:center;overflow:hidden;width:38px}.party-logo img{display:block;height:28px;max-width:30px;object-fit:contain}.party-bar-track{background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;height:16px;overflow:hidden}.party-bar-track span{border-radius:inherit;display:block;height:100%}.party-values{display:grid;grid-gap:.3rem;gap:.3rem;justify-items:end}.party-values strong{color:var(--purple);font-size:1.05rem;text-align:right}.party-values span{color:var(--muted);font-size:.9rem;font-weight:900}.risk-market-profile{display:grid;grid-gap:1.25rem;gap:1.25rem}.decision-card-grid{display:grid;grid-gap:.9rem;gap:.9rem;grid-template-columns:repeat(3,minmax(0,1fr))}.decision-card{background:#ffffff;border:1px solid var(--border);border-radius:8px;display:grid;grid-gap:.85rem;gap:.85rem;padding:1rem}.decision-card.good{border-top:5px solid #839958}.decision-card.neutral{border-top:5px solid #105666}.decision-card.watch{border-top:5px solid #d3968c}.decision-card>span{color:var(--muted);font-size:.85rem;font-weight:900}.decision-card-title{align-items:center;display:inline-flex;font-size:clamp(1.45rem,3vw,2rem);gap:.45rem;line-height:1;width:-moz-fit-content;width:fit-content}.decision-card dl{display:grid;grid-gap:.6rem;gap:.6rem;margin:0}.decision-card dl div{border-top:1px solid var(--border);display:grid;grid-gap:.2rem;gap:.2rem;padding-top:.55rem}.decision-card dt{align-items:center;color:var(--muted);display:inline-flex;font-size:.85rem;font-weight:900;gap:.35rem}.decision-card dd{font-weight:900;margin:0;min-width:0;overflow-wrap:anywhere;word-break:normal}.info-tip{align-items:center;background:var(--surface-soft);border:1px solid var(--border);border-radius:999px;color:var(--purple);cursor:help;display:inline-flex;flex:0 0 auto;font-size:.72rem;font-weight:900;height:1.05rem;justify-content:center;line-height:1;width:1.05rem}.supporting-summary{border-top:1px solid var(--border);color:var(--text-soft);display:grid;grid-gap:.55rem;gap:.55rem;padding-top:1rem}.event-list{display:grid;grid-gap:.8rem;gap:.8rem}.event-list article{border-top:1px solid var(--border);display:grid;grid-gap:.35rem;gap:.35rem;padding-top:.8rem}.reported-events-profile{display:grid;grid-gap:1rem;gap:1rem}.events-summary-grid{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(4,minmax(0,1fr))}.event-type-chips{display:flex;flex-wrap:wrap;gap:.5rem}.event-type-chips span{align-items:center;background:rgba(10,51,35,.07);border:1px solid var(--border);border-radius:999px;color:var(--green-dark);display:inline-flex;font-size:.9rem;font-weight:800;gap:.35rem;padding:.35rem .7rem}.event-type-chips strong{color:var(--teal)}.event-disclaimer{color:var(--text-soft);margin:0}.event-timeline{border-left:2px solid rgba(16,86,102,.22);display:grid;grid-gap:.75rem;gap:.75rem;margin-left:.55rem;padding-left:1rem}.timeline-event{background:rgba(255,255,255,.48);border:1px solid var(--border);border-radius:8px;padding:.8rem .9rem}.timeline-event summary{cursor:pointer;display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:auto 1fr;list-style:none}.timeline-event summary::-webkit-details-marker{display:none}.timeline-event[open]>a,.timeline-event[open]>p{animation:revealPanel .2s ease-out both}.timeline-dot{background:var(--teal);border:3px solid var(--surface);border-radius:999px;box-shadow:0 0 0 1px var(--border);height:.85rem;margin-left:-1.55rem;margin-top:.25rem;width:.85rem}.timeline-event strong{display:block}.timeline-event small{color:var(--text-soft);display:block;font-weight:700;margin-top:.2rem}.timeline-event-body{border-top:1px solid var(--border);display:grid;grid-gap:.55rem;gap:.55rem;margin-top:.75rem;padding-left:.5rem;padding-top:.75rem}.timeline-event-body p{margin:0}.text-button{align-self:start;background:transparent;border:0;color:var(--green-dark);cursor:pointer;font:inherit;font-weight:900;padding:0;text-decoration:underline}.detail-aside{align-self:start;display:grid;grid-gap:1rem;gap:1rem;position:-webkit-sticky;position:sticky;top:96px}.detail-action-panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 26px rgba(10,51,35,.08);display:grid;grid-gap:.75rem;gap:.75rem;padding:.85rem}.detail-action-panel p{color:var(--text-soft);margin:0}.primary-link-button,.secondary-link-button{align-items:center;border-radius:6px;display:inline-flex;gap:.45rem;font-weight:900;justify-content:center;padding:.9rem 1rem;text-align:center;text-decoration:none}.primary-link-button{background:var(--purple);color:white}.secondary-link-button{background:var(--surface);border:1px solid var(--purple-dark);color:var(--purple-dark)}.error-box,.status-box{border-radius:8px;margin:1rem 0;padding:1rem}.error-box{background:#fee2e2;color:#7f1d1d}.status-box{background:var(--purple-soft);color:var(--purple-dark)}@keyframes spin{to{transform:rotate(1turn)}}@keyframes orbit{0%{transform:rotate(0deg) scaleX(1)}50%{transform:rotate(180deg) scaleX(.82)}to{transform:rotate(1turn) scaleX(1)}}@keyframes pulse{0%,to{transform:scale(.88)}50%{transform:scale(1)}}@keyframes shimmer{0%{transform:translateX(-100%)}55%,to{transform:translateX(100%)}}@keyframes loadingProgress{0%{transform:translateX(-110%)}50%{transform:translateX(75%)}to{transform:translateX(220%)}}@keyframes revealPanel{0%{opacity:0;transform:translateY(-8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.button-loading span,.detail-state-orbit span,.detail-state-orbit:before,.details-content,.guided-search,.loading-orbit span,.loading-orbit:before,.loading-progress span,.school-list,.search-loading-card:after,.timeline-event[open]>a,.timeline-event[open]>p,.watch-panel{animation:none}details:not(.timeline-event)>summary:after{transition:none}}@media (max-width:1180px){.results-layout,.saved-favourites-layout{grid-template-columns:1fr}.results-map-panel,.saved-favourites-map-panel{position:static}.results-map-card .tile-map{height:min(58vh,520px);min-height:420px}}@media (max-width:1040px){.top-nav{grid-template-columns:auto 1fr auto}.brand{justify-self:center}.top-nav.compact .brand{justify-self:start}.top-nav.compact .menu-button{display:inline-grid}.top-nav nav{display:none}.top-nav .top-nav-menu{display:grid}.results-layout,.single-map-layout{grid-template-columns:1fr}.single-map-context{max-height:none;order:-1;position:static}.map-verification-layout{grid-template-columns:1fr}.map-layer-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-aside,.map-verification-panel,.results-map-panel{position:static}.map-verification-panel{max-height:none;order:-1}.single-listing-tile-map,.tile-map.large{height:min(62vh,520px);min-height:420px}.detail-aside{order:-1}.detail-action-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-layout{grid-template-columns:1fr}.detail-mobile-identity{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 26px rgba(10,51,35,.08);display:grid;grid-gap:.45rem;gap:.45rem;margin-bottom:1rem;padding:clamp(1rem,4vw,1.35rem)}.detail-mobile-identity h1{font-size:clamp(1.55rem,6vw,2.15rem);line-height:1.08;margin:0}.detail-mobile-identity .address,.detail-mobile-identity .detail-price,.detail-mobile-identity .facts{margin:0}.detail-title-row{display:none}}@media (max-width:900px){.home-search-panel{position:relative;top:auto;transform:none;left:auto;margin:-72px auto 0}.hero{min-height:auto;padding-bottom:2rem}.air-quality-pollutant-grid,.daily-life-grid,.election-meta-grid,.events-summary-grid,.filter-grid,.guided-input-row,.guided-step-grid,.guided-suggestion,.listing-card,.metric-grid,.planning-detail-grid,.planning-summary-grid,.profile-stat-grid,.quick-searches,.school-metric-grid,.school-overview-grid,.search-form.bar,.search-form.hero,.search-loading-card,.search-state-card{grid-template-columns:1fr}.geo-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.party-bar-row{grid-template-columns:1fr}.party-values{justify-items:start}.decision-card-grid{grid-template-columns:1fr}.search-form.hero .filter-button,.search-form.hero .search-button{flex-basis:auto;width:100%}.search-form.hero .main-query{flex-basis:100%;width:100%}.search-form.hero .search-button{min-height:58px}.search-state-card{align-items:stretch;grid-template-columns:1fr}.empty-recovery-actions{min-width:0}.detail-hero{grid-template-columns:1fr;max-height:none}.detail-photo-main{min-height:clamp(180px,52vw,300px)}.detail-hero.image-count-2 .detail-photo-grid,.detail-hero.image-count-3 .detail-photo-grid,.detail-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-state-card{grid-template-columns:1fr;text-align:center}.healthcare-provider-row,.healthcare-source-note{align-items:flex-start;flex-direction:column}.listing-media-link{height:clamp(210px,58vw,260px);min-height:0}.listing-card,.listing-content{grid-template-rows:auto;min-height:0}.listing-facts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-search-panel.guided-active{top:auto}.chat-listing-card{grid-template-columns:1fr;max-width:100%}.chat-listing-media{height:180px}}@media (max-width:560px){.guided-chat-summary,.guided-quick-replies{margin-left:0;max-width:100%}.top-nav{gap:.5rem;padding:.85rem 1rem}.top-nav.compact{grid-template-columns:auto minmax(0,1fr) auto}.brand{font-size:1.35rem;min-width:0}.brand-symbol{height:36px;width:36px}.ghost-button{min-height:40px;padding:.45rem .7rem}.hero{padding-bottom:1.25rem}.hero-visual{background-position:center 36%;height:255px}.home-search-panel{border-radius:16px;margin-top:-46px;padding:1rem}.air-quality-pollutant-card dl{grid-template-columns:1fr}.home-search-panel h1{font-size:2rem;line-height:1.04}.eyebrow{margin-bottom:.45rem}.hero-copy{font-size:.98rem;line-height:1.35;margin-top:.7rem}.search-tabs{grid-template-columns:repeat(2,minmax(0,1fr));margin:.85rem -1rem}.search-tabs a,.search-tabs button{font-size:.9rem;min-height:44px;padding:.25rem}.search-form.hero{gap:.7rem}.search-form.hero label{gap:.35rem}.search-form.hero .filter-button,.search-form.hero .main-query input,.search-form.hero .search-button{height:50px;min-height:50px}.detail-title-row,.listing-footer,.result-tools,.results-heading,.results-map-header,.saved-favourites-header,.single-map-header{align-items:flex-start;flex-direction:column}.compare-tray{align-items:stretch}.compare-tray,.compare-tray-actions{flex-direction:column}.comparison-columns,.comparison-row{grid-template-columns:1fr}.comparison-row dd{border-left:0;border-top:1px solid var(--border)}.status-group-tabs{grid-template-columns:1fr}.status-group-tabs button{justify-content:space-between;min-height:44px}.listing-card-header{align-items:flex-start;flex-direction:column}.listing-price-block{flex:1 1 auto;width:100%}.heart-button{width:100%}.detail-action-panel,.listing-facts-grid{grid-template-columns:1fr}.map-page-header{align-items:flex-start;flex-direction:column}.geo-context-grid,.map-layer-toolbar{grid-template-columns:1fr}.tile-map.large{height:58vh;min-height:340px}.results-map-card .tile-map,.results-map-empty{min-height:300px}.single-listing-tile-map{height:58vh;min-height:340px}}