@import url("/community-static.css");

.property-report .chart-suite,
.property-report .chart-card,
.property-report .community-market-row,
.property-report .community-market-row > article {
  min-width: 0;
  max-width: 100%;
}
.property-report .chart-card {
  overflow: hidden;
}
.property-report .chart-card .echarts-for-react {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.property-report .chart-card svg {
  width: 100%;
  max-width: 100%;
}
.property-report .standalone-safety {
  padding: 22px;
}
.property-report .standalone-safety > header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 12px;
}
.property-report .standalone-safety > header h2 {
  margin: 4px 0 0;
}
.property-report .standalone-safety > header > span {
  color: #68777b;
  font-size: 14px;
  font-weight: 700;
}
.safety-split-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.safety-split-chart {
  min-width: 0;
  overflow: hidden;
  padding: 12px 12px 4px;
  border: 1px solid #dedbd3;
  border-radius: 12px;
  background: #fbfaf7;
}
.safety-split-chart h3 {
  margin: 0 0 2px 8px;
  color: #34464d;
  font-size: 18px;
}
.property-report .chart-tabs,
.property-report .community-price-type-tabs {
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
}

.property-report {
  max-width: 1380px;
  margin: 0 auto;
  padding: 42px 28px 90px;
  color: #293d46;
}
.report-header {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 30px;
  padding: 34px;
  border: 1px solid #cbdce2;
  border-radius: 22px;
  background: #f2f7f9;
}
.report-address-map-link {
  display: inline;
  color: inherit;
  white-space: normal;
  word-spacing: .12em;
  text-decoration: none;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.report-address-map-link:hover {
  text-decoration: underline;
}
.report-header-map-shell {
  position: relative;
  z-index: 2;
  flex: 0 0 420px;
  width: 420px;
  height: 230px;
  transition: width .35s ease, height .35s ease, transform .35s ease;
}
.report-header-map-shell .community-map-island {
  height: 100%;
  min-height: 0;
  overflow: hidden;
  border-radius: 16px;
}
.report-header-map-shell .community-map-context {
  left: 10px;
  top: 10px;
  max-width: 230px;
  padding: 10px 12px;
  border-radius: 12px;
}
.report-header-map-shell .community-map-context span { font-size: 11px; }
.report-header-map-shell .community-map-context strong { font-size: 17px; }
.report-header-map-shell .community-map-context small { font-size: 13px; }
.report-header-map-placeholder {
  display: grid;
  align-content: center;
  gap: 7px;
  height: 100%;
  padding: 22px;
  border: 1px solid #d4e1e5;
  border-radius: 16px;
  background: #eef4f5;
  color: #55717b;
}
.report-header-map-placeholder span { font-size: 11px; font-weight: 900; letter-spacing: .12em; }
.report-header-map-placeholder strong { color: #294b58; font-size: 20px; }
.report-header-map-placeholder small { font-size: 14px; }
.report-header-map-shell.is-expanded {
  position: absolute;
  top: 20px;
  right: 20px;
  width: min(720px, calc(100% - 40px));
  height: 480px;
  z-index: 30;
  box-shadow: 0 24px 70px rgba(35, 53, 60, .25);
}
.report-header-map-toggle {
  position: absolute;
  z-index: 4;
  right: 10px;
  top: 10px;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid rgba(203, 220, 226, .95);
  border-radius: 8px;
  background: rgba(255, 253, 249, .94);
  color: #2f7893;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
}
.report-header-map-toggle:disabled { opacity: .55; cursor: wait; }
.report-header > div > span,
.report-section > header span {
  color: #39758f;
  font-size: 14px !important;
  font-weight: 900;
  letter-spacing: 0.1em;
}
.report-header h1,
.report-header h1 a {
  margin: 8px 0 10px;
  max-width: 100%;
  font-size: clamp(42px, 5vw, 70px);
  line-height: .95;
  font-weight: 760;
  letter-spacing: -0.045em;
}
.report-header p {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: #60757e;
}
.property-report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 16px;
}
.property-report-actions button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 0 11px;
  border: 1px solid #cbdbe2;
  border-radius: 9px;
  background: #fff;
  color: #39758f;
  font-size: 14px;
  font-weight: 800;
}
.property-report-actions button.active { background: #eaf3f6; }
.property-report-actions button.saved { border-color: #d69ba2; color: #a44356; }
.report-header > aside {
  display: grid;
  gap: 5px;
  min-width: 280px;
  padding: 18px;
  border-radius: 13px;
  background: #fff;
}
.report-header > aside span,
.report-header > aside small {
  color: #6d7c82;
  font-size: 14px !important;
}
.report-header > aside strong {
  font-size: 18px;
}
.report-jump {
  position: sticky;
  z-index: 20;
  top: 70px;
  display: flex;
  gap: 5px;
  margin: 12px 0;
  padding: 6px;
  border: 1px solid #d5e0e3;
  border-radius: 12px;
  background: rgba(255, 254, 251, 0.96);
  backdrop-filter: blur(10px);
}
.report-jump.is-stuck {
  margin-top: 0;
}
.report-jump a {
  padding: 9px 13px;
  border-radius: 8px;
  color: #4c6976;
  text-decoration: none;
  font-weight: 800;
}
.report-jump a:hover {
  background: #eaf3f6;
}
.report-jump a.active {
  background: #2f7893;
  color: #fff;
  box-shadow: 0 2px 7px rgba(39, 92, 112, 0.2);
}
.report-section {
  scroll-margin-top: 68px;
  margin-top: 14px;
  padding: 28px;
  border: 1px solid #d6e0e3;
  border-radius: 18px;
  background: #fffdf9;
}
.report-section > header {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: #39758f;
}
.report-section h2 {
  margin: 4px 0 0;
  font-size: 31px;
}
.report-property-grid {
  display: grid;
  grid-template-columns: 360px minmax(0, 1fr);
  gap: 13px;
  margin-top: 22px;
}
.report-primary-value {
  display: grid;
  align-content: center;
  padding: 24px;
  border-radius: 14px;
  background: #e6f1f5;
}
.report-primary-value span,
.report-primary-value small {
  color: #627982;
  font-size: 14px !important;
}
.report-primary-value strong {
  margin: 7px 0;
  color: #326f88;
  font-size: 38px;
}
.report-property-grid dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
}
.report-property-grid dl > div,
.report-community-grid > div {
  display: grid;
  gap: 5px;
  padding: 14px;
  border-radius: 10px;
  background: #f2f5f5;
}
.report-property-grid dt,
.report-community-grid span {
  color: #6b7a80;
  font-size: 14px;
}
.report-property-grid dd,
.report-community-grid strong {
  margin: 0;
  font-size: 17px;
  font-weight: 800;
  overflow-wrap: anywhere;
}
.report-source-line {
  margin-top: 14px;
  color: #6f7e84;
  font-size: 14px;
}
.report-risk-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
  margin-top: 22px;
}
.report-risk-grid article {
  display: flex;
  min-height: 170px;
  flex-direction: column;
  padding: 17px;
  border: 1px solid #d8e1e3;
  box-shadow: inset 0 3px 0 #5b91aa;
  border-radius: 12px;
  background: #f8faf9;
}
.report-risk-grid article.warning {
  box-shadow: inset 0 3px 0 #b6493f;
  background: #fbefed;
}
.report-risk-grid article.clear {
  box-shadow: inset 0 3px 0 #4d8563;
  background: #eef6f0;
}
.report-risk-grid article.pending {
  box-shadow: inset 0 3px 0 #9ba6a9;
}
.report-risk-grid article.community-risk {
  box-shadow: inset 0 3px 0 #6e7d9b;
  background: #f1f4fa;
}
.report-community-crime-card a { margin-top: auto; }
.crime-compare-bar {
  height: 7px;
  margin: 13px 0 5px;
  overflow: hidden;
  border-radius: 999px;
  background: #dde6e6;
}
.crime-compare-bar i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #547f91;
}
.report-risk-grid strong {
  font-size: 18px;
}
.report-risk-grid .risk-value {
  display: block;
  margin-top: 10px;
  color: #246b83;
  font-size: 30px;
  line-height: 1;
  letter-spacing: -0.03em;
}
.noise-pointer {
  position: relative;
  height: 7px;
  margin: 14px 0 5px;
  border-radius: 999px;
  background: linear-gradient(90deg, #35a777 0 38%, #e4b048 62%, #b94136 100%);
}
.noise-pointer i {
  position: absolute;
  top: -5px;
  width: 3px;
  height: 17px;
  border-radius: 2px;
  background: #27353a;
  transform: translateX(-50%);
}
.noise-pointer b { display: none; }
.report-risk-grid article.warning .risk-value {
  color: #a44338;
}
.report-risk-grid article.community-risk .risk-value {
  color: #4d5e89;
}
.report-risk-grid .report-permit-card {
  grid-column: 4;
  grid-row: 1 / span 2;
}
.report-permit-list {
  display: grid;
  gap: 9px;
  max-height: 230px;
  margin-top: 12px;
  overflow: auto;
  padding-right: 4px;
}
.report-permit-list > div {
  display: grid;
  gap: 3px;
  padding-top: 9px;
  border-top: 1px solid rgba(97, 118, 123, .2);
}
.report-permit-list > div strong {
  font-size: 15px;
}
.report-permit-list > div span {
  margin-top: 0;
  font-size: 14px;
}
.report-risk-grid span {
  margin-top: 10px;
  font-size: 16px;
  line-height: 1.4;
}
.report-risk-grid small {
  margin-top: 8px;
  color: #6e7b80;
  font-size: 14px;
}
.report-risk-grid a {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  color: #39758f;
  font-weight: 800;
  text-decoration: none;
}
.report-disclaimer {
  margin: 18px 0 0;
  padding: 13px 15px;
  background: #fff8e9;
  box-shadow: inset 3px 0 0 #bd8d45;
  color: #735b33;
  font-size: 14px;
  line-height: 1.5;
}
.report-risk-records {
  display: grid;
  gap: 8px;
  margin-top: 16px;
  padding: 15px;
  border: 1px solid #e1c7c2;
  border-radius: 11px;
  background: #fff8f6;
}
.report-risk-records > strong {
  color: #7d4038;
}
.report-risk-records > div {
  display: grid;
  gap: 3px;
  padding-top: 9px;
  border-top: 1px solid #efdcd8;
}
.report-risk-records span {
  font-weight: 800;
}
.report-risk-records small {
  color: #6f7779;
  font-size: 14px;
}
.report-risk-records a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: max-content;
  color: #39758f;
  font-weight: 800;
  text-decoration: none;
}
.report-manual-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 20px;
}
.report-manual-grid article {
  display: flex;
  min-height: 190px;
  flex-direction: column;
  padding: 17px;
  border: 1px solid #d7d4cc;
  border-radius: 12px;
  background: #f4f1eb;
}
.report-manual-grid strong { font-size: 17px; }
.report-manual-grid .risk-value { margin-top: 12px; color: #4b5557; font-size: 26px; }
.report-manual-grid span { margin-top: 7px; line-height: 1.4; }
.report-manual-grid small { margin-top: 8px; color: #6c7471; font-size: 14px; }
.report-manual-grid a { display: flex; align-items: center; gap: 5px; margin-top: auto; color: #2d718c; font-weight: 800; text-decoration: none; }
.report-market-meta {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  margin-top: 22px;
  color: #526b73;
  font-size: 15px;
}
.report-market-meta small {
  color: #78868a;
  font-size: 14px !important;
}
.report-fact-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}
.report-fact-grid > div {
  display: grid;
  gap: 5px;
  padding: 15px;
  border-radius: 10px;
  background: #f2f5f5;
}
.report-neighbour-grid > div > svg {
  color: #2f7893;
  margin-bottom: 2px;
}
.report-fact-grid span {
  color: #6b7a80;
  font-size: 14px;
}
.report-fact-grid strong {
  font-size: 18px;
}
.report-neighbour-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.report-neighbour-detail {
  min-width: 0;
}
.report-neighbour-intro {
  display: grid;
  gap: 5px;
  margin-bottom: 12px;
}
.report-neighbour-intro strong {
  font-size: 20px;
}
.report-neighbour-intro span {
  color: #66787f;
  font-size: 14px;
}
.report-neighbour-grid > div {
  display: grid;
  gap: 5px;
  min-height: 112px;
  padding: 14px;
  border-radius: 10px;
  background: #f2f5f5;
}
.report-neighbour-grid > div > svg {
  color: #2f7893;
}
.report-neighbour-grid span {
  color: #6b7a80;
  font-size: 14px;
}
.report-neighbour-grid strong {
  font-size: 20px;
}
.report-neighbour-bars {
  display: grid;
  gap: 11px;
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #d6e0e3;
  border-radius: 12px;
  background: #f7f9f8;
}
.report-neighbour-bars > div {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 54px;
  align-items: center;
  gap: 10px;
}
.report-neighbour-bars span,
.report-neighbour-bars strong {
  font-size: 14px;
}
.report-neighbour-bars strong {
  text-align: right;
}
.report-neighbour-bars i {
  display: block;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #dde6e6;
}
.report-neighbour-bars i b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #2f7893;
}
.report-neighbour-layout {
  display: grid;
  grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr);
  gap: 16px;
  margin-top: 22px;
}
.report-radar-card {
  padding: 18px;
  border: 1px solid #d6e0e3;
  border-radius: 14px;
  background: #f7f9f8;
}
.report-radar-heading {
  display: flex;
  justify-content: space-between;
}
.report-radar-heading div {
  display: grid;
  gap: 4px;
}
.report-radar-heading span,
.report-radar-values small {
  color: #6d7c82;
  font-size: 14px;
}
.report-radar-card svg {
  display: block;
  width: min(100%, 320px);
  margin: 2px auto 0;
  overflow: visible;
}
.report-radar-grid {
  fill: none;
  stroke: #d4e0e1;
  stroke-width: 1;
}
.report-radar-axis {
  stroke: #dbe5e4;
  stroke-width: 1;
}
.report-radar-data {
  fill: rgba(47, 120, 147, .18);
  stroke: #2f7893;
  stroke-width: 3;
}
.report-radar-dot {
  fill: #c65a3f;
  stroke: #fff;
  stroke-width: 2;
}
.report-radar-label {
  fill: #53666c;
  font-size: 11px;
  font-weight: 700;
}
.report-radar-values {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}
.report-radar-values span {
  display: grid;
  gap: 2px;
  padding: 8px;
  border-radius: 8px;
  background: #eef3f3;
}
.report-radar-values strong { font-size: 15px; }
.report-tenure-chart {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #d6e0e3;
  border-radius: 12px;
  background: #f7f9f8;
}
.report-tenure-heading,
.report-tenure-legend {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.report-tenure-heading span,
.report-tenure-legend span {
  color: #6d7c82;
  font-size: 14px;
}
.report-tenure-track {
  display: flex;
  height: 16px;
  margin: 12px 0 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #e6eceb;
}
.report-tenure-track i,
.report-tenure-track b {
  display: block;
  min-width: 0;
  height: 100%;
}
.report-tenure-track i,
.report-tenure-legend i {
  background: #2f7893;
}
.report-tenure-track b,
.report-tenure-legend b {
  background: #d9a263;
}
.report-tenure-legend i,
.report-tenure-legend b {
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 5px;
  border-radius: 50%;
}
.report-nearby-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
  gap: 12px;
  margin-top: 22px;
}
.report-nearby-list {
  display: grid;
  gap: 8px;
}
.report-nearby-list a,
.report-nearby-pending {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px;
  border: 1px solid #d6e0e3;
  border-radius: 11px;
  color: #315c6d;
  text-decoration: none;
}
.report-nearby-list a > span,
.report-nearby-pending > div {
  display: grid;
  flex: 1;
  gap: 4px;
}
.report-nearby-list small,
.report-nearby-pending span {
  color: #6d7c82;
  font-size: 14px !important;
}
.report-nearby-pending {
  align-items: flex-start;
  background: #f5f7f7;
  color: #617278;
}
.report-nearby-health-panel{display:grid;gap:13px;padding:16px;border:1px solid #d6e0e3;border-radius:11px;background:#f5f7f7}
.report-nearby-health-panel>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px}
.report-nearby-health-panel>header>svg{color:#b6493f;margin-top:2px}
.report-nearby-health-panel>header>div{display:grid;gap:4px}
.report-nearby-health-panel strong{color:#315c6d;font-size:16px;line-height:1.2}
.report-nearby-health-panel span{color:#6d7c82;font-size:14px;line-height:1.35}
.report-nearby-health-panel>header>a{display:flex;align-items:center;gap:4px;color:#39758f;font-size:14px;font-weight:850;text-decoration:none;white-space:nowrap}
.report-nearby-health-list{display:grid;gap:7px}
.report-nearby-health-list>a{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #dbe4e6;border-radius:9px;background:#fff;color:#315c6d;text-decoration:none}
.report-nearby-health-list>a>svg{flex:0 0 auto;color:#b6493f}
.report-nearby-health-list>a>span{display:grid;min-width:0;flex:1;gap:3px}
.report-nearby-health-list em{color:#75878d;font-size:12px;font-style:normal;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.report-nearby-health-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.report-nearby-health-list small{overflow:hidden;color:#6d7c82;font-size:13px;text-overflow:ellipsis;white-space:nowrap}
.report-nearby-health-list>a>svg:last-child{color:#6d7c82}
.report-source-line svg {
  vertical-align: -3px;
  margin-right: 4px;
}
.report-community-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 22px;
}
.report-community-summary {
  margin-top: 22px;
}
.report-community-summary-heading {
  display: grid;
  gap: 4px;
}
.report-community-summary-heading strong {
  font-size: 20px;
}
.report-community-summary-heading span {
  color: #68777d;
  font-size: 14px;
}
.report-community-summary .report-community-grid {
  margin-top: 12px;
}
.report-community-layout {
  display: block;
  margin-top: 22px;
}
.report-community-layout .community-map-island {
  height: 420px;
}
.report-section-link {
  display: flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  margin-top: 15px;
  color: #39758f;
  font-weight: 850;
  text-decoration: none;
}
.report-school-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-top: 22px;
}
.report-school-grid a {
  display: grid;
  gap: 6px;
  padding: 16px;
  border: 1px solid #d5e0d8;
  box-shadow: inset 0 3px 0 #4d7b62;
  border-radius: 11px;
  background: #f7faf7;
  color: #2f4738;
  text-decoration: none;
}
.report-school-grid strong {
  font-size: 17px;
}
.report-school-grid span {
  font-size: 15px !important;
}
.report-school-grid small {
  color: #69766e;
  font-size: 14px !important;
}
.report-school-grid .report-school-card {
  display: flex;
  min-height: 250px;
  flex-direction: column;
  padding: 18px;
  border: 1px solid #d5e0d8;
  border-radius: 13px;
  background: #fff;
}
.report-school-card header {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 11px;
}
.report-school-card header h3 {
  margin: 4px 0;
}
.report-school-route {
  display: grid;
  gap: 4px;
  margin: 18px 0;
  padding: 14px;
  border-radius: 11px;
  background: #edf4f6;
}
.report-school-route strong {
  color: #356f85;
  font-size: 24px;
}
.report-school-route span {
  color: #61747c;
}
.report-school-card .relationship-card-actions {
  margin-top: auto;
}
.report-school-card footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
  color: #6b7b81;
}
.report-school-card footer > span { font-size: 14px; line-height: 1.35; }
.report-school-walk-status { max-width: 68%; padding: 5px 8px; border: 1px solid #d7e0e2; border-radius: 8px; text-align: right; }
.report-school-walk-status.is-in { border-color: #b9d5c1; background: #edf7ef; color: #3f6b4b; }
.report-school-walk-status.is-out { background: #f4f7f7; color: #64777d; }
.report-school-admission {
  margin-top: 8px;
  color: #667a76;
  font-size: 14px;
  line-height: 1.4;
}
.report-school-routing {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 18px;
  margin-top: 18px;
  padding: 16px 18px;
  border: 1px solid #d7e0e2;
  border-radius: 12px;
  background: #f3f7f7;
}
.report-school-routing > div:first-child { display: grid; gap: 3px; }
.report-school-routing strong { font-size: 17px; }
.report-school-routing span,
.report-school-routing-detail { color: #65767b; font-size: 14px; }
.report-school-routing > b { color: #2f7893; font-size: 30px; line-height: 1; }
.report-school-routing-detail { grid-column: 1 / -1; }
.report-missing {
  margin-top: 20px;
  padding: 18px;
  border: 1px dashed #bfcdd1;
  border-radius: 11px;
  background: #f7f9f8;
  color: #65777e;
}
.report-sources ul {
  margin: 18px 0 0;
  padding-left: 22px;
}
.report-sources li {
  margin: 9px 0;
  color: #5f7077;
  line-height: 1.5;
}
.report-loading,
.report-start {
  display: grid;
  place-items: center;
  max-width: 900px;
  min-height: 600px;
  margin: auto;
  padding: 40px;
  text-align: center;
}
.report-loading-progress {
  width: min(420px, 80vw);
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #d4e3e9;
}
.report-loading-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #39758f;
  transition: width .35s ease;
}
.report-loading h1,
.report-start h1 {
  font-size: 42px;
}
.report-start form {
  display: flex;
  gap: 8px;
  width: min(680px, 100%);
}
.report-start input {
  flex: 1;
  height: 50px;
  padding: 0 13px;
  border: 1px solid #c8d8de;
  border-radius: 9px;
}
.report-start button {
  padding: 0 16px;
  border: 0;
  border-radius: 9px;
  background: #477f99;
  color: #fff;
  font-weight: 800;
}
.report-start .report-address-form{display:grid;max-width:760px;gap:8px}.report-address-form>label{color:#60757e;font-size:16px;font-weight:800}.report-address-form .address-autocomplete-control{border:1px solid #c8d9df;border-radius:11px;background:#fff;overflow:hidden;padding-left:14px}.report-address-form .address-autocomplete-control input{min-width:0;border:0;border-radius:0}.report-address-form .address-autocomplete-control>button{align-self:stretch;border-radius:0;min-height:52px}
@keyframes report-spin {
  to {
    transform: rotate(360deg);
  }
}
@keyframes report-progress {
  0% { transform: translateX(-120%); }
  100% { transform: translateX(360%); }
}
@media (max-width: 950px) {
  .report-property-grid,
  .report-community-layout {
    grid-template-columns: 1fr;
  }
  .report-risk-grid {
    grid-template-columns: 1fr 1fr;
  }
  .report-risk-grid .report-permit-card {
    grid-column: auto;
    grid-row: auto;
  }
  .report-school-grid {
    grid-template-columns: 1fr 1fr;
  }
  .report-nearby-grid {
    grid-template-columns: 1fr;
  }
  .report-manual-grid { grid-template-columns: 1fr 1fr; }
  .report-neighbour-layout {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 650px) {
  .property-report {
    padding: 24px 14px 60px;
  }
  .report-header {
    align-items: flex-start;
    flex-direction: column;
    padding: 22px;
  }
  .report-header > aside {
    min-width: 0;
    width: 100%;
  }
  .report-header-map-shell {
    flex: 0 0 auto;
    width: 100%;
    height: 230px;
  }
  .report-header-map-shell.is-expanded {
    position: relative;
    top: auto;
    right: auto;
    width: 100%;
    height: 360px;
  }
  .report-jump {
    overflow: hidden;
    flex-wrap: wrap;
  }
  .report-section {
    padding: 20px;
  }
  .report-property-grid dl,
  .report-community-grid {
    grid-template-columns: 1fr 1fr;
  }
  .report-risk-grid,
  .report-school-grid,
  .report-fact-grid {
    grid-template-columns: 1fr;
  }
  .report-manual-grid { grid-template-columns: 1fr; }
  .report-market-meta {
    display: grid;
    gap: 5px;
  }
  .report-radar-values {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .report-neighbour-grid {
    grid-template-columns: 1fr 1fr;
  }
  .report-neighbour-bars > div {
    grid-template-columns: 115px minmax(0, 1fr) 48px;
  }
  .property-report .chart-card header > span {
    max-width: 100%;
    white-space: normal;
  }
  .property-report .standalone-safety > header {
    align-items: flex-start;
    flex-direction: column;
  }
  .safety-split-grid {
    grid-template-columns: 1fr;
  }
  .property-report .community-price-type-tabs,
  .property-report .chart-tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .report-start form {
    flex-direction: column;
  }
  .report-start button {
    min-height: 48px;
  }
}

/* Address owns the property identity; the compact map remains unobstructed. */
.report-header > div:first-child{min-width:0;flex:1 1 auto}
.report-header .report-address-map-link{display:inline-block;font-size:clamp(28px,2.25vw,42px)!important;line-height:1.1!important;letter-spacing:-.035em!important;overflow-wrap:anywhere;word-spacing:.05em}
.report-header p{font-size:20px!important;line-height:1.35}
.report-header p svg{width:21px;height:21px;flex:0 0 auto}
.report-header-map-shell .community-map-context{display:none!important}
@media(max-width:760px){.report-header .report-address-map-link{font-size:clamp(24px,7vw,32px)!important}.report-header p{font-size:17px!important}}

/* One property title, one location card, and a consistent top-right action rail. */
.report-header{align-items:stretch;padding:38px;min-height:230px}.report-header>div:first-child{padding-right:360px}.property-report-actions{position:absolute;z-index:6;top:28px;right:30px;margin:0}.report-header .report-address-map-link{font-size:clamp(34px,3.15vw,56px)!important;line-height:1.02!important}.report-header p{margin-top:18px;font-size:21px!important}.report-community-location{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(560px,1.22fr);gap:26px;align-items:stretch;margin-top:22px;padding:24px;border:1px solid #d2e0e5;border-radius:18px;background:#f5fafb}.report-community-location-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px;padding:14px}.report-community-location-copy>p{margin:0;color:#59707a;font-size:18px;line-height:1.45}.report-community-location-copy .report-section-link{margin-top:6px;font-size:16px}.report-community-map-shell{position:relative;min-height:370px;border-radius:15px;overflow:hidden;box-shadow:0 10px 30px rgba(35,53,60,.11)}.report-community-map-shell .community-map-island{height:100%;min-height:370px;border-radius:15px}.report-community-map-shell.is-expanded{min-height:620px}.report-community-map-shell.is-expanded .community-map-island{min-height:620px}@media(max-width:900px){.report-header{min-height:0;padding:28px}.report-header>div:first-child{padding-right:0;padding-top:62px}.property-report-actions{top:18px;right:18px}.report-community-location{grid-template-columns:1fr}.report-community-map-shell,.report-community-map-shell .community-map-island{min-height:330px}.report-community-map-shell.is-expanded,.report-community-map-shell.is-expanded .community-map-island{min-height:520px}}@media(max-width:600px){.property-report-actions{left:18px;right:auto;max-width:calc(100% - 36px)}.property-report-actions button{min-width:42px;padding:0 10px;font-size:0}.property-report-actions button svg{margin:0}.report-header>div:first-child{padding-top:58px}.report-header .report-address-map-link{font-size:clamp(28px,9vw,40px)!important}.report-community-location{padding:14px}.report-community-location-copy{padding:8px}.report-community-location-copy>p{font-size:16px}}

/* The community card carries the six-axis profile; residents follow immediately below. */
.report-community-location-copy .report-community-radar{width:100%;margin:4px 0 2px;padding:14px;border:1px solid #d6e3e7;border-radius:13px;background:#fbfdfd}.report-community-radar header{display:grid;gap:3px}.report-community-radar header strong{color:#315b6b;font-size:18px}.report-community-radar header span{color:#708089;font-size:13px}.report-community-radar svg{display:block;width:min(100%,270px);margin:0 auto}.report-community-radar .report-radar-values{grid-template-columns:repeat(3,minmax(0,1fr))}.report-neighbour-layout{grid-template-columns:1fr}.report-neighbour-layout .report-radar-card{display:none}.report-neighbour-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);gap:20px;align-items:start}.report-neighbour-intro,.report-neighbour-grid{grid-column:1}.report-neighbour-bars{grid-column:2;grid-row:1 / span 2;margin:0;align-self:stretch}.report-neighbour-intro strong{font-size:24px}.report-neighbour-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.report-neighbour-detail{grid-template-columns:1fr}.report-neighbour-bars{grid-column:auto;grid-row:auto;margin-top:0}}@media(max-width:600px){.report-community-radar .report-radar-values{grid-template-columns:repeat(2,minmax(0,1fr))}.report-neighbour-grid{grid-template-columns:1fr 1fr}}

.report-community-radar svg{overflow:visible!important;width:min(100%,300px)!important;margin:8px auto 4px!important}.report-community-radar header span{display:none}

/* Residents: one non-redundant census composition view with icon-led groups. */
.report-residents-intro{margin:4px 0 20px;color:#61757e;font-size:17px}.report-resident-signals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.report-resident-signals article{display:grid;grid-template-columns:22px minmax(0,1fr);gap:4px 11px;padding:17px;border:1px solid #d6e3e7;border-radius:14px;background:#f5fafb}.report-resident-signals svg{grid-row:1 / span 3;color:#39809c}.report-resident-signals span{color:#617781;font-size:13px}.report-resident-signals strong{color:#294b58;font-size:26px;line-height:1}.report-resident-signals small{color:#798a91;font-size:12px}.report-resident-columns{display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:12px;margin-top:14px}.report-resident-panel{display:grid;align-content:start;gap:15px;padding:18px;border:1px solid #d6e3e7;border-radius:14px;background:#fff}.report-resident-panel>header{display:flex;align-items:flex-start;gap:9px}.report-resident-panel>header svg{color:#39809c}.report-resident-panel>header div{display:grid;gap:3px}.report-resident-panel>header strong,.report-resident-groups header strong{color:#315b6b;font-size:16px}.report-resident-panel>header span,.report-resident-groups header span{color:#778991;font-size:12px}.report-resident-bars{display:grid;gap:12px}.report-resident-bars>div,.report-resident-groups>div>div{display:grid;grid-template-columns:120px minmax(0,1fr) 48px;align-items:center;gap:9px}.report-resident-bars span,.report-resident-groups span{color:#526d78;font-size:13px}.report-resident-bars i,.report-resident-groups i{display:block;height:9px;overflow:hidden;border-radius:999px;background:#e3ecee}.report-resident-bars b,.report-resident-groups b{display:block;height:100%;border-radius:inherit}.report-resident-bars .children b{background:#d7764d}.report-resident-bars .working b{background:#4f8ea7}.report-resident-bars .seniors b{background:#6d8a72}.report-resident-bars strong,.report-resident-groups strong{color:#294b58;font-size:13px;text-align:right}.report-language-split{display:grid;grid-template-columns:1fr 1fr;gap:8px}.report-language-split>div{display:grid;gap:4px;padding:13px;border-radius:10px;background:#edf5f7}.report-language-split strong{color:#2e718b;font-size:23px;line-height:1}.report-language-split span{color:#617781;font-size:12px}.report-resident-panel>small{color:#788b92;font-size:12px;line-height:1.4}.report-generation-pills{display:grid;gap:8px}.report-generation-pills>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #e3ebed}.report-generation-pills span{color:#546f79;font-size:13px}.report-generation-pills strong{color:#294b58;font-size:15px}.report-resident-groups{display:grid;gap:13px;margin-top:14px;padding:18px;border:1px solid #d6e3e7;border-radius:14px;background:#f8fbfb}.report-resident-groups header>div{display:grid;gap:3px}.report-resident-groups>div{display:grid;gap:10px}.report-resident-groups b{background:#4f8ea7}.report-resident-groups small{color:#788b92;font-size:13px}@media(max-width:900px){.report-resident-columns{grid-template-columns:1fr}.report-resident-signals{grid-template-columns:1fr 1fr}}@media(max-width:600px){.report-resident-signals{grid-template-columns:1fr}.report-resident-bars>div,.report-resident-groups>div>div{grid-template-columns:100px minmax(0,1fr) 44px}.report-language-split{grid-template-columns:1fr}}

.report-risk-grid article.caution{box-shadow:inset 0 3px 0 #d49335;background:#fff8e9}.report-risk-grid article.caution .risk-value{color:#a76412}.report-risk-grid article>em{display:block;margin-top:7px;color:#718087;font-size:12px;font-style:normal;line-height:1.35}.report-risk-grid article.warning>em{color:#9a574d}.report-risk-grid article.caution>em{color:#8a6a38}

/* Risk cards use their own semantic colors rather than one generic blue. */
.report-risk-grid article.risk-tone-clear{box-shadow:inset 0 3px 0 #3a9b6a;background:#eef8f1}.report-risk-grid article.risk-tone-clear .risk-value{color:#26764d}.report-risk-grid article.risk-tone-caution{box-shadow:inset 0 3px 0 #d49335;background:#fff8e9}.report-risk-grid article.risk-tone-caution .risk-value{color:#a76412}.report-risk-grid article.risk-tone-warning{box-shadow:inset 0 3px 0 #c65345;background:#fdf0ee}.report-risk-grid article.risk-tone-warning .risk-value{color:#ae4238}.crime-compare-bar .risk-fill-clear{background:#3a9b6a}.crime-compare-bar .risk-fill-caution{background:#d49335}.crime-compare-bar .risk-fill-warning{background:#c65345}.noise-pointer.risk-fill-clear{background:linear-gradient(90deg,#3a9b6a 0 38%,#e8ede7 38% 100%)}.noise-pointer.risk-fill-caution{background:linear-gradient(90deg,#3a9b6a 0 38%,#d49335 38% 63%,#e8ede7 63% 100%)}.noise-pointer.risk-fill-warning{background:linear-gradient(90deg,#3a9b6a 0 38%,#d49335 38% 63%,#c65345 63% 100%)}.noise-pointer.risk-fill-clear i{border-color:#26764d}.noise-pointer.risk-fill-caution i{border-color:#a76412}.noise-pointer.risk-fill-warning i{border-color:#ae4238}

.report-sunlight-section>header{justify-content:space-between;align-items:flex-start;gap:18px}.report-sunlight-section>header>div{display:grid;gap:4px}.report-sunlight-intro{margin:5px 0 20px;color:#607782;font-size:17px;line-height:1.5}.report-sunlight-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:14px}.report-sunlight-scene{overflow:hidden;border:1px solid #d4e2e5;border-radius:15px;background:#f2f8f8}.report-sunlight-scene-topline{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:13px 16px;border-bottom:1px solid #d4e2e5;color:#617880;font-size:13px;font-variant-numeric:tabular-nums}.report-sunlight-scene-topline span{display:inline-flex;align-items:center;gap:5px}.report-sunlight-scene-topline span:first-child{color:#b37426;font-weight:800}.report-sunlight-svg{display:block;width:100%;height:auto;min-height:280px;color:#527786}.sunlight-neighbour{fill:#c9dce0;stroke:#91b1bb;stroke-width:.8;opacity:.75}.sunlight-subject{fill:#3f879d;stroke:#244f5e;stroke-width:1.5}.sunlight-shadow{fill:#d89542;fill-opacity:.32;stroke:#c07b2a;stroke-width:.8;stroke-linejoin:round}.sunlight-sun{fill:#e9ad45;stroke:#fff8e8;stroke-width:3}.sunlight-ray{stroke:#dd9636;stroke-width:1.4;stroke-dasharray:4 4;opacity:.85}.sunlight-north{fill:#3e6f7e;font-size:14px;font-weight:800}.report-sunlight-controls{display:grid;grid-template-columns:minmax(150px,.65fr) minmax(200px,1fr) auto;align-items:end;gap:14px;padding:15px 16px;border-top:1px solid #d4e2e5;background:#fffdf9}.report-sunlight-controls label{display:grid;gap:6px;color:#617880;font-size:13px;font-weight:800}.report-sunlight-controls label svg{vertical-align:-3px;margin-right:5px;color:#3f879d}.report-sunlight-controls input[type=date]{min-height:38px;border:1px solid #c8d9df;border-radius:8px;background:#fff;color:#294b58;padding:0 9px;font:inherit}.sunlight-time-control{grid-template-columns:1fr auto!important}.sunlight-time-control input{grid-column:1 / -1;width:100%;accent-color:#3f879d}.sunlight-time-control output{color:#294b58;font-size:16px;font-variant-numeric:tabular-nums}.report-sunlight-play{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 13px;border:1px solid #3f879d;border-radius:9px;background:#3f879d;color:#fff;font:inherit;font-weight:800;cursor:pointer}.report-sunlight-play:disabled{opacity:.55;cursor:not-allowed}.report-sunlight-facts{display:grid;align-content:start;gap:14px;padding:18px;border:1px solid #d4e2e5;border-radius:15px;background:#fffdf9}.sunlight-fact-primary{display:grid;gap:5px;padding-bottom:14px;border-bottom:1px solid #d9e6e8}.sunlight-fact-primary span,.sunlight-fact-grid span,.report-sunlight-source span{color:#68808a;font-size:13px}.sunlight-fact-primary strong{color:#294b58;font-size:34px;letter-spacing:-.04em}.sunlight-fact-primary small{color:#68808a;font-size:13px}.sunlight-fact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sunlight-fact-grid>div{display:grid;gap:5px;padding:11px;border-radius:10px;background:#eef5f6}.sunlight-fact-grid strong{color:#3e7d94;font-size:21px}.report-sunlight-facts p{margin:0;color:#526d78;font-size:14px;line-height:1.5}.report-sunlight-facts .report-sunlight-note{padding-top:12px;border-top:1px solid #d9e6e8;color:#788990;font-size:13px}.report-sunlight-source{display:grid;gap:5px;padding-top:12px;border-top:1px solid #d9e6e8}.report-sunlight-source strong{color:#294b58;font-size:13px;overflow-wrap:anywhere}.report-sunlight-empty{display:flex;align-items:flex-start;gap:12px;padding:20px;border:1px dashed #c8d9df;border-radius:13px;background:#f5fafb;color:#607782}.report-sunlight-empty svg{flex:0 0 auto;color:#b37426}.report-sunlight-empty div{display:grid;gap:4px}.report-sunlight-empty strong{color:#294b58;font-size:18px}.report-sunlight-empty span{font-size:15px;line-height:1.45}@media(max-width:900px){.report-sunlight-layout{grid-template-columns:1fr}.report-sunlight-facts{grid-template-columns:1fr 1fr}.sunlight-fact-primary,.report-sunlight-facts>p,.report-sunlight-source{grid-column:1 / -1}}@media(max-width:600px){.report-sunlight-section>header{display:grid}.report-sunlight-section>header .report-section-link{justify-self:start}.report-sunlight-controls{grid-template-columns:1fr 1fr}.report-sunlight-controls label:first-child{grid-column:1 / -1}.report-sunlight-play{width:100%}.report-sunlight-facts{grid-template-columns:1fr}.sunlight-fact-primary,.report-sunlight-facts>p,.report-sunlight-source{grid-column:auto}.report-sunlight-svg{min-height:220px}}

.civic-login-gate{position:fixed;z-index:300;inset:118px 0 0;display:grid;place-items:center;overflow:hidden;padding:20px;background:rgba(226,238,241,.42);backdrop-filter:blur(15px) saturate(.68)}.civic-login-obscured{position:absolute;inset:7% 6%;display:grid;grid-template-columns:1.3fr .9fr;gap:20px;opacity:.5;filter:blur(5px);transform:scale(1.04)}.civic-login-obscured i{min-height:170px;border:1px solid #bfd1d8;border-radius:20px;background:linear-gradient(135deg,#f8fcfc,#dcebef)}.civic-login-obscured i:first-child{grid-row:span 2}.civic-login-gate section{position:relative;display:grid;gap:16px;width:min(430px,100%);padding:34px;border:1px solid rgba(255,255,255,.8);border-radius:22px;background:rgba(255,253,249,.76);box-shadow:0 28px 80px rgba(24,48,57,.22);backdrop-filter:blur(20px)}.civic-login-gate p{margin:0;color:#397b97;font-size:11px;font-weight:900;letter-spacing:.14em}.civic-login-gate h2{margin:0;color:#264855;font-size:30px;line-height:1.08;letter-spacing:-.03em}.civic-login-gate span{color:#607782;font-size:16px;line-height:1.55}.civic-login-gate-close{position:absolute;right:14px;top:12px;border:0;background:transparent;color:#547079;font-size:26px;cursor:pointer}.civic-login-gate-google{min-height:50px;border:1px solid #2d6f88;border-radius:11px;background:#2f7893;color:#fff;font-size:16px;font-weight:850;cursor:pointer}.civic-login-gate-google:disabled{opacity:.6}.civic-access-inline{position:fixed;z-index:301;right:20px;bottom:20px;display:flex;align-items:center;gap:12px;max-width:calc(100% - 40px);padding:14px 16px;border:1px solid #d4bc8d;border-radius:12px;background:#fffaf0;color:#604c2f;box-shadow:0 12px 35px rgba(39,45,39,.2)}.civic-access-inline a,.civic-access-inline button{border:0;background:transparent;color:#2f7893;font-weight:850;cursor:pointer;text-decoration:none}
.civic-login-gate>.civic-auth-dialog{width:min(645px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;background:#fffdf9}.civic-auth-dialog .auth-shell-embedded{padding:42px 52px}.civic-auth-dialog .auth-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:40px;font-weight:400;letter-spacing:-.035em;line-height:1.12}.civic-auth-dialog .auth-heading p{margin-top:14px;color:#4f7180;font-family:inherit;font-size:20px;letter-spacing:0;line-height:1.45}.civic-auth-dialog .auth-form{gap:18px;margin-top:34px}.civic-auth-dialog .field{gap:9px}.civic-auth-dialog .field label{font-size:16px;font-weight:750}.civic-auth-dialog .field input{height:62px;min-height:62px;border-radius:12px;font-size:18px}.civic-auth-dialog .auth-form>button[data-slot="button"],.civic-auth-dialog .social-provider-button{width:100%;min-height:50px;border-radius:10px;font-size:17px}.civic-auth-dialog .auth-divider{font-size:16px}.civic-auth-dialog .auth-back{font-size:16px}.civic-auth-dialog .form-error,.civic-auth-dialog .text-action{font-size:16px}

.civic-auth-dialog .auth-back,.civic-auth-dialog .text-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin:0;padding:0 12px;border:1px solid #c9dce2;border-radius:9px;background:#f3f8f9;color:#39758f;font:inherit;font-size:16px;font-weight:750;line-height:1;text-decoration:none;cursor:pointer}.civic-auth-dialog .auth-back:hover,.civic-auth-dialog .text-action:hover{border-color:#6c9bad;background:#e8f3f5}.civic-auth-dialog .auth-back{justify-self:start;margin-bottom:2px}.civic-auth-dialog .text-action{justify-self:center;border:0;background:transparent}.civic-auth-dialog .auth-back svg{width:18px;height:18px}
.civic-auth-dialog .password-input{position:relative;display:block}.civic-auth-dialog .password-input input{width:100%;padding-right:56px}.civic-auth-dialog .password-input button{position:absolute;top:50%;right:8px;display:grid;width:44px;height:44px;place-items:center;margin:0;padding:0;border:0;border-radius:10px;background:transparent;color:#607782;font:inherit;cursor:pointer;transform:translateY(-50%)}.civic-auth-dialog .password-input button:hover{background:#eef4f5;color:#264855}.civic-auth-dialog .password-input button:focus-visible{outline:2px solid #397b97;outline-offset:2px}.civic-auth-dialog .password-input button svg{width:20px;height:20px;stroke-width:1.8}
.civic-auth-dialog .auth-back{gap:8px}
.civic-auth-dialog .auth-form{display:grid;gap:18px}.civic-auth-dialog .field{display:grid;gap:9px}.civic-auth-dialog .auth-divider{display:flex;align-items:center;gap:12px;color:#6b8088}.civic-auth-dialog .auth-divider::before,.civic-auth-dialog .auth-divider::after{content:"";height:1px;flex:1;background:#d6e3e7}.civic-auth-dialog .auth-result{display:grid;justify-items:center;gap:18px;margin-top:28px;text-align:center}.civic-auth-dialog .auth-result p{margin:0;color:#607782;line-height:1.5}.civic-auth-dialog .auth-result>span{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:#eaf4f5;color:#397b97}
@media(max-width:600px){.civic-auth-dialog .auth-shell-embedded{padding:30px 24px}.civic-auth-dialog .auth-heading h1{font-size:32px}.civic-auth-dialog .auth-heading p{font-size:16px}.civic-auth-dialog .field input{height:54px;min-height:54px}.civic-auth-dialog .password-input button{right:6px;width:42px;height:42px}}
.report-property-hero{display:grid;grid-template-columns:minmax(290px,.72fr) minmax(0,1.28fr);gap:14px;align-items:stretch}.report-property-hero>.report-header{height:100%;box-sizing:border-box;display:flex;flex-direction:column;padding:28px}.report-property-hero>.report-header .property-report-actions{margin-top:auto}.report-property-hero>.report-sunlight-section{min-width:0;margin-top:0}.report-property-hero .report-sunlight-layout{grid-template-columns:minmax(0,1.45fr) minmax(245px,.55fr)}.sunlight-shadow-trace{opacity:.13}.sunlight-shadow-trace.is-current{opacity:.62;stroke-width:1.4}.sunlight-coordinate-labels text{fill:#70878e;font-size:11px;font-weight:800;letter-spacing:.04em}.report-sunlight-chart-card{margin-top:14px;padding:17px 18px 14px;border:1px solid #d4e2e5;border-radius:15px;background:#fffdf9}.report-sunlight-chart-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.report-sunlight-chart-heading>div{display:grid;gap:4px}.report-sunlight-chart-heading span{color:#397b97;font-size:12px;font-weight:900;letter-spacing:.14em}.report-sunlight-chart-heading strong{color:#294b58;font-size:18px}.report-sunlight-chart-heading>b{color:#68808a;font-size:14px;font-variant-numeric:tabular-nums}.report-sunlight-chart{display:block;width:100%;height:auto;margin-top:10px;overflow:visible}.report-sunlight-chart line{stroke:#dbe7e9;stroke-width:1}.report-sunlight-chart .sunlight-chart-axis{stroke:#9db7be;stroke-width:1.2}.report-sunlight-chart text{fill:#72878d;font-size:12px}.report-sunlight-chart .sunlight-chart-label{fill:#557681;font-size:11px;font-weight:800;letter-spacing:.08em}.report-sunlight-chart .sunlight-altitude-path{fill:none;stroke:#d88937;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.report-sunlight-chart .sunlight-chart-cursor{stroke:#3f879d;stroke-width:1.5;stroke-dasharray:4 4}.report-sunlight-chart .sunlight-chart-current{fill:#3f879d;stroke:#fffdf9;stroke-width:3}.report-sunlight-chart-footer{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:2px;color:#68808a;font-size:13px}.report-sunlight-chart-footer span{display:inline-flex;align-items:center;gap:6px}.report-sunlight-chart-footer i{display:inline-block;width:18px;height:3px;border-radius:999px}.solar-path-key{background:#d88937}.shadow-path-key{background:#c9852e;opacity:.55}.report-sunlight-chart-footer strong{margin-left:auto;color:#294b58;font-variant-numeric:tabular-nums}@media(max-width:1150px){.report-property-hero{grid-template-columns:1fr}.report-property-hero>.report-header{min-height:280px}.report-property-hero .report-sunlight-layout{grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr)}}@media(max-width:600px){.report-sunlight-chart-heading{align-items:flex-start;flex-direction:column;gap:5px}.report-sunlight-chart-footer strong{margin-left:0}.report-sunlight-chart-card{padding:15px 12px}.report-sunlight-chart text{font-size:10px}}
