:root{color:#142033;background:#f5f7fa;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}main{margin:0 auto;max-width:1180px;padding:24px}.loadingScreen,.loginShell{align-items:center;display:flex;min-height:100vh;justify-content:center;padding:20px}.loginPanel{background:#fff;border:1px solid #dce3ea;border-radius:8px;box-shadow:0 20px 60px #1f2d3d1f;display:grid;gap:28px;max-width:920px;padding:32px;width:100%}.loginPanel h1,.appHeader h1,.sectionHeading h2,.detailHeader h2{letter-spacing:0;margin:0}.loginPanel h1{font-size:clamp(2rem,7vw,4rem);line-height:1}.loginForm{display:grid;gap:16px}label{color:#536579;display:grid;font-size:.88rem;font-weight:700;gap:7px}input,select,textarea{background:#fff;border:1px solid #c7d0da;border-radius:6px;color:#142033;min-height:46px;padding:0 14px;width:100%}input:focus,select:focus,textarea:focus{border-color:#1d72d2;outline:3px solid rgba(29,114,210,.15)}textarea{min-height:110px;padding:12px 14px;resize:vertical}button,.detailActions a{align-items:center;background:#102033;border:1px solid #102033;border-radius:6px;color:#fff;display:inline-flex;font-weight:800;justify-content:center;min-height:42px;padding:0 16px;text-decoration:none}button:disabled,.disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.secondaryButton{background:#f7c948;border-color:#f7c948;color:#102033}.ghostButton{background:transparent;border-color:#c7d0da;color:#142033}.eyebrow{color:#1d72d2;font-size:.76rem;font-weight:900;letter-spacing:.12em;margin:0 0 8px;text-transform:uppercase}.muted{color:#64748b;margin:8px 0 0}.error{background:#fff1f2;border:1px solid #fecdd3;border-radius:6px;color:#be123c;margin:0;padding:10px 12px}.emptyState{background:#fff;border:1px solid #dce3ea;border-radius:8px;color:#142033;display:grid;gap:8px;padding:18px}.emptyState p{color:#64748b;margin:0}.appHeader{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;padding:10px 0 24px}.appHeader h1{font-size:clamp(2rem,5vw,3.4rem)}.headerActions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.headerActions span{color:#536579;font-size:.9rem;width:100%;text-align:right}.searchBand{background:#fff;border:1px solid #dce3ea;border-radius:8px;margin-bottom:18px;padding:18px;position:relative}.searchResults{background:#fff;border:1px solid #dce3ea;border-radius:8px;box-shadow:0 16px 35px #1f2d3d1f;display:grid;left:18px;max-height:360px;overflow:auto;position:absolute;right:18px;top:calc(100% - 8px);z-index:10}.searchResults button{align-items:flex-start;background:#fff;border:0;border-bottom:1px solid #edf1f5;border-radius:0;color:#142033;display:grid;justify-content:stretch;min-height:auto;padding:14px;text-align:left}.searchResults span{color:#64748b;font-size:.88rem}.breadcrumbs{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}.backButton{background:#e8eef5;border-color:#d7e1eb;color:#142033;margin:0 0 4px;min-height:36px;padding:0 12px}.breadcrumbs button{background:#e8eef5;border-color:#e8eef5;color:#142033;min-height:32px;padding:0 10px}.breadcrumbs span{color:#94a3b8}.contentLayout{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr) 380px}.contentLayoutFull{grid-template-columns:minmax(0,1fr)}.primaryColumn,.detailPanel{min-width:0}.sectionHeading{margin:4px 0 16px}.sectionHeadingWithControls{align-items:end;display:flex;gap:14px;justify-content:space-between}.sectionHeading h2,.detailHeader h2{font-size:1.45rem}.sectionHeading h2{margin-bottom:12px}.summaryStats{display:grid;gap:10px;grid-template-columns:repeat(5,minmax(0,1fr))}.summaryStat{background:#fff;border:1px solid #dce3ea;border-radius:8px;display:grid;gap:6px;min-width:0;padding:12px}.summaryStat span{color:#64748b;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.summaryStat strong{font-size:1.05rem;line-height:1.2;overflow-wrap:anywhere}.summaryStats+.grid{margin-top:14px}.wardSortControl{min-width:min(100%,230px)}.wardSortControl select{min-height:40px}.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.compactGrid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.navCard{align-items:flex-start;aspect-ratio:1.45;background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid #dce3ea;border-radius:8px;color:#142033;display:grid;gap:12px;justify-content:stretch;min-height:118px;padding:14px;text-align:left;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.imageCard{background-image:linear-gradient(180deg,#14203314,#142033b8),var(--card-image);background-position:center;background-size:cover;color:#fff}.imageCard span{text-shadow:0 1px 8px rgba(0,0,0,.45)}.navCard:hover,.propertyRow:hover{border-color:#1d72d2;box-shadow:0 10px 30px #1f2d3d1a}.navCard span{align-self:end;font-size:1rem;line-height:1.25;overflow-wrap:anywhere}.compactCard{aspect-ratio:1.55;gap:8px;min-height:104px;padding:11px}.compactCard span{display:block;font-size:.92rem;line-height:1.25}.compactCard .cardIcon{border-radius:7px;height:34px;padding:7px;width:34px}.wardCard{aspect-ratio:auto;background:linear-gradient(135deg,#ffffffeb,#f8fbffd6),#fff;border-color:#d8e4f0;box-shadow:0 10px 26px #1f2d3d0f;gap:12px;min-height:208px;overflow:hidden;padding:18px;position:relative}.wardCard:before{background:linear-gradient(90deg,#4f8df7,#55c2a6);content:"";height:4px;left:0;position:absolute;right:0;top:0}.wardCard:nth-child(6n+1){background:linear-gradient(135deg,#fffffff0,#eff6ffe6),#fff}.wardCard:nth-child(6n+1):before{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.wardCard:nth-child(6n+2){background:linear-gradient(135deg,#fffffff0,#f0fdfae6),#fff}.wardCard:nth-child(6n+2):before{background:linear-gradient(90deg,#14b8a6,#5eead4)}.wardCard:nth-child(6n+3){background:linear-gradient(135deg,#fffffff0,#fefce8eb),#fff}.wardCard:nth-child(6n+3):before{background:linear-gradient(90deg,#eab308,#facc15)}.wardCard:nth-child(6n+4){background:linear-gradient(135deg,#fffffff0,#fff7ede6),#fff}.wardCard:nth-child(6n+4):before{background:linear-gradient(90deg,#f97316,#fb923c)}.wardCard:nth-child(6n+5){background:linear-gradient(135deg,#fffffff0,#f5f3ffe6),#fff}.wardCard:nth-child(6n+5):before{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.wardCard:nth-child(6n){background:linear-gradient(135deg,#fffffff0,#f0fdf4e6),#fff}.wardCard:nth-child(6n):before{background:linear-gradient(90deg,#22c55e,#86efac)}.wardCard:hover{box-shadow:0 16px 34px #1f2d3d1f;transform:translateY(-2px)}.wardCardTitle{align-self:start;color:#111827;font-size:clamp(1.05rem,2.2vw,1.2rem);font-weight:900;padding-top:2px}.wardCardMeta{align-self:start;background:#ffffffad;border:1px solid rgba(203,213,225,.78);border-radius:999px;color:#475569;display:inline-flex;font-size:.8rem;font-weight:800;justify-self:start;padding:4px 10px}.wardHighlights{align-self:end;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.wardHighlights span{align-self:stretch;background:#ffffffb3;border:1px solid rgba(207,216,226,.8);border-radius:8px;box-shadow:inset 0 1px #ffffffb3;display:grid;font-size:1rem;gap:5px;min-width:0;padding:10px}.wardHighlights strong{color:#111827;font-size:clamp(1rem,1.8vw,1.18rem);line-height:1.1;overflow-wrap:normal;white-space:nowrap}.wardHighlights small{color:#5b6b82;font-size:.68rem;font-weight:900;letter-spacing:.02em;line-height:1.15;text-transform:uppercase}.cardIcon{background:#e8f1fb;border:1px solid #cfe0f4;border-radius:8px;color:#1d72d2;height:42px;padding:8px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;width:42px}.cardIcon path{fill:none}.skeleton{aspect-ratio:1.45;background:linear-gradient(90deg,#e9eef3,#f7f9fb,#e9eef3);border-radius:8px;min-height:118px}.propertyList{display:grid;gap:12px}.propertyRow{background:linear-gradient(180deg,#fffffff5,#f8fafcfa),#fff;border:1px solid #d8e1ea;border-left:4px solid #1d72d2;border-radius:10px;color:#142033;display:grid;gap:10px;grid-template-columns:minmax(180px,1.2fr) minmax(0,2fr);align-items:start;justify-items:stretch;min-height:0;padding:14px;text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.propertyRow span:first-child{display:grid;gap:6px;min-width:0}.propertyRow strong{font-size:1rem;line-height:1.25;overflow-wrap:anywhere}.propertyRow small{color:#64748b;line-height:1.3;overflow-wrap:anywhere}.propertyRow:hover{border-color:#1d72d2;box-shadow:0 12px 28px #1f2d3d1f;transform:translateY(-1px)}.propertyMetrics{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0}.propertyMetrics span{background:#f8fafc;border:1px solid #e5ebf2;border-radius:8px;display:grid;gap:5px;min-width:0;padding:10px 11px}.propertyMetrics small{color:#64748b;font-size:.66rem;font-weight:800;line-height:1.1;text-transform:uppercase}.propertyMetrics strong{font-size:.98rem;font-weight:900;line-height:1.15;overflow-wrap:anywhere}.detailPanel{background:#fff;border:1px solid #dce3ea;border-radius:8px;padding:18px;position:sticky;top:16px}.detailHeader{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.statsGrid{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin:18px 0}.stat{background:#f5f7fa;border:1px solid #e6ecf2;border-radius:6px;display:grid;gap:6px;padding:12px}.stat span,.detailsList dt{color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase}.stat strong{font-size:1.25rem}.detailsList{display:grid;gap:10px;margin:0}.detailsList div{display:grid;gap:3px}.detailsList dd{margin:0}.mapPreview{background:#102033;border-radius:8px;color:#fff;margin:18px 0;min-height:150px;padding:18px}.mapPreview span{color:#f7c948;font-weight:900}.visualPreview{background:#f5f7fa;border:1px solid #e6ecf2;border-radius:8px;color:#142033;display:grid;gap:10px;margin:18px 0;overflow:hidden;padding:12px}.visualPreview span{color:#64748b;font-size:.78rem;font-weight:800;text-transform:uppercase}.visualPreview img{aspect-ratio:4 / 3;background:#fff;border-radius:6px;display:block;object-fit:cover;width:100%}.visualPreview p{color:#64748b;margin:0}.detailActions{display:grid;gap:10px;grid-template-columns:1fr 1fr}@media(max-width:860px){main{padding:16px}.appHeader,.propertyRow{display:grid}.headerActions{justify-content:stretch}.headerActions span{text-align:left}.headerActions button{flex:1}.contentLayout{grid-template-columns:1fr}.detailPanel{inset:auto 0 0;max-height:82vh;overflow:auto;position:fixed;z-index:20}.detailActions{background:#fff;bottom:0;margin:18px -18px -18px;padding:12px 18px;position:sticky}.metric{white-space:normal}.propertyRow{grid-template-columns:1fr}.propertyMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.sectionHeadingWithControls{align-items:stretch;display:grid}.wardSortControl{min-width:0}.grid,.compactGrid{grid-template-columns:1fr}.navCard{min-height:132px}.wardCard{min-height:0}.summaryStats{grid-template-columns:repeat(2,minmax(0,1fr))}.propertyRow{padding:12px}.propertyMetrics{grid-template-columns:1fr}}@media(max-width:380px){.wardHighlights,.summaryStats{grid-template-columns:1fr}}@media(min-width:760px){.loginPanel{grid-template-columns:1.1fr .9fr}}
