:root {
 --hzn-bg: #f3f5f8;
 --hzn-card: #ffffff;
 --hzn-surface: #e9eef5;
 --hzn-surface-2: #dde6f0;
 --hzn-line: #e2e8f0;
 --hzn-ink: #232a2f;
 --hzn-muted: #5e6b76;
 --hzn-brand: #01669d;
 --hzn-brand-fg: #ffffff;
 --hzn-accent: #6d5bd0;
 --hzn-accent-soft: #efecff;
 --hzn-data: #01669d;
 --hzn-data-2: #50abfe;
 --hzn-data-soft: #dcebf8;
 --hzn-mint: #50abfe;
 --hzn-score-green: #147d64;
 --hzn-score-yellow: #fbb040;
 --hzn-score-red: #ff4141;
 --hzn-score-gray: #6f7b87;
 --hzn-good: #147d64;
 --hzn-good-soft: #e3f5ee;
 --hzn-warning: #fbb040;
 --hzn-warning-fg: #92600e;
 --hzn-warning-soft: #fff3dd;
 --hzn-bad: #ff4141;
 --hzn-bad-fg: #a11111;
 --hzn-bad-soft: #ffe8e8;
 --hzn-unknown: #6f7b87;
 --hzn-unknown-soft: #e9eef5;
 --hzn-success: var(--hzn-good);
 --hzn-coral: var(--hzn-bad);
 --hzn-amber: var(--hzn-warning);
 --hzn-font-sans: Urbanist, 'Open Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
 --hzn-font-ui: var(--hzn-font-sans);
 --hzn-font-eyebrow: 'IBM Plex Mono', ui-monospace, Menlo, monospace;
 --hzn-type-label: 0.68rem;
 --hzn-type-caption: 0.72rem;
 --hzn-type-meta: 0.78rem;
 --hzn-type-body: 0.82rem;
 --hzn-type-metric: 1.3rem;
 --hzn-shadow-card: 0 1px 2px rgba(35, 42, 47, 0.05), 0 10px 28px -16px rgba(35, 42, 47, 0.16);
 --hzn-shadow-pop: 0 2px 6px rgba(35, 42, 47, 0.07), 0 24px 48px -24px rgba(1, 102, 157, 0.22);
 --hzn-radius-card: 16px;
 --hzn-radius-control: 10px;
 --hzn-rail: 240px;
 --hzn-header: 56px;
}
/* Horizon atomic utilities. Use only for registry-approved repeated bundles. */
.hznFlexBetween { display: flex; align-items: center; justify-content: space-between; }
.hznFlexCenter { display: flex; align-items: center; }
.hznFlexWrap { display: flex; flex-wrap: wrap; }
.hznStack { display: flex; flex-direction: column; }
.hznGridCenter { display: grid; place-items: center; }


/* Google review requests and platform-neutral review storage UI. */
.hznBtnXs {
 min-height: 28px;
 padding: 5px 9px;
 font-size: 0.66rem;
}

.hznReviewGateNotice {
 display: flex;
 align-items: flex-start;
 gap: 14px;
 padding: 18px 20px;
 border-left: 4px solid var(--hzn-warning);
}

.hznReviewGateNotice > i {
 margin-top: 2px;
 color: var(--hzn-warning-fg);
 font-size: 1.25rem;
}

.hznReviewGateNotice p {
 margin: 4px 0 0;
 color: var(--hzn-muted);
 font-size: 0.78rem;
}

.hznReviewSettingsCard {
 width: 100%;
 max-width: none;
 box-sizing: border-box;
}

.hznReviewSettingsCard .hznSettingsFields {
 grid-template-columns: 1fr;
}

.hznReviewSettingsCard input,
.hznReviewSettingsCard textarea,
.hznReviewSettingsCard .tox-tinymce {
 width: 100%;
 max-width: none;
 box-sizing: border-box;
}


.hznReviewTemplateTokens {
 gap: 8px;
 margin-top: 14px;
 color: var(--hzn-muted);
 font-size: 0.7rem;
}

.hznReviewTemplateTokens code {
 padding: 4px 7px;
 border: 1px solid var(--hzn-line);
 border-radius: 6px;
 background: var(--hzn-surface);
 color: var(--hzn-brand);
}


.hznReviewFilters label{
 display: grid;
 gap: 5px;
 color: var(--hzn-muted);
 font-size: 0.68rem;
 font-weight: 700;
}

.hznReviewFilters input,
.hznReviewFilters select{
 box-sizing: border-box;
 width: 100%;
 min-width: 0;
 min-height: 40px;
 padding: 10px 11px;
 border: 1px solid var(--hzn-line);
 border-radius: var(--hzn-radius-control);
 background: var(--hzn-surface);
 color: var(--hzn-ink);
 font: inherit;
}

.hznReviewFilters {
 display: grid;
 grid-template-columns: minmax(220px, 1fr) minmax(180px, 240px) auto;
 align-items: end;
 gap: 12px;
 margin-top: 18px;
 padding: 16px;
}

.hznReviewToolbar {
 justify-content: flex-end;
 gap: 8px;
}

.hznReviewPipeline {
 display: grid;
 grid-template-columns: repeat(4, minmax(0, 1fr));
 gap: 12px;
}

.hznReviewPipelineItem {
 display: grid;
 gap: 5px;
 min-width: 0;
 padding: 16px;
 border-top: 3px solid var(--hzn-brand);
}

.hznReviewPipelineItem[data-review-pipeline="pending"] { border-top-color: var(--hzn-warning); }
.hznReviewPipelineItem[data-review-pipeline="reviewed"] { border-top-color: var(--hzn-good); }
.hznReviewPipelineItem[data-review-pipeline="unmatched"] { border-top-color: var(--hzn-unknown); }

.hznReviewPipelineItem > span {
 color: var(--hzn-muted);
 font-family: var(--hzn-font-eyebrow);
 font-size: 0.67rem;
 font-weight: 700;
 letter-spacing: 0.05em;
 text-transform: uppercase;
}

.hznReviewPipelineItem > strong {
 color: var(--hzn-ink);
 font-size: 1.55rem;
 font-variant-numeric: tabular-nums;
 line-height: 1;
}

.hznReviewPipelineItem > small {
 color: var(--hzn-muted);
 font-size: 0.72rem;
 line-height: 1.35;
}

.hznReviewList {
 display: block;
 overflow: hidden;
 padding: 0 20px 10px;
}

.hznReviewGroupHead {
 display: grid;
 grid-template-columns: 38px minmax(0, 1fr) 32px;
 align-items: center;
 gap: 12px;
 margin: 0 -20px;
 padding: 16px 20px 11px;
 border-top: 10px solid var(--hzn-surface);
 background: color-mix(in srgb, var(--hzn-data-soft) 52%, var(--hzn-card));
}

.hznReviewGroupHead:first-child {
 border-top: 0;
}

.hznReviewGroupHead > span{
 display: grid;
 width: 38px;
 height: 38px;
 place-items: center;
 border-radius: 11px;
 background: var(--hzn-data-soft);
 color: var(--hzn-brand);
}

.hznReviewGroupHead h2,
.hznReviewGroupHead p {
 margin: 0;
}

.hznReviewGroupHead h2 {
 color: var(--hzn-brand);
}

.hznReviewGroupHead p {
 margin-top: 2px;
 color: var(--hzn-muted);
 font-size: 0.7rem;
}

.hznReviewGroupHead > strong {
 display: grid;
 width: 28px;
 height: 28px;
 place-items: center;
 border-radius: 50%;
 background: var(--hzn-brand);
 color: #fff;
 font-size: 0.72rem;
 font-variant-numeric: tabular-nums;
}

.hznListRow.hznReviewListRow {
 display: grid;
 grid-template-columns: 42px minmax(0, 1fr) minmax(154px, auto) auto;
 gap: 12px;
 align-items: center;
 margin: 0 -20px;
 padding: 12px 20px;
}

.hznReviewRowAvatar {
 flex: 0 0 38px;
 width: 38px;
 height: 38px;
 aspect-ratio: 1;
 border-radius: 50%;
 background: var(--hzn-data-soft);
 color: var(--hzn-brand);
 object-fit: cover;
 font-weight: 850;
}

.hznReviewListRow .hznListTitle,
.hznReviewListRow .hznListSub {
 display: block;
}

.hznReviewListRow .hznReviewTitleLine {
 display: flex;
 min-width: 0;
 align-items: baseline;
 gap: 8px;
}

.hznReviewDate {
 flex: 0 0 auto;
 color: var(--hzn-muted);
 font-size: 0.68rem;
 font-weight: 500;
}

.hznReviewDataLabel {
 display: none;
}

.hznReviewIdealIcon {
 display: inline-grid;
 width: 20px;
 height: 20px;
 margin-left: 6px;
 place-items: center;
 border-radius: 50%;
 background: var(--hzn-good-soft);
 color: var(--hzn-good);
 font-size: 0.68rem;
 vertical-align: text-bottom;
}

.hznReviewRowStatus {
 justify-self: end;
}

.hznReviewRowActions {
 justify-content: flex-end;
 gap: 6px;
}

.hznReviewRowActions .hznBtn.hznBtnXs {
 box-sizing: border-box;
 height: 34px;
 min-height: 34px;
 padding: 6px 10px;
 font-size: 0.72rem;
 line-height: 1.2;
 white-space: nowrap;
}

.hznBtn.hznOwnerReviewMatchActive,
.hznBtn.hznOwnerReviewMatchActive:hover {
 border-color: color-mix(in srgb, var(--hzn-brand) 28%, var(--hzn-line));
 background: var(--hzn-data-soft);
 color: var(--hzn-brand);
 cursor: default;
 opacity: 1;
}

.hznReviewRowDetail {
 grid-column: 1 / -1;
 margin: 2px 0 7px 50px;
 padding: 14px 16px;
 border: 1px solid var(--hzn-line);
 border-radius: 12px;
 background: var(--hzn-surface);
}

.hznReviewRowDetail > div > strong {
 font-size: 0.72rem;
 letter-spacing: 0.05em;
 text-transform: uppercase;
}

.hznReviewRowDetail > div > p {
 margin: 6px 0 0;
 white-space: pre-wrap;
 line-height: 1.5;
}

.hznReviewDetailHead,
.hznReviewMatchHead {
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
 gap: 16px;
}

.hznReviewDetailHead {
 margin-bottom: 14px;
 padding-bottom: 13px;
 border-bottom: 1px solid var(--hzn-line);
}

.hznReviewMatchPicker {
 display: grid;
 grid-column: 1 / -1;
 gap: 14px;
 margin: 4px 0 8px 50px;
 padding: 16px;
 border: 1px solid color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line));
 border-radius: 12px;
 background: var(--hzn-card);
 box-shadow: var(--hzn-shadow-pop);
}

.hznReviewMatchWorkspace {
 grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
 align-items: start;
}

.hznReviewMatchWorkspace .hznReviewMatchHead {
 grid-column: 1 / -1;
}

.hznReviewMatchWorkspace .hznReviewMatchSearch {
 grid-column: 2;
}

.hznReviewMatchWorkspace .hznReviewMatchCandidates {
 grid-column: 2;
}

.hznReviewMatchWorkspace > .hznReviewMatchEvidence {
 grid-column: 1;
 grid-row: 2 / span 2;
 align-self: stretch;
 margin: 0;
 padding: 16px;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-surface);
}

.hznReviewMatchWorkspace > .hznReviewMatchEvidence .hznEyebrow,
.hznReviewMatchWorkspace > .hznReviewMatchEvidence p {
 margin: 0;
}

.hznReviewMatchWorkspace > .hznReviewMatchEvidence strong {
 display: block;
 margin-top: 6px;
}

.hznReviewMatchWorkspace > .hznReviewMatchEvidence p:not(.hznEyebrow) {
 margin-top: 7px;
 color: var(--hzn-muted);
 font-size: 0.78rem;
 line-height: 1.45;
 white-space: pre-wrap;
}

.hznReviewMatchHead > div {
 min-width: 0;
}

.hznReviewMatchHead .hznEyebrow,
.hznReviewMatchHead h2,
.hznReviewMatchHead p {
 margin: 0;
}

.hznReviewMatchHead .hznEyebrow {
 color: var(--hzn-brand);
}

.hznReviewMatchHead h2 {
 margin-top: 4px;
 font-size: 1rem;
}

.hznReviewMatchHead h2 + p {
 margin-top: 4px;
 color: var(--hzn-muted);
 font-size: 0.75rem;
}

.hznReviewMatchSearch {
 display: grid;
 gap: 5px;
}

.hznReviewMatchSearch > span {
 color: var(--hzn-muted);
 font-size: 0.68rem;
 font-weight: 700;
 letter-spacing: 0.04em;
 text-transform: uppercase;
}

.hznReviewMatchSearch input {
 box-sizing: border-box;
 width: 100%;
 min-width: 0;
 padding: 10px 11px;
 border: 1px solid var(--hzn-line);
 border-radius: var(--hzn-radius-control);
 background: var(--hzn-surface);
 color: var(--hzn-ink);
 font: inherit;
}

.hznReviewMatchSearch input:focus {
 border-color: var(--hzn-brand);
 outline: 3px solid color-mix(in srgb, var(--hzn-brand) 24%, transparent);
 outline-offset: 1px;
}

.hznReviewCandidateList {
 display: grid;
 gap: 8px;
 max-height: 420px;
 overflow-y: auto;
}

.hznReviewCandidate {
 display: grid;
 grid-template-columns: 42px minmax(0, 1fr) auto;
 gap: 11px;
 align-items: center;
 width: 100%;
 padding: 11px 12px;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-surface);
 color: var(--hzn-ink);
 font: inherit;
 text-align: left;
 cursor: pointer;
}

.hznReviewCandidate:hover,
.hznReviewCandidate:focus-visible {
 border-color: color-mix(in srgb, var(--hzn-brand) 38%, var(--hzn-line));
 background: var(--hzn-data-soft);
 outline: none;
}

.hznReviewCandidate > img,
.hznReviewCandidateAvatar {
 display: grid;
 width: 40px;
 height: 40px;
 place-items: center;
 border-radius: 50%;
 background: var(--hzn-card);
 color: var(--hzn-brand);
 object-fit: cover;
 font-weight: 800;
}

.hznReviewCandidateBody {
 display: grid;
 min-width: 0;
 gap: 2px;
}

.hznReviewCandidateBody strong,
.hznReviewCandidateBody small,
.hznReviewCandidateBody > span {
 overflow: hidden;
 text-overflow: ellipsis;
 white-space: nowrap;
}

.hznReviewCandidateBody strong {
 font-size: 0.82rem;
}

.hznReviewCandidateBody small {
 color: var(--hzn-muted);
 font-size: 0.68rem;
}

.hznReviewCandidateBody small i {
 color: var(--hzn-warning);
}

.hznReviewCandidateBody > span {
 color: var(--hzn-muted);
 font-size: 0.74rem;
}

.hznReviewCandidateSelect {
 color: var(--hzn-brand);
 font-size: 0.7rem;
 font-weight: 800;
 white-space: nowrap;
}

.hznReviewCandidateEmpty {
 display: grid;
 justify-items: center;
 gap: 4px;
 padding: 22px 14px;
 color: var(--hzn-muted);
 text-align: center;
}

.hznReviewCandidateEmpty i {
 margin-bottom: 4px;
 color: var(--hzn-brand);
 font-size: 1.2rem;
}

.hznReviewCandidateEmpty strong {
 color: var(--hzn-ink);
}

.hznReviewCandidateEmpty span {
 font-size: 0.74rem;
}

.hznReviewList > .hznEmpty {
 padding: 28px 0 18px;
}


.hznReviewActor,
.hznReviewMeta{
 display: flex;
 align-items: center;
}


.hznReviewActor {
 gap: 10px;
}

.hznReviewActor img,
.hznReviewAvatar {
 display: grid;
 width: 40px;
 height: 40px;
 flex: 0 0 40px;
 place-items: center;
 border-radius: 50%;
 background: var(--hzn-data-soft);
 color: var(--hzn-brand);
 object-fit: cover;
 font-weight: 800;
}

.hznReviewActor strong,
.hznReviewActor small {
 display: block;
}

.hznReviewActor small {
 margin-top: 2px;
 color: var(--hzn-muted);
 font-size: 0.65rem;
}

.hznReviewScore {
 font-weight: 800;
}


.hznReviewMedia {
 display: flex;
 gap: 8px;
 margin-top: 14px;
 overflow-x: auto;
}

.hznReviewMedia img {
 width: 104px;
 height: 104px;
 border-radius: 9px;
 object-fit: cover;
}

.hznReviewMeta {
 flex-wrap: wrap;
 gap: 9px 14px;
 margin-top: 15px;
 color: var(--hzn-muted);
 font-size: 0.68rem;
}

.hznReviewMeta a{
 color: var(--hzn-brand);
 text-decoration: none;
 font-weight: 700;
}

.hznReviewResponse {
 margin-top: 16px;
 padding: 13px 15px;
 border-left: 3px solid var(--hzn-brand);
 border-radius: 0 8px 8px 0;
 background: var(--hzn-surface);
 font-size: 0.78rem;
}

.hznReviewResponse p {
 margin: 5px 0 0;
 white-space: pre-wrap;
}

@media (max-width: 860px) {
 .hznReviewFilters,
.hznReviewPipeline{
  grid-template-columns: 1fr;
 }

 .hznReviewFilters .hznBtn {
  justify-content: center;
 }

 .hznListRow.hznReviewListRow {
  grid-template-columns: 42px minmax(0, 1fr);
 }

 .hznReviewRowStatus,
 .hznReviewRowActions {
  grid-column: 2;
  justify-self: start;
  justify-content: flex-start;
 }

 .hznReviewListRow .hznReviewDataLabel {
  display: block;
  margin-bottom: 3px;
  color: var(--hzn-muted);
  font-family: var(--hzn-font-eyebrow);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
 }

 .hznReviewRowDetail {
  margin-left: 0;
 }

 .hznReviewMatchPicker {
  margin-left: 0;
 }

 .hznReviewMatchHead {
  flex-direction: column;
 }

 .hznReviewMatchWorkspace {
  grid-template-columns: 1fr;
 }

 .hznReviewMatchWorkspace .hznReviewMatchHead,
 .hznReviewMatchWorkspace > .hznReviewMatchEvidence,
 .hznReviewMatchWorkspace .hznReviewMatchSearch,
 .hznReviewMatchWorkspace .hznReviewMatchCandidates {
  grid-column: 1;
  grid-row: auto;
 }

 .hznReviewCandidate {
  grid-template-columns: 42px minmax(0, 1fr);
 }

 .hznReviewCandidateSelect {
  grid-column: 2;
 }
}

[hidden] { display: none !important; }
.hznSrOnly { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; margin: -1px !important; padding: 0 !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }

html { height: 100%; overflow: hidden; }
body { margin: 0; height: 100%; background: var(--hzn-bg); color: var(--hzn-ink); font-family: var(--hzn-font-sans); font-size: 15px; line-height: 1.4; -webkit-font-smoothing: antialiased; }

#hznDashboard { height: 100%; }

#hznHeader { position: fixed; top: 0; left: 0; right: 0; height: var(--hzn-header); display: flex; align-items: center; box-sizing: border-box; gap: 16px; padding: 0 20px; background: color-mix(in srgb, var(--hzn-card) 88%, transparent); border-bottom: 1px solid var(--hzn-line); backdrop-filter: blur(8px); z-index: 30; }
#hznHeaderBrand { display: flex; align-items: center; gap: 10px; font-weight: 800; letter-spacing: -0.02em; color: var(--hzn-brand); }
.hznHeaderRailToggle { display: none; width: 36px; height: 36px; padding: 0; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); color: var(--hzn-brand); font: inherit; cursor: pointer; place-items: center; }
.hznHeaderRailToggle:hover,
.hznHeaderRailToggle:focus-visible { border-color: var(--hzn-brand); background: var(--hzn-data-soft); outline: none; }

#hznSearch { flex: 1; max-width: 420px; display: flex; align-items: center; gap: 8px; padding: 7px 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-muted); }
#hznSearch .hznSearchSubmit { flex: none; display: grid; place-items: center; padding: 0; border: 0; background: transparent; color: var(--hzn-muted); font: inherit; cursor: pointer; }
#hznSearch .hznSearchSubmit:hover, #hznSearch .hznSearchSubmit:focus { color: var(--hzn-brand); outline: none; }
#hznSearch input { border: 0; outline: none; background: transparent; flex: 1; min-width: 0; font: inherit; color: var(--hzn-ink); }
#hznSearch:focus-within { border-color: var(--hzn-brand); background: var(--hzn-card); }
#hznHeaderActions { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.hznHeaderHelp { width: 34px; height: 34px; padding: 0; border: 1px solid var(--hzn-line); border-radius: 50%; background: var(--hzn-card); color: var(--hzn-brand); font: inherit; cursor: pointer; }
.hznHeaderHelp:hover, .hznHeaderHelp:focus-visible { border-color: var(--hzn-brand); background: var(--hzn-data-soft); outline: none; }
.hznHeaderHelp i { font-size: 1rem; }
.hznUserAvatar { position: relative; overflow: hidden; isolation: isolate; }
.hznUserAvatarInitials { position: relative; z-index: 0; }
.hznUserAvatar > img { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; background: var(--hzn-card); object-fit: cover; }
.hznUserAvatarHeader { width: 30px; height: 30px; border: 1px solid var(--hzn-card); border-radius: 50%; background: var(--hzn-brand); color: var(--hzn-brand-fg); font-size: 0.72rem; font-weight: 900; box-shadow: 0 0 0 1px color-mix(in srgb, var(--hzn-brand) 16%, transparent); }
.hznUserMenu { position: relative; }
.hznUserMenuButton { display: flex; align-items: center; gap: 7px; padding: 3px 7px 3px 3px; border: 1px solid transparent; border-radius: 999px; background: transparent; color: var(--hzn-ink); font: inherit; font-size: 0.76rem; font-weight: 700; cursor: pointer; }
.hznUserMenuButton:hover, .hznUserMenuButton:focus-visible, .hznUserMenuButton[aria-expanded='true'] { border-color: var(--hzn-line); background: var(--hzn-surface); outline: none; }
.hznUserMenuButton > i { color: var(--hzn-muted); font-size: 0.62rem; }
.hznUserMenuPanel { position: absolute; top: calc(100% + 10px); right: 0; z-index: 40; display: grid; width: 210px; padding: 7px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); box-shadow: var(--hzn-shadow-pop); }
.hznUserMenuIdentity { display: grid; gap: 2px; margin: -1px -1px 6px; padding: 9px 10px 10px; border-bottom: 1px solid var(--hzn-line); }
.hznUserMenuIdentity strong { overflow: hidden; font-size: 0.82rem; text-overflow: ellipsis; white-space: nowrap; }
.hznUserMenuIdentity span { overflow: hidden; color: var(--hzn-muted); font-size: 0.7rem; text-overflow: ellipsis; white-space: nowrap; }
.hznUserMenuAction { gap: 9px; width: 100%; box-sizing: border-box; padding: 9px 10px; border: 0; border-radius: 8px; background: transparent; color: var(--hzn-ink); font: inherit; font-size: 0.8rem; font-weight: 650; text-align: left; text-decoration: none; cursor: pointer; }
.hznUserMenuAction:hover, .hznUserMenuAction:focus-visible { background: var(--hzn-surface); outline: none; }
.hznUserMenuAction i { width: 18px; color: var(--hzn-muted); text-align: center; }
.hznUserMenuLogout { color: var(--hzn-bad-fg); }
.hznUserMenuLogout i { color: var(--hzn-bad); }

#hznRail { position: fixed; top: var(--hzn-header); left: 0; bottom: 0; display: flex; width: var(--hzn-rail); box-sizing: border-box; padding: 16px 12px; background: color-mix(in srgb, var(--hzn-card) 70%, transparent); border-right: 1px solid var(--hzn-line); overflow-y: auto; z-index: 20; flex-direction: column; }
.hznNavGroup { margin-bottom: 18px; }
.hznNavEyebrow { font-family: var(--hzn-font-eyebrow); text-transform: uppercase; letter-spacing: 0.16em; font-size: 0.68rem; color: var(--hzn-muted); padding: 0 12px 6px; }
.hznNavItem { display: flex; align-items: center; gap: 10px; padding: 8px 12px; border-radius: var(--hzn-radius-control); color: var(--hzn-ink); text-decoration: none; font-size: 14px; font-weight: 500; cursor: pointer; }
.hznNavItem:hover { background: var(--hzn-surface); }
.hznNavItem.hznNavActive { background: var(--hzn-data-soft); color: var(--hzn-brand); font-weight: 700; }
.hznNavItem i { width: 20px; text-align: center; color: var(--hzn-muted); }
.hznNavItem.hznNavActive i { color: var(--hzn-brand); }
.hznPlanCapacity { display: grid; flex: 0 0 auto; gap: 12px; margin-top: auto; padding: 12px; border: 1px solid var(--hzn-line); border-radius: 12px; background: color-mix(in srgb, var(--hzn-data-soft) 42%, var(--hzn-card)); box-shadow: var(--hzn-shadow-card); }
.hznPlanCapacityHead { color: var(--hzn-muted); font: 700 0.62rem/1.2 var(--hzn-font-eyebrow); letter-spacing: 0.12em; text-transform: uppercase; }
.hznPlanCapacityHead strong { color: var(--hzn-ink); font-size: 0.65rem; letter-spacing: 0; }
.hznCapacityMeter { display: grid; gap: 5px; }
.hznCapacityValue { color: var(--hzn-muted); font-size: 0.68rem; line-height: 1.25; }
.hznCapacityValue strong { color: var(--hzn-ink); font-size: 1rem; }
.hznCapacityTrack { position: relative; overflow: hidden; width: 100%; height: 5px; border-radius: 999px; background: var(--hzn-surface-2); }
.hznCapacityFill { display: block; height: 100%; border-radius: inherit; background: var(--hzn-good); }
.hznCapacitySafe .hznCapacityFill { background: var(--hzn-good); }
.hznCapacityApproaching .hznCapacityFill { background: var(--hzn-warning); }
.hznCapacityLimit .hznCapacityFill { background: var(--hzn-bad); }
.hznCapacityMeter small { color: var(--hzn-muted); font-size: 0.63rem; line-height: 1.3; }
.hznCapacityApproaching small { color: var(--hzn-warning-fg); }
.hznCapacityLimit small { color: var(--hzn-bad-fg); }
.hznPlanCapacityManage { display: inline-flex; align-items: center; justify-content: flex-start; gap: 7px; width: max-content; padding: 0; border: 0; background: transparent; color: var(--hzn-brand); font: inherit; font-size: 0.7rem; font-weight: 800; cursor: pointer; }
.hznPlanCapacityManage:hover { text-decoration: underline; }
.hznPlanCapacityManage:focus-visible { border-radius: 4px; outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 3px; }
.hznPlanCapacityUnavailable { color: var(--hzn-muted); font-size: 0.72rem; }

#hznMain { position: absolute; top: var(--hzn-header); left: var(--hzn-rail); right: 0; bottom: 0; overflow-y: auto; padding: 24px 28px; }
#hznContent { max-width: 1100px; margin: 0 auto; }
.hznPageLoader { display: flex; min-height: min(56vh, 480px); align-items: center; justify-content: center; flex-direction: column; gap: 14px; color: var(--hzn-muted); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.04em; }
.hznPageLoaderRing { width: 46px; height: 46px; border: 4px solid color-mix(in srgb, var(--hzn-data) 18%, var(--hzn-surface)); border-top-color: var(--hzn-brand); border-right-color: var(--hzn-data); border-radius: 50%; animation: hznPageLoaderSpin 0.75s linear infinite; }
.hznVisibilitySkeleton { display: flex; min-height: 420px; padding: 4px 0 28px; flex-direction: column; gap: 20px; }
.hznSkeletonHead { display: flex; max-width: 640px; flex-direction: column; gap: 9px; }
.hznSkeletonLine, .hznSkeletonMetrics > span, .hznSkeletonCells > span { display: block; border-radius: 9px; background: linear-gradient(90deg, var(--hzn-surface) 20%, color-mix(in srgb, var(--hzn-data) 12%, var(--hzn-card)) 45%, var(--hzn-surface) 70%); background-size: 220% 100%; animation: hznSkeletonSweep 1.35s ease-in-out infinite; }
.hznSkeletonLine { height: 13px; }
.hznSkeletonLineShort { width: 110px; height: 10px; }
.hznSkeletonLineTitle { width: min(360px, 72%); height: 34px; }
.hznSkeletonLineCopy { width: min(620px, 94%); }
.hznSkeletonMetrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.hznSkeletonMetrics > span { min-height: 108px; border: 1px solid var(--hzn-line); }
.hznSkeletonCard { display: flex; min-height: 210px; padding: 22px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); flex-direction: column; gap: 10px; }
.hznSkeletonCard .hznSkeletonLineTitle { width: min(280px, 64%); height: 20px; }
.hznSkeletonCells { display: grid; margin-top: 16px; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.hznSkeletonCells > span { min-height: 68px; }
.hznSkeletonStatus { margin: -6px 0 0; color: var(--hzn-muted); font-size: 0.78rem; }
.hznPageLoadError { display: flex; min-height: 240px; align-items: center; justify-content: center; flex-direction: column; gap: 7px; color: var(--hzn-muted); text-align: center; }
.hznPageLoadError strong { color: var(--hzn-ink); font-size: 1rem; }
@keyframes hznPageLoaderSpin { to { transform: rotate(360deg); } }
@keyframes hznSkeletonSweep { from { background-position: 100% 0; } to { background-position: -100% 0; } }
@media (prefers-reduced-motion: reduce) { .hznPageLoaderRing { animation-duration: 1.8s; } }
@media (prefers-reduced-motion: reduce) { .hznSkeletonLine, .hznSkeletonMetrics > span, .hznSkeletonCells > span { animation: none; } }

.hznCard { background: var(--hzn-card); border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); box-shadow: var(--hzn-shadow-card); padding: 20px; }

#hznContent a.hznCompanyMarketingCard, #hznContent a.hznCompanyMarketingCard:visited, #hznContent a.hznCompanyMarketingCard:hover, #hznContent a.hznCompanyMarketingCard:active { color: var(--hzn-ink); text-decoration: none; }
.hznCompanyMarketingCard { box-sizing: border-box; width: 100%; cursor: pointer; transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease; }


.hznCompanyMarketingCard:hover { border-color: color-mix(in srgb, var(--hzn-brand) 34%, var(--hzn-line)); box-shadow: var(--hzn-shadow-pop); transform: translateY(-1px); }
.hznCompanyMarketingCard:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 3px; }
.hznCompanyMarketingCardBody { display: grid; min-width: 0; flex: 1; gap: 4px; }
.hznCompanyMarketingCard .hznEyebrow, .hznCompanyMarketingCard .hznDisplay, .hznCompanyMarketingCard .hznMuted { margin: 0; }


.hznEyebrow { font-family: var(--hzn-font-eyebrow); text-transform: uppercase; letter-spacing: 0.16em; font-size: 0.68rem; color: var(--hzn-muted); }
.hznDisplay { font-weight: 800; letter-spacing: -0.02em; }
.hznMuted { color: var(--hzn-muted); }
.hznBrandText { color: var(--hzn-brand); }

.hznBtn { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: var(--hzn-radius-control); border: 1px solid transparent; font: inherit; font-weight: 600; cursor: pointer; text-decoration: none; }
.hznBtn:focus-visible, .hznNavItem:focus-visible, #hznHeaderBrand a:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 3px; }
.hznBtnBrand { background: var(--hzn-brand); color: var(--hzn-brand-fg); box-shadow: var(--hzn-shadow-card); }
.hznBtnBrand:hover { background: color-mix(in srgb, var(--hzn-brand) 90%, #000); }
.hznBtnGhost { background: var(--hzn-surface); color: var(--hzn-ink); border-color: var(--hzn-line); }
.hznBtnAccent { background: var(--hzn-accent); color: #fff; box-shadow: var(--hzn-shadow-card); }
.hznBtnAccent:hover { background: color-mix(in srgb, var(--hzn-accent) 88%, #000); }
.hznBtnAccent:focus-visible { outline-color: color-mix(in srgb, var(--hzn-accent) 48%, transparent); }
.hznBtnGood { background: var(--hzn-good); color: #fff; border-color: var(--hzn-good); box-shadow: var(--hzn-shadow-card); }
.hznBtnGood:hover { background: color-mix(in srgb, var(--hzn-good) 86%, #000); border-color: color-mix(in srgb, var(--hzn-good) 86%, #000); color: #fff; }
.hznBtnGood:focus-visible { outline-color: color-mix(in srgb, var(--hzn-good) 52%, transparent); }
.hznBtnBad { background: var(--hzn-bad); color: #fff; border-color: var(--hzn-bad); box-shadow: var(--hzn-shadow-card); }
.hznBtnBad:hover { background: var(--hzn-bad-fg); border-color: var(--hzn-bad-fg); color: #fff; }
.hznBtnBad:focus-visible { outline-color: color-mix(in srgb, var(--hzn-bad) 52%, transparent); }

/* Shared Paper-informed page primitives.  Page renderers retain their own data
   and actions; these classes only provide the common shell and responsive rhythm. */
.hznPageToolbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; width: 100%; }
.hznPageToolbar > * { min-width: 0; }
.hznViewTabs { gap: 4px; max-width: 100%; padding: 4px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznViewTabs > * { min-height: 38px; padding: 0 14px; border-radius: 8px; }
.hznFilterPanel { padding: 18px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznFilterChips { gap: 8px; }
.hznDataRow { display: flex; align-items: center; width: 100%; box-sizing: border-box; gap: 16px; padding: 14px 24px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-card); }

.hznIconAction:hover { border-color: color-mix(in srgb, var(--hzn-brand) 36%, var(--hzn-line)); background: var(--hzn-data-soft); }
.hznIconAction:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 2px; }
.hznRegionState { display: flex; align-items: flex-start; gap: 12px; padding: 18px; border-radius: var(--hzn-radius-control); }
.hznPartialFailure { border: 1px solid var(--hzn-warning); background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }

@media (max-width: 700px) {

 .hznPageToolbar > * { width: 100%; }
 .hznViewTabs { width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
 .hznViewTabs > * { flex: 0 0 auto; }


 .hznDataRow [data-label] { display: grid; grid-template-columns: minmax(7rem, 40%) minmax(0, 1fr); gap: 12px; align-items: baseline; }
 .hznDataRow [data-label]::before { color: var(--hzn-muted); content: attr(data-label); font: 700 0.68rem/1.25 var(--hzn-font-eyebrow); letter-spacing: 0.08em; text-transform: uppercase; }
 .hznPageToolbar .hznBtn{ flex-wrap: wrap; }
}

.hznPill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border: 0; border-radius: 999px; font: inherit; font-size: 0.75rem; font-weight: 700; }
.hznPillGood { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznPillMid { background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznPillBad { background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }
.hznPillNeutral { background: #edf0f3; color: var(--hzn-muted); }


.hznStatTile { background: var(--hzn-card); border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); box-shadow: var(--hzn-shadow-card); padding: 16px; }


.hznStatLabel { font-size: 0.72rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--hzn-muted); }


.hznScoreGood { --hzn-score-color: var(--hzn-score-green); --hzn-gauge-color: var(--hzn-score-green); --hzn-pillar-color: var(--hzn-score-green); --hzn-place-score-color: var(--hzn-score-green); color: var(--hzn-score-green); }
.hznScoreWarn { --hzn-score-color: var(--hzn-score-yellow); --hzn-gauge-color: var(--hzn-score-yellow); --hzn-pillar-color: var(--hzn-score-yellow); --hzn-place-score-color: var(--hzn-score-yellow); color: var(--hzn-score-yellow); }
.hznScoreBad { --hzn-score-color: var(--hzn-score-red); --hzn-gauge-color: var(--hzn-score-red); --hzn-pillar-color: var(--hzn-score-red); --hzn-place-score-color: var(--hzn-score-red); color: var(--hzn-score-red); }
.hznScoreUnknown { --hzn-score-color: var(--hzn-score-gray); --hzn-gauge-color: var(--hzn-score-gray); --hzn-pillar-color: var(--hzn-score-gray); --hzn-place-score-color: var(--hzn-score-gray); color: var(--hzn-score-gray); }
.hznGradeA, .hznGradeB { color: var(--hzn-score-green); }
.hznGradeC, .hznGradeD { color: var(--hzn-score-yellow); }

.hznGradeUnscored { color: var(--hzn-score-gray); background: var(--hzn-unknown-soft); }


.hznGauge { --hzn-gauge-size: 96px; flex: none; width: var(--hzn-gauge-size); height: var(--hzn-gauge-size); min-width: var(--hzn-gauge-size); aspect-ratio: 1 / 1; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(var(--hzn-gauge-color, var(--hzn-brand)) calc(var(--hzn-gauge-pct, 0) * 1%), var(--hzn-surface) 0); }
.hznGaugeInner { width: calc(var(--hzn-gauge-size) - 18px); height: calc(var(--hzn-gauge-size) - 18px); border-radius: 50%; background: var(--hzn-card); font-weight: 800; font-size: 1.4rem; font-variant-numeric: tabular-nums; }


.hznList { list-style: none; margin: 12px 0 0; padding: 0; }
.hznListRow { display: flex; align-items: center; gap: 14px; padding: 12px 4px; border-top: 1px solid var(--hzn-line); text-decoration: none; color: inherit; }
.hznRecordLink, .hznRecordLink:visited, .hznRecordLink:hover, .hznRecordLink:active { color: inherit; text-decoration: none; }
.hznListRow:first-child { border-top: 0; }
.hznListRow:hover:not(:has(.hznPlaceRiskAction:hover)) { background: color-mix(in srgb, var(--hzn-surface) 60%, transparent); border-radius: 10px; border-top-color: transparent; }
.hznPlaceResult { display: flex; align-items: center; gap: 14px; min-width: 0; flex: 1; color: inherit; text-decoration: none; cursor: pointer; }
.hznPlaceListRow { display: grid; grid-template-columns: minmax(0, 1fr) minmax(156px, 174px) 118px; align-items: center; }
.hznPlaceListRow .hznPlaceResult { display: grid; grid-template-columns: 58px minmax(0, 1fr) 108px; grid-column: 1; }
.hznPlaceListRow .hznPlaceResult > .hznPill { min-width: 88px; justify-self: end; justify-content: center; }
.hznPlaceListRow .hznPlaceHistory { grid-column: 2; justify-self: stretch; justify-content: center; }
.hznPlaceListRow .hznPlaceActivate, .hznPlaceListRow .hznPlaceDeactivate { grid-column: 3; justify-self: stretch; justify-content: center; }
.hznPlaceListRow .hznPlaceDelete { grid-column: 2; justify-self: stretch; justify-content: center; }
.hznPlaceHistory { flex: none; background: var(--hzn-surface); color: var(--hzn-muted); cursor: pointer; }
.hznPlaceHistory:hover { background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznScanFreshness { white-space: nowrap; }
.hznPlaceHistory.hznPillGood { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznPlaceHistory.hznPillMid { background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznPlaceHistory.hznPillBad { background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }
.hznPlaceHistory.hznPillNeutral { background: var(--hzn-unknown-soft); color: var(--hzn-unknown); cursor: default; }
.hznPlaceHistory.hznPillGood:hover { background: color-mix(in srgb, var(--hzn-good-soft) 76%, var(--hzn-good)); color: var(--hzn-good); }
.hznPlaceHistory.hznPillMid:hover { background: color-mix(in srgb, var(--hzn-warning-soft) 76%, var(--hzn-warning)); color: var(--hzn-warning-fg); }
.hznPlaceHistory.hznPillBad:hover { background: color-mix(in srgb, var(--hzn-bad-soft) 76%, var(--hzn-bad)); color: var(--hzn-bad-fg); }
.hznPlaceResultInactive { cursor: pointer; opacity: 0.62; }
.hznPlaceInactivePill { background: var(--hzn-unknown-soft); color: var(--hzn-unknown); }
.hznPlaceDeactivate { flex: none; background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); cursor: pointer; }
.hznPlaceDeactivate:hover { background: color-mix(in srgb, var(--hzn-warning) 28%, var(--hzn-card)); color: var(--hzn-warning-fg); }
.hznPlaceActivate { flex: none; background: var(--hzn-data-soft); color: var(--hzn-brand); cursor: pointer; }
.hznPlaceActivate:hover { background: color-mix(in srgb, var(--hzn-data-soft) 75%, var(--hzn-brand)); }
.hznPlaceDelete { flex: none; background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); cursor: pointer; }
.hznPlaceDelete:hover { background: #ffd2d2; color: #7f0d0d; }
.hznListScore { font-size: 1.5rem; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1; }
.hznListBody { min-width: 0; flex: 1; }
.hznListTitle { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hznListSub { font-size: 0.8rem; color: var(--hzn-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hznHistoryRow { display: grid; grid-template-columns: 54px minmax(220px, 1fr) 118px 70px; gap: 12px; align-items: center; }
.hznHistoryRow .hznListBody { display: block; }
.hznHistorySourcePill { display: inline-flex; width: max-content; max-width: 100%; margin-left: 9px; vertical-align: middle; white-space: nowrap; }
.hznHistoryRow .hznListScore { width: 54px; text-align: center; }
.hznHistoryRow .hznHistTime { text-align: right; }
.hznHistoryRow > .hznPill { width: 100%; box-sizing: border-box; justify-content: center; text-align: center; }
.hznListSource { font-weight: 700; }
.hznPlaceListRow .hznListTitle { display: flex; align-items: center; gap: 7px; text-overflow: clip; }
.hznListTitleText { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.hznPlaceSourceBadge { display: inline-flex; width: 24px; height: 24px; flex: 0 0 24px; align-items: center; justify-content: center; box-sizing: border-box; border: 1px solid color-mix(in srgb, var(--hzn-data) 30%, var(--hzn-line)); border-radius: 7px; background: color-mix(in srgb, var(--hzn-data-soft) 72%, var(--hzn-card)); color: var(--hzn-brand); line-height: 1; vertical-align: middle; }
.hznPlaceSourceBadge i { display: block; width: 100%; font-size: 16px; line-height: 1; text-align: center; font-synthesis: none; }
.hznPlaceSourceImage { display: block; width: 16px; height: 16px; object-fit: contain; }
.hznPlaceSourceMark { font-size: 0.52rem; font-weight: 850; letter-spacing: -0.03em; }
.hznPlaceRiskBadge { display: inline-flex; width: 24px; height: 24px; flex: 0 0 24px; align-items: center; justify-content: center; box-sizing: border-box; border: 1px solid var(--hzn-line); border-radius: 50%; line-height: 1; vertical-align: middle; cursor: help; }
.hznPlaceRiskBadge i { font-size: 0.74rem; }
.hznPlaceRiskAction { appearance: none; padding: 0; font: inherit; cursor: pointer; }
.hznPlaceProspectBadge { padding: 0; border-color: color-mix(in srgb, var(--hzn-warning) 40%, var(--hzn-line)); background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); font: inherit; cursor: pointer; }
.hznPlaceProspectBadge:hover, .hznPlaceProspectBadge:focus-visible { border-color: var(--hzn-warning); background: color-mix(in srgb, var(--hzn-warning-soft) 72%, var(--hzn-warning)); outline: none; box-shadow: 0 0 0 3px color-mix(in srgb, var(--hzn-warning) 18%, transparent); }
.hznPlaceCoverageDropBadge { border-color: color-mix(in srgb, var(--hzn-bad) 42%, var(--hzn-line)); background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }
.hznPlaceCoverageDropBadge:hover, .hznPlaceCoverageDropBadge:focus-visible { border-color: var(--hzn-bad); background: color-mix(in srgb, var(--hzn-bad-soft) 72%, var(--hzn-bad)); outline: none; box-shadow: 0 0 0 3px color-mix(in srgb, var(--hzn-bad) 18%, transparent); }
.hznPlaceMonitoringBadge { display: inline-flex; width: 24px; height: 24px; flex: 0 0 24px; align-items: center; justify-content: center; box-sizing: border-box; border: 1px solid color-mix(in srgb, var(--hzn-good) 34%, var(--hzn-line)); border-radius: 50%; background: var(--hzn-good-soft); color: var(--hzn-good); line-height: 1; vertical-align: middle; }
.hznPlaceMonitoringBadge i { font-size: 0.74rem; }
.hznPlaceLiveBadge { display: inline-flex; width: 24px; height: 24px; flex: 0 0 24px; align-items: center; justify-content: center; box-sizing: border-box; margin-left: 4px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 34%, var(--hzn-line)); border-radius: 50%; background: var(--hzn-data-soft); color: var(--hzn-brand); line-height: 1; vertical-align: middle; }
.hznPlaceLiveBadgeSubscribed { border-color: color-mix(in srgb, var(--hzn-accent) 40%, var(--hzn-line)); background: var(--hzn-accent-soft); color: var(--hzn-accent); }
.hznPlaceLiveBadgeStalled { border-color: color-mix(in srgb, var(--hzn-bad) 42%, var(--hzn-line)); background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }
.hznPlaceLiveBadge i { font-size: 0.74rem; }

.hznMeter { height: 8px; border-radius: 999px; background: var(--hzn-surface); overflow: hidden; }
.hznMeterFill { height: 100%; border-radius: 999px; background: var(--hzn-brand); }

.hznAuthDisabled { pointer-events: none; opacity: 0.35; cursor: not-allowed; }
.hznSectionGap { margin-top: 20px; }

/* Places portfolio list and map views */
.hznPortfolioPageHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.hznPortfolioPageHead > div { min-width: 0; }
.hznPortfolioPageHead .hznBtn { flex: none; margin-bottom: 3px; }
.hznPortfolioViewSwitcher { display: flex; gap: 8px; }
.hznPortfolioViewActive { border-color: var(--hzn-brand) !important; background: var(--hzn-data-soft) !important; color: var(--hzn-brand) !important; }
.hznAlertTools{ display: grid; grid-template-columns: repeat(6, minmax(118px, 1fr)); gap: 10px; margin-top: 20px; align-items: end; }
.hznAlertTools label{ display: grid; gap: 5px; color: var(--hzn-muted); font-size: 0.7rem; font-weight: 700; }
.hznAlertTools select,
.hznAlertTools input{ width: 100%; min-width: 0; height: 38px; box-sizing: border-box; padding: 0 30px 0 10px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); color: var(--hzn-ink); font: inherit; font-size: 0.8rem; }
.hznAlertTools input { padding-right: 10px; }
.hznPortfolioView { grid-column: 1 / -1; display: flex; gap: 8px; }
.hznPortfolioView .hznSortChip { border: 1px solid var(--hzn-line); }
.hznPortfolioMapMode { margin-top: 12px; }
.hznPortfolioSummary { margin: 12px 0 8px; color: var(--hzn-muted); font-size: 0.78rem; }
[data-place-row][hidden] { display: none !important; }
.hznPlaceFilterEmpty { padding: 28px 18px; }
.hznPortfolioLayout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.7fr); gap: 16px; align-items: stretch; }
.hznPortfolioMap { position: relative; min-height: 590px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); box-shadow: var(--hzn-shadow-card); isolation: isolate; }
.hznPortfolioMap iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; pointer-events: none; filter: saturate(0.84) contrast(0.97); }
.hznPortfolioLeaflet { position: absolute; inset: 0; z-index: 3; visibility: hidden; }
.hznPortfolioLeafletReady .hznPortfolioLeaflet { visibility: visible; }
.hznPortfolioLeafletReady > iframe, .hznPortfolioLeafletReady > .hznPortfolioMarkers { display: none; }
.hznPortfolioLeaflet .leaflet-tile-pane { filter: saturate(0.84) contrast(0.97); }
.hznPortfolioLeafletIcon { border: 0 !important; background: transparent !important; }
.hznPortfolioLeafletIcon .hznPortfolioMarker { position: relative; left: auto !important; top: auto !important; pointer-events: auto; transform: rotate(-45deg); }
.hznPortfolioLeafletIcon .hznPortfolioCluster { position: relative; left: auto !important; top: auto !important; pointer-events: auto; transform: none; }
.hznPortfolioLeaflet .leaflet-control-attribution { font-size: 9px; }
.hznPortfolioMarkers { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.hznPortfolioMarker, .hznPortfolioCluster { position: absolute; width: 36px; height: 36px; display: grid; place-items: center; padding: 0; border: 3px solid #fff; border-radius: 50% 50% 50% 8px; color: #fff; font: inherit; font-size: 0.72rem; font-weight: 900; box-shadow: 0 3px 12px rgba(35, 42, 47, 0.28); cursor: pointer; pointer-events: auto; transform: translate(-50%, -88%) rotate(-45deg); transition: width 0.16s ease, height 0.16s ease, opacity 0.16s ease, filter 0.16s ease; }
.hznPortfolioMarker > span, .hznPortfolioCluster { font-variant-numeric: tabular-nums; }
.hznPortfolioMarker > span { transform: rotate(45deg); }
.hznPortfolioMarker:hover, .hznPortfolioMarker:focus, .hznPortfolioCluster:hover, .hznPortfolioCluster:focus { width: 42px; height: 42px; z-index: 4; }
.hznPortfolioMarker:focus-visible, .hznPortfolioCluster:focus-visible, .hznPortfolioLeafletIcon:focus-visible { outline: 4px solid color-mix(in srgb, var(--hzn-brand) 48%, #fff); outline-offset: 4px; }

.hznPortfolioGradeC{ background: var(--hzn-warning); }


.hznPortfolioMarkerInactive { opacity: 0.54; filter: grayscale(0.6); }
.hznPortfolioMarkerInactive::after { content: ''; position: absolute; width: 44px; height: 2px; background: #fff; transform: rotate(45deg); box-shadow: 0 1px 1px rgba(35, 42, 47, 0.4); }
.hznPortfolioCluster { border-radius: 50%; background: var(--hzn-ink); transform: translate(-50%, -50%); }
.hznPortfolioRiskView .hznPortfolioMarker { opacity: 0.3; }

.hznPortfolioRiskView .hznPortfolioGradeC { opacity: 0.78; box-shadow: 0 0 0 9px rgba(251, 176, 64, 0.16), 0 3px 12px rgba(35, 42, 47, 0.28); }
.hznPortfolioDetail { min-height: 548px; align-self: stretch; overflow: hidden; }
.hznPortfolioDetail h2 { margin: 4px 0 2px; font-size: 1.25rem; }
.hznPortfolioScore { display: inline-flex; margin-top: 20px; padding: 12px 14px; align-items: baseline; gap: 8px; border-radius: 12px; color: #fff; }
.hznPortfolioScore strong { font-size: 1.45rem; line-height: 1; }
.hznPortfolioScore span { font-size: 0.72rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; }
.hznPortfolioFacts { display: grid; gap: 0; margin: 18px 0 0; }
.hznPortfolioFacts > div { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 10px; padding: 9px 0; border-top: 1px solid var(--hzn-line); }
.hznPortfolioFacts dt { color: var(--hzn-muted); font-size: 0.74rem; }
.hznPortfolioFacts dd { margin: 0; font-size: 0.78rem; font-weight: 700; overflow-wrap: anywhere; }
.hznPortfolioGaps { display: grid; gap: 3px; margin-top: 16px; padding: 12px; border-radius: 12px; background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznPortfolioGaps span { font-size: 0.68rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.06em; }
.hznPortfolioGaps strong { font-size: 0.8rem; }
.hznPortfolioGapsClear { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznPortfolioActions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 18px; }
.hznPortfolioActions .hznBtn { width: 100%; justify-content: center; }
.hznPortfolioActions:has(> :only-child) { grid-template-columns: minmax(0, 1fr); }
.hznPortfolioClusterList { display: grid; gap: 8px; margin-top: 18px; }
.hznPortfolioClusterPlace { width: 100%; display: grid; gap: 2px; padding: 10px 12px; border: 1px solid var(--hzn-line); border-radius: 10px; background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; text-align: left; cursor: pointer; }
.hznPortfolioClusterPlace:hover { border-color: var(--hzn-brand); background: var(--hzn-data-soft); }
.hznPortfolioClusterPlace strong { font-size: 0.8rem; }
.hznPortfolioClusterPlace span { color: var(--hzn-muted); font-size: 0.72rem; }
.hznPortfolioEmpty { margin-top: 20px; }

@media (max-width: 1080px) {
 .hznAlertTools{ grid-template-columns: repeat(3, minmax(140px, 1fr)); }
 .hznPortfolioLayout { grid-template-columns: 1fr; }
 .hznPortfolioMap { min-height: 520px; }
 .hznPortfolioDetail { min-height: 0; }
}

@media (max-width: 700px) {
 .hznPortfolioPageHead { align-items: flex-start; flex-direction: column; }
 .hznAlertTools{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .hznPortfolioMap { min-height: 440px; }
}

.hznSearchSummary { gap: 10px; color: var(--hzn-muted); font-size: 0.82rem; }
.hznSearchSummary span { padding-right: 10px; border-right: 1px solid var(--hzn-line); }
.hznSearchSummary span:last-child { padding-right: 0; border-right: 0; }
.hznSearchGroups { display: grid; gap: 22px; margin-top: 20px; }
.hznSearchGroup { min-width: 0; }
.hznSearchGroupHead { gap: 9px; margin-bottom: 9px; color: var(--hzn-brand); }
.hznSearchGroupHead h2 { margin: 0; font-size: 1.05rem; color: var(--hzn-ink); }
.hznSearchResultList { overflow: hidden; background: var(--hzn-card); border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); box-shadow: var(--hzn-shadow-card); }
.hznSearchResult { width: 100%; gap: 14px; padding: 14px 16px; border: 0; border-bottom: 1px solid var(--hzn-line); background: transparent; color: var(--hzn-ink); font: inherit; text-align: left; text-decoration: none; cursor: pointer; }
.hznSearchResult:last-child { border-bottom: 0; }
.hznSearchResult:hover { background: color-mix(in srgb, var(--hzn-surface) 60%, transparent); }
.hznSearchResultIcon { flex: none; width: 34px; height: 34px; border-radius: 10px; background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznSearchResultBody { min-width: 0; flex: 1; display: grid; gap: 2px; }
.hznSearchResultBody strong, .hznSearchResultBody small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hznSearchResultBody small { color: var(--hzn-muted); }
.hznSearchResultMeta { flex: none; max-width: 260px; justify-content: flex-end; gap: 8px; color: var(--hzn-muted); font-size: 0.78rem; text-align: right; }
.hznSearchResultArrow { flex: none; color: var(--hzn-muted); font-size: 0.78rem; }
.hznOwnerCardFocus { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 35%, transparent); outline-offset: 3px; }

#hznLoginScreen { position: fixed; inset: 0; display: grid; place-items: center; background: var(--hzn-bg); padding: 24px; }
#hznLoginCard { width: 100%; max-width: 380px; display: flex; flex-direction: column; background: var(--hzn-card); border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); box-shadow: var(--hzn-shadow-pop); padding: 28px; }
.hznLoginLogo { height: 40px; width: auto; align-self: center; margin-bottom: 16px; }
.hznLoginTitle { margin: 0; text-align: center; font-weight: 800; letter-spacing: -0.02em; font-size: 1.4rem; }
.hznLoginSub { margin: 4px 0 18px; text-align: center; color: var(--hzn-muted); font-size: 0.9rem; }
.hznLoginError { margin-bottom: 14px; border-radius: 10px; background: #ffe1e1; color: #a11111; padding: 10px 12px; font-size: 0.85rem; }
.hznLoginLabel { margin: 10px 0 4px; font-size: 0.78rem; font-weight: 600; color: var(--hzn-muted); }
.hznLoginInput { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznLoginInput:focus { outline: none; border-color: var(--hzn-brand); background: var(--hzn-card); }
.hznMSRFields { display: grid; margin-top: 16px; padding: 14px; border: 1px solid color-mix(in srgb, var(--hzn-accent) 28%, var(--hzn-line)); border-radius: var(--hzn-radius-control); background: color-mix(in srgb, var(--hzn-accent) 6%, var(--hzn-card)); }
.hznMSRFieldsHidden { display: none; }
.hznMSRFieldsHead { gap: 8px; color: var(--hzn-accent); }
.hznMSRFields p { margin: 4px 0 2px; color: var(--hzn-muted); font-size: 0.8rem; }
.hznLoginBtn { margin-top: 18px; padding: 11px 16px; border: 0; border-radius: var(--hzn-radius-control); background: var(--hzn-brand); color: var(--hzn-brand-fg); font: inherit; font-weight: 700; cursor: pointer; }
.hznLoginBtn:hover { background: color-mix(in srgb, var(--hzn-brand) 90%, #000); }
.hznLoginOptions { display: flex; justify-content: space-between; margin-top: 16px; font-size: 0.85rem; }
.hznLoginOptions a { color: var(--hzn-brand); text-decoration: none; }
.hznLoginOptions a:hover { text-decoration: underline; }

#hznMemberSupportSession { position: sticky; top: 0; z-index: 12; display: flex; align-items: center; gap: 12px; max-width: 1068px; margin: 0 auto 18px; padding: 10px 14px; border: 1px solid color-mix(in srgb, var(--hzn-accent) 36%, var(--hzn-line)); border-radius: 12px; background: color-mix(in srgb, var(--hzn-accent) 9%, var(--hzn-card)); box-shadow: var(--hzn-shadow-card); }
.hznMemberSupportIcon { flex: 0 0 34px; width: 34px; height: 34px; border-radius: 10px; background: var(--hzn-accent); color: #fff; }
.hznMemberSupportBody { display: grid; min-width: 0; flex: 1; gap: 1px; }
.hznMemberSupportBody > span { overflow: hidden; color: var(--hzn-muted); font-size: 0.8rem; text-overflow: ellipsis; white-space: nowrap; }
.hznMemberSupportInline { display: inline; }
.hznMemberSupportInlineLabel { display: inline-flex; align-items: center; gap: 5px; margin-right: 3px; color: var(--hzn-accent); font-weight: 800; white-space: nowrap; }
.hznMemberSupportInlineLabel > i { display: inline-grid; width: 18px; height: 18px; place-items: center; border-radius: 5px; background: var(--hzn-accent); color: #fff; font-size: 10px; line-height: 1; font-synthesis: none; }

@media (max-width: 900px) {
 :root { --hzn-rail: 0px; }
 .hznHeaderRailToggle { display: grid; flex: 0 0 36px; }
 #hznRail { width: min(280px, 86vw); box-sizing: border-box; background: var(--hzn-card); transform: translateX(-100%); box-shadow: var(--hzn-shadow-pop); transition: transform 0.2s ease; }
 .hznPlanCapacity { margin-top: 14px; }
 #hznRail.hznRailOpen { transform: translateX(0); }
 body.hznRailOpen::before { position: fixed; inset: var(--hzn-header) 0 0; z-index: 15; background: rgba(35, 42, 47, 0.28); content: ""; }
 #hznMain { left: 0; padding: 18px 16px; }


}

@media (max-width: 560px) {
 body:has(#hznRailToggle) { --hzn-header: 104px; }
 #hznHeader:has(#hznRailToggle) { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-rows: 40px 40px; gap: 8px; height: var(--hzn-header); box-sizing: border-box; padding: 8px 12px; }
 #hznHeader:has(#hznRailToggle) .hznHeaderRailToggle { grid-column: 1; grid-row: 1; }
 #hznHeader:has(#hznRailToggle) #hznHeaderBrand { grid-column: 2; grid-row: 1; min-width: 0; }
 #hznHeader:has(#hznRailToggle) #hznHeaderBrand img { display: block; max-width: 108px; height: auto !important; }
 #hznHeader:has(#hznRailToggle) #hznHeaderActions { grid-column: 3; grid-row: 1; gap: 6px; }
 #hznHeader:has(#hznRailToggle) #hznSearch { grid-column: 1 / -1; grid-row: 2; width: 100%; max-width: none; box-sizing: border-box; }
 #hznHeaderActions .hznAuthAdd { width: 36px; height: 36px; justify-content: center; padding: 0; font-size: 0; }
 #hznHeaderActions .hznAuthAdd i { font-size: 14px; }
 .hznUserMenuLabel,
 .hznUserMenuButton > i { display: none; }
 .hznUserMenuButton { padding-right: 3px; }
 input, textarea, select { font-size: 16px; }
 .hznCompanyMarketingCard { gap: 14px; padding: 16px; flex-wrap: wrap; }


 .hznListRow { flex-wrap: wrap; }
 .hznPlaceResult { flex-basis: 100%; }
 .hznPlaceListRow { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
 .hznPlaceListRow .hznPlaceResult { grid-column: 1 / -1; grid-template-columns: 48px minmax(0, 1fr) auto; }
 .hznPlaceListRow .hznPlaceHistory { grid-column: 1; }
 .hznPlaceListRow .hznPlaceDelete { grid-column: 1; }
 .hznPlaceListRow .hznPlaceActivate, .hznPlaceListRow .hznPlaceDeactivate { grid-column: 2; }
 .hznSearchResult { align-items: flex-start; flex-wrap: wrap; }
 .hznSearchResultMeta { width: calc(100% - 48px); max-width: none; margin-left: 48px; justify-content: flex-start; text-align: left; }
 .hznSearchResultArrow { margin-left: auto; }
 #hznMemberSupportSession { align-items: flex-start; flex-wrap: wrap; }
 .hznMemberSupportBody { min-width: calc(100% - 50px); }
 #hznMemberSupportSession .hznBtn { margin-left: 46px; }
}

#hznMain.hznMainWide { left: 0; }
.hznHeaderActionsPublic { gap: 8px; }
.hznLoginNew { margin: 16px 0 0; text-align: center; font-size: 0.82rem; color: var(--hzn-muted); }
.hznLoginNew a { color: var(--hzn-brand); text-decoration: none; }
.hznLoginNew a:hover { text-decoration: underline; }
.hznLoginLegal { display: flex; justify-content: center; gap: 8px; margin-top: 10px; color: var(--hzn-muted); font-size: 0.76rem; }
.hznLoginLegal a { color: var(--hzn-muted); text-decoration: none; }
.hznLoginLegal a:hover { color: var(--hzn-brand); text-decoration: underline; }

.hznScanWrap { max-width: 880px; margin: 0 auto; }
.hznScanIntro { text-align: center; margin-bottom: 24px; }
.hznScanH1 { font-size: 2rem; margin: 8px 0 6px; }
.hznScanLede { max-width: 520px; margin: 0 auto; }
.hznScanLabel { display: block; font-size: 0.78rem; font-weight: 600; color: var(--hzn-muted); margin-bottom: 8px; }
.hznScanRow { gap: 10px; }
.hznScanRow i { color: var(--hzn-brand); font-size: 18px; }
.hznScanInput { flex: 1; min-width: 200px; padding: 11px 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznScanInput:focus { outline: none; border-color: var(--hzn-brand); background: var(--hzn-card); }
.hznScanBtn { white-space: nowrap; }
.hznScanNote { margin: 12px 0 0; font-size: 0.8rem; color: var(--hzn-muted); }
.hznScanErr { margin: 12px 0 0; padding: 10px 12px; border-radius: 10px; background: #ffe1e1; color: #a11111; font-size: 0.85rem; }
.hznScanErr.hznAddressConfirmHost { border: 1px solid #b9d8ef; background: #eef7fd; color: var(--hzn-text); }
.hznAddressConfirm { display: grid; gap: 12px; }
.hznAddressConfirmCopy { display: grid; justify-items: center; gap: 4px; min-width: 0; text-align: center; }
.hznAddressConfirmCopy strong { color: var(--hzn-text); }
.hznAddressConfirmCopy span { color: var(--hzn-muted); overflow-wrap: anywhere; }
.hznAddressConfirmChoice { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; gap: 8px; width: 100%; text-align: left; }
.hznAddressConfirmChoice b { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; white-space: nowrap; }
.hznAddressConfirmChoice span { color: var(--hzn-text); }
.hznAddressConfirmActions { display: flex; align-items: center; justify-content: center; gap: 8px; flex-wrap: wrap; }

@media (max-width: 680px) {
 .hznAddressConfirmActions > * { flex: 1 1 150px; }
}

.hznResultHero { gap: 28px; }
.hznResultGaugeCell { gap: 10px; }
.hznGradePill { background: var(--hzn-surface); }
.hznResultVerdict { flex: 1; min-width: 260px; }
.hznResultAddr { margin: 6px 0 0; font-size: 0.9rem; font-weight: 500; }
.hznResultH1 { font-size: 1.9rem; margin: 10px 0 0; }
.hznResultLede { margin: 12px 0 0; font-size: 0.9rem; }
.hznResultSource { margin-top: 10px; }
.hznEvidenceStatusLine { align-items: flex-start; gap: 7px; }
.hznEvidenceCheckSummary { color: var(--hzn-muted); font-size: 0.74rem; line-height: 1.4; }
.hznEvidenceCheckLink { margin-left: 8px; color: var(--hzn-data); font-weight: 800; text-decoration: underline; text-underline-offset: 2px; cursor: pointer; }
.hznEvidenceCheckSummaryLink { justify-content: center; gap: 8px; margin-top: 8px; text-align: center; cursor: pointer; }
.hznEvidenceCheckSummaryLink > span { color: var(--hzn-data); font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
.hznEvidenceCheckCompact { display: block; max-width: 118px; margin-top: 3px; color: var(--hzn-muted); font-size: 0.58rem; line-height: 1.2; text-align: center; }

.hznBucket { background: var(--hzn-card); border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); box-shadow: var(--hzn-shadow-card); padding: 16px; }


.hznBucket .hznMeter { margin-top: 10px; }


.hznFixList { list-style: none; margin: 12px 0 0; padding: 0; gap: 12px; }
.hznFixItem { display: flex; align-items: flex-start; gap: 14px; background: var(--hzn-card); border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); box-shadow: var(--hzn-shadow-card); padding: 16px; }
.hznFixRank { flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--hzn-brand); color: var(--hzn-brand-fg); font-weight: 800; font-size: 0.9rem; }
.hznFixBody { flex: 1; min-width: 0; }
.hznFixAction { margin: 0; font-weight: 700; }
.hznFixWhy { margin: 6px 0 0; font-size: 0.85rem; color: var(--hzn-muted); }
.hznFixMeta { gap: 10px; margin-top: 10px; }
.hznTierPill { background: var(--hzn-surface); color: var(--hzn-ink); }
.hznFixCat { font-size: 0.78rem; }
.hznFixLift { flex: none; text-align: right; }
.hznFixLiftV { display: block; font-size: 1.25rem; font-weight: 800; color: var(--hzn-data); font-variant-numeric: tabular-nums; }
.hznFixLiftL { font-size: 0.66rem; text-transform: uppercase; letter-spacing: 0.06em; color: var(--hzn-muted); }
.hznResultCtas { gap: 12px; margin-top: 20px; }
.hznCtaBig { flex: 1; min-width: 220px; justify-content: center; padding: 13px 18px; }
.hznResultBenefits { margin-top: 18px; padding: 20px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); }
.hznResultBenefitsHead { text-align: center; }
.hznResultBenefitsHead h3 { margin: 6px 0 0; font-size: 1.15rem; }
.hznResultBenefitsHead > p:last-child { margin: 7px 0 0; font-size: 0.82rem; }
.hznResultBenefitGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 18px 0 0; padding: 0; list-style: none; }
.hznResultBenefitGrid li { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 11px; align-items: start; padding: 13px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); color: var(--hzn-muted); font-size: 0.8rem; line-height: 1.5; }
.hznResultBenefitGrid strong { display: block; color: var(--hzn-ink); font-size: 0.84rem; }
.hznResultBenefitIcon { width: 38px; height: 38px; border-radius: 11px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1rem; }
.hznResultBenefitsFoot { justify-content: center; gap: 7px; margin: 14px 0 0; color: var(--hzn-muted); font-size: 0.76rem; text-align: center; }
.hznResultBenefitsFoot i { color: var(--hzn-good); }
.hznScanEmpty { text-align: center; padding: 48px 20px; max-width: 520px; margin: 0 auto; }
.hznScanEmptyIcon { font-size: 2.4rem; color: var(--hzn-muted); margin-bottom: 12px; }
.hznScanEmpty h2 { font-size: 1.4rem; margin: 0 0 8px; }
.hznScanEmpty .hznBtn { margin-top: 16px; }

.hznScanProgCard { gap: 28px; }
.hznProgRing { --hzn-gauge-size: 180px; flex: none; width: var(--hzn-gauge-size); height: var(--hzn-gauge-size); min-width: var(--hzn-gauge-size); aspect-ratio: 1 / 1; border-radius: 50%; display: grid; place-items: center; background: conic-gradient(var(--hzn-brand) calc(var(--hzn-prog-pct, 10) * 1%), var(--hzn-surface) 0); }
.hznProgRingInner { width: calc(var(--hzn-gauge-size) - 22px); height: calc(var(--hzn-gauge-size) - 22px); border-radius: 50%; background: var(--hzn-card); justify-content: center; }
.hznProgPct { font-size: 2.4rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.hznProgRingInner small { font-size: 0.66rem; text-transform: uppercase; letter-spacing: 0.08em; color: var(--hzn-muted); }
.hznProgElapsed { margin-top: 8px; font-size: 0.72rem; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--hzn-brand); }
.hznProgRing.hznProgRingWaiting { animation: hznProgRingPulse 1.6s ease-in-out infinite; }
@keyframes hznProgRingPulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.025); } }
.hznProgBody { flex: 1; min-width: 260px; }
.hznProgAddr { margin: 6px 0 0; font-size: 0.9rem; }
.hznProgSteps { list-style: none; margin: 18px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.hznProgSteps li { display: flex; align-items: center; gap: 10px; font-size: 0.9rem; color: var(--hzn-muted); }
.hznProgDot { flex: none; width: 24px; height: 24px; border-radius: 50%; background: var(--hzn-surface); color: var(--hzn-muted); font-size: 0.72rem; font-weight: 700; transition: background 0.3s, color 0.3s; }
.hznProgSteps li.hznProgStepNow { color: var(--hzn-ink); font-weight: 600; }
.hznProgSteps li.hznProgStepNow .hznProgDot { background: var(--hzn-brand); color: #fff; }
.hznProgSteps li.hznProgStepDone { color: var(--hzn-ink); }
.hznProgSteps li.hznProgStepDone .hznProgDot { background: var(--hzn-mint); color: #fff; }
.hznProgSubmeter { margin-top: 18px; padding: 14px 16px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-surface); }
.hznProgSubmeter[hidden] { display: none; }
.hznProgSubmeterHead { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; font-size: 0.78rem; }
.hznProgSubmeterHead span { color: var(--hzn-ink); font-weight: 650; }
.hznProgSubmeterHead strong { color: var(--hzn-brand); font-variant-numeric: tabular-nums; }
.hznProgSubtrack { position: relative; height: 8px; margin-top: 9px; overflow: hidden; border-radius: 999px; background: var(--hzn-card); box-shadow: inset 0 0 0 1px var(--hzn-line); }
.hznProgSubtrack span { display: block; width: 0; height: 100%; border-radius: inherit; background: repeating-linear-gradient(120deg, var(--hzn-brand) 0, var(--hzn-brand) 10px, var(--hzn-data) 10px, var(--hzn-data) 20px); background-size: 40px 100%; transition: width 0.35s ease; animation: hznProgSubmove 1s linear infinite; }
.hznProgMarkers { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 11px 0 0; padding: 0; list-style: none; }
.hznProgMarkers li { display: flex; align-items: center; justify-content: center; gap: 5px; min-width: 0; color: var(--hzn-muted); font-size: 0.68rem; }
.hznProgMarkers li i { font-size: 0.8rem; }
.hznProgMarkers li.hznProgMarkerNow { color: var(--hzn-brand); font-weight: 700; }
.hznProgMarkers li.hznProgMarkerDone { color: var(--hzn-mint); font-weight: 700; }
@keyframes hznProgSubmove { to { background-position: 40px 0; } }
.hznProgFoot { margin: 16px 0 0; font-size: 0.8rem; gap: 8px; }
.hznProgActivity { position: relative; width: 14px; height: 14px; flex: none; display: inline-grid; place-items: center; color: var(--hzn-mint); }
.hznProgSpinner { grid-area: 1 / 1; width: 14px; height: 14px; border: 2px solid var(--hzn-surface); border-top-color: var(--hzn-brand); border-radius: 50%; animation: hznProgSpin 0.8s linear infinite; transition: opacity 0.12s ease; }
.hznProgUpdatedIcon { grid-area: 1 / 1; font-size: 0.75rem; opacity: 0; transform: scale(0.7); transition: opacity 0.12s ease, transform 0.12s ease; }
.hznProgActivity.hznProgActivityUpdated .hznProgSpinner { opacity: 0; }
.hznProgActivity.hznProgActivityUpdated .hznProgUpdatedIcon { opacity: 1; transform: scale(1); }
@keyframes hznProgSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .hznProgRing.hznProgRingWaiting, .hznProgSpinner, .hznProgSubtrack span { animation: none; } }

.hznHelpWrap { max-width: 1068px; margin: 0 auto; padding: 4px 0 36px; }
.hznHelpIntro { max-width: none; margin: 0 0 24px; }
.hznHelpH1 { font-size: 2rem; margin: 8px 0 6px; }
.hznHelpLede { font-size: 0.95rem; }
.hznHelpGroup { max-width: 760px; margin: 24px auto 0; }
.hznHelpGroupHead { margin-bottom: 8px; }
.hznHelpItem { border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); padding: 0 16px; margin-bottom: 10px; }
.hznHelpItem summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; padding: 14px 0; font-weight: 600; list-style: none; }
.hznHelpItem summary::-webkit-details-marker { display: none; }
.hznHelpSign { color: var(--hzn-brand); font-weight: 800; font-size: 1.1rem; }
.hznHelpItem[open] .hznHelpSign { transform: rotate(45deg); }
.hznHelpQ { font-size: 0.95rem; }
.hznHelpA { margin: 0 0 14px; font-size: 0.9rem; color: var(--hzn-muted); line-height: 1.6; }
.hznHelpItem ul.hznHelpA { padding: 0 0 0 22px; list-style: disc; }
.hznHelpItem ul.hznHelpA li { margin: 0 0 8px; padding-left: 4px; }
.hznHelpItem ul.hznHelpA li:last-child { margin-bottom: 0; }
.hznHelpItem ul.hznHelpA li::marker { color: var(--hzn-brand); }


.hznHelpContact { gap: 20px; margin-top: 28px; }
.hznHelpContactH { font-size: 1.4rem; margin: 6px 0; }
.hznHelpFoot { text-align: center; margin-top: 20px; font-size: 0.85rem; }
.hznHelpFoot a { text-decoration: none; }
.hznHelpSupport { display: grid; gap: 18px; margin-top: 24px; }
.hznHelpSupportWorkspace { padding: 24px; }
.hznHelpSupportWorkspace > .hznHelpSupportHead { align-items: center; padding-bottom: 16px; border-bottom: 1px solid var(--hzn-line); }
.hznHelpSupportHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; }
.hznHelpSupportHead > div { min-width: 0; }
.hznHelpSupportHead h2, .hznSupportComposerHead h3, .hznHelpIncidentHead h3 { margin: 5px 0 4px; }
.hznHelpSupportHead p:last-child { max-width: none; margin: 0; line-height: 1.55; }
.hznHelpSupportHead > .hznBtn { flex: none; }
.hznVerificationOffer { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; align-items: center; gap: 17px; padding: 19px 21px; border-color: color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line)); background: linear-gradient(135deg, var(--hzn-card), var(--hzn-data-soft)); }
.hznVerificationOfferIcon { width: 52px; height: 52px; border-radius: 14px; background: var(--hzn-brand); color: #fff; font-size: 1.35rem; }
.hznVerificationOffer h3 { margin: 4px 0 4px; font-size: 1.08rem; }
.hznVerificationOffer p:last-child { max-width: none; margin: 0; color: var(--hzn-muted); font-size: 0.82rem; line-height: 1.55; }
.hznVerificationOffer > .hznBtn { flex: none; }
.hznHelpMSRNotice { display: flex; align-items: flex-start; gap: 16px; }
.hznHelpMSRNotice > i { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 12px; background: var(--hzn-accent-soft); color: var(--hzn-accent); display: grid; place-items: center; font-size: 18px; line-height: 1; font-synthesis: none; }
.hznHelpMSRNotice p:last-child { margin: 0; }


.hznInlineConfirm { display: flex; align-items: stretch; flex-direction: column; gap: 14px; }
.hznInlineConfirmMessage { display: block; width: 100%; min-width: 0; font-weight: 650; line-height: 1.5; }
.hznInlineConfirmActions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.hznInlineConfirmActions .hznBtn { min-width: 96px; justify-content: center; }
.hznSupportComposer { padding: 22px; }
.hznSupportComposerHead, .hznHelpIncidentHead { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.hznIconButton { width: 34px; height: 34px; padding: 0; border: 1px solid var(--hzn-line); border-radius: 50%; background: var(--hzn-surface); color: var(--hzn-muted); font: inherit; cursor: pointer; }
.hznIconButton:hover, .hznIconButton:focus-visible { border-color: var(--hzn-brand); color: var(--hzn-brand); outline: none; }
.hznSupportFormGrid { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 14px; margin-top: 18px; }
.hznSupportFormGrid + .hznField { margin-top: 14px; }
.hznSupportComposer .hznField { display: grid; min-width: 0; gap: 6px; }
.hznSupportComposer .hznField > span { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznSupportComposer input, .hznSupportComposer select, .hznSupportComposer textarea { width: 100%; min-width: 0; box-sizing: border-box; padding: 10px 11px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznSupportComposer textarea { min-height: 180px; margin-top: 0; line-height: 1.5; resize: vertical; }
.hznSupportComposer input:focus, .hznSupportComposer select:focus, .hznSupportComposer textarea:focus { border-color: var(--hzn-brand); background: var(--hzn-card); outline: none; box-shadow: 0 0 0 3px color-mix(in srgb, var(--hzn-brand) 10%, transparent); }
.hznVerificationFields { display: grid; gap: 17px; margin-top: 18px; padding: 19px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 22%, var(--hzn-line)); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); }
.hznVerificationIntro { display: grid; grid-template-columns: minmax(170px, 0.34fr) minmax(0, 1fr); gap: 22px; }
.hznVerificationIntro h4 { margin: 5px 0 0; font-size: 1.08rem; }
.hznVerificationIntro ul { margin: 0; padding-left: 19px; color: var(--hzn-muted); font-size: 0.79rem; line-height: 1.55; }
.hznVerificationIntro li { margin-bottom: 7px; }
.hznVerificationIntro li:last-child { margin-bottom: 0; }
.hznVerificationIntro li::marker { color: var(--hzn-brand); }
.hznVerificationAccount { padding: 14px 15px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); }
.hznVerificationAccount > p { margin: 0 0 9px; }
.hznVerificationAccount dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0; }
.hznVerificationAccount dl > div { min-width: 0; }
.hznVerificationAccount dt { color: var(--hzn-muted); font-size: 0.67rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; }
.hznVerificationAccount dd { overflow-wrap: anywhere; margin: 3px 0 0; font-size: 0.78rem; font-weight: 700; }
.hznVerificationBasis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; border: 0; }
.hznVerificationBasis legend { grid-column: 1 / -1; margin-bottom: 1px; color: var(--hzn-muted); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznVerificationBasis label { display: flex; align-items: flex-start; gap: 10px; padding: 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); cursor: pointer; }
.hznVerificationBasis input { width: auto; margin: 3px 0 0; padding: 0; accent-color: var(--hzn-brand); }
.hznVerificationBasis span { display: grid; gap: 3px; }
.hznVerificationBasis strong { font-size: 0.8rem; }
.hznVerificationBasis small, .hznVerificationFiles small { color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.45; }
.hznVerificationEditionNotice { display: flex; align-items: flex-start; gap: 12px; padding: 14px 15px; border: 1px solid color-mix(in srgb, var(--hzn-mid) 42%, var(--hzn-line)); border-radius: var(--hzn-radius-control); background: color-mix(in srgb, var(--hzn-mid) 9%, var(--hzn-card)); }
.hznVerificationEditionNotice[hidden] { display: none; }
.hznVerificationEditionNotice > i { margin-top: 2px; color: var(--hzn-mid); font-size: 1.15rem; }
.hznVerificationEditionNotice strong, .hznVerificationEditionNotice p { display: block; margin: 0; }
.hznVerificationEditionNotice p { max-width: none; margin-top: 4px; color: var(--hzn-muted); font-size: 0.76rem; line-height: 1.5; }
.hznVerificationGrid { margin-top: 0; }
.hznVerificationExplanation textarea { min-height: 104px; margin-top: 0; }
.hznVerificationFiles input[type="file"] { padding: 7px; background: var(--hzn-card); }
.hznVerificationFiles input[type="file"]::file-selector-button { margin-right: 10px; padding: 8px 11px; border: 0; border-radius: 8px; background: var(--hzn-data-soft); color: var(--hzn-brand); font: inherit; font-size: 0.76rem; font-weight: 800; cursor: pointer; }
.hznVerificationAttestation { display: flex; align-items: flex-start; gap: 10px; color: var(--hzn-muted); font-size: 0.76rem; line-height: 1.5; }
.hznVerificationAttestation input { width: auto; margin: 3px 0 0; padding: 0; accent-color: var(--hzn-brand); }
.hznSupportFormFoot { gap: 16px; margin-top: 16px; }
.hznSupportFormFoot p { margin: 0; font-size: 0.78rem; }
.hznHelpIncidentSection { display: grid; gap: 12px; }
.hznHelpIncidentWorkspace { gap: 14px; padding: 18px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznHelpIncidentWorkspace .hznEmptyState { display: grid; min-height: 140px; place-content: center; gap: 8px; padding: 20px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); }
.hznSupportIncidents { display: grid; gap: 10px; }
.hznSupportLoading { min-height: 94px; justify-content: center; gap: 9px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); color: var(--hzn-muted); }
.hznSpinner { display: inline-block; width: 18px; height: 18px; box-sizing: border-box; border: 2px solid var(--hzn-surface-2); border-top-color: var(--hzn-brand); border-radius: 50%; animation: hznSupportSpin 0.8s linear infinite; }
.hznSpinnerSm { width: 14px; height: 14px; border-width: 2px; }
@keyframes hznSupportSpin { to { transform: rotate(360deg); } }
.hznSupportPending { gap: 12px; padding: 13px 15px; border: 1px solid color-mix(in srgb, var(--hzn-accent) 28%, var(--hzn-line)); border-radius: var(--hzn-radius-control); background: var(--hzn-accent-soft); color: var(--hzn-accent); }
.hznSupportPending > i { font-size: 1.15rem; }
.hznSupportPending div { display: grid; gap: 2px; }
.hznSupportPending span { color: var(--hzn-muted); font-size: 0.76rem; }
.hznSupportIncident { overflow: hidden; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznSupportIncident > summary { display: grid; grid-template-columns: 42px minmax(0, 1fr) auto 18px; align-items: center; gap: 12px; padding: 15px 17px; cursor: pointer; list-style: none; }
.hznSupportIncident > summary::-webkit-details-marker { display: none; }
.hznSupportIncidentIcon { width: 42px; height: 42px; border-radius: 11px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.05rem; }
.hznSupportIncidentTitle { display: grid; min-width: 0; gap: 3px; }
.hznSupportIncidentTitle strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznSupportIncidentTitle > span { color: var(--hzn-muted); font-size: 0.72rem; }
.hznStatusPill { display: inline-flex; align-items: center; gap: 6px; padding: 4px 9px; border-radius: 999px; font-size: 0.7rem; font-weight: 750; white-space: nowrap; }
.hznStatusInfo { background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznStatusNeutral { background: var(--hzn-unknown-soft); color: var(--hzn-unknown); }
.hznSupportChevron { color: var(--hzn-muted); transition: transform 0.18s ease; }
.hznSupportIncident[open] .hznSupportChevron { transform: rotate(180deg); }
.hznSupportThread { display: grid; gap: 10px; padding: 16px; border-top: 1px solid var(--hzn-line); background: var(--hzn-surface); }
.hznSupportMessage { max-width: min(84%, 720px); padding: 11px 13px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); }


.hznSupportMessageMeta { display: flex; justify-content: space-between; gap: 14px; color: var(--hzn-muted); font-size: 0.68rem; }
.hznSupportMessageMeta strong { color: var(--hzn-ink); }
.hznSupportMessage p { margin: 7px 0 0; overflow-wrap: anywhere; font-size: 0.8rem; line-height: 1.5; white-space: pre-line; }
.hznSupportThreadActions { display: flex; justify-content: flex-end; margin-top: 3px; }
@media (prefers-reduced-motion: reduce) { .hznSpinner { animation: none; } }
@media (max-width: 720px) {
 .hznHelpSupportHead, .hznSupportFormFoot { align-items: stretch; flex-direction: column; }
 .hznHelpSupportHead > .hznBtn, .hznSupportFormFoot > .hznBtn { justify-content: center; }
 .hznHelpSupportWorkspace { padding: 16px; }
 .hznHelpIncidentWorkspace { padding: 14px; }
 .hznVerificationOffer { grid-template-columns: 44px minmax(0, 1fr); }
 .hznVerificationOfferIcon { width: 44px; height: 44px; border-radius: 12px; }
 .hznVerificationOffer > .hznBtn { grid-column: 1 / -1; justify-content: center; }
 .hznSupportFormGrid { grid-template-columns: 1fr; }
 .hznVerificationIntro, .hznVerificationBasis, .hznVerificationAccount dl { grid-template-columns: 1fr; }
 .hznSupportIncident > summary { grid-template-columns: 38px minmax(0, 1fr) 16px; }
 .hznSupportIncidentIcon { width: 38px; height: 38px; }
 .hznSupportIncident > summary .hznStatusPill { grid-column: 2; justify-self: start; }
 .hznSupportChevron { grid-column: 3; grid-row: 1; }
 .hznSupportMessage { max-width: 94%; }
}

.hznSignupWrap { max-width: 480px; margin: 0 auto; }
.hznSignupIntro { text-align: center; margin-bottom: 20px; }
.hznSignupH1 { font-size: 1.8rem; margin: 8px 0 6px; }
.hznSignupLede { font-size: 0.92rem; }
.hznSignupForm { display: flex; flex-direction: column; }
.hznSignupErr { margin: 0 0 14px; padding: 10px 12px; border-radius: 10px; background: #ffe1e1; color: #a11111; font-size: 0.85rem; }
.hznSignupLabel { font-size: 0.78rem; font-weight: 600; color: var(--hzn-muted); margin: 10px 0 4px; }
.hznSignupInput { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznSignupInput:focus { outline: none; border-color: var(--hzn-brand); background: var(--hzn-card); }
.hznSignupRow2 { display: flex; gap: 12px; }
.hznSignupRow2 > div { flex: 1; }
.hznSignupBtn { margin-top: 18px; justify-content: center; padding: 12px 16px; }
.hznSignupFine { margin: 14px 0 0; font-size: 0.75rem; color: var(--hzn-muted); text-align: center; }
.hznSignupFine a { color: var(--hzn-brand); text-decoration: none; }
.hznSignupAlt { text-align: center; margin-top: 16px; font-size: 0.85rem; }

@media (max-width: 720px) {

 .hznResultHero { flex-direction: column; text-align: center; }
 .hznResultLede { margin-left: auto; margin-right: auto; }


 .hznScanProgCard { flex-direction: column; text-align: center; }
 .hznResultCtas { flex-direction: column; }
 .hznResultBenefitGrid { grid-template-columns: 1fr; }
}

.hznPageHead { margin-bottom: 4px; }
.hznPageH1 { font-size: 1.9rem; margin: 6px 0 4px; }
.hznEmptyState { text-align: center; padding: 48px 20px; }
.hznEmptyState .hznBtn { margin-top: 16px; }

.hznSortLabel { display: inline-flex; align-items: center; color: var(--hzn-muted); font-size: 0.75rem; font-weight: 700; }
.hznSortChip { padding: 6px 12px; border-radius: 999px; border: 1px solid var(--hzn-line); background: var(--hzn-card); font-size: 0.82rem; font-weight: 600; color: var(--hzn-muted); cursor: pointer; }
.hznSortChip:hover { background: var(--hzn-surface); }
.hznSortActive { background: var(--hzn-data-soft); color: var(--hzn-brand); border-color: var(--hzn-data-soft); }
.hznHistTime { font-size: 0.78rem; color: var(--hzn-muted); white-space: nowrap; font-variant-numeric: tabular-nums; }
.hznBtnSm {
  padding: 6px 12px;
  font-size: 0.85rem;
}
.hznReportRow { cursor: default; }
.hznReportIcon { flex: none; width: 40px; height: 40px; border-radius: 10px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.05rem; }

/* One fact per line. The scan a report was built from, the recipient line and
   the section list each ran together as inline text, so the pill landed in the
   middle of a wrapped sentence. */
.hznReportRow { align-items: flex-start; }
.hznReportRow .hznListBody { display: grid; justify-items: start; gap: 4px; }
.hznReportRow .hznListTitle { max-width: 100%; }
.hznReportMeta { display: block; max-width: 100%; margin: 0; white-space: normal; overflow: visible; text-overflow: clip; }
.hznReportTitleMeta { color: var(--hzn-muted); font-weight: 600; }
.hznReportScanPill { margin: 0 0 2px; padding: 2px 9px; background: var(--hzn-surface); border: 1px solid var(--hzn-line); color: var(--hzn-muted); font-size: 0.68rem; font-weight: 700; }
.hznReportScanPill > i { color: var(--hzn-brand); }
.hznReportDeleteBtn { border-color: color-mix(in srgb, var(--hzn-bad) 40%, var(--hzn-line)); color: var(--hzn-bad-fg); }
.hznReportDeleteBtn > i { color: var(--hzn-bad); }
.hznReportDeleteBtn:not(.hznAuthDisabled):hover { border-color: var(--hzn-bad); background: var(--hzn-bad-soft); }
.hznReportActions { gap: 8px; align-self: center; }
.hznReportBuilder { padding: 24px; }
.hznReportBulk { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px 22px; align-items: center; margin-top: 18px; padding: 16px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); }
.hznReportBulk > div:first-child > strong { display: block; margin-top: 2px; font-size: 0.92rem; }
.hznReportBulk > div:first-child > p:last-child { margin: 4px 0 0; color: var(--hzn-muted); font-size: 0.72rem; }
.hznReportBulkControls { align-items: flex-end; justify-content: flex-end; gap: 8px; }
.hznReportBulkControls label { display: grid; gap: 4px; color: var(--hzn-muted); font-size: 0.65rem; font-weight: 800; }
.hznReportBulkControls select { min-width: 138px; height: 34px; padding: 0 28px 0 9px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); color: var(--hzn-ink); font: inherit; font-size: 0.75rem; }
.hznReportBulkProgress { grid-column: 1 / -1; margin: 0; color: var(--hzn-muted); font-size: 0.72rem; }
.hznReportBulkResults { margin-top: 10px; padding: 13px 15px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 35%, var(--hzn-line)); border-radius: var(--hzn-radius-card); background: var(--hzn-data-soft); }
.hznReportBulkResults > strong { display: block; font-size: 0.8rem; }
.hznReportBulkResults > div { display: flex; gap: 7px; margin-top: 9px; flex-wrap: wrap; }
.hznReportWorkspace { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(290px, 0.6fr); gap: 18px; margin-top: 18px; align-items: start; }
.hznReportCandidates { display: grid; gap: 12px; }
.hznReportCandidate { display: grid; gap: 14px; padding: 16px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); transition: border-color 0.16s ease, box-shadow 0.16s ease; }
.hznReportCandidateActive { border-color: var(--hzn-brand); box-shadow: 0 0 0 3px color-mix(in srgb, var(--hzn-brand) 11%, transparent); }
.hznReportCandidateHead { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.hznReportCandidateBulk .hznReportCandidateHead { grid-template-columns: 22px 46px minmax(0, 1fr) auto; }

.hznReportSelect input { width: 17px; height: 17px; margin: 0; accent-color: var(--hzn-brand); cursor: pointer; }
.hznReportCandidateActions { gap: 8px; }

.hznReportSections { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 12px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-surface); }
.hznReportSections legend { padding: 0 6px; color: var(--hzn-muted); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznReportSections label { display: flex; align-items: center; gap: 7px; color: var(--hzn-ink); font-size: 0.77rem; font-weight: 650; cursor: pointer; }
.hznReportSections input { width: 16px; height: 16px; accent-color: var(--hzn-brand); }
.hznReportPreview { position: sticky; top: 18px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznReportPreviewBrand { gap: 10px; padding: 15px 17px; border-bottom: 1px solid var(--hzn-line); font-size: 0.8rem; font-weight: 800; }
.hznReportPreviewLogo { width: 34px; height: 34px; overflow: hidden; flex: none; border-radius: 10px; background: var(--hzn-report-primary, var(--hzn-brand)); color: #fff; font-weight: 900; }
.hznReportPreviewLogo img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.hznReportPreviewBody { padding: 22px; background: linear-gradient(150deg, color-mix(in srgb, var(--hzn-report-primary, var(--hzn-brand)) 9%, #fff), #fff 58%); }
.hznReportPreviewBody h3 { margin: 8px 0 2px; font-size: 1.2rem; }
.hznReportPreviewScore { display: flex; align-items: baseline; gap: 8px; margin-top: 20px; }
.hznReportPreviewScore strong { color: var(--hzn-report-primary, var(--hzn-brand)); font-size: 2.4rem; line-height: 1; }
.hznReportPreviewScore span { color: var(--hzn-muted); font-size: 0.72rem; }
.hznReportPreviewSections { display: grid; gap: 7px; margin-top: 20px; }
.hznReportPreviewSections span { display: flex; align-items: center; gap: 7px; padding: 7px 9px; border-radius: 9px; background: color-mix(in srgb, var(--hzn-report-primary, var(--hzn-brand)) 8%, #fff); color: var(--hzn-ink); font-size: 0.72rem; font-weight: 700; }
.hznReportPreviewSections i { color: var(--hzn-brand); }
.hznReportPreviewSections .hznReportPreviewSectionOff { opacity: 0.4; text-decoration: line-through; }
.hznReportPreviewSections .hznReportPreviewSectionOff i { color: var(--hzn-muted); }
.hznReportPreviewNote { margin: 0; padding: 12px 17px; border-top: 1px solid var(--hzn-line); color: var(--hzn-muted); font-size: 0.68rem; line-height: 1.4; }

@media (max-width: 980px) {
 .hznReportBulk { grid-template-columns: 1fr; }
 .hznReportBulkControls { justify-content: flex-start; }
 .hznReportBulkProgress { grid-column: 1; }
 .hznReportWorkspace { grid-template-columns: 1fr; }
 .hznReportPreview { position: static; }
}

@media (max-width: 620px) {
 .hznReportBulkControls { align-items: stretch; flex-direction: column; }
 .hznReportBulkControls .hznBtn, .hznReportBulkControls select { width: 100%; }
 .hznReportCandidateHead { grid-template-columns: 42px minmax(0, 1fr); }
 .hznReportCandidateBulk .hznReportCandidateHead { grid-template-columns: 22px 42px minmax(0, 1fr); }
 .hznReportPreviewButton { grid-column: 2; justify-self: start; }
 .hznReportCandidateBulk .hznReportPreviewButton { grid-column: 3; }
 .hznReportSections { grid-template-columns: 1fr; }
 .hznReportCandidateActions { align-items: stretch; flex-direction: column; }

}

.hznImportGrid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.75fr); gap: 18px; }
.hznHarmonySync { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; align-items: center; gap: 16px 20px; padding: 24px; background: linear-gradient(135deg, var(--hzn-card), color-mix(in srgb, var(--hzn-data-soft) 42%, var(--hzn-card))); }
.hznHarmonySyncIcon { width: 54px; height: 54px; border-radius: 16px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.35rem; }
.hznHarmonySyncHead { gap: 12px; }
.hznHarmonySyncHead .hznEyebrow { margin: 0; }
.hznHarmonySyncBody h2 { margin: 6px 0 4px; font-size: 1.35rem; }
.hznHarmonySyncBody > .hznMuted { margin: 0; font-size: 0.86rem; }
.hznHarmonySyncActions { display: flex; justify-content: flex-end; }
.hznHarmonySync .hznImportResult { grid-column: 2 / -1; margin-top: 0; }
.hznImportCard, .hznImportRules { padding: 24px; }
.hznImportCard h2, .hznImportRules h2 { margin: 7px 0 5px; font-size: 1.35rem; }
.hznImportCard > div > .hznMuted { margin: 0; font-size: 0.86rem; }
.hznImportFields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.hznImportFields label { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.hznImportFields label:only-child { grid-column: 1 / -1; }
.hznImportFields label > span { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznImportFields input, .hznImportFields select { width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; padding: 10px 11px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznImportDrop { min-height: 150px; margin-top: 14px; border: 1px dashed #acc9da; border-radius: var(--hzn-radius-card); background: var(--hzn-data-soft); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; color: var(--hzn-brand); text-align: center; cursor: pointer; }
.hznImportDrop input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.hznImportDrop i { font-size: 1.8rem; }
.hznImportDrop span { color: var(--hzn-muted); font-size: 0.76rem; }
.hznImportRequirement { margin-top: 12px; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--hzn-data) 24%, var(--hzn-line)); border-radius: var(--hzn-radius-control); background: var(--hzn-data-soft); color: var(--hzn-ink); font-size: 0.8rem; line-height: 1.4; }
.hznImportRequirement:focus { outline: 3px solid color-mix(in srgb, var(--hzn-data) 35%, transparent); outline-offset: 2px; }
.hznImportActions { gap: 12px; margin-top: 14px; }
.hznImportRules ul { margin: 18px 0 0; padding: 0; list-style: none; display: grid; gap: 14px; }
.hznImportRules li { padding-left: 18px; border-left: 3px solid var(--hzn-data-soft); color: var(--hzn-muted); font-size: 0.82rem; line-height: 1.45; }
.hznImportRules strong { color: var(--hzn-ink); }
.hznImportResult { margin-top: 16px; padding: 12px 14px; border-radius: var(--hzn-radius-control); font-size: 0.84rem; }
.hznImportResultGood { background: #f0faf6; color: #147d64; }
.hznImportResultBad { background: #fff5f5; color: var(--hzn-coral); }
.hznImportResultWarn { background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznInlineAlert {
  box-sizing: border-box;
  padding: 11px 14px;
  border-radius: var(--hzn-radius-control);
  font-size: 0.84rem;
  margin-top: 10px;
  border: 1px solid currentColor;
}
.hznScanProgressAlert { display: flex; align-items: center; flex-wrap: wrap; justify-content: space-between; gap: 8px 14px; cursor: pointer; }
.hznScanProgressAlert:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-bad) 35%, transparent); outline-offset: 2px; }
.hznScanProgressAlertAction { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; font-weight: 800; white-space: nowrap; }
.hznImportReview > .hznPageHead .hznMuted { margin-top: 6px; }
.hznImportConflictList { display: grid; gap: 14px; margin-top: 16px; }
.hznImportConflictCard { padding: 20px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); transition: opacity 0.2s ease, transform 0.2s ease; }
.hznImportConflictHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.hznImportConflictHead h3 { margin: 5px 0 0; font-size: 1.08rem; }
.hznImportConflictCompare { display: grid; grid-template-columns: minmax(0, 1fr) 32px minmax(0, 1fr); align-items: stretch; gap: 12px; margin-top: 16px; }
.hznImportConflictSide { min-width: 0; padding: 14px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); gap: 4px; color: var(--hzn-muted); font-size: 0.78rem; }
.hznImportConflictSide strong { min-height: 1em; overflow-wrap: anywhere; color: var(--hzn-ink); font-size: 0.88rem; }
.hznImportConflictSource { color: var(--hzn-brand); font-size: 0.68rem; font-weight: 850; letter-spacing: 0.05em; text-transform: uppercase; }
.hznImportConflictArrow { color: var(--hzn-brand); }
.hznImportConflictActions { gap: 9px; margin-top: 14px; }
.hznImportConflictMessage { margin-left: 4px; font-size: 0.76rem; }
.hznImportConflictResolved { opacity: 0; transform: translateY(-4px); }
.hznImportHistory { padding: 0 20px; }
.hznImportHistoryRow { gap: 14px; min-height: 72px; padding: 12px 0; border-bottom: 1px solid var(--hzn-line); }
.hznImportHistoryRow:last-child { border-bottom: 0; }
.hznIntegrationGrid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr); gap: 18px; }
.hznIntegrationRegister, .hznIntegrationRoadmap { padding: 24px; }
.hznIntegrationRegister h2, .hznIntegrationRoadmap h2 { margin: 7px 0 5px; font-size: 1.35rem; }
.hznIntegrationRegister > div > .hznMuted { margin: 0; font-size: 0.86rem; }
.hznIntegrationFields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.hznIntegrationFields label { min-width: 0; display: flex; flex-direction: column; gap: 6px; }
.hznIntegrationFields label > span { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznIntegrationFields input, .hznIntegrationFields select { width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; padding: 10px 11px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznIntegrationSecurity { display: flex; align-items: flex-start; gap: 12px; margin-top: 14px; padding: 12px 14px; border-radius: var(--hzn-radius-control); background: #f0faf6; color: #147d64; }
.hznIntegrationSecurity i { margin-top: 2px; font-size: 1rem; }
.hznIntegrationSecurity p { margin: 0; font-size: 0.78rem; line-height: 1.45; }
.hznIntegrationRoadmap ol { margin: 18px 0 0; padding: 0; list-style: none; display: grid; gap: 16px; }
.hznIntegrationRoadmap li { display: flex; align-items: flex-start; gap: 11px; }
.hznIntegrationRoadmap li > span { flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; background: var(--hzn-data-soft); color: var(--hzn-brand); display: grid; place-items: center; font-size: 0.74rem; font-weight: 900; }
.hznIntegrationRoadmap strong { font-size: 0.82rem; }
.hznIntegrationRoadmap p { margin: 3px 0 0; color: var(--hzn-muted); font-size: 0.76rem; line-height: 1.4; }
.hznIntegrationList { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.hznIntegrationCard { min-width: 0; padding: 20px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); box-shadow: var(--hzn-shadow-card); display: flex; align-items: flex-start; gap: 14px; }
.hznIntegrationCardDisabled { background: var(--hzn-soft); box-shadow: none; }
.hznIntegrationIcon { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 11px; background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznIntegrationBody { min-width: 0; flex: 1; }
.hznIntegrationTitle { gap: 10px; }
.hznIntegrationBody > p { margin: 8px 0 12px; color: var(--hzn-muted); font-size: 0.78rem; line-height: 1.45; }
.hznIntegrationMeta { gap: 7px 14px; color: var(--hzn-muted); font-size: 0.7rem; }
.hznIntegrationMeta strong { color: var(--hzn-ink); }
.hznSettingsTabs { width: 100%; box-sizing: border-box; gap: 4px; padding: 4px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-surface); }
.hznSettingsTab { display: inline-flex; align-items: center; gap: 7px; padding: 8px 14px; border: 0; border-radius: 9px; background: transparent; color: var(--hzn-muted); font: inherit; font-size: 0.82rem; font-weight: 700; cursor: pointer; }
.hznSettingsTabActive { background: var(--hzn-card); color: var(--hzn-brand); box-shadow: var(--hzn-shadow-card); }
.hznSettingsPanel { margin-top: 18px; }
.hznSettingsGrid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr); gap: 18px; }

.hznSettingsCard { padding: 24px; }
.hznSettingsCard h2 { margin: 7px 0 5px; font-size: 1.35rem; }
.hznSettingsCard > .hznMuted { margin: 0; font-size: 0.84rem; }
.hznSettingsSectionIntro { display: flex; align-items: flex-start; gap: 16px; }
.hznSettingsSectionIcon { width: 44px; height: 44px; flex: 0 0 44px; border-radius: 12px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.15rem; }
.hznSettingsSectionCopy { min-width: 0; flex: 1; }
.hznSettingsSectionCopy h2, .hznSettingsSectionCopy p { margin-right: 0; max-width: none; }
.hznSettingsSectionAside { flex: 0 0 auto; margin-left: auto; }
.hznPublicProfileForm { display: grid; gap: 18px; }
.hznPublicProfileIntro { display: flex; align-items: flex-start; gap: 16px; }
.hznPublicProfileIntro > div { min-width: 0; flex: 1; }
.hznPublicProfileIntro h2, .hznPublicProfileIntro p { margin-right: 0; max-width: none; }
.hznPublicProfileFieldHead > span{ display: grid; flex: 0 0 auto; width: 44px; height: 44px; place-items: center; border-radius: 12px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.15rem; }
.hznPublicProfileFields { display: grid; gap: 18px; }
.hznPublicProfileToggle { gap: 11px; width: fit-content; max-width: 100%; cursor: pointer; }
.hznPublicProfileToggle input { position: absolute; width: 1px; height: 1px; overflow: hidden; opacity: 0; pointer-events: none; }
.hznPublicProfileToggle > span { position: relative; flex: 0 0 46px; width: 46px; height: 25px; border-radius: 999px; background: var(--hzn-line); transition: background 150ms ease; }
.hznPublicProfileToggle > span::after { position: absolute; top: 3px; left: 3px; width: 19px; height: 19px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(23, 37, 49, 0.22); content: ""; transition: transform 150ms ease; }
.hznPublicProfileToggle input:checked + span { background: var(--hzn-brand); }
.hznPublicProfileToggle input:checked + span::after { transform: translateX(21px); }
.hznPublicProfileToggle input:focus-visible + span { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 24%, transparent); outline-offset: 3px; }
.hznPublicProfileToggle strong { color: var(--hzn-ink); font-size: 0.82rem; }
.hznPublicProfileIntroToggle { flex: 0 0 auto; margin-left: auto; padding-top: 3px; }
.hznPublicProfileManagementOptions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.hznPublicProfileManagementOptions label { display: grid; grid-template-columns: 20px 24px minmax(0, 1fr); align-items: center; gap: 10px; min-width: 0; padding: 12px 13px; border: 1px solid var(--hzn-line); border-radius: 11px; background: var(--hzn-surface); color: var(--hzn-ink); cursor: pointer; }
.hznPublicProfileManagementOptions label:last-child { grid-column: 1 / -1; }
.hznPublicProfileManagementOptions input { width: 18px; height: 18px; margin: 0; accent-color: var(--hzn-brand); }
.hznPublicProfileManagementOptions img { display: block; width: 24px; height: 24px; object-fit: contain; }
.hznPublicProfileManagementOptions span { min-width: 0; font-size: 0.8rem; font-weight: 700; line-height: 1.35; }
.hznPublicProfileRegionGrid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(240px, 1fr); gap: 18px; align-items: stretch; }
.hznPublicProfileRegionGrid > * { min-width: 0; }
.hznPublicProfileField { min-width: 0; }
.hznPublicProfileFieldHead { display: flex; align-items: flex-start; gap: 14px; margin-bottom: 16px; }
.hznPublicProfileFieldHead h3 { margin: 4px 0; font-size: 1.12rem; }
.hznPublicProfileFieldHead p { max-width: none; }
.hznPublicProfileGoogleRatingHead { align-items: center; margin-bottom: 0; }
.hznPublicProfileGoogleRatingHead > div { min-width: 0; flex: 1; }
.hznPublicProfileGoogleRatingToggle { flex: 0 0 auto; margin-left: auto; }
.hznPublicProfileField .tox-tinymce { margin-top: 10px; border-color: var(--hzn-line); border-radius: 12px; }
.hznPublicProfileRegions { min-width: 0; }
.hznPublicProfileRegionsHead { display: flex; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.hznPublicProfileRegionsHead > span { display: grid; flex: 0 0 40px; width: 40px; height: 40px; place-items: center; border-radius: 11px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1rem; }
.hznPublicProfileRegionsHead > div { min-width: 0; flex: 1; }
.hznPublicProfileRegionsHead h3 { margin: 4px 0 0; font-size: 1.05rem; }
.hznPublicProfileRegionCount { flex: 0 0 28px; width: 28px; height: 28px; border-radius: 50%; background: var(--hzn-brand); color: #fff; font-size: 0.75rem; }
.hznPublicProfileRegions > p { display: flex; align-items: center; gap: 8px; margin: 0 0 11px; max-width: none; color: var(--hzn-muted); font-size: 0.78rem; }
.hznPublicProfileRegions ul { display: grid; grid-template-columns: 1fr; gap: 7px; margin: 0; padding-left: 20px; color: var(--hzn-ink); font-size: 0.82rem; }
.hznPublicProfileRegions li { text-transform: capitalize; }
.hznPublicProfileRegionsEmpty { gap: 8px; color: var(--hzn-muted); font-size: 0.82rem; }
.hznPublicProfileActions { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.hznPublicProfileActions strong { color: var(--hzn-ink); }
.hznPublicProfileActions p { margin: 4px 0 0; max-width: none; color: var(--hzn-muted); font-size: 0.8rem; }


.hznSettingsFields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.hznSettingsFields label { display: flex; flex-direction: column; gap: 6px; }
.hznSettingsFields label > span:first-child { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznSettingsFields input, .hznSettingsFields select { width: 100%; min-width: 0; box-sizing: border-box; padding: 10px 11px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznSettingsFields input[readonly] { color: var(--hzn-muted); cursor: default; }
.hznSettingsBrandControls { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(250px, 0.45fr); gap: 14px; align-items: stretch; margin-top: 20px; }
.hznSettingsBrandControls .hznLogoUpload { height: 100%; box-sizing: border-box; margin-top: 0; }
.hznSettingsBrandColors { height: 100%; box-sizing: border-box; padding: 16px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); }
.hznSettingsBrandColors .hznSettingsFields { grid-template-columns: 1fr; margin-top: 12px; }
.hznServiceRadiusField { grid-column: 1 / -1; width: 100%; box-sizing: border-box; padding: 16px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); }
.hznServiceRadiusHead { display: flex; justify-content: space-between; gap: 14px; align-items: flex-start; }
.hznServiceRadiusHead strong { display: block; margin-top: 4px; color: var(--hzn-ink); }
.hznServiceRadiusHead output { flex: 0 0 auto; padding: 5px 9px; border-radius: 999px; background: var(--hzn-brand-soft); color: var(--hzn-brand); font-size: 0.78rem; font-weight: 800; }
.hznServiceRadiusDescription { margin: 8px 0 12px; color: var(--hzn-muted); font-size: 0.82rem; line-height: 1.5; }
.hznServiceRadiusHelp { margin: 12px 0 14px; padding: 10px 12px; border: 1px solid color-mix(in srgb, var(--hzn-data) 22%, var(--hzn-line)); border-radius: var(--hzn-radius-control); background: var(--hzn-data-soft); color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.5; }
.hznServiceRadiusHelp summary { display: flex; gap: 7px; align-items: center; color: var(--hzn-ink); font-weight: 750; cursor: pointer; list-style: none; }
.hznServiceRadiusHelp summary::-webkit-details-marker { display: none; }
.hznServiceRadiusHelp summary i { color: var(--hzn-data); }
.hznServiceRadiusHelp p { margin: 9px 0 0; }
.hznServiceRadiusField input[type="range"] { display: block; width: 100%; max-width: none; box-sizing: border-box; margin: 0; accent-color: var(--hzn-brand); cursor: pointer; }
.hznServiceRadiusScale { display: flex; width: 100%; box-sizing: border-box; justify-content: space-between; gap: 16px; margin-top: 5px; color: var(--hzn-muted); font-size: 0.7rem; font-weight: 700; }
.hznServiceRadiusScale span { white-space: nowrap; }
.hznAccountFields { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.hznAccountFields .hznFieldFull { grid-column: span 6; }
.hznAccountFields .hznFieldHalf { grid-column: span 3; }
.hznAccountFields .hznFieldCity { grid-column: span 3; }
.hznAccountFields .hznFieldState { grid-column: span 1; }
.hznAccountFields .hznFieldZip { grid-column: span 2; }
.hznSettingsNote { display: flex; align-items: flex-start; gap: 8px; margin: 18px 0 0; color: var(--hzn-muted); font-size: 0.76rem; line-height: 1.45; }
.hznSettingsNote i { margin-top: 2px; color: var(--hzn-brand); }
.hznSettingsRows { margin-top: 12px; }
.hznSettingsRows > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 44px; border-bottom: 1px solid var(--hzn-line); font-size: 0.78rem; }
.hznSettingsRows > div:last-child { border-bottom: 0; }
.hznSettingsRows span { color: var(--hzn-muted); }
.hznSettingsRows strong { text-align: right; }
.hznAccountLegalLinks { gap: 10px 18px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--hzn-line); }
.hznAccountLegalLinks a { display: inline-flex; align-items: center; gap: 7px; color: var(--hzn-brand); font-size: 0.78rem; font-weight: 700; text-decoration: none; }
.hznAccountLegalLinks a:hover, .hznAccountLegalLinks a:focus-visible { text-decoration: underline; }
.hznVerificationSettings { display: grid; gap: 12px; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--hzn-line); }
.hznVerificationSettings p { display: flex; align-items: flex-start; gap: 9px; margin: 0; color: var(--hzn-muted); font-size: 0.76rem; line-height: 1.5; }
.hznVerificationSettings p i { margin-top: 2px; color: var(--hzn-brand); font-size: 1rem; }
.hznVerificationSettings .hznBtn { justify-content: center; }
.hznTeamHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.hznTeamHead .hznSettingsSectionCopy { min-width: 0; }
.hznTeamHead h2 { margin: 7px 0 5px; }
.hznTeamStats { display: flex; flex: none; gap: 8px; }
.hznTeamStats span { min-width: 70px; padding: 9px 11px; border: 1px solid var(--hzn-line); border-radius: 10px; background: var(--hzn-surface); color: var(--hzn-muted); text-align: center; font-size: 0.68rem; }
.hznTeamStats strong { display: block; color: var(--hzn-ink); font-size: 1.1rem; }
.hznTeamUniversalNotice { display: flex; align-items: flex-start; gap: 10px; margin-top: 16px; padding: 12px 14px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line)); border-radius: 10px; background: color-mix(in srgb, var(--hzn-brand) 6%, var(--hzn-card)); color: var(--hzn-muted); }
.hznTeamUniversalNotice > i { flex: none; margin-top: 2px; color: var(--hzn-brand); font-size: 1rem; }
.hznTeamUniversalNotice p { margin: 0; font-size: 0.74rem; line-height: 1.5; }
.hznTeamUniversalNotice strong { color: var(--hzn-ink); }
.hznTeamRoster { display: grid; margin-top: 20px; border: 1px solid var(--hzn-line); border-radius: 12px; overflow: hidden; }
.hznTeamMember { display: grid; grid-template-columns: 44px minmax(180px, 1.15fr) minmax(180px, 0.85fr) 76px 228px; align-items: center; gap: 13px; min-height: 72px; padding: 12px 14px; border-bottom: 1px solid var(--hzn-line); }
.hznTeamMember:last-child { border-bottom: 0; }
.hznTeamMemberInactive { opacity: 0.62; }
.hznTeamAvatar { width: 42px; height: 42px; border-radius: 12px; background: color-mix(in srgb, var(--hzn-brand) 12%, var(--hzn-card)); color: var(--hzn-brand); font-size: 0.74rem; font-weight: 900; }
.hznTeamIdentity, .hznTeamRole { min-width: 0; }
.hznTeamName { gap: 7px; }
.hznTeamIdentity p, .hznTeamRole span { overflow: hidden; margin-top: 3px; color: var(--hzn-muted); font-size: 0.72rem; text-overflow: ellipsis; white-space: nowrap; }

.hznTeamRole strong { font-size: 0.8rem; }
.hznTeamCurrentPill { padding: 3px 6px; color: var(--hzn-brand); background: color-mix(in srgb, var(--hzn-brand) 10%, var(--hzn-card)); font-size: 0.58rem; }

.hznTeamActions { justify-content: flex-end; gap: 7px; }
.hznTeamPasswordLink, .hznTeamStatusAction { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 7px 9px; border: 1px solid var(--hzn-line); border-radius: 8px; background: var(--hzn-card); font: inherit; font-size: 0.68rem; font-weight: 800; cursor: pointer; }
.hznTeamPasswordLink { color: var(--hzn-brand); }
.hznTeamPasswordLink:hover { border-color: var(--hzn-brand); background: color-mix(in srgb, var(--hzn-brand) 7%, var(--hzn-card)); }
.hznTeamStatusSuspend { color: var(--hzn-warning-fg); }
.hznTeamStatusSuspend:hover { border-color: var(--hzn-warning-fg); background: var(--hzn-warning-soft); }
.hznTeamStatusRestore { color: var(--hzn-good); }
.hznTeamStatusRestore:hover { border-color: var(--hzn-good); background: var(--hzn-good-soft); }
.hznTeamStatusTerminate { color: var(--hzn-bad-fg); }
.hznTeamStatusTerminate:hover { border-color: var(--hzn-bad-fg); background: var(--hzn-bad-soft); }
.hznTeamPasswordLink:disabled, .hznTeamStatusAction:disabled { opacity: 0.6; cursor: wait; }
.hznTeamRoster > .hznInlineAlert { margin: 0; border-width: 0 0 1px; border-radius: 0; }
.hznTeamRoster > .hznInlineAlert:last-child { border-bottom: 0; }
.hznTeamEmpty { min-height: 170px; justify-content: center; gap: 7px; color: var(--hzn-muted); text-align: center; }
.hznTeamEmpty i { color: var(--hzn-data); font-size: 1.5rem; }
.hznTeamEmpty strong { color: var(--hzn-ink); }
.hznTeamEmpty p { font-size: 0.78rem; }
.hznLogoUpload { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 16px; align-items: center; margin-top: 20px; padding: 16px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-surface); }
.hznLogoCurrent { width: 110px; height: 90px; display: grid; place-items: center; overflow: hidden; border: 1px dashed var(--hzn-line); border-radius: 10px; background: var(--hzn-card); }
.hznLogoCurrent img { display: block; max-width: 96px; max-height: 76px; object-fit: contain; }
.hznLogoCurrent > span { color: var(--hzn-muted); font-size: 1.7rem; }
.hznLogoUploadBody { min-width: 0; }
.hznLogoUploadBody > strong { font-size: 0.86rem; }
.hznLogoUploadBody > p { margin: 4px 0 10px; color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.45; }
.hznLogoUploadBody form { display: grid; grid-template-columns: minmax(0, 1fr); align-items: stretch; gap: 9px; }
.hznLogoUploadBody form .hznBtn { justify-content: center; }
.hznLogoUploadBody input[type="file"] { min-width: 0; flex: 1; box-sizing: border-box; padding: 5px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); color: var(--hzn-muted); font: inherit; font-size: 0.72rem; cursor: pointer; }
.hznLogoUploadBody input[type="file"]::file-selector-button { margin-right: 10px; padding: 7px 11px; border: 0; border-radius: 7px; background: var(--hzn-data-soft); color: var(--hzn-brand); font: inherit; font-size: 0.72rem; font-weight: 800; cursor: pointer; transition: background 140ms ease, color 140ms ease; }
.hznLogoUploadBody input[type="file"]::-webkit-file-upload-button { margin-right: 10px; padding: 7px 11px; border: 0; border-radius: 7px; background: var(--hzn-data-soft); color: var(--hzn-brand); font: inherit; font-size: 0.72rem; font-weight: 800; cursor: pointer; transition: background 140ms ease, color 140ms ease; }
.hznLogoUploadBody input[type="file"]:hover::file-selector-button { background: var(--hzn-brand); color: var(--hzn-brand-fg); }
.hznLogoUploadBody input[type="file"]:hover::-webkit-file-upload-button { background: var(--hzn-brand); color: var(--hzn-brand-fg); }
.hznLogoUploadBody input[type="file"]:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 24%, transparent); outline-offset: 2px; border-color: var(--hzn-brand); }
.hznLogoProgress { position: relative; height: 20px; margin-top: 10px; overflow: hidden; border-radius: 999px; background: #e8edf1; }
.hznLogoProgress i { display: block; width: 0; height: 100%; background: var(--hzn-brand); transition: width 120ms linear; }
.hznLogoProgress span { position: absolute; inset: 0; display: grid; place-items: center; color: var(--hzn-ink); font-size: 0.62rem; font-weight: 800; }
.hznLogoUpload .hznImportResult { margin-top: 10px; }
.hznColorField { gap: 8px; padding: 4px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznColorField input { border: 0; background: transparent; }
.hznColorField input[type="color"] { flex: 0 0 32px; width: 32px; height: 32px; padding: 0; cursor: pointer; }
.hznSettingsSave { gap: 12px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--hzn-line); }
.hznSettingsSave > span { min-width: 0; color: var(--hzn-muted); font-size: 0.72rem; }
.hznSettingsSave > .hznBtn { flex: none; white-space: nowrap; }
.hznSettingsSaveActions { justify-content: flex-end; gap: 9px; }
.hznSettingsActionRow { justify-content: flex-end; }


.hznSettingsPlanHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.hznSettingsPlanHead h2 { margin-top: 5px; }
.hznSettingsPlanFacts { margin-top: 18px; }
.hznSettingsAutomation { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px 24px; align-items: center; }
.hznSettingsAutomation h3 { margin: 5px 0 7px; font-size: 1.15rem; }
.hznSettingsAutomation .hznMuted { margin: 0; }
.hznSettingsAutomationControl { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; padding: 10px 13px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font-size: 0.78rem; font-weight: 800; cursor: pointer; }
.hznSettingsAutomationControl input { width: 18px; height: 18px; accent-color: var(--hzn-brand); }
.hznSettingsAutomationControl input:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 28%, transparent); outline-offset: 3px; }
.hznSettingsAutomation > [role='status'] { min-height: 1.2em; grid-column: 1 / -1; }
@media (max-width: 680px) { .hznSettingsAutomation { grid-template-columns: 1fr; } .hznSettingsAutomationControl { width: 100%; } }
.hznBillingGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.hznBillingCardHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.hznBillingCardHead h2 { margin-bottom: 0; }
.hznBillingCardHead > strong,
.hznBillingBalance { color: var(--hzn-ink); font-family: var(--hzn-display); font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 800; white-space: nowrap; }
.hznBillingBalanceCard > .hznBtn { margin-top: 18px; }
.hznBillingUpToDate { gap: 10px; margin-top: 18px; padding: 14px 16px; border: 1px solid rgba(20, 125, 100, 0.24); border-radius: var(--hzn-radius-control); color: var(--hzn-good); background: rgba(20, 125, 100, 0.08); }
.hznBillingUpToDate i { font-size: 1.25rem; }
.hznBillingUpToDate span { display: grid; gap: 2px; }
.hznBillingLoading { gap: 8px; min-height: 54px; color: var(--hzn-muted); }
.hznWalletTableWrap { max-width: 100%; overflow-x: auto; }
.hznWalletTable { width: 100%; border-collapse: separate; border-spacing: 0 8px; color: var(--hzn-ink); }
.hznWalletTable tr.listRecord > td { padding: 10px 8px; border-block: 1px solid var(--hzn-line); background: var(--hzn-surface-soft); vertical-align: middle; }
.hznWalletTable tr.listRecord > td:first-child { width: 30px; border-left: 1px solid var(--hzn-line); border-radius: 9px 0 0 9px; }
.hznWalletTable tr.listRecord > td:last-child { border-right: 1px solid var(--hzn-line); border-radius: 0 9px 9px 0; }
.hznWalletTable tr.listRecord label { cursor: pointer; font-weight: 700; }
.hznWalletTable .selectWallet { width: 18px; height: 18px; accent-color: var(--hzn-brand); cursor: pointer; }
.hznWalletTable .icon24_0_d { width: 24px; height: 24px; object-fit: contain; }
.hznWalletTable .walletManageLink { color: var(--hzn-brand); cursor: pointer; white-space: nowrap; }
.hznWalletTable .walletManageLink span { text-decoration: none; }
.hznWalletTable .walletManage > td { padding: 14px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-surface-soft); }
.hznWalletTable .walletManage .inputField { max-width: calc(100% - 10px); border: 1px solid var(--hzn-line) !important; border-radius: 7px !important; background: #fff; color: var(--hzn-ink); }
.hznWalletEmpty td { padding: 14px; color: var(--hzn-muted); text-align: center; }
.hznBillingCheckout { margin-top: 18px; }
.hznBillingChoice { margin: 14px 0; }
#hznPaymentElement { min-height: 120px; margin-top: 18px; padding: 16px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: #fff; }
.hznBillingActions { justify-content: flex-end; gap: 10px; margin-top: 18px; }
.hznBillingActions .hznBtn { min-width: 138px; }
.hznPlanSuccess { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 18px; margin-bottom: 18px; border-color: color-mix(in srgb, var(--hzn-good) 35%, var(--hzn-border)); background: linear-gradient(135deg, var(--hzn-good-soft), var(--hzn-card) 68%); }
.hznPlanSuccess:focus { outline: 3px solid color-mix(in srgb, var(--hzn-good) 22%, transparent); outline-offset: 3px; }
.hznPlanSuccessIcon { width: 52px; height: 52px; border-radius: 15px; background: var(--hzn-good); color: #fff; font-size: 1.35rem; box-shadow: 0 12px 24px -14px rgba(20, 125, 100, 0.7); }
.hznPlanSuccessBody { min-width: 0; }
.hznPlanSuccessBody h2 { margin: 4px 0 8px; color: var(--hzn-good); }
.hznPlanSuccessBody > p { max-width: none; }
.hznPlanSuccessBenefits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 18px; margin: 16px 0; padding: 0; list-style: none; }
.hznPlanSuccessBenefits li { display: flex; align-items: center; gap: 8px; color: var(--hzn-ink); font-size: 0.84rem; font-weight: 700; }
.hznPlanSuccessBenefits i { color: var(--hzn-good); }
.hznPlanSuccessActions { gap: 10px; margin-top: 16px; }
.hznPlanCheckout { margin-bottom: 18px; border-color: color-mix(in srgb, var(--hzn-brand) 30%, var(--hzn-border)); }
#hznPlanPaymentElement { min-height: 120px; margin-top: 18px; padding: 16px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: #fff; }
.hznPlanOptions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.hznPlanOption { display: flex; flex-direction: column; gap: 16px; }
.hznPlanOptioncurrent { border-color: color-mix(in srgb, var(--hzn-brand) 55%, var(--hzn-border)); box-shadow: 0 14px 34px rgba(1, 102, 157, 0.09); }
.hznPlanOptionHead { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.hznPlanOptionHead h3 { margin-top: 4px; }
.hznPlanOptionHead > strong { color: var(--hzn-brand); font-family: var(--hzn-display); font-size: 1.55rem; white-space: nowrap; }
.hznPlanOptionHead > strong small { color: var(--hzn-muted); font-family: inherit; font-size: 0.72rem; font-weight: 600; }
.hznPlanOptionLimits { display: grid; gap: 8px; padding: 14px 0; border-top: 1px solid var(--hzn-border); border-bottom: 1px solid var(--hzn-border); }
.hznPlanOptionLimits span { display: flex; justify-content: space-between; gap: 12px; color: var(--hzn-muted); font-size: 0.82rem; }
.hznPlanOptionLimits b { color: var(--hzn-ink); }
.hznPlanOptionBenefits { display: grid; gap: 9px; margin: 0; padding: 0; list-style: none; }
.hznPlanOptionBenefits li { display: flex; align-items: flex-start; gap: 9px; color: var(--hzn-ink); font-size: 0.82rem; line-height: 1.45; }
.hznPlanOptionBenefits i { flex: 0 0 16px; margin-top: 2px; color: var(--hzn-good); text-align: center; }
.hznScalePlanSelector { display: grid; gap: 10px; padding: 14px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-border)); border-radius: var(--hzn-radius-control); background: color-mix(in srgb, var(--hzn-brand) 5%, #fff); }
.hznScalePlanSelector label, .hznScalePlanRange { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.hznScalePlanSelector label { color: var(--hzn-ink); font-size: 0.82rem; }
.hznScalePlanSelector label strong { color: var(--hzn-brand); }
.hznScalePlanSelector input[type="range"] { width: 100%; margin: 0; accent-color: var(--hzn-brand); cursor: pointer; }
.hznScalePlanRange { color: var(--hzn-muted); font-size: 0.68rem; }
.hznScalePlanForm { min-height: 158px; }
.hznPlanForm { display: flex; flex: 1; flex-direction: column; gap: 13px; }
.hznPlanForm > p { flex: 1; margin: 0; color: var(--hzn-muted); font-size: 0.84rem; line-height: 1.55; }
.hznPlanForm .hznPlanBlocked { color: var(--hzn-coral); }
.hznPlanConfirm { display: flex; gap: 8px; align-items: flex-start; color: var(--hzn-muted); font-size: 0.8rem; cursor: pointer; }
.hznPlanConfirm input { margin-top: 2px; }
.hznPlanForm .hznBtn { width: 100%; justify-content: center; }
.hznSettingsUsageHead { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin: 18px 0 9px; font-size: 0.82rem; }
.hznSettingsUsageHead strong { white-space: nowrap; }
.hznSettingsUsageGrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; margin-top: 20px; }
.hznSettingsUsageGrid > div { padding: 12px 7px; border: 1px solid var(--hzn-line); border-radius: 10px; background: var(--hzn-surface); text-align: center; }
.hznSettingsUsageGrid strong { display: block; font-size: 1.25rem; }
.hznSettingsUsageGrid span { display: block; margin-top: 2px; color: var(--hzn-muted); font-size: 0.64rem; }
.hznAlertSummary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.hznAlertSummary .hznStatTile { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.hznAlertSummary strong { font-size: 1.65rem; }
.hznAlertFilterSummary { gap: 12px; margin: 12px 0 8px; }
.hznAlertFilterSummary p { margin: 0; color: var(--hzn-muted); font-size: 0.78rem; }
.hznAlertFilterSummary strong { color: var(--hzn-ink); font-size: 0.9rem; }
.hznAlertFilterSummary .hznBtn { padding: 7px 11px; font-size: 0.72rem; }
.hznAlertList { display: grid; gap: 10px; }
.hznAlertCard { display: flex; width: 100%; align-items: center; gap: 14px; padding: 17px 18px; border: 1px solid var(--hzn-line); border-left-width: 4px; border-radius: var(--hzn-radius-card); background: var(--hzn-card); color: var(--hzn-ink); font: inherit; text-align: left; box-shadow: var(--hzn-shadow-card); cursor: pointer; appearance: none; transition: box-shadow 0.15s ease, transform 0.15s ease; }
.hznAlertCard:hover { box-shadow: var(--hzn-shadow-pop); transform: translateY(-1px); }
.hznAlertCard:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 2px; }
.hznAlertCard[hidden] { display: none !important; }
.hznAlertCritical { border-left-color: var(--hzn-coral); }
.hznAlertWarning { border-left-color: var(--hzn-warning); }
.hznAlertPositive { border-left-color: var(--hzn-good); }
.hznAlertIcon { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 11px; }
.hznAlertIcon img { width: 22px; height: 22px; border-radius: 5px; object-fit: contain; }
.hznDashboardAlerts { overflow: hidden; }


.hznDashboardAlertSkeleton { display: grid; margin-top: 20px; gap: 12px; }
.hznDashboardAlertLoading { margin-top: 10px; color: var(--hzn-muted); font-size: 0.78rem; }
.hznDashboardAlertSummary { gap: 16px; margin: 18px 0 12px; }
.hznDashboardAlertSummary p { margin: 0; color: var(--hzn-muted); font-size: 0.82rem; }
.hznDashboardAlertSummary p strong { color: var(--hzn-ink); font-size: 1rem; }
.hznDashboardAlertCounts { display: flex; align-items: center; justify-content: flex-end; gap: 7px; flex-wrap: wrap; }
.hznDashboardAlertCritical { color: var(--hzn-bad); background: color-mix(in srgb, var(--hzn-bad) 12%, var(--hzn-card)); }
.hznDashboardAlertWarning { color: var(--hzn-warning-fg); background: color-mix(in srgb, var(--hzn-warning) 20%, var(--hzn-card)); }
.hznDashboardAlertPositive { color: var(--hzn-good); background: var(--hzn-good-soft); }
.hznDashboardChangeGroups { display: grid; gap: 20px; }
.hznDashboardChangeGroup { min-width: 0; }
.hznDashboardChangeGroup + .hznDashboardChangeGroup { padding-top: 18px; border-top: 1px solid var(--hzn-line); }
.hznDashboardChangeGroupHead { gap: 12px; margin-top: 4px; }
.hznDashboardChangeGroupHead h3 { margin: 0; font-size: 0.92rem; }
.hznDashboardChangeGroupHead > span { display: grid; min-width: 26px; height: 26px; padding: 0 7px; place-items: center; border-radius: 999px; background: var(--hzn-surface); color: var(--hzn-muted); font-size: 0.72rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.hznDashboardAlertList { margin-top: 10px; }
.hznDashboardAlertList .hznAlertCard:nth-child(n + 5) { display: none; }
.hznDashboardAlertList .hznAlertCard { padding: 13px 14px; box-shadow: none; }
.hznDashboardAlertList .hznAlertIcon { flex-basis: 34px; width: 34px; height: 34px; }
.hznDashboardAlertList .hznAlertBody p { margin-top: 2px; font-size: 0.8rem; }


.hznDashboardAlertError p{ margin-top: 3px; color: var(--hzn-muted); font-size: 0.82rem; }
.hznDashboardAlertFooter { display: flex; justify-content: flex-end; margin-top: 14px; }
.hznDashboardAlertError { align-items: flex-start; margin-top: 18px; padding: 16px; border: 1px solid color-mix(in srgb, var(--hzn-coral) 24%, var(--hzn-line)); border-radius: 12px; background: color-mix(in srgb, var(--hzn-coral) 5%, var(--hzn-card)); gap: 4px; }
.hznDashboardAlertError .hznBtn { margin-top: 8px; }
.hznDashboardAlertError.hznPartialFailure { border-color: var(--hzn-warning); background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznDashboardAlertErrorActions { gap: 8px; margin-top: 8px; }
.hznAlertCritical .hznAlertIcon { background: #ffe1e1; color: #a11; }
.hznAlertWarning .hznAlertIcon { background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznAlertPositive .hznAlertIcon { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznAlertBody { min-width: 0; flex: 1; }
.hznAlertMeta { gap: 9px; margin-bottom: 4px; color: var(--hzn-muted); font-size: 0.66rem; }
.hznAlertSeverity { font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.hznAlertCritical .hznAlertSeverity { color: var(--hzn-coral); }
.hznAlertWarning .hznAlertSeverity { color: var(--hzn-warning-fg); }
.hznAlertPositive .hznAlertSeverity { color: var(--hzn-good); }
.hznAlertBody > strong { font-size: 0.9rem; }
.hznAlertBody > p { margin: 4px 0; color: var(--hzn-muted); font-size: 0.79rem; }
.hznAlertBody > small { color: var(--hzn-muted); font-size: 0.68rem; }
.hznAlertScore { flex: 0 0 64px; text-align: right; }
.hznAlertScore strong { display: block; font-size: 1.5rem; line-height: 1; }
.hznAlertScore span { display: block; margin-top: 4px; color: var(--hzn-muted); font-size: 0.66rem; }
.hznAlertScore small { display: block; margin-top: 3px; color: var(--hzn-muted); font-size: 0.56rem; line-height: 1.15; }
.hznAlertMethod { padding: 20px 24px; }
.hznAlertMethod > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 12px; }
.hznAlertMethod p { margin: 0; }
.hznAlertMethod strong, .hznAlertMethod span { display: block; }
.hznAlertMethod strong { font-size: 0.8rem; }
.hznAlertMethod span { margin-top: 4px; color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.4; }
.hznAlertFilterEmpty { margin-top: 10px; padding: 28px 18px; }
.hznAlertFilterEmpty > i { color: var(--hzn-muted); font-size: 1.8rem; }
.hznAlertFilterEmpty > p { margin: 8px 0 0; }
.hznSpendStats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.hznSpendStats .hznStatTile { display: flex; flex-direction: column; }
.hznSpendStats strong { margin-top: 5px; font-size: 1.5rem; font-variant-numeric: tabular-nums; }
.hznSpendStats small { margin-top: 2px; color: var(--hzn-muted); font-size: 0.68rem; }
.hznSpendGrid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr); gap: 18px; }
.hznSpendCard { padding: 24px; }
.hznSpendCard h2 { margin: 7px 0 5px; font-size: 1.35rem; }
.hznSpendServices { display: grid; gap: 16px; margin-top: 20px; }
.hznSpendServiceHead { gap: 12px; margin-bottom: 7px; font-size: 0.8rem; }
.hznSpendServiceHead span { color: var(--hzn-muted); font-variant-numeric: tabular-nums; }
.hznSpendService small { display: block; margin-top: 6px; color: var(--hzn-muted); font-size: 0.66rem; }
.hznSpendMethod ul { margin: 18px 0 0; padding: 0; list-style: none; display: grid; gap: 14px; }
.hznSpendMethod li { padding-left: 16px; border-left: 3px solid var(--hzn-data-soft); color: var(--hzn-muted); font-size: 0.76rem; line-height: 1.45; }
.hznSpendMethod strong { color: var(--hzn-ink); }
.hznSpendEmpty { min-height: 160px; }
.hznSpendRuns { padding: 0 20px; }
.hznSpendRun { display: grid; grid-template-columns: minmax(180px, 1fr) minmax(170px, 0.8fr) auto auto 80px; align-items: center; gap: 14px; min-height: 76px; padding: 12px 2px; border-bottom: 1px solid var(--hzn-line); cursor: pointer; }
.hznSpendRun:last-child { border-bottom: 0; }
.hznSpendRun:hover { background: color-mix(in srgb, var(--hzn-surface) 60%, transparent); }
.hznSpendRunBody, .hznSpendRunCalls { min-width: 0; }
.hznSpendRunBody strong, .hznSpendRunBody span, .hznSpendRunCalls strong, .hznSpendRunCalls span { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hznSpendRunBody strong, .hznSpendRunCalls strong { font-size: 0.78rem; }
.hznSpendRunBody span, .hznSpendRunCalls span, .hznSpendTime { margin-top: 3px; color: var(--hzn-muted); font-size: 0.66rem; }
.hznSpendRunCost { text-align: right; font-size: 0.9rem; font-variant-numeric: tabular-nums; }
.hznSpendRunCost small { display: block; margin-top: 3px; color: var(--hzn-muted); font-size: 0.62rem; font-weight: 600; white-space: nowrap; }
.hznRetentionPreview { padding: 24px; }
.hznRetentionPreviewHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.hznRetentionPreviewHead > div:first-child { min-width: 0; flex: 1; }
.hznRetentionPreviewHead h2 { margin: 6px 0 5px; font-size: 1.25rem; }
.hznRetentionPreviewHead .hznMuted { font-size: 0.82rem; }
.hznRetentionPreviewPill { flex: none; color: var(--hzn-data); background: color-mix(in srgb, var(--hzn-data) 12%, var(--hzn-card)); }
.hznRetentionPreviewGrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 20px; }
.hznRetentionPreviewGrid > div { padding: 14px; border: 1px solid var(--hzn-line); border-radius: 11px; background: var(--hzn-surface); }
.hznRetentionPreviewGrid span, .hznRetentionPreviewGrid small { display: block; color: var(--hzn-muted); font-size: 0.68rem; }
.hznRetentionPreviewGrid strong { display: block; margin: 5px 0 2px; color: var(--hzn-ink); font-size: 1.35rem; }
.hznRetentionDisclosure { display: flex; align-items: flex-start; gap: 8px; margin-top: 14px; color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.45; }
.hznRetentionDisclosure i { margin-top: 2px; color: var(--hzn-brand); }


.hznOwnerFields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 18px; }
.hznOwnerFields label:first-child { grid-column: 1 / -1; }
.hznOwnerFields label { display: flex; flex-direction: column; gap: 6px; }
.hznOwnerFields label > span { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznOwnerFields input, .hznOwnerFields select { width: 100%; min-width: 0; box-sizing: border-box; padding: 10px 11px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; }
.hznOwnerFormActions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 14px; }


.hznOwnerList { display: grid; gap: 10px; }
.hznOwnerCard { display: grid; grid-template-columns: 42px minmax(160px, 1fr) minmax(130px, 150px) auto; align-items: center; gap: 14px; padding: 16px 18px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznOwnerAvatar { width: 42px; height: 42px; border-radius: 12px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-weight: 900; }
.hznOwnerBody { min-width: 0; }
.hznOwnerBody > strong, .hznOwnerBody > p, .hznOwnerBody > small { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hznOwnerBody > strong { font-size: 0.86rem; }
.hznOwnerBody > p, .hznOwnerBody > small { margin: 3px 0 0; color: var(--hzn-muted); font-size: 0.7rem; }
.hznOwnerCounts { text-align: right; }
.hznOwnerCounts strong, .hznOwnerCounts span { display: block; }
.hznOwnerCounts strong { font-size: 0.78rem; }
.hznOwnerCounts span { color: var(--hzn-muted); font-size: 0.65rem; }


.hznPeopleList .hznPersonCard { border-width: 0 0 1px; border-radius: 0; box-shadow: none; }
.hznPeopleList .hznPersonCard:last-child { border-bottom: 0; }


.hznPeopleSearchLabel { display: grid; min-width: min(100%, 290px); gap: 6px; color: var(--hzn-muted); font: 800 0.7rem/1.2 var(--hzn-font-eyebrow); letter-spacing: 0.06em; text-transform: uppercase; }
.hznPeopleSearchLabel input { width: 100%; min-height: 40px; box-sizing: border-box; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: 400 0.84rem/1.2 var(--hzn-font-ui); letter-spacing: 0; text-transform: none; }
.hznPeopleSearchLabel input:focus { border-color: var(--hzn-brand); outline: 3px solid color-mix(in srgb, var(--hzn-brand) 20%, transparent); outline-offset: 1px; }
.hznPersonFilterActive { border-color: var(--hzn-brand); background: var(--hzn-brand); color: var(--hzn-brand-fg); }
.hznPeopleNoMatch { margin-top: 12px; }


.hznPlacePeople { padding: 20px; }
.hznPlacePeopleHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.hznPlacePeopleHead > div { min-width: 0; }
.hznPlacePeopleHead h2 { margin: 5px 0 2px; font-size: 1.1rem; }
.hznPlacePeopleHead p { margin: 0; font-size: 0.75rem; }
.hznPlacePeopleChoices { margin-top: 16px; }

.hznPlacePeopleGroup { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.hznPlacePeopleGroup + .hznPlacePeopleGroup { margin-top: 8px; }
.hznPlacePersonChoice { gap: 12px; min-width: 0; padding: 11px 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); cursor: pointer; }
.hznPlacePersonChoice > span { min-width: 0; }
.hznPlacePersonChoice strong, .hznPlacePersonChoice small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznPlacePersonChoice strong { font-size: 0.78rem; }
.hznPlacePersonChoice small { margin-top: 2px; color: var(--hzn-muted); font-size: 0.68rem; }

.hznPlaceOwner { display: grid; grid-template-columns: minmax(180px, 1fr) auto; align-items: center; gap: 14px 20px; padding: 18px 20px; }
.hznPlaceOwner h2 { margin: 5px 0 2px; font-size: 1.1rem; }
.hznPlaceOwner p { margin: 0; font-size: 0.75rem; }
.hznPlaceOwner form { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.hznPlaceOwner select { min-width: 210px; max-width: 320px; box-sizing: border-box; overflow: hidden; padding: 8px 36px 8px 10px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; font-size: 0.78rem; text-overflow: ellipsis; white-space: nowrap; }
.hznPlaceOwner .hznImportResult { grid-column: 1 / -1; margin-top: 0; }

@media (max-width: 800px) {
 .hznHarmonySync { grid-template-columns: 54px minmax(0, 1fr); }
 .hznHarmonySyncActions { grid-column: 2; justify-content: flex-start; }
 .hznHarmonySync .hznImportResult { grid-column: 1 / -1; }
 .hznImportGrid { grid-template-columns: 1fr; }
 .hznImportConflictCompare { grid-template-columns: 1fr; }
 .hznImportConflictArrow { transform: rotate(90deg); }
 .hznIntegrationGrid { grid-template-columns: 1fr; }
 .hznIntegrationList { grid-template-columns: 1fr; }
 .hznSettingsGrid{ grid-template-columns: 1fr; }
 .hznSettingsBrandControls { grid-template-columns: 1fr; }
 .hznPublicProfileRegionGrid { grid-template-columns: 1fr; }
 .hznPublicProfileManagementOptions { grid-template-columns: 1fr; }
 .hznPublicProfileManagementOptions label:last-child { grid-column: 1; }
 .hznBillingGrid { grid-template-columns: 1fr; }
 .hznPlanSuccess { grid-template-columns: 1fr; }
 .hznPlanSuccessBenefits { grid-template-columns: 1fr; }
 .hznPlanOptions { grid-template-columns: 1fr; }
 .hznAlertSummary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .hznAlertMethod > div { grid-template-columns: 1fr; }
 .hznSpendStats { grid-template-columns: repeat(2, 1fr); }
 .hznSpendGrid { grid-template-columns: 1fr; }
 .hznSpendRun { grid-template-columns: minmax(160px, 1fr) minmax(150px, 0.8fr) auto; }
 .hznSpendRun .hznPill, .hznSpendTime { display: none; }
 .hznRetentionPreviewGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

 .hznPlaceOwner { grid-template-columns: 1fr; }
 .hznPlaceOwner form { justify-content: flex-start; }
 .hznPlacePeopleGroup { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
 .hznHarmonySync { grid-template-columns: 1fr; }
 .hznHarmonySyncActions, .hznHarmonySync .hznImportResult { grid-column: 1; }
 .hznImportFields { grid-template-columns: 1fr; }
 .hznIntegrationFields { grid-template-columns: 1fr; }
 .hznSettingsTabs { width: 100%; box-sizing: border-box; }
 .hznSettingsTab { flex: 1; justify-content: center; padding: 8px 6px; }
 .hznSettingsTab i { display: none; }
 .hznSettingsSectionIntro, .hznPublicProfileIntro, .hznPublicProfileFieldHead, .hznPublicProfileActions { align-items: stretch; flex-direction: column; }
 .hznSettingsSectionAside { align-self: flex-start; margin-left: 0; }
 .hznPublicProfileIntroToggle, .hznPublicProfileGoogleRatingToggle { align-self: flex-start; margin-left: 0; }
 .hznPublicProfileActions .hznBtn { width: 100%; justify-content: center; }
 .hznBillingCardHead { align-items: flex-start; }
 .hznBillingActions { align-items: stretch; flex-direction: column-reverse; }
 .hznBillingActions .hznBtn { width: 100%; justify-content: center; }
 .hznSettingsFields { grid-template-columns: 1fr; }
 .hznAccountFields .hznFieldFull,
 .hznAccountFields .hznFieldHalf,
 .hznAccountFields .hznFieldCity,
 .hznAccountFields .hznFieldState,
 .hznAccountFields .hznFieldZip { grid-column: 1; }
 .hznSettingsSave { align-items: flex-start; flex-direction: column; }
 .hznSettingsSaveActions { width: 100%; flex-wrap: wrap; justify-content: flex-start; }
 .hznTeamHead { flex-direction: column; }
 .hznTeamMember { grid-template-columns: 42px minmax(0, 1fr) auto; }
 .hznTeamRole { grid-column: 2 / -1; }
 .hznTeamActions { grid-column: 2 / -1; justify-content: flex-start; }
 .hznLogoUpload { grid-template-columns: 1fr; }
 .hznLogoCurrent { width: 100%; }
 .hznLogoUploadBody form { align-items: stretch; flex-direction: column; }
 .hznLogoUploadBody input[type="file"] { width: 100%; }
 .hznAlertSummary { grid-template-columns: 1fr; }
 .hznAlertFilterSummary { align-items: flex-start; flex-direction: column; }
 .hznAlertCard { align-items: flex-start; flex-wrap: wrap; }
 .hznAlertBody { min-width: calc(100% - 60px); }
 .hznAlertScore { margin-left: 52px; text-align: left; }
 .hznDashboardAlertSummary { align-items: flex-start; flex-direction: column; }
 .hznDashboardAlertCounts { justify-content: flex-start; }
 .hznDashboardAlertList .hznAlertScore { margin-left: 47px; }
 .hznSpendStats { grid-template-columns: 1fr; }
 .hznSpendRun { grid-template-columns: 1fr auto; }
 .hznSpendRunCalls { display: none; }
 .hznRetentionPreviewHead { flex-direction: column; }
 .hznRetentionPreviewGrid { grid-template-columns: 1fr; }
 .hznOwnerFields { grid-template-columns: 1fr; }
 .hznOwnerFields label:first-child { grid-column: auto; }
 .hznOwnerCard { grid-template-columns: 42px minmax(0, 1fr) auto; }
 .hznPeopleList .hznPersonCard { grid-template-columns: 42px minmax(0, 1fr) auto; align-items: start; gap: 10px 12px; padding: 14px 16px; }
 .hznPeopleList .hznPersonCard .hznOwnerAvatar { grid-row: 1 / span 2; }
 .hznPeopleList .hznPersonCard .hznOwnerBody,
 .hznPeopleList .hznPersonCard .hznOwnerCounts { grid-column: 2; text-align: left; }
 .hznPeopleList .hznPersonCard .hznOwnerBody > * { white-space: normal; overflow: visible; text-overflow: clip; overflow-wrap: anywhere; }
 .hznPeopleList .hznPersonCard [data-label] { display: grid; grid-template-columns: minmax(6.5rem, 38%) minmax(0, 1fr); gap: 10px; align-items: baseline; }
 .hznPeopleList .hznPersonCard [data-label]::before { color: var(--hzn-muted); content: attr(data-label); font: 700 0.62rem/1.25 var(--hzn-font-eyebrow); letter-spacing: 0.07em; text-transform: uppercase; }
 .hznPeopleList .hznPersonCard .hznPersonEdit { grid-column: 3; grid-row: 1; justify-self: end; }
 .hznOwnerEdit { grid-column: 2 / -1; justify-self: start; }


 .hznPlacePeopleHead { flex-direction: column; }
 .hznPlaceOwner select { width: 100%; min-width: 0; max-width: none; }
 .hznImportHistoryRow { align-items: flex-start; flex-wrap: wrap; }
 .hznImportHistoryRow .hznListBody { min-width: calc(100% - 60px); }
}


@media (min-width: 900px) {


}


.hznActIcon { flex: none; width: 34px; height: 34px; border-radius: 10px; font-size: 0.95rem; }
.hznActScan { background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznActReport { background: var(--hzn-accent-soft); color: var(--hzn-accent); }
.hznActScoreV { font-size: 1.1rem; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1; }
.hznActTime { width: 52px; text-align: right; }


.hznBrightScore { font-size: 2.6rem; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }


/* Signed-in dashboard outcome hierarchy */
.hznVisuallyHidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }


.hznPortfolioMarketingBody { display: grid; min-width: 0; gap: 4px; }
.hznPortfolioMarketingBody .hznEyebrow, .hznPortfolioMarketingBody .hznDisplay, .hznPortfolioMarketingBody .hznMuted { margin: 0; }
.hznPortfolioMarketingBody .hznDisplay { font-size: 1.5rem; }
.hznPortfolioMarketingBody .hznMuted { font-size: 0.85rem; }
.hznPortfolioGradeChips { display: grid; grid-template-columns: repeat(5, minmax(68px, 1fr)); gap: 8px; min-width: 0; }
.hznPortfolioGradeChip { min-width: 0; padding: 10px 8px; border: 1px solid var(--hzn-line); border-radius: 10px; background: var(--hzn-surface); text-align: center; }
.hznPortfolioGradeChip strong, .hznPortfolioGradeChip span { display: block; }
.hznPortfolioGradeChip strong { color: var(--hzn-ink); font-size: 1.18rem; font-variant-numeric: tabular-nums; line-height: 1; }
.hznPortfolioGradeChip span { margin-top: 5px; color: var(--hzn-muted); font-size: 0.62rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }


.hznTrendPoint { fill: var(--hzn-brand); stroke: var(--hzn-card); stroke-width: 3; cursor: help; transition: r 0.14s ease, stroke-width 0.14s ease; }
.hznTrendPoint:hover, .hznTrendPoint:focus { r: 7; stroke-width: 4; }
.hznTrendPoint:focus-visible { outline: none; stroke: var(--hzn-ink); }


.hznLeasingMomentum {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 16px;
 margin-top: 20px;
}

.hznVacancyActions,
.hznVacancyLeadRefiner > div{
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 12px;
}


.hznVacancyCards { display: grid; gap: 12px; margin-top: 14px; }
.hznVacancyCard {
 position: relative;
 min-width: 0;
 padding: 16px;
 overflow: hidden;
 border: 1px solid var(--hzn-line);
 border-left: 4px solid var(--hzn-brand);
 border-radius: 12px;
 background: var(--hzn-card);
 box-shadow: var(--hzn-shadow-card);
}
.hznVacancyCard.hznDataRow { display: block; width: auto; gap: 0; padding: 16px; border-bottom: 1px solid var(--hzn-line); }

.hznVacancyPlace { display: grid; min-width: 0; gap: 3px; }
.hznVacancyPlace a {
 overflow: hidden;
 color: var(--hzn-ink);
 font-size: 0.86rem;
 font-weight: 800;
 line-height: 1.3;
 text-decoration: none;
 text-overflow: ellipsis;
 white-space: nowrap;
}
.hznVacancyPlace a:hover { color: var(--hzn-brand); }
.hznVacancyPlace span { color: var(--hzn-muted); font-size: 0.64rem; font-weight: 700; text-transform: uppercase; }
.hznVacancyDay {
 flex: 0 0 auto;
 padding: 5px 8px;
 border-radius: 999px;
 background: var(--hzn-data-soft);
 color: var(--hzn-brand);
 font-size: 0.68rem;
 font-weight: 850;
 font-variant-numeric: tabular-nums;
}
.hznVacancyMeta { align-items: flex-end; flex: 0 0 auto; gap: 5px; }
.hznVacancyState { color: var(--hzn-muted); font: 700 0.6rem/1.2 var(--hzn-font-eyebrow); letter-spacing: 0.06em; text-align: right; text-transform: uppercase; }
.hznVacancyDiagnosis { margin: 13px 0 0; color: var(--hzn-ink); font-size: 0.82rem; font-weight: 700; line-height: 1.45; }
.hznVacancyEvidence { gap: 6px; margin-top: 12px; }
.hznVacancyEvidence > span {
 padding: 5px 7px;
 border: 1px solid var(--hzn-line);
 border-radius: 7px;
 background: var(--hzn-surface);
 color: var(--hzn-muted);
 font-size: 0.63rem;
 font-variant-numeric: tabular-nums;
}
.hznVacancyEvidence > span strong { color: var(--hzn-ink); }
.hznVacancyEvidenceDate { margin: 7px 0 0; color: var(--hzn-muted); font-size: 0.65rem; }
.hznVacancyRentChange {
 margin: 12px 0 0;
 padding: 9px 10px;
 border-radius: 9px;
 background: var(--hzn-warning-soft);
 color: var(--hzn-warning-fg);
 font-size: 0.72rem;
 line-height: 1.4;
}
.hznVacancyRecommendation { margin-top: 13px; border-top: 1px solid var(--hzn-line); }
.hznVacancyRecommendation summary { padding: 11px 0 0; color: var(--hzn-brand); font-size: 0.73rem; font-weight: 800; cursor: pointer; }
.hznVacancyRecommendation p { margin: 9px 0 0; color: var(--hzn-ink); font-size: 0.78rem; line-height: 1.48; }
.hznVacancyRecommendation small { display: block; margin-top: 7px; color: var(--hzn-muted); font-size: 0.68rem; line-height: 1.4; }
.hznVacancyLeadRefiner { margin-top: 13px; padding: 12px; border-radius: 10px; background: var(--hzn-data-soft); }
.hznVacancyLeadRefiner label { display: block; color: var(--hzn-ink); font-size: 0.7rem; line-height: 1.42; }
.hznVacancyLeadRefiner > div { justify-content: flex-start; margin-top: 9px; }
.hznVacancyLeadRefiner input {
 width: 112px;
 min-width: 0;
 box-sizing: border-box;
 padding: 8px 9px;
 border: 1px solid var(--hzn-line);
 border-radius: 8px;
 background: var(--hzn-card);
 color: var(--hzn-ink);
 font: inherit;
}
.hznVacancyActions { justify-content: flex-start; flex-wrap: wrap; margin-top: 13px; }
.hznVacancyActions .hznBtn { min-height: 32px; }
.hznVacancyEmpty,
.hznVacancyAllClear { display: flex; align-items: flex-start; gap: 10px; padding: 14px; border: 1px dashed var(--hzn-line); border-radius: 10px; background: var(--hzn-card); color: var(--hzn-good); }
.hznVacancyAllClear { margin-top: 14px; background: var(--hzn-good-soft); }
.hznVacancyEmpty p,
.hznVacancyAllClear p { display: grid; gap: 3px; margin: 0; color: var(--hzn-ink); font-size: 0.75rem; }
.hznVacancyEmpty span,
.hznVacancyAllClear span { color: var(--hzn-muted); font-size: 0.68rem; line-height: 1.4; }

.hznVacancySeverityDay7 { border-left-color: var(--hzn-unknown); }
.hznVacancySeverityDay14 { border-left-color: var(--hzn-warning); }
.hznVacancySeverityDay21 { border-left-color: #ed8b24; }
.hznVacancySeverityDay28 { border-left-color: var(--hzn-bad); box-shadow: 0 0 0 1px color-mix(in srgb, var(--hzn-bad) 20%, transparent), var(--hzn-shadow-card); }
.hznVacancySeverityWatching { border-left-color: var(--hzn-unknown); }


@media (max-width: 900px) {


 .hznLeasingMomentum { grid-template-columns: 1fr; }
 .hznVacancyCard { width: 100%; box-sizing: border-box; }
}

@media (max-width: 620px) {


 .hznPortfolioGradeChips{ grid-template-columns: repeat(3, minmax(0, 1fr)); }


 .hznVacancyCard { padding: 14px; }

 .hznVacancyMeta { align-items: flex-start; flex-basis: 100%; flex-direction: row; }
 .hznVacancyState { text-align: left; }
 .hznVacancyActions { align-items: stretch; flex-direction: column; }
 .hznVacancyActions .hznBtn { justify-content: center; width: 100%; }
 .hznVacancyLeadRefiner > div { align-items: stretch; flex-direction: column; }
 .hznVacancyLeadRefiner input { width: 100%; }


}

.hznVisibilitySummary { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 20px; }
.hznVisMetric { min-width: 0; padding: 16px; background: var(--hzn-card); border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); box-shadow: var(--hzn-shadow-card); }
.hznVisMetricValue { margin-top: 4px; font-size: 1.85rem; font-weight: 800; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; }
.hznVisMetricNote { margin-top: 4px; font-size: 0.76rem; line-height: 1.35; color: var(--hzn-muted); }
.hznVisMetricSub { margin-top: 2px; font-size: 0.94rem; font-weight: 700; color: var(--hzn-ink); font-variant-numeric: tabular-nums; }
.hznOpportunityValue .hznOpportunityMoney { font-weight: 700; color: var(--hzn-ink); font-variant-numeric: tabular-nums; }
.hznVisFoundValue { color: #147d64; }
.hznVisAbsentValue { color: var(--hzn-bad); }
.hznVisUnknownValue { color: var(--hzn-unknown); }
.hznVisGuideTitle { margin: 0; font-size: 1rem; }
.hznVisGuideList { display: grid; gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
.hznVisGuideItem { display: grid; grid-template-columns: 18px minmax(0, 1fr); align-items: start; gap: 8px; color: var(--hzn-muted); font-size: 0.82rem; line-height: 1.4; }
.hznVisGuideItem > i { margin-top: 2px; text-align: center; }
.hznVisGuideItem strong { color: var(--hzn-ink); }
.hznVisGuideNote { margin: 10px 0 0; font-size: 0.78rem; }
.hznVisLegend { gap: 14px; flex: none; }
.hznVisLegendItem { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; font-size: 0.78rem; font-weight: 700; color: var(--hzn-muted); }
.hznVisLegendFound { color: #147d64; }
.hznVisLegendAbsent { color: var(--hzn-bad); }
.hznVisLegendUnknown { color: var(--hzn-unknown); }
.hznMatrixList { gap: 16px; margin-top: 20px; }
.hznMatrixPlace { padding: 0; overflow: hidden; }
.hznMatrixPlaceHead { display: grid; grid-template-columns: minmax(230px, 1fr) auto auto auto auto; align-items: center; gap: 14px; padding: 18px 20px; border-bottom: 1px solid var(--hzn-line); }
.hznMatrixPlaceLink { min-width: 0; color: inherit; text-decoration: none; cursor: pointer; }
.hznMatrixPlaceLink:hover .hznMatrixAddr { color: inherit; }
.hznMatrixAddr { overflow: hidden; font-size: 1rem; font-weight: 800; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap; }
.hznMatrixMeta { overflow: hidden; margin-top: 4px; color: var(--hzn-muted); font-size: 0.78rem; text-overflow: ellipsis; white-space: nowrap; }
.hznMatrixPlaceStats { gap: 6px; justify-content: flex-end; }

.hznNetworkAbsentPill { background: var(--hzn-bad-soft); color: var(--hzn-bad); }
.hznNetworkUnknownPill { background: var(--hzn-unknown-soft); color: var(--hzn-unknown); }
.hznMatrixScore { min-width: 46px; }
.hznMatrixScoreValue { font-size: 1.35rem; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.hznMatrixScoreGrade { margin-top: 3px; font-size: 0.64rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; }
.hznMatrixScoreSource { margin-top: 4px; color: var(--hzn-muted); font-size: 0.58rem; font-weight: 700; line-height: 1.1; text-align: center; text-transform: uppercase; letter-spacing: 0.03em; }
.hznMatrixActions { gap: 6px; }
.hznPlaceCoverage.hznMatrixPlaceCoverage { margin-top: 0; padding: 18px 20px 20px; }
.hznNetworkCell { display: flex; align-items: center; gap: 10px; min-width: 0; min-height: 44px; padding: 10px 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); }
.hznNetworkCellLink { color: inherit; text-decoration: none; transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; }
.hznNetworkCellLink:hover { color: inherit; border-color: var(--hzn-brand); box-shadow: 0 3px 10px rgba(1, 102, 157, 0.12); transform: translateY(-1px); }
.hznNetworkCellLink:focus-visible { outline: 3px solid rgba(1, 102, 157, 0.34); outline-offset: 2px; }
.hznNetworkLogo { width: 26px; height: 26px; flex: none; border-radius: 6px; object-fit: contain; background: #fff; box-shadow: 0 0 0 1px rgba(20, 42, 56, 0.08); }
.hznNetworkIcon { flex: none; margin-left: auto; font-size: 1rem; }
.hznNetworkText { flex: 1; min-width: 0; }
.hznNetworkName { overflow: hidden; font-size: 0.82rem; font-weight: 700; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.hznNetworkState { margin-top: 2px; font-size: 0.68rem; line-height: 1.2; color: var(--hzn-muted); }
.hznNetworkImpact { gap: 3px; margin-top: 7px; cursor: help; }
.hznNetworkImpactTrack { display: block; width: 100%; height: 4px; overflow: hidden; border-radius: 999px; background: rgba(1, 102, 157, 0.14); }
.hznNetworkImpactFill { display: block; height: 100%; border-radius: inherit; background: var(--hzn-brand); }
.hznNetworkReachTrack { background: rgba(251, 176, 64, 0.2); }
.hznNetworkReachFill { background: var(--hzn-accent); }
.hznNetworkFound { background: #f0faf6; border-color: #ccebdd; }
.hznNetworkFound .hznNetworkIcon { color: #147d64; }
.hznNetworkAbsent { background: var(--hzn-bad-soft); border-color: color-mix(in srgb, var(--hzn-bad) 28%, var(--hzn-line)); }
.hznNetworkAbsent .hznNetworkIcon { color: var(--hzn-bad); }
.hznNetworkUnknown { background: var(--hzn-unknown-soft); }
.hznNetworkUnknown .hznNetworkIcon { color: var(--hzn-unknown); }
.hznVisTrendCard { padding: 24px; }
.hznVisTrendHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.hznVisTrendReadout { display: flex; align-items: baseline; gap: 10px; margin-top: 8px; }
.hznVisTrendReadout > strong { color: var(--hzn-brand); font-size: 2rem; line-height: 1; }
.hznVisTrendReadout > span { font-size: 0.78rem; font-weight: 800; }
.hznVisTrendUp { color: #147d64; }
.hznVisTrendDown { color: var(--hzn-coral); }
.hznVisTrendFlat { color: var(--hzn-muted); }
.hznVisTrendHead .hznMuted { margin: 6px 0 0; font-size: 0.82rem; }
.hznVisTrendTabs { display: inline-flex; padding: 4px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-surface); }
.hznVisTrendTab { padding: 7px 11px; border: 0; border-radius: 9px; background: transparent; color: var(--hzn-muted); font: inherit; font-size: 0.75rem; font-weight: 700; cursor: pointer; }
.hznVisTrendTabActive { background: var(--hzn-card); color: var(--hzn-brand); box-shadow: var(--hzn-shadow-card); }
.hznVisTrendPlot { position: relative; margin-top: 22px; padding-left: 28px; }
.hznVisTrendPlot svg { display: block; width: 100%; height: auto; overflow: visible; }
.hznVisTrendGrid { stroke: var(--hzn-line); stroke-width: 1; stroke-dasharray: 4 7; }
.hznVisTrendAxis { position: absolute; left: 0; color: var(--hzn-muted); font: 500 0.65rem/1 "IBM Plex Mono", monospace; transform: translateY(-50%); }
.hznVisTrendAxisTop { top: 8.3%; }
.hznVisTrendAxisMid { top: 50%; }
.hznVisTrendAxisBottom { top: 91.7%; }
.hznVisTrendDates { display: flex; justify-content: space-between; gap: 12px; margin-top: 8px; color: var(--hzn-muted); font-size: 0.7rem; }
.hznVisTrendEmpty { padding: 26px; }
.hznVisTrendEmpty h2 { margin: 7px 0 5px; font-size: 1.25rem; }

@media (max-width: 920px) {
 .hznVisibilitySummary { grid-template-columns: repeat(2, 1fr); }
 .hznMatrixPlaceHead { grid-template-columns: minmax(220px, 1fr) auto auto; }
 .hznMatrixPlaceStats { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; }
 .hznMatrixActions { grid-column: 2; grid-row: 1; }
 .hznMatrixScore { grid-column: 3; grid-row: 1; }
 .hznMatrixPlaceHead .hznVisTime { grid-column: 3; grid-row: 2; justify-self: end; }
}

@media (max-width: 620px) {
 .hznVisTrendHead { flex-direction: column; }
 .hznVisTrendTabs { width: 100%; overflow-x: auto; }
 .hznVisTrendTab { flex: 1 0 auto; }
 .hznMatrixPlaceHead { display: flex; align-items: flex-start; flex-wrap: wrap; }
 .hznMatrixPlaceLink { flex: 1 1 100%; }
 .hznMatrixPlaceStats { justify-content: flex-start; order: 2; }
 .hznMatrixActions { order: 2; }
 .hznMatrixPlaceHead .hznVisTime { margin-left: auto; order: 3; }
 .hznMatrixScore { margin-left: auto; order: 4; }
 .hznPlaceCoverage.hznMatrixPlaceCoverage { padding: 14px; }
}

@media (max-width: 430px) {
 .hznVisibilitySummary { grid-template-columns: 1fr; }
}

.hznAuditPageHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; }
.hznAuditSelector { gap: 12px; margin-top: 18px; padding: 12px 16px; }
.hznAuditSelector label { flex: none; color: var(--hzn-muted); font-size: 0.75rem; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.hznAuditSelector select { min-width: 0; max-width: 540px; flex: 1; padding: 9px 34px 9px 11px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); color: var(--hzn-ink); font: inherit; font-size: 0.88rem; }
.hznAuditOverview { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 28px; align-items: center; padding: 24px 30px; }
.hznAuditOverviewWithPhoto { grid-template-columns: minmax(190px, 240px) auto minmax(0, 1fr); }
.hznAuditOverviewPhoto { overflow: hidden; width: 100%; margin: 0; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); box-shadow: var(--hzn-shadow-card); }
.hznAuditOverviewPhoto img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.hznAuditOverviewCopy { min-width: 0; }
.hznAuditOverviewCopy h2 { margin: 5px 0 4px; font-size: 2.25rem; line-height: 1; }
.hznAuditOverviewCopy > .hznMuted { margin: 0; font-size: 0.9rem; }
.hznAuditOverviewMeta { gap: 14px; margin-top: 17px; color: var(--hzn-muted); font-size: 0.78rem; }
.hznAuditOverviewMeta > span { display: inline-flex; align-items: center; gap: 6px; }
.hznAuditOverviewMeta > span + * { padding-left: 14px; border-left: 1px solid var(--hzn-line); }
.hznAuditOverviewRescan { padding: 0; border: 0; background: transparent; color: var(--hzn-brand); font: inherit; font-size: 0.78rem; font-weight: 800; cursor: pointer; }
.hznAuditOverviewRescan:hover { color: var(--hzn-data); }
.hznAuditOverviewLinks { gap: 12px; margin-top: 13px; }
.hznAuditOverviewLinks a { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 700; text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--hzn-muted) 38%, transparent); text-underline-offset: 3px; cursor: pointer; }
.hznAuditOverviewLinks a:hover { color: var(--hzn-brand); }
.hznAuditPillarCard { overflow: hidden; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznAuditPillarTabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: hidden; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); }
.hznAuditPillarTab { display: flex; min-width: 0; align-items: center; justify-content: center; gap: 12px; padding: 17px 20px; border: 0; background: transparent; color: var(--hzn-muted); font: inherit; text-align: left; cursor: pointer; }
.hznAuditPillarTab + .hznAuditPillarTab { border-left: 1px solid var(--hzn-line); }
.hznAuditPillarTab > i { color: var(--hzn-brand); font-size: 1.1rem; }
.hznAuditPillarTab > span { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.hznAuditPillarTab strong { color: var(--hzn-ink); font-size: 1rem; }
.hznAuditPillarTab small { font-size: 0.78rem; }
.hznAuditPillarTab:hover { background: color-mix(in srgb, var(--hzn-brand) 4%, var(--hzn-card)); color: var(--hzn-brand); }
.hznAuditPillarTab:focus-visible { position: relative; z-index: 1; outline: 3px solid color-mix(in srgb, var(--hzn-data) 32%, transparent); outline-offset: -3px; }
.hznAuditPillarTabActive { background: var(--hzn-card); color: var(--hzn-brand); box-shadow: inset 0 -4px 0 var(--hzn-brand); }
.hznScoreFramework { overflow: hidden; background: var(--hzn-card); }
.hznScoreFrameworkIntro { margin: 0; padding: 21px 26px; border-bottom: 1px solid var(--hzn-line); color: var(--hzn-muted); font-size: 0.92rem; }
.hznScoreFrameworkIntro strong { color: var(--hzn-ink); }
.hznScoreFrameworkGrid { display: grid; grid-template-columns: minmax(0, 1fr); }
.hznScoreFrameworkColumn { min-width: 0; padding: 24px 26px 0; }
.hznScoreFrameworkColumn[hidden] { display: none; }
.hznScoreFramework[data-hzn-audit-active="coverage"] [data-hzn-audit-summary="quality"],
.hznScoreFramework[data-hzn-audit-active="quality"] [data-hzn-audit-summary="coverage"] { display: none; }
.hznScoreFrameworkHead { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 20px; align-items: start; padding-bottom: 19px; border-bottom: 1px solid var(--hzn-line); }
.hznScoreFrameworkHead .hznEyebrow { margin: 0; color: var(--hzn-brand); font-weight: 800; }
.hznScoreFrameworkHead h2 { margin: 7px 0 0; font-size: 1.32rem; }
.hznScoreFrameworkTotal { display: grid; grid-template-columns: 24px auto; grid-template-areas: 'impact score'; gap: 12px; align-items: center; justify-items: end; text-align: right; }
.hznScoreFrameworkTotal > strong { grid-area: score; font-size: 2rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznScoreFrameworkTotal > strong small { color: var(--hzn-muted); font-size: 0.75rem; font-weight: 500; }
.hznScoreFrameworkImpact, .hznPlacePillarImpact { display: block; grid-area: impact; }
.hznImpactIcon { display: block; width: 24px; height: 24px; object-fit: contain; cursor: help; }
.hznScoreFrameworkRows { flex: 1; }
.hznScoreFrameworkRow { display: grid; grid-template-columns: 42px minmax(0, 1fr) 112px; gap: 12px 15px; align-items: center; min-height: 116px; width: 100%; padding: 18px 0 14px; border-bottom: 1px solid var(--hzn-line); color: var(--hzn-ink); text-align: left; }
.hznScoreFrameworkRow:last-child { border-bottom: 0; }
.hznScoreFrameworkIcon { width: 42px; height: 42px; align-self: center; border-radius: 12px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1rem; }
.hznAuditOverviewRescan:focus-visible{ outline: 3px solid color-mix(in srgb, var(--hzn-data) 32%, transparent); outline-offset: 3px; }
.hznScoreFrameworkRowCopy { min-width: 0; gap: 6px; }
.hznScoreFrameworkRowCopy > strong { font-size: 0.92rem; }
.hznScoreFrameworkRowCopy > small { max-width: 380px; color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.45; text-wrap: pretty; }
.hznScoreFrameworkMeasure { min-width: 0; gap: 10px; }
.hznScoreFrameworkMeasure > strong { color: var(--hzn-score-color, var(--hzn-brand)); font-size: 1.55rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznScoreFrameworkMeasure > strong small { color: var(--hzn-muted); font-size: 0.68rem; font-weight: 500; }
.hznScoreFrameworkNotMeasured { color: var(--hzn-muted); }
.hznScoreFrameworkMeter { display: block; width: 100%; height: 6px; overflow: hidden; border-radius: 999px; background: var(--hzn-surface); }
.hznScoreFrameworkMeter > i { display: block; height: 100%; border-radius: inherit; background: var(--hzn-score-color, var(--hzn-brand)); }


.hznScoreFrameworkFooter { gap: 16px; min-height: 68px; margin-top: auto; padding: 14px 0; }
.hznScoreFrameworkFooter > span { display: inline-flex; align-items: center; gap: 8px; color: var(--hzn-muted); font-size: 0.72rem; font-weight: 700; }
.hznScoreFrameworkFooter > span i { color: var(--hzn-brand); }
.hznScoreFrameworkContinuation { text-align: right; }
.hznAuditHero { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(250px, 0.8fr); gap: 18px; }
.hznAuditScorecard { position: relative; gap: 28px; }
.hznAuditGaugeWrap { flex: none; gap: 8px; }
.hznAuditGrade { font-size: 0.82rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; }
.hznAuditScoreCopy { min-width: 0; }
.hznAuditScoreCopy h2 { margin: 5px 0 7px; font-size: 1.65rem; line-height: 1.15; }
.hznAuditScoreCopy > .hznMuted { margin: 0; font-size: 0.88rem; }
.hznAuditWeights { gap: 8px; margin-top: 17px; }
.hznAuditWeights span { padding: 7px 10px; border-radius: 9px; background: var(--hzn-surface); color: var(--hzn-muted); font-size: 0.75rem; }
.hznAuditWeights strong { color: var(--hzn-ink); }
.hznCompanyAuditTiming { position: absolute; top: 20px; right: 22px; z-index: 1; display: flex; align-items: flex-end; flex-direction: column; gap: 7px; }
.hznCompanyAuditAsOf { padding: 6px 10px; border-radius: 999px; background: var(--hzn-surface); color: var(--hzn-ink); font-size: 0.72rem; font-weight: 800; }
.hznCompanyAuditCountdown { color: var(--hzn-muted); font-size: 0.72rem; }
.hznCompanyScoreBuild { position: relative; width: 100%; min-height: 77px; margin-top: 17px; }
.hznCompanyContributionHead { position: absolute; top: 0; left: 0; display: flex; width: var(--hzn-company-score-build-width, 100%); align-items: baseline; justify-content: space-between; gap: 14px; margin-bottom: 8px; }
.hznCompanyContributionHead > span { color: var(--hzn-muted); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.hznCompanyContributionHead > strong { color: var(--hzn-ink); font-size: 0.78rem; white-space: nowrap; }
.hznCompanyContributionBar { position: absolute; top: 23px; left: 0; display: flex; width: var(--hzn-company-score-build-width, 100%); height: 54px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-surface); }
.hznCompanyContributionSegment { position: relative; min-width: 0; flex: 0 0 calc(var(--hzn-company-contribution-share, 0) * 1%); overflow: hidden; border-right: 1px solid var(--hzn-card); background-color: color-mix(in srgb, var(--hzn-company-contribution-color, var(--hzn-brand)) 12%, var(--hzn-card)); background-image: repeating-linear-gradient(135deg, transparent 0, transparent 6px, color-mix(in srgb, var(--hzn-company-contribution-color, var(--hzn-brand)) 18%, transparent) 6px, color-mix(in srgb, var(--hzn-company-contribution-color, var(--hzn-brand)) 18%, transparent) 8px); }
.hznCompanyContributionSegment:last-child { border-right: 0; }
.hznCompanyContributionSegment > i { position: absolute; inset: 0 auto 0 0; width: calc(var(--hzn-company-contribution-fill, 0) * 1%); background: color-mix(in srgb, var(--hzn-company-contribution-color, var(--hzn-brand)) 32%, var(--hzn-card)); }
.hznCompanyContributionLabel { position: relative; z-index: 1; display: grid; min-width: 0; gap: 4px; place-items: center; padding: 4px 2px; color: var(--hzn-ink); line-height: 1; text-align: center; }
.hznCompanyContributionLabel > span { max-width: 100%; font-size: 0.62rem; overflow-wrap: anywhere; }
.hznCompanyContributionLabel > small { font-size: 0.72rem; font-variant-numeric: tabular-nums; }
.hznPillarGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.hznPillarCard { min-width: 0; padding: 20px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); color: inherit; text-decoration: none; box-shadow: var(--hzn-shadow-card); }
.hznPillarCoverage { border-top: 4px solid var(--hzn-brand); }
.hznPillarQuality { border-top: 4px solid var(--hzn-accent); }
.hznPillarHead { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.hznPillarHead h2, .hznPillarHead h3 { margin: 3px 0 0; font-size: 1.25rem; }
.hznPillarHead > strong { font-size: 2rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznPillarHead > strong small { color: var(--hzn-muted); font-size: 0.7rem; }
.hznPillarIcon { width: 42px; height: 42px; border-radius: 12px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.05rem; }
.hznPillarQuality .hznPillarIcon { background: var(--hzn-accent-soft); color: var(--hzn-accent); }
.hznPillarCard > .hznMuted { margin: 12px 0 0; font-size: 0.78rem; line-height: 1.45; }


.hznAuditScoreMeta { gap: 10px; margin-top: 14px; }
.hznAuditActions { gap: 8px; margin-top: 14px; }
.hznCompanyAuditEntitlementNote { flex: 0 0 100%; }
.hznCompanyAuditRecoveryRow { flex: 0 0 100%; gap: 8px; flex-wrap: nowrap; }
.hznAuditReadout { gap: 12px; }
.hznAuditInsight { display: flex; align-items: flex-start; gap: 10px; padding: 11px 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznAuditInsight > i { width: 20px; flex: none; margin-top: 2px; color: var(--hzn-brand); text-align: center; }
.hznAuditInsight div { display: flex; min-width: 0; flex-direction: column; gap: 3px; font-size: 0.875rem; }
.hznAuditInsight span { color: var(--hzn-muted); line-height: 1.35; }
.hznAuditInsightGood > i { color: #147d64; }
.hznAuditInsightRisk > i { color: var(--hzn-coral); }
.hznAuditAreaGrid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.hznAuditArea { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-rows: auto auto; gap: 3px 10px; align-items: center; padding: 15px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); color: var(--hzn-ink); box-shadow: var(--hzn-shadow-card); font: inherit; text-align: left; cursor: pointer; }
.hznAuditArea:hover { border-color: #bdd6e5; transform: translateY(-1px); }
.hznAuditAreaIcon { grid-column: 1; grid-row: 1 / 3; width: 36px; height: 36px; border-radius: 10px; background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznAuditAreaCopy { min-width: 0; grid-column: 2; grid-row: 1 / 3; }
.hznAuditAreaCopy strong { font-size: 1rem; }
.hznAuditAreaCopy small { overflow: hidden; margin-top: 3px; color: var(--hzn-muted); font-size: 0.8rem; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.hznAuditAreaValue { grid-column: 3; grid-row: 1; justify-self: end; font-size: 1.35rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.hznAuditAreaValue small { color: var(--hzn-muted); font-size: 0.68rem; font-weight: 600; }
.hznAuditSource { grid-column: 3; grid-row: 2; justify-self: end; padding: 2px 7px; background: var(--hzn-surface); color: var(--hzn-muted); font-size: 0.62rem; }
.hznAuditCheckSummary { margin: 8px 0 0; }


.hznAuditDetails { padding: 0; overflow: hidden; }
.hznAuditDetailsHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 22px 24px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); }
.hznAuditDetailsHead > div:first-child { min-width: 0; flex: 1; }
.hznAuditDetailsHead .hznEyebrow { margin: 0; color: var(--hzn-brand); font-weight: 800; }
.hznAuditDetailsHead h2 { margin: 5px 0 4px; font-size: 1.45rem; }
.hznAuditDetailsHead .hznMuted { margin: 0; font-size: 0.9rem; line-height: 1.5; }

.hznAuditTabs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); }
.hznAuditTab { padding: 13px 8px; border: 0; border-right: 1px solid var(--hzn-line); background: transparent; color: var(--hzn-muted); font: inherit; font-size: 0.78rem; font-weight: 700; cursor: pointer; }
.hznAuditTab:last-child { border-right: 0; }
.hznAuditTab:hover { color: var(--hzn-brand); }
.hznAuditTabActive { background: var(--hzn-card); color: var(--hzn-brand); box-shadow: inset 0 -3px 0 var(--hzn-brand); }
.hznAuditPanel { display: none; min-height: 150px; padding: 24px; }
.hznAuditPanelActive { display: block; }
.hznAuditDetailsGrouped .hznAuditPanel { display: none; }
.hznAuditDetailsGrouped[data-hzn-audit-view="coverage"] .hznAuditPanel[data-hzn-audit-group="coverage"],
.hznAuditDetailsGrouped[data-hzn-audit-view="quality"] .hznAuditPanel[data-hzn-audit-group="quality"] { display: block; }
.hznAuditDetailsGrouped .hznAuditPanel[data-hzn-audit-panel="placement"],
.hznAuditDetailsGrouped .hznAuditPanel[data-hzn-audit-panel="aeo"] { border-top: 1px solid var(--hzn-line); }
.hznAuditPanel h3 { margin: 5px 0 10px; font-size: 1.4rem; }
.hznAuditPanel p { max-width: none; margin: 0 0 12px; font-size: 1rem; line-height: 1.6; }
.hznAuditSearchResult { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 15px; align-items: start; margin-top: 16px; padding: 18px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznAuditSearchResultIcon { width: 44px; height: 44px; border-radius: 12px; background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznAuditSearchResult .hznEyebrow { margin: 0 0 5px; }
.hznAuditSearchResult > div > strong { display: block; margin-bottom: 8px; font-size: 1.55rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznAuditSearchResult > div > strong small { color: var(--hzn-muted); font-size: 0.72rem; font-weight: 500; }
.hznAuditSearchResult .hznMuted { margin: 4px 0 0; font-size: 0.9rem; }
.hznAuditReceiptStats { gap: 10px; margin: 16px 0; }
.hznAuditReceiptStats span,
.hznAuditReceiptStats .hznPhotoHelpChip { padding: 8px 11px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-surface); color: var(--hzn-muted); font: inherit; font-size: 0.78rem; }
.hznAuditReceiptStats strong { color: var(--hzn-ink); font-size: 1rem; }
.hznAuditReceiptStats span.hznPhotoCheck,
.hznAuditReceiptStats button.hznPhotoCheck { display: inline-flex; align-items: center; gap: 6px; }
.hznAuditReceiptStats .hznPhotoCheck strong { display: inline-flex; align-items: center; gap: 5px; color: inherit; }
.hznAuditReceiptStats .hznPhotoCheck i { font-size: 0.95rem; }
.hznAuditReceiptStats .hznPhotoCheckGood { border-color: #ccebdd; background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznAuditReceiptStats .hznPhotoCheckMid { border-color: #f2d7a5; background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznAuditReceiptStats .hznPhotoCheckBad { border-color: #ffd6d6; background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }
.hznPhotoHelpChip { appearance: none; cursor: pointer; }
.hznPhotoHelpChip[aria-expanded="true"] { outline: 2px solid color-mix(in srgb, currentColor 42%, transparent); outline-offset: 2px; }
.hznPhotoHelpPanel { margin-top: 12px; padding: 14px 16px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznPhotoHelpPanel strong { display: block; margin-bottom: 4px; color: var(--hzn-ink); font-size: 0.88rem; }
.hznAuditPanel .hznPhotoHelpPanel p { margin: 0; color: var(--hzn-muted); font-size: 0.82rem; line-height: 1.5; }
.hznAuditReceiptStats span.hznQualityCountReady { border-color: color-mix(in srgb, var(--hzn-score-green) 28%, var(--hzn-line)); background: var(--hzn-good-soft); color: var(--hzn-score-green); }
.hznAuditReceiptStats span.hznQualityCountImprovement { border-color: color-mix(in srgb, var(--hzn-score-yellow) 45%, var(--hzn-line)); background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznAuditReceiptStats span.hznQualityCountMissing { border-color: color-mix(in srgb, var(--hzn-score-red) 35%, var(--hzn-line)); background: var(--hzn-bad-soft); color: var(--hzn-score-red); }
.hznAuditReceiptStats span.hznQualityCountNotChecked { border-color: color-mix(in srgb, var(--hzn-score-gray) 30%, var(--hzn-line)); background: var(--hzn-unknown-soft); color: var(--hzn-score-gray); }
.hznQualityRubric { margin-top: 20px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); }
.hznQualityRubricHead, .hznQualityRubricRow { display: grid; grid-template-columns: minmax(180px, 1.05fr) minmax(100px, 0.45fr) minmax(230px, 1.25fr) minmax(120px, 0.55fr); gap: 14px; align-items: center; }
.hznQualityRubricHead { padding: 10px 14px; background: var(--hzn-surface); color: var(--hzn-muted); font: 700 0.64rem/1.2 var(--hzn-font-eyebrow); letter-spacing: 0.08em; text-transform: uppercase; }
.hznQualityRubricGroup { padding: 9px 14px; border-top: 1px solid var(--hzn-line); background: color-mix(in srgb, var(--hzn-data-soft) 52%, var(--hzn-card)); color: var(--hzn-brand); font: 800 0.64rem/1.2 var(--hzn-font-eyebrow); letter-spacing: 0.12em; text-transform: uppercase; }
.hznQualityRubricSubgroup { padding: 8px 14px 8px 48px; border-top: 1px solid var(--hzn-line); background: color-mix(in srgb, var(--hzn-surface) 72%, var(--hzn-card)); color: var(--hzn-muted); font: 800 0.72rem/1.2 var(--hzn-font-body); }
.hznQualityRubricRow { padding: 13px 14px; border-top: 1px solid var(--hzn-line); background: var(--hzn-card); }
.hznQualityFactor { display: flex; align-items: flex-start; gap: 10px; min-width: 0; }
.hznQualityFactor > i { width: 24px; flex: none; margin-top: 2px; color: var(--hzn-brand); text-align: center; }
.hznQualityFactor span { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.hznQualityFactor strong { font-size: 0.9rem; }
.hznQualityFactor small, .hznQualityFix { color: var(--hzn-muted); font-size: 0.875rem; line-height: 1.5; }
.hznQualityStatus { display: inline-flex; align-items: center; gap: 6px; font-size: 0.78rem; font-weight: 800; white-space: nowrap; }
.hznQualityStatus i { font-size: 0.55rem; }
.hznQualityReady .hznQualityStatus { color: var(--hzn-score-green); }
.hznQualityNeedsImprovement .hznQualityStatus { color: var(--hzn-score-yellow); }
.hznQualityMissing .hznQualityStatus { color: var(--hzn-score-red); }
.hznQualityNotChecked .hznQualityStatus { color: var(--hzn-score-gray); }
.hznQualityImpact { min-width: 0; }
.hznQualityImpact strong { display: block; font-size: 0.875rem; font-variant-numeric: tabular-nums; }
.hznQualityImpact small { display: block; margin: 2px 0 6px; color: var(--hzn-muted); font-size: 0.75rem; }
.hznQualityReady .hznQualityImpact .hznMeterFill { background: var(--hzn-score-green); }
.hznQualityNeedsImprovement .hznQualityImpact .hznMeterFill { background: var(--hzn-score-yellow); }
.hznQualityMissing .hznQualityImpact .hznMeterFill { background: var(--hzn-score-red); }
.hznQualityNotChecked .hznQualityImpact .hznMeterFill { background: var(--hzn-score-gray); }
.hznQualitySupporting { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--hzn-line); }
.hznQualitySupporting h4 { margin: 4px 0 7px; font-size: 1.05rem; }
.hznQualitySupportingGrid { overflow: hidden; margin-top: 14px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); }
.hznQualitySupportingGrid .hznQualityRubricRow:first-child { border-top: 0; }
.hznAuditCompetitorSection { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--hzn-line); }
.hznAuditCompetitorSection h4 { margin: 4px 0 7px; font-size: 1.05rem; }
.hznAuditCompetitorGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.hznAuditCompetitor { min-width: 0; padding: 14px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznAuditCompetitorHead { display: flex; align-items: flex-start; gap: 10px; }
.hznAuditCompetitorHead > span { display: grid; width: 28px; height: 28px; flex: none; place-items: center; border-radius: 8px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 14px; font-synthesis: none; }
.hznAuditCompetitorHead > span > i { display: block; width: 100%; line-height: 1; text-align: center; }
.hznAuditCompetitorHead > div { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.hznAuditCompetitorHead strong { overflow: hidden; font-size: 0.86rem; text-overflow: ellipsis; white-space: nowrap; }
.hznAuditCompetitorHead small { overflow: hidden; color: var(--hzn-muted); font-size: 0.68rem; text-overflow: ellipsis; white-space: nowrap; }
.hznAuditCompetitorMeta { gap: 6px; margin-top: 11px; }
.hznAuditCompetitorMeta span,
.hznAuditCompetitorMeta a { padding: 4px 7px; border-radius: 7px; background: var(--hzn-card); color: var(--hzn-muted); font-size: 0.66rem; }
.hznAuditCompetitorSite { color: var(--hzn-brand); font-weight: 700; text-decoration: none; }
.hznAuditCompetitorSite:hover { background: var(--hzn-data-soft); color: var(--hzn-data); text-decoration: underline; }
.hznAuditCompetitorMeta strong { color: var(--hzn-ink); }
.hznAuditCompetitor > p { margin: 10px 0 0; color: var(--hzn-muted); font-size: 0.72rem; }
.hznAuditCompetitor > a { display: inline-flex; align-items: center; gap: 5px; margin-top: 10px; color: var(--hzn-brand); font-size: 0.72rem; font-weight: 700; text-decoration: none; }
.hznAuditCompetitor > a:hover { color: var(--hzn-data); }
.hznGeoGridSection { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--hzn-line); }
.hznGeoGridSection h4 { margin: 4px 0 7px; font-size: 1.05rem; }
.hznGeoGridMessage { display: flex; box-sizing: border-box; gap: 10px; align-items: flex-start; width: min(100%, 860px); margin: 12px auto 0; padding: 12px 14px; border: 1px solid #eed28a; border-radius: 10px; background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); font-size: 0.76rem; line-height: 1.45; }
.hznGeoGridMessage[hidden] { display: none; }
.hznGeoGridMessage > i { margin-top: 2px; color: var(--hzn-warning-fg); }
.hznGeoGridMessage > div { min-width: 0; }
.hznGeoGridMessage strong { display: block; margin-bottom: 2px; color: #604400; font-size: 0.78rem; }
.hznAuditUpgradePreview { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; margin-top: 18px; padding: 15px 16px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 26%, var(--hzn-line)); border-radius: var(--hzn-radius-card); background: color-mix(in srgb, var(--hzn-data-soft) 45%, var(--hzn-card)); }
.hznAuditUpgradePreviewIcon { width: 38px; height: 38px; border-radius: 11px; background: var(--hzn-card); color: var(--hzn-brand); box-shadow: inset 0 0 0 1px var(--hzn-line); }
.hznAuditUpgradePreview .hznEyebrow { margin: 0; }
.hznAuditUpgradePreview h4 { margin: 4px 0 0; font-size: 1rem; }
.hznAuditUpgradePreviewBenefits { gap: 6px 14px; margin-top: 9px; }
.hznAuditUpgradePreviewBenefits span { display: inline-flex; align-items: center; gap: 5px; color: var(--hzn-muted); font-size: 0.75rem; font-weight: 700; }
.hznAuditUpgradePreviewBenefits i { color: var(--hzn-brand); }
.hznAuditPanelAction { gap: 16px; margin-top: 18px; padding: 14px 16px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznAuditPanelAction > p { margin: 0; }
.hznHeroWebsiteNote { gap: 9px; margin-top: 18px !important; padding: 12px 14px; border-left: 3px solid var(--hzn-brand); border-radius: 0 9px 9px 0; background: var(--hzn-data-soft); color: var(--hzn-muted); }
.hznHeroWebsiteNote > i { color: var(--hzn-brand); }
.hznHeroWebsiteNote a { color: var(--hzn-brand); font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
.hznCompanyTrendEmpty { gap: 16px; }
.hznCompanyTrendEmptyIcon { width: 46px; height: 46px; flex: none; border-radius: 13px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.1rem; }
.hznCompanyTrendEmpty .hznEyebrow { margin: 0; }
.hznCompanyTrendEmpty h2 { margin: 4px 0; font-size: 1.15rem; }
.hznCompanyTrendEmpty .hznMuted { margin: 0; }
.hznGeoGridSummary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.hznGeoGridSummary > div { display: flex; min-width: 0; padding: 14px; border: 1px solid var(--hzn-line); border-radius: 11px; background: var(--hzn-surface); flex-direction: column; }
.hznGeoGridSummary strong { color: var(--hzn-data); font-size: 1.3rem; line-height: 1.05; font-variant-numeric: tabular-nums; }
.hznGeoGridSummary span { margin-top: 5px; color: var(--hzn-muted); font-size: 0.68rem; line-height: 1.35; }
.hznGeoGridMeta { gap: 7px 14px; margin: 12px 0; color: var(--hzn-muted); font-size: 0.68rem; }
.hznGeoGridMeta strong { color: var(--hzn-ink); }
.hznGeoGridLegend { gap: 8px 16px; margin: 10px 0 4px; color: var(--hzn-muted); font-size: 0.68rem; }
.hznGeoGridLegend span { display: inline-flex; gap: 6px; align-items: center; }
.hznGeoGridLegend i { width: 10px; height: 10px; border: 1px solid transparent; border-radius: 50%; }
.hznGeoGridLegendTop { border-color: var(--hzn-good) !important; background: var(--hzn-good); }
.hznGeoGridLegendVisible { border-color: var(--hzn-warning) !important; background: var(--hzn-warning); }
.hznGeoGridLegendLow { border-color: var(--hzn-bad) !important; background: var(--hzn-bad); }
.hznGeoGridLegendAbsent { border-color: var(--hzn-bad) !important; background: var(--hzn-bad); }
.hznGeoGridMap { position: relative; width: min(100%, 860px); aspect-ratio: 16 / 10; min-height: 0; margin: 16px auto 0; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: 16px; background: var(--hzn-surface); box-shadow: var(--hzn-shadow-card); }
.hznGeoGridBase { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; border: 0; pointer-events: none; }
.hznGeoGridBase .leaflet-control-attribution { font-size: 9px; }
.hznGeoGridMapBadge { position: absolute; top: 14px; left: 14px; z-index: 5; display: inline-flex; gap: 7px; align-items: center; padding: 7px 10px; border: 1px solid rgba(255, 255, 255, 0.92); border-radius: 9px; background: rgba(255, 255, 255, 0.92); box-shadow: 0 3px 14px rgba(26, 36, 49, 0.14); color: var(--hzn-ink); font-size: 0.68rem; font-weight: 750; pointer-events: none; }
.hznGeoGridMapBadge i { color: var(--hzn-data); }
.hznGeoGrid { position: absolute; inset: 0; z-index: 2; pointer-events: none; }
.hznGeoGridCell { --hzn-geogrid-rank-color: var(--hzn-bad); --hzn-geogrid-rank-ink: #fff; position: absolute; display: grid; box-sizing: border-box; place-content: center; overflow: visible; border: 3px solid rgba(255, 255, 255, 0.94); border-radius: 10px; box-shadow: inset 0 0 0 1px rgba(26, 36, 49, 0.06); text-align: center; cursor: help; opacity: 0; pointer-events: auto; transition: filter 140ms ease, opacity 140ms ease, transform 140ms ease; }
.hznGeoGridProjected .hznGeoGridCell { opacity: 1; }
.hznGeoGridCell strong { display: grid; width: 34px; height: 34px; place-content: center; border: 2px solid rgba(255, 255, 255, 0.92); border-radius: 50%; background: var(--hzn-geogrid-rank-color); box-shadow: 0 3px 10px rgba(26, 36, 49, 0.24); color: var(--hzn-geogrid-rank-ink); font-size: 0.84rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznGeoGridCell small { display: none; }
.hznGeoGridCell::after { position: absolute; bottom: calc(100% + 8px); left: 50%; z-index: 6; width: max-content; max-width: min(220px, 55vw); padding: 8px 10px; border-radius: 8px; background: var(--hzn-ink); box-shadow: 0 5px 18px rgba(26, 36, 49, 0.3); color: var(--hzn-card); content: attr(data-hzn-geogrid-tooltip); font-size: 0.68rem; font-weight: 650; line-height: 1.35; opacity: 0; pointer-events: none; text-align: left; transform: translateX(-50%); transition: opacity 140ms ease; visibility: hidden; white-space: normal; }
.hznGeoGridCell:hover, .hznGeoGridCell:focus-visible { z-index: 4; filter: saturate(1.12); transform: scale(1.025); }
.hznGeoGridCell:hover::after, .hznGeoGridCell:focus-visible::after { opacity: 1; visibility: visible; }
.hznGeoGridCell:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-geogrid-rank-color) 68%, #fff); outline-offset: 3px; }
.hznGeoGridCell[data-grid-row="1"]::after { top: calc(100% + 8px); bottom: auto; }
.hznGeoGridCell[data-grid-column="1"]::after { left: -8px; transform: none; }
.hznGeoGridCell[data-grid-column="5"]::after { right: -8px; left: auto; transform: none; }
.hznGeoGridCellTop { --hzn-geogrid-rank-color: var(--hzn-good); background: color-mix(in srgb, var(--hzn-good) 52%, transparent); }
.hznGeoGridCellVisible { --hzn-geogrid-rank-color: var(--hzn-warning); --hzn-geogrid-rank-ink: var(--hzn-warning-fg); background: color-mix(in srgb, var(--hzn-warning) 52%, transparent); }
.hznGeoGridCellLow { --hzn-geogrid-rank-color: var(--hzn-bad); background: color-mix(in srgb, var(--hzn-bad) 46%, transparent); }
.hznGeoGridCellAbsent { --hzn-geogrid-rank-color: var(--hzn-bad); background: color-mix(in srgb, var(--hzn-bad) 52%, transparent); }
.hznGeoGridMapNote { display: flex; box-sizing: border-box; gap: 9px; align-items: flex-start; width: min(100%, 860px); margin: 10px auto 0; padding: 11px 13px; border: 1px solid color-mix(in srgb, var(--hzn-data) 22%, var(--hzn-line)); border-radius: 10px; background: var(--hzn-data-soft); color: var(--hzn-muted); font-size: 0.7rem; line-height: 1.45; }
.hznGeoGridMapNote i { margin-top: 2px; color: var(--hzn-data); }
.hznGeoGridActions { display: flex; justify-content: center; margin-top: 14px; }
.hznGeoGridProgressTrack { width: min(100%, 520px); height: 9px; margin: 14px auto 0; overflow: hidden; border-radius: 999px; background: var(--hzn-surface); }
.hznGeoGridProgressTrack span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--hzn-brand), var(--hzn-data)); transition: width 180ms ease; }
.hznAuditCitationSection { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--hzn-line); }
.hznAuditCitationSection h4 { margin: 4px 0 7px; font-size: 1.05rem; }
.hznCompanyHistoryList { display: grid; gap: 9px; margin: 16px 0 0; padding: 0; list-style: none; }
.hznCompanyHistoryList > li { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; align-items: center; padding: 12px 14px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznCompanyHistoryList > li > span:first-child { display: flex; gap: 8px; align-items: baseline; }
.hznCompanyHistoryList small, .hznCompanyHistoryList .hznHistTime { color: var(--hzn-muted); font-size: 0.7rem; }

.hznAuditCitation { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; min-width: 0; padding: 12px 14px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznAuditCitation > i { font-size: 1rem; }
.hznAuditCitation > div { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.hznAuditCitation strong, .hznAuditCitation span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznAuditCitation strong { font-size: 0.82rem; }
.hznAuditCitation span { color: var(--hzn-muted); font-size: 0.66rem; }
.hznAuditCitation small { font-size: 0.68rem; font-weight: 800; white-space: nowrap; }
.hznAuditCitationFound > i, .hznAuditCitationFound > small { color: var(--hzn-success); }
.hznAuditCitationAbsent > i, .hznAuditCitationAbsent > small { color: var(--hzn-bad); }
.hznAuditCitationUnknown > i, .hznAuditCitationUnknown > small { color: var(--hzn-unknown); }
.hznAuditCitationBonus { border-color: color-mix(in srgb, var(--hzn-data) 34%, var(--hzn-line)); background: color-mix(in srgb, var(--hzn-data) 4%, var(--hzn-surface)); }
.hznAuditCitationNeutral > i, .hznAuditCitationNeutral > small { color: var(--hzn-muted); }
.hznCompanyDirectoryMatrixWrap { overflow-x: auto; margin-top: 14px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); }
.hznCompanyDirectoryMatrix { width: 100%; min-width: 760px; border-collapse: separate; border-spacing: 0; background: var(--hzn-card); }
.hznCompanyDirectoryMatrix th, .hznCompanyDirectoryMatrix td { min-width: 64px; height: 62px; padding: 6px; border-right: 1px solid var(--hzn-line); border-bottom: 1px solid var(--hzn-line); text-align: center; }
.hznCompanyDirectoryMatrix tr:last-child th, .hznCompanyDirectoryMatrix tr:last-child td { border-bottom: 0; }
.hznCompanyDirectoryMatrix th:last-child, .hznCompanyDirectoryMatrix td:last-child { border-right: 0; }
.hznCompanyDirectoryCompanyHead, .hznCompanyDirectoryMatrix tbody th { position: sticky; left: 0; z-index: 2; min-width: 160px !important; background: var(--hzn-surface); color: var(--hzn-ink); font-size: 0.78rem; text-align: left !important; }
.hznCompanyDirectoryHead { position: relative; background: var(--hzn-surface); cursor: help; }
.hznCompanyDirectoryHead:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-data) 32%, transparent); outline-offset: -3px; }
.hznCompanyDirectoryHead:hover .hznMatrixHeaderTooltip, .hznCompanyDirectoryHead:focus .hznMatrixHeaderTooltip { visibility: visible; opacity: 1; transform: translate(-50%, -4px); }
.hznCompanyDirectoryHead:last-child .hznMatrixHeaderTooltip {
 right: 0;
 left: auto;
 transform: translate(0, -4px);
}
.hznCompanyDirectoryHead:last-child:hover .hznMatrixHeaderTooltip,
.hznCompanyDirectoryHead:last-child:focus .hznMatrixHeaderTooltip { transform: translate(0, 0); }
.hznCompanyDirectoryLogo { display: block; width: 28px; height: 28px; margin: auto; object-fit: contain; }
.hznCompanyDirectoryState { display: inline-grid; box-sizing: border-box; width: 34px; height: 34px; place-items: center; border: 2px solid currentColor; border-radius: 999px; background: var(--hzn-card); font-synthesis: none; }
.hznCompanyDirectoryState > i { display: block; width: 100%; font-size: 18px; line-height: 1; text-align: center; }
.hznCompanyDirectoryState.hznAuditCitationFound { color: var(--hzn-success); }
.hznCompanyDirectoryState.hznAuditCitationAbsent { color: var(--hzn-bad); }
.hznCompanyDirectoryState.hznAuditCitationUnknown { color: var(--hzn-unknown); }
.hznCompanyDirectoryState.hznAuditCitationNeutral { color: var(--hzn-muted); }
.hznAuditEvidenceSection { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--hzn-line); }
.hznAuditEvidenceSection h4 { margin: 4px 0 7px; font-size: 1.05rem; }
.hznPhotoThumbnailEvidence { display: grid; grid-template-columns: minmax(180px, 280px) minmax(0, 1fr); gap: 18px; align-items: start; margin-top: 18px; margin-bottom: 22px; }
.hznPhotoPrimaryThumbnail, .hznPhotoProblemThumbnail { overflow: hidden; margin: 0; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznPhotoPrimaryThumbnail img, .hznPhotoProblemThumbnail img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: var(--hzn-line); }
.hznPhotoPrimaryThumbnail figcaption, .hznPhotoProblemThumbnail figcaption { display: grid; gap: 2px; padding: 9px 11px; color: var(--hzn-muted); font-size: 0.76rem; line-height: 1.35; }
.hznPhotoProblemSection { min-width: 0; }
.hznPhotoProblemSection > .hznEyebrow { margin: 0 0 8px; }
.hznPhotoProblemGrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 10px; }
.hznPhotoProblemThumbnail figcaption strong { color: var(--hzn-ink); font-size: 0.8rem; }
.hznPhotoPreviewTrigger { position: relative; display: block; width: 100%; padding: 0; overflow: hidden; border: 0; background: var(--hzn-line); color: inherit; cursor: zoom-in; text-align: left; }
.hznPhotoPreviewTrigger img { transition: transform 0.2s ease, filter 0.2s ease; }
.hznPhotoPreviewHint { display: inline-flex; position: absolute; right: 10px; bottom: 10px; align-items: center; gap: 6px; padding: 7px 9px; border: 1px solid color-mix(in srgb, white 28%, transparent); border-radius: 999px; background: color-mix(in srgb, #101828 78%, transparent); color: white; box-shadow: 0 8px 20px -12px #101828; font-size: 0.7rem; font-weight: 700; line-height: 1; opacity: 0; pointer-events: none; transform: translateY(4px); transition: opacity 0.16s ease, transform 0.16s ease; }
.hznPhotoPreviewTrigger:hover img, .hznPhotoPreviewTrigger:focus-visible img { filter: brightness(0.92); transform: scale(1.025); }
.hznPhotoPreviewTrigger:hover .hznPhotoPreviewHint, .hznPhotoPreviewTrigger:focus-visible .hznPhotoPreviewHint { opacity: 1; transform: translateY(0); }
.hznPhotoPreviewTrigger:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 55%, transparent); outline-offset: -3px; }
body.hznPhotoLightboxOpen { overflow: hidden; }
.hznPhotoLightbox { display: grid; position: fixed; z-index: 1600; inset: 0; box-sizing: border-box; place-items: center; padding: clamp(14px, 3vw, 36px); background: color-mix(in srgb, #101828 82%, transparent); backdrop-filter: blur(5px); }
.hznPhotoLightbox[hidden] { display: none !important; }
.hznPhotoLightboxSurface { position: relative; display: grid; grid-template-rows: minmax(0, 1fr) auto; width: min(1120px, 100%); max-height: calc(100vh - clamp(28px, 6vw, 72px)); overflow: hidden; border: 1px solid color-mix(in srgb, white 18%, transparent); border-radius: 18px; background: #111827; box-shadow: 0 30px 80px -32px #000; }
.hznPhotoLightboxStage { display: grid; position: relative; min-height: min(66vh, 620px); place-items: center; overflow: hidden; background: #111827; }
.hznPhotoLightboxStage img { display: block; width: auto; max-width: 100%; height: auto; max-height: calc(100vh - 180px); object-fit: contain; }
.hznPhotoLightboxClose, .hznPhotoLightboxNav { display: grid; position: absolute; z-index: 2; width: 42px; height: 42px; place-items: center; padding: 0; border: 1px solid color-mix(in srgb, white 28%, transparent); border-radius: 50%; background: color-mix(in srgb, #101828 74%, transparent); color: white; box-shadow: 0 8px 24px -14px #000; cursor: pointer; transition: background 0.16s ease, transform 0.16s ease; }
.hznPhotoLightboxClose:hover, .hznPhotoLightboxNav:hover, .hznPhotoLightboxClose:focus-visible, .hznPhotoLightboxNav:focus-visible { background: color-mix(in srgb, #101828 92%, transparent); transform: scale(1.05); }
.hznPhotoLightboxClose:focus-visible, .hznPhotoLightboxNav:focus-visible { outline: 3px solid color-mix(in srgb, white 72%, transparent); outline-offset: 2px; }
.hznPhotoLightboxClose { top: 14px; right: 14px; }
.hznPhotoLightboxNav { top: 50%; transform: translateY(-50%); }
.hznPhotoLightboxNav:hover, .hznPhotoLightboxNav:focus-visible { transform: translateY(-50%) scale(1.05); }
.hznPhotoLightboxPrevious { left: 14px; }
.hznPhotoLightboxNext { right: 14px; }
.hznPhotoLightboxCaption { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 14px 18px; background: var(--hzn-card); color: var(--hzn-ink); }
.hznPhotoLightboxCaption > div { display: grid; gap: 3px; min-width: 0; }
.hznPhotoLightboxCaption strong { font-size: 0.88rem; line-height: 1.35; }
.hznPhotoLightboxCaption span { color: var(--hzn-muted); font-size: 0.78rem; line-height: 1.4; }
.hznPhotoLightboxCount { flex: 0 0 auto; font-weight: 700; }
body.hznNetworkLightboxOpen { overflow: hidden; }
.hznNetworkLightbox { display: grid; position: fixed; z-index: 1650; inset: 0; box-sizing: border-box; place-items: center; padding: clamp(14px, 2vw, 28px); background: color-mix(in srgb, #101828 76%, transparent); backdrop-filter: blur(4px); }
.hznNetworkLightbox[hidden] { display: none !important; }
.hznNetworkLightboxSurface { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; width: min(96vw, 1600px); height: min(92vh, 1000px); overflow: hidden; border: 1px solid color-mix(in srgb, white 18%, transparent); border-radius: 16px; background: var(--hzn-card); box-shadow: 0 30px 90px -34px #000; }
.hznNetworkLightboxHead { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 12px 14px 12px 18px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-card); }
.hznNetworkLightboxIdentity { display: flex; align-items: center; gap: 11px; min-width: 0; }
.hznNetworkLightboxIdentity > span:last-child { display: grid; gap: 1px; min-width: 0; }
.hznNetworkLightboxIdentity strong, .hznNetworkLightboxIdentity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznNetworkLightboxIdentity strong { color: var(--hzn-ink); font-size: 0.9rem; }
.hznNetworkLightboxIdentity small { color: var(--hzn-muted); font-size: 0.72rem; }
.hznNetworkLightboxIcon { display: grid; width: 36px; height: 36px; flex: 0 0 auto; place-items: center; border-radius: 10px; background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznNetworkLightboxActions { display: flex; align-items: center; gap: 9px; flex: 0 0 auto; }
.hznNetworkLightboxActions .hznBtn { display: inline-flex; align-items: center; gap: 7px; }
.hznNetworkLightboxClose { display: grid; width: 38px; height: 38px; place-items: center; padding: 0; border: 1px solid var(--hzn-line); border-radius: 50%; background: var(--hzn-surface); color: var(--hzn-ink); cursor: pointer; }
.hznNetworkLightboxClose:hover, .hznNetworkLightboxClose:focus-visible { border-color: color-mix(in srgb, var(--hzn-brand) 45%, var(--hzn-line)); background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznNetworkLightboxClose:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 30%, transparent); outline-offset: 2px; }
.hznNetworkLightboxStage { position: relative; min-height: 0; overflow: hidden; background: white; }
.hznNetworkLightboxFrame { display: block; width: 100%; height: 100%; border: 0; background: white; }
.hznNetworkLightboxLoading { display: flex; position: absolute; z-index: 1; inset: 0; align-items: center; justify-content: center; gap: 9px; background: var(--hzn-card); color: var(--hzn-muted); font-size: 0.82rem; }
.hznNetworkLightboxLoading[hidden] { display: none; }
.hznNetworkLightboxLoading i { color: var(--hzn-brand); }
.hznNetworkLightboxFoot { display: flex; align-items: center; gap: 8px; padding: 9px 18px; border-top: 1px solid var(--hzn-line); background: var(--hzn-surface); color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.4; }
.hznNetworkLightboxFoot i { color: var(--hzn-brand); }
.hznNetworkLightboxFoot strong { color: var(--hzn-ink); }
.hznAuditCheckGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.hznAuditCheck { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; min-width: 0; padding: 12px 14px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznAuditCheck > i { font-size: 1rem; }
.hznAuditCheck > div { display: flex; min-width: 0; flex-direction: column; gap: 2px; }
.hznAuditCheck strong, .hznAuditCheck span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznAuditCheck strong { font-size: 0.82rem; }
.hznAuditCheck span { color: var(--hzn-muted); font-size: 0.66rem; }
.hznAuditCheck small { font-size: 0.68rem; font-weight: 800; white-space: nowrap; }
.hznAuditCheckPassed > i, .hznAuditCheckPassed > small { color: var(--hzn-success); }
.hznAuditCheckFailed > i, .hznAuditCheckFailed > small { color: var(--hzn-bad); }
.hznAuditCheckUnknown > i, .hznAuditCheckUnknown > small { color: var(--hzn-unknown); }
.hznAuditRankGrid { grid-template-columns: 1fr; }
.hznAuditRankGrid .hznAuditCheckPassed > small { font-size: 1.3rem; line-height: 1.05; font-variant-numeric: tabular-nums; }

.hznAEOMatrix { margin-top: 14px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); }
.hznAEOMatrixSummary { gap: 14px; padding: 14px 16px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); }
.hznAEOMatrixSummary > div { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.hznAEOMatrixSummary strong { color: var(--hzn-ink); font-size: 0.88rem; }
.hznAEOMatrixSummary span, .hznAEOMatrixSummary small { color: var(--hzn-muted); font-size: 0.68rem; }
.hznAEOMatrixSummary small { flex: none; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; }
.hznAEOMatrixScroll { overflow-x: auto; }
.hznAEOMatrix table { width: 100%; min-width: 650px; border-collapse: separate; border-spacing: 0; }
.hznAEOMatrix th, .hznAEOMatrix td { padding: 10px 8px; border-bottom: 1px solid var(--hzn-line); text-align: center; }
.hznAEOMatrix thead th { color: var(--hzn-muted); font-size: 0.68rem; font-weight: 800; vertical-align: bottom; }
.hznAEOMatrix thead th > span, .hznAEOMatrix thead th > small { display: block; }
.hznAEOMatrix thead th > small { margin-top: 3px; color: var(--hzn-ink); font-size: 0.7rem; }
.hznAEOMatrix th:first-child { position: sticky; left: 0; z-index: 1; width: 42%; min-width: 240px; padding-left: 16px; background: var(--hzn-card); text-align: left; }
.hznAEOMatrix thead th:first-child { z-index: 2; background: var(--hzn-surface); }
.hznAEOMatrix tbody th { overflow: hidden; color: var(--hzn-ink); font-size: 0.78rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.hznAEOMatrix tbody tr:last-child th, .hznAEOMatrix tbody tr:last-child td { border-bottom: 0; }
.hznAEOMatrixCell { display: inline-grid; width: 30px; height: 30px; border-radius: 8px; place-items: center; font-size: 12px; font-synthesis: none; }
.hznAEOMatrixMentionedCited, .hznAEOMatrixCited { background: var(--hzn-success); color: #fff; }
.hznAEOMatrixMentioned { background: color-mix(in srgb, var(--hzn-data) 22%, var(--hzn-surface)); color: var(--hzn-data); }
.hznAEOMatrixAbsent { background: var(--hzn-bad-soft); color: var(--hzn-bad); }
.hznAEOMatrixUnknown { background: var(--hzn-unknown-soft); color: var(--hzn-unknown); }
.hznAEOMatrixLegend { gap: 8px 18px; padding: 11px 16px; border-top: 1px solid var(--hzn-line); color: var(--hzn-muted); font-size: 0.68rem; }
.hznAEOMatrixLegend > span { display: inline-flex; gap: 6px; align-items: center; }
.hznAEOMatrixLegend > span > i { display: inline-grid; width: 18px; height: 18px; border-radius: 5px; place-items: center; font-size: 0.55rem; font-style: normal; }
.hznAEOMatrixCell > i,
.hznAEOMatrixLegend > span > i > i { display: block; width: 100%; line-height: 1; text-align: center; font-synthesis: none; }
.hznAEOQuestionEvidence { margin-top: 18px; }
.hznAEOQuestionEvidence > h4 { margin: 0 0 9px; color: var(--hzn-ink); font-size: 0.9rem; }
.hznAEOEngineEvidence { margin-top: 14px; }
.hznAEOAnswer { margin-top: 12px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznAEOEngineEvidence .hznAEOAnswer { margin-top: 0; }
.hznAIResponseHead { gap: 10px; padding: 11px 14px; border-bottom: 1px solid var(--hzn-line); background: color-mix(in srgb, var(--hzn-accent) 7%, var(--hzn-card)); }
.hznAIResponseHead > span:nth-child(2) { display: flex; min-width: 0; flex-direction: column; }
.hznAIResponseHead strong { color: var(--hzn-ink); font-size: 0.8rem; line-height: 1.15; }
.hznAIResponseHead small { margin-top: 2px; color: var(--hzn-muted); font-size: 0.62rem; }
.hznAIResponseAvatar { display: inline-grid; width: 28px; height: 28px; flex: none; border-radius: 9px; background: var(--hzn-accent-soft); color: var(--hzn-accent); place-items: center; font-size: 0.76rem; }
.hznAIPlatformLogo { display: inline-block; width: 22px; height: 22px; object-fit: contain; vertical-align: middle; }
.hznAEOMatrix thead .hznAIPlatformLogo { margin: 0 auto 4px; }
.hznAIAnswerStatus { display: inline-flex; align-items: center; gap: 5px; margin-left: auto; padding: 5px 8px; border-radius: 999px; font-size: 0.68rem; font-weight: 800; white-space: nowrap; }
.hznAIAnswerStatusMentionedCited, .hznAIAnswerStatusCited { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznAIAnswerStatusMentioned { background: var(--hzn-data-soft); color: var(--hzn-data); }
.hznAIAnswerStatusUnverified { background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznAIAnswerStatusAbsent { background: var(--hzn-bad-soft); color: var(--hzn-bad); }
.hznAIResponseBody { padding: 15px 16px; color: var(--hzn-ink); font-size: 0.78rem; line-height: 1.62; }
.hznAIResponseBody > :first-child { margin-top: 0; }
.hznAIResponseBody > :last-child { margin-bottom: 0; }
.hznAIResponseBody p { margin: 0 0 10px; }
.hznAIResponseBody h4, .hznAIResponseBody h5 { margin: 15px 0 7px; color: var(--hzn-ink); line-height: 1.25; }
.hznAIResponseBody h4 { font-size: 0.9rem; }
.hznAIResponseBody h5 { font-size: 0.82rem; }
.hznAIResponseBody ul, .hznAIResponseBody ol { margin: 6px 0 12px; padding-left: 22px; }
.hznAIResponseBody li { margin: 4px 0; padding-left: 2px; }
.hznAIResponseBody blockquote { margin: 10px 0; padding: 8px 11px; border-left: 3px solid var(--hzn-accent); border-radius: 0 7px 7px 0; background: var(--hzn-accent-soft); color: var(--hzn-muted); }
.hznAIResponseBody a { color: var(--hzn-accent); font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.hznAIResponseCitation { display: inline-flex; min-width: 16px; height: 16px; align-items: center; justify-content: center; margin: 0 1px 0 2px; padding: 0 4px; border-radius: 999px; background: var(--hzn-accent-soft); color: var(--hzn-accent); font-size: 0.58rem; font-weight: 800; line-height: 1; vertical-align: 0.28em; }
.hznAIResponseTable { display: grid; margin: 10px 0 14px; overflow-x: auto; border: 1px solid var(--hzn-line); border-radius: 8px; }
.hznAIResponseTableRow { display: grid; grid-auto-columns: minmax(130px, 1fr); grid-auto-flow: column; min-width: max-content; border-bottom: 1px solid var(--hzn-line); }
.hznAIResponseTableRow:first-child { background: var(--hzn-surface); font-weight: 800; }
.hznAIResponseTableRow:last-child { border-bottom: 0; }
.hznAIResponseTableRow > span { min-width: 130px; padding: 7px 9px; border-right: 1px solid var(--hzn-line); }
.hznAIResponseTableRow > span:last-child { border-right: 0; }
.hznAIResponseTruncated { color: var(--hzn-muted); letter-spacing: 0.2em; }
.hznAuditSourceGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 10px; }
.hznAuditSourceCard { display: flex; gap: 8px; align-items: center; min-width: 0; padding: 9px 11px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-card); color: var(--hzn-muted); font-size: 0.72rem; text-decoration: none; }
.hznAuditSourceCard span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznAuditSourceCard small { margin-left: auto; color: var(--hzn-success); font-size: 0.62rem; font-weight: 800; white-space: nowrap; }
.hznAuditSourceCard:hover, .hznAuditSourceCardOwn { border-color: color-mix(in srgb, var(--hzn-data) 45%, var(--hzn-line)); color: var(--hzn-data); }
.hznListingAIEvidence { margin-top: 14px; }
.hznListingAIAnswerBlock { padding: 14px; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-card); }
.hznListingAIAnswerBlock > h5 { margin: 0 0 10px; color: var(--hzn-ink); font-size: 0.9rem; }
.hznListingAIQuestion { display: flex; gap: 11px; align-items: flex-start; padding: 12px 14px; border: 1px solid var(--hzn-line); border-radius: 11px; background: var(--hzn-surface); }
.hznListingAIQuestion > span { display: inline-grid; width: 30px; height: 30px; flex: none; border-radius: 9px; background: var(--hzn-accent-soft); color: var(--hzn-accent); place-items: center; }
.hznListingAIQuestion small { display: block; margin-bottom: 3px; color: var(--hzn-muted); font-size: 0.64rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.hznListingAIQuestion p { margin: 0; color: var(--hzn-ink); font-size: 0.8rem; line-height: 1.55; }
.hznListingAIReview { margin-top: 12px; padding: 13px 15px; border-left: 3px solid var(--hzn-data); border-radius: 0 9px 9px 0; background: var(--hzn-data-soft); }
.hznListingAIReview h5 { margin: 0 0 6px; color: var(--hzn-ink); font-size: 0.82rem; }
.hznListingAIReview p { margin: 5px 0 0; color: var(--hzn-muted); font-size: 0.74rem; line-height: 1.5; }
.hznAIScoreComponents { margin-top: 12px; padding: 12px 14px; border: 1px solid var(--hzn-line); border-radius: 11px; background: var(--hzn-surface); }
.hznAIScoreComponentsHead { gap: 12px; padding-bottom: 8px; border-bottom: 1px solid var(--hzn-line); }
.hznAIScoreComponentsHead > span { display: inline-flex; align-items: center; gap: 8px; color: var(--hzn-muted); font-size: 0.66rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.hznAIScoreComponentsHead > span i { color: var(--hzn-brand); }
.hznAIScoreComponentsHead > strong { color: var(--hzn-ink); font-size: 1.15rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznAIScoreComponentsHead > strong small { color: var(--hzn-muted); font-size: 0.64rem; font-weight: 500; }
.hznAIScoreComponentGrid { display: grid; }
.hznAIScoreComponent { display: grid; grid-template-columns: 30px minmax(0, 1fr) 74px; gap: 11px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--hzn-line); }
.hznAIScoreComponent:last-child { border-bottom: 0; }
.hznAIScoreComponentIcon { width: 30px; height: 30px; border-radius: 9px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 0.82rem; }
.hznAIScoreComponentCopy { min-width: 0; gap: 2px; }
.hznAIScoreComponentCopy > strong { color: var(--hzn-ink); font-size: 0.79rem; }
.hznAIScoreComponentCopy > small { color: color-mix(in srgb, var(--hzn-ink) 62%, var(--hzn-muted)); font-size: 0.75rem; line-height: 1.45; }
.hznAIScoreComponentMeasure { min-width: 0; gap: 6px; }
.hznAIScoreComponentMeasure > strong { color: var(--hzn-score-color, var(--hzn-brand)); font-size: 1.02rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznAIScoreComponentMeasure > strong small { color: var(--hzn-muted); font-size: 0.64rem; font-weight: 500; }
.hznAIScoreComponentMeter { display: block; width: 100%; height: 5px; overflow: hidden; border-radius: 999px; background: var(--hzn-card); }
.hznAIScoreComponentMeter > i { display: block; height: 100%; border-radius: inherit; background: var(--hzn-score-color, var(--hzn-brand)); }
.hznAIScoreComponent-good { --hzn-score-color: var(--hzn-good); }
.hznAIScoreComponent-fair { --hzn-score-color: var(--hzn-warning); }
.hznAIScoreComponent-bad { --hzn-score-color: var(--hzn-bad); }
.hznAIScoreComponent-off { --hzn-score-color: var(--hzn-muted); }
.hznAIScoreComponent-off .hznAIScoreComponentIcon { background: var(--hzn-card); color: var(--hzn-muted); }
.hznAIScoreComponent-off .hznAIScoreComponentMeter { visibility: hidden; }
.hznAIScoreComponentsFoot { display: flex; gap: 7px; align-items: flex-start; margin: 6px 0 0; padding-top: 8px; border-top: 1px solid var(--hzn-line); color: var(--hzn-muted); font-size: 0.7rem; line-height: 1.5; }
.hznAIScoreComponentsFoot i { margin-top: 1px; flex: none; color: var(--hzn-muted); font-size: 0.78em; }
.hznAuditDispute { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px 18px; align-items: center; margin: 18px 0 4px; padding: 17px 19px; border: 1px solid color-mix(in srgb, var(--hzn-bad) 34%, var(--hzn-line)); border-left: 4px solid var(--hzn-bad); border-radius: 12px; background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznAuditDisputeCopy { min-width: 0; gap: 5px; }
.hznAuditDisputeCopy > strong { display: inline-flex; align-items: center; gap: 8px; color: var(--hzn-ink); font-size: 0.85rem; }
.hznAuditDisputeCopy > strong i { color: var(--hzn-bad); }
.hznAuditDisputeCopy > small { color: var(--hzn-ink); font-size: 0.76rem; line-height: 1.55; }
.hznAuditDisputeAction { justify-self: end; }
.hznAuditDisputeForm { grid-column: 1 / -1; display: grid; gap: 8px; min-width: 0; }
.hznAuditDisputeForm label { color: var(--hzn-ink); font-size: 0.76rem; font-weight: 700; }
.hznAuditDisputeForm label .hznMuted { font-weight: 500; }
.hznAuditDisputeNote { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; padding: 9px 11px; border: 1px solid color-mix(in srgb, var(--hzn-ink) 22%, var(--hzn-line)); border-radius: 9px; background: var(--hzn-card); color: var(--hzn-ink); font: inherit; font-size: 0.78rem; line-height: 1.5; resize: vertical; }
.hznAuditDisputeNote:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 30%, transparent); outline-offset: 2px; }
.hznAuditDisputeButtons { display: flex; justify-content: flex-end; gap: 9px; }
.hznAuditDisputeStatus { grid-column: 1 / -1; margin: 0; color: var(--hzn-good); font-size: 0.77rem; line-height: 1.5; }
.hznAuditDisputeStatusBad { color: var(--hzn-bad); }

@media (max-width: 940px) {
 .hznAuditHero { grid-template-columns: 1fr; }
 .hznScoreFrameworkGrid { grid-template-columns: 1fr; }
 .hznAIScoreComponent { grid-template-columns: 26px minmax(0, 1fr) 62px; gap: 9px; }
 .hznAuditDispute { grid-template-columns: 1fr; }
 .hznAuditDisputeAction { justify-self: start; }
 .hznAIScoreComponentIcon { width: 26px; height: 26px; }
 .hznAuditAreaGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .hznQualityRubricHead, .hznQualityRubricRow { grid-template-columns: minmax(170px, 1fr) minmax(100px, 0.5fr) minmax(180px, 1fr); }
 .hznQualityRubricHead span:nth-child(4), .hznQualityImpact { grid-column: 3; }
 .hznQualityRubricHead span:nth-child(3) { display: none; }
 .hznQualityFix { grid-column: 1 / -1; padding-left: 34px; }
}

@media (max-width: 680px) {
 .hznAuditPageHead { align-items: flex-start; flex-direction: column; }
 .hznAuditSelector { align-items: stretch; flex-direction: column; }
 .hznAuditSelector select { width: 100%; max-width: none; }
 .hznAuditOverview { grid-template-columns: 1fr; justify-items: center; padding: 22px 18px; text-align: center; }
 .hznAuditOverviewPhoto { width: min(100%, 360px); }
 .hznAuditOverviewCopy h2 { font-size: 1.85rem; }
 .hznAuditOverviewMeta, .hznAuditOverviewLinks { justify-content: center; }
 .hznAuditOverviewMeta > span + * { padding-left: 0; border-left: 0; }
 .hznAuditPillarTab { justify-content: flex-start; padding: 15px 16px; }
 .hznScoreFrameworkIntro { padding: 18px; font-size: 0.84rem; }
 .hznScoreFrameworkColumn { padding: 20px 18px 0; }
 .hznScoreFrameworkHead { grid-template-columns: 1fr auto; gap: 12px; }
 .hznScoreFrameworkRow { grid-template-columns: 42px minmax(0, 1fr) 82px; gap: 10px; min-height: 0; padding: 17px 0 14px; }

 .hznScoreFrameworkFooter { min-height: 62px; }
 .hznAuditDetailsHead { align-items: stretch; flex-direction: column; }

 .hznAuditScorecard { align-items: center; flex-direction: column; text-align: center; }
 .hznAuditWeights, .hznAuditScoreMeta, .hznAuditActions { justify-content: center; }
 .hznCompanyAuditTiming { position: static; width: 100%; align-items: center; margin-top: 14px; }
 .hznCompanyScoreBuild { min-height: 0; }
 .hznCompanyContributionHead, .hznCompanyContributionBar { position: static; width: 100%; }
 .hznCompanyContributionHead { margin-bottom: 8px; }
 .hznCompanyContributionBar { height: 58px; }
 .hznCompanyContributionLabel > span { font-size: 0.52rem; }
 .hznCompanyContributionLabel > small { font-size: 0.62rem; }
 .hznAuditAreaGrid { grid-template-columns: 1fr; }
 .hznAuditUpgradePreview { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
 .hznAuditUpgradePreview > .hznBtn { grid-column: 1 / -1; justify-content: center; }
 .hznAuditPanelAction { align-items: stretch; flex-direction: column; }
 .hznAuditPanelAction .hznBtn { justify-content: center; }
 .hznAuditTabs { display: flex; overflow-x: auto; }
 .hznAuditTab { min-width: 94px; flex: 1 0 auto; }
 .hznAuditCompetitorGrid,
.hznAuditCheckGrid,
.hznAuditSourceGrid{ grid-template-columns: 1fr; text-align: left; }
 .hznAIResponseHead { flex-wrap: wrap; }
 .hznAIAnswerStatus { margin-left: 38px; }
 .hznPillarGrid { grid-template-columns: 1fr; }

 .hznQualityRubricHead { display: none; }
 .hznQualityRubricRow { grid-template-columns: 1fr auto; }
 .hznQualityFactor { grid-column: 1 / -1; }
 .hznQualityFix { grid-column: 1 / -1; padding-left: 0; }
 .hznQualityImpact { grid-column: 2; grid-row: 2; min-width: 110px; }
 .hznPhotoThumbnailEvidence { grid-template-columns: 1fr; }
 .hznPhotoPrimaryThumbnail { max-width: 320px; }
 .hznPhotoLightbox { padding: 0; }
 .hznPhotoLightboxSurface { width: 100%; max-height: 100vh; border-width: 0; border-radius: 0; }
 .hznPhotoLightboxStage { min-height: 0; height: calc(100vh - 82px); }
 .hznPhotoLightboxStage img { max-height: calc(100vh - 82px); }
 .hznPhotoLightboxCaption { gap: 10px; padding: 12px 14px; }
 .hznPhotoLightboxNav { width: 38px; height: 38px; }
 .hznPhotoLightboxPrevious { left: 10px; }
 .hznPhotoLightboxNext { right: 10px; }
 .hznGeoGridSummary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .hznGeoGridMap { aspect-ratio: 1 / 1; }
 .hznGeoGridMapBadge { display: none; }
 .hznGeoGridCell { border-width: 2px; border-radius: 8px; }
 .hznGeoGridCell strong { width: 28px; height: 28px; font-size: 0.74rem; }
 .hznCompanyHistoryList > li { grid-template-columns: minmax(0, 1fr) auto; }
 .hznCompanyHistoryList .hznPill { grid-column: 1 / -1; justify-self: start; }
}

@media (prefers-reduced-motion: reduce) {
 .hznPhotoPreviewTrigger img, .hznPhotoPreviewHint, .hznPhotoLightboxClose, .hznPhotoLightboxNav { transition-duration: 0.01ms; }
}

@media (max-width: 720px) {
 .hznNetworkLightbox { padding: 0; }
 .hznNetworkLightboxSurface { width: 100%; height: 100%; border-width: 0; border-radius: 0; }
 .hznNetworkLightboxHead { gap: 10px; padding: 10px 10px 10px 12px; }
 .hznNetworkLightboxIdentity { gap: 8px; }
 .hznNetworkLightboxIcon { width: 32px; height: 32px; }
 .hznNetworkLightboxActions .hznBtn { padding-inline: 10px; }
 .hznNetworkLightboxActions .hznBtn i { margin: 0; }
 .hznNetworkLightboxActions .hznBtn { font-size: 0; }
 .hznNetworkLightboxActions .hznBtn i { font-size: 0.78rem; }
 .hznNetworkLightboxFoot { padding: 8px 12px; font-size: 0.68rem; }
}

.hznOpportunityLede { width: 100%; }
.hznOpportunitySummary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 20px; }
.hznOpportunityList { gap: 12px; margin-top: 20px; }
.hznOpportunityRow { display: grid; grid-template-columns: 92px minmax(0, 1fr) auto; gap: 18px; align-items: start; padding: 17px 19px; }
.hznOpportunityValue { min-height: 64px; justify-content: center; text-align: center; }
.hznOpportunityValue strong { color: var(--hzn-data); font-size: 1.45rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznOpportunityValue span { margin-top: 3px; color: var(--hzn-muted); font-size: 0.6rem; font-weight: 800; letter-spacing: 0.05em; text-transform: uppercase; }
.hznOpportunityValue small { margin-top: 6px; color: var(--hzn-muted); font-size: 0.72rem; }
.hznOpportunityBody { min-width: 0; }
.hznOpportunityMeta { gap: 8px; }
.hznOpportunityMeta .hznEyebrow { margin: 0; }
.hznOpportunityAction { margin: 6px 0 0; font-size: 0.95rem; font-weight: 800; line-height: 1.35; }
.hznOpportunityWhy { display: -webkit-box; overflow: hidden; margin: 4px 0 0; font-size: 0.8rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.hznOpportunityPlace { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; color: inherit; font-size: 0.8rem; font-weight: 700; text-decoration: none; cursor: pointer; }
.hznOpportunityPlace span { color: var(--hzn-muted); font-weight: 500; }
.hznOpportunityPlace:hover { color: inherit; }
.hznOpportunityScore { align-items: flex-end; text-align: right; }
.hznOpportunityScore strong { font-size: 1.05rem; font-variant-numeric: tabular-nums; }
.hznOpportunityScore strong small { color: var(--hzn-muted); font-size: 0.67rem; }
.hznOpportunityScore span { margin-top: 2px; color: var(--hzn-muted); font-size: 0.65rem; }

.hznPlaceBack { margin-bottom: 12px; }
.hznPlaceBack a { display: inline-flex; align-items: center; gap: 6px; color: var(--hzn-muted); font-size: 0.82rem; font-weight: 700; cursor: pointer; }
.hznPlaceBack a:hover { color: var(--hzn-brand); }
.hznPlaceHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.hznPlaceHeadMain { min-width: 0; gap: 22px; }
.hznPlaceHeadCopy { min-width: 0; }
.hznPlaceHeroPhoto { overflow: hidden; width: 190px; margin: 0; flex: none; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); box-shadow: var(--hzn-shadow-card); }
.hznPlaceHeroPhoto img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.hznPlaceHead .hznMuted { margin: 0; }
.hznPlaceHeadActions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.hznPlaceInactive { display: flex; align-items: center; justify-content: space-between; gap: 24px; border-color: #ead3a8; background: #fffaf0; }
.hznPlaceInactive > div:first-child { min-width: 0; flex: 1; }
.hznPlaceInactive .hznDisplay { margin: 0; font-size: 1.2rem; }
.hznPlaceInactive .hznMuted { margin: 5px 0 0; }
.hznPlaceInactiveActions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.hznPlaceListRow.hznPlaceInactive { display: grid; }
.hznPlaceListRowTransitionedInactive { grid-template-columns: minmax(0, 1fr); }
.hznPlaceListRowTransitionedInactive .hznPlaceResult { grid-column: 1; }
.hznPlaceDeactivatedLive .hznAuthEdit { display: none !important; }
.hznPlaceDeletedLive .hznAuthEdit, .hznPlaceDeletedLive .hznAuthDelete { display: none !important; }
.hznPlaceDeletedState { display: flex; align-items: center; gap: 24px; border-color: color-mix(in srgb, var(--hzn-bad) 42%, var(--hzn-line)); background: var(--hzn-bad-soft); }
.hznPlaceDeletedState > div:first-child { min-width: 0; flex: 1; }
.hznPlaceDeletedState .hznDisplay { margin: 0; font-size: 1.2rem; }
.hznPlaceDeletedState .hznMuted { margin: 5px 0 0; }
.hznPlaceRetained { gap: 18px; }
.hznPlaceRetainedScore { flex: none; font-size: 2rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.hznPlaceRetainedScore small { color: var(--hzn-muted); font-size: 0.72rem; }
.hznPlaceRetained .hznDisplay { margin: 0; font-size: 1rem; }
.hznPlaceRetained .hznMuted { margin: 4px 0 0; }
.hznPlaceHero { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px; align-items: stretch; }
.hznPlaceSummaryPanel { display: flex; min-width: 0; flex-direction: column; gap: 18px; }
.hznPlaceSummaryHead { display: grid; grid-template-columns: 42px minmax(0, 1fr); align-items: start; gap: 12px; }
.hznPlaceSummaryHead .hznEyebrow { margin: 0; }
.hznPlaceSummaryHead h2 { margin: 4px 0 0; font-size: 1.15rem; }
.hznPlaceSummaryIcon { position: relative; width: 42px; height: 42px; border-radius: 12px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 1.15rem; }
/* A count badge on the icon, the way an app badges an unread count. It sits
   proud of the tile's top-right corner and is not drawn at zero. */
/* Centring a numeral is not the same as centring a glyph. A line box is
   ascent plus descent, but a digit occupies only baseline to cap height, so
   centring the line box leaves the digit sitting high by the unused descender.
   text-box trims the box to exactly that range, which is the one case where
   trimming to cap height is the correct answer rather than the wrong one.
   Where it is unsupported the digit is high by a fraction of a pixel, which
   is the same as before. The 10px size keeps the arithmetic whole either
   way: a 20px badge less its 2px border leaves 16px, and 16 less 10 halves. */
.hznPlaceReportBadge { position: absolute; top: -6px; right: -6px; display: grid; min-width: 20px; height: 20px; padding: 0 5px; box-sizing: border-box; border: 2px solid var(--hzn-card); border-radius: 999px; background: var(--hzn-brand); color: #fff; font-size: 10px; font-weight: 800; line-height: 1; place-items: center; font-variant-numeric: tabular-nums; font-synthesis: none; }

@supports (text-box: trim-both cap alphabetic) {
 .hznPlaceReportBadge { text-box: trim-both cap alphabetic; }
}
.hznPlaceGradeBody { flex: 1; justify-content: center; gap: 10px; min-height: 0; }
.hznPlaceScoreMeta { justify-content: center; gap: 10px; }
.hznPlaceScoreMeta > strong { font-size: 0.82rem; letter-spacing: 0.05em; text-transform: uppercase; }
.hznPlacePanelBody { flex: 1; }
.hznPlacePanelBody > .hznMuted { margin: 0; line-height: 1.5; }
.hznPlacePanelPills { gap: 7px; margin-top: 14px; }
.hznPlacePanelActions { justify-content: center; gap: 8px; margin-top: auto; }
.hznPlacePanelActions .hznBtn { justify-content: center; }
.hznMonitoringStatusToggle { min-height: 30px; padding-right: 9px; padding-left: 7px; }
.hznPlaceReportsPanel { position: relative; z-index: 1; justify-self: end; width: 100%; box-sizing: border-box; transition: width 180ms ease, border-color 180ms ease, box-shadow 180ms ease; }
.hznPlaceReportsPanel .hznPlaceSummaryHead { grid-template-columns: 42px minmax(0, 1fr) auto; }
.hznPlaceReportsToggle { grid-column: 3; grid-row: 1; align-self: start; justify-self: end; white-space: nowrap; }
.hznPlaceReportsToggle i { transition: transform 180ms ease; }
.hznPlaceReportsDetails { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; min-width: 0; }
.hznPlaceReportsPanel:not(.hznPlaceReportsExpanded) .hznPlaceReportsExpandedHeading { display: none; }
.hznPlaceReportsPanel.hznPlaceReportsExpanded .hznPlaceReportsPrimaryHeading { display: none; }
.hznPlaceReportsPanel:not(.hznPlaceReportsExpanded) .hznPlaceReportsDetails { grid-template-columns: minmax(0, 1fr); }
.hznPlaceReportsPanel:not(.hznPlaceReportsExpanded) #hznPlaceReportOwner,
.hznPlaceReportsPanel:not(.hznPlaceReportsExpanded) #hznPlaceReportAccess { display: none; }
.hznPlaceReportsPanel.hznPlaceReportsExpanded { z-index: 4; width: calc(300% + 36px); border-color: color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line)); box-shadow: 0 20px 40px -30px rgba(1, 102, 157, .55); animation: hznPlaceReportsExpand 180ms ease both; }
.hznPlaceReportsExpanded .hznPlaceReportsSection { animation: hznPlaceReportsSectionReveal 190ms ease both; }
.hznPlaceReportsHistory { display: none; grid-column: 1 / -1; margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--hzn-line); min-width: 0; }
.hznPlaceReportsPanel.hznPlaceReportsExpanded .hznPlaceReportsHistory { display: block; }
.hznPlaceReportsHistory > section { margin: 0; }
.hznLiveReportEnable { padding: 6px 0 2px; }
.hznLiveReportStatusToggle .hznPlaceStatusToggleLabel { white-space: nowrap; }
.hznPlaceReportsSection { min-width: 0; padding: 16px; border: 1px solid var(--hzn-line); border-radius: 12px; background: color-mix(in srgb, var(--hzn-surface) 58%, var(--hzn-card)); }
.hznPlaceReportsSection .hznEyebrow { margin: 0; }
.hznPlaceReportsSection .hznDisplay { margin: 5px 0 3px; font-size: 1.05rem; }
.hznPlaceReportsSection .hznMuted { margin: 0; font-size: .75rem; line-height: 1.45; }
.hznPlaceReportsSection.hznPlaceOwner { grid-template-columns: minmax(0, 1fr); align-content: start; gap: 12px; }
.hznPlaceReportsSection.hznPlaceOwner form { justify-content: center; }
.hznPlaceReportsSection.hznPlaceOwner select { width: 100%; min-width: 0; max-width: none; }
.hznPlaceReportsSection.hznLiveReportCard { align-content: start; gap: 12px; }
.hznPlaceReportsSection .hznLiveReportMain { align-items: flex-start; }
.hznPlaceReportsSection .hznLiveReportIcon { width: 42px; height: 42px; border-radius: 12px; }
.hznPlaceReportsSection .hznLiveReportControls { margin-top: auto; justify-content: center; }
.hznPlaceReportsSection .hznLiveReportActions { flex: 1 0 100%; justify-content: center; }
.hznPlaceReportActions { display: flex; flex-direction: column; gap: 12px; }
.hznPlaceReportsPanel:not(.hznPlaceReportsExpanded) .hznPlaceReportActions { padding: 0; border: 0; background: transparent; }
.hznPlaceReportsOwnerSummary { display: flex; align-items: center; gap: 7px; margin: 10px 0 0; color: var(--hzn-muted); font-size: .76rem; }
.hznPlaceReportsOwnerSummary i { color: var(--hzn-good); }
.hznPlaceReportsOwnerSummary strong { overflow: hidden; color: var(--hzn-ink); text-overflow: ellipsis; white-space: nowrap; }
.hznPlaceReportsPanel .hznPlacePanelPills { margin-top: 0; }
.hznPlaceReportsPanel .hznPlacePanelActions { justify-content: center; }
.hznPlaceReportsPanel .hznReportInlineStatus { margin-top: 0; }

/* The three hero cards stretch to the tallest, and .hznPlacePanelActions already
   carries margin-top: auto so its buttons sit on the card floor. That works in
   the Scans card, where the actions are a direct child of the flex column. In
   the Reports card they are two levels down, inside a grid that only ever grew
   to fit its content -- so the auto margin had no free space to push into and
   the button floated mid-card while its neighbour's row sat at the bottom.
   Letting the details grid take the card's leftover height passes that space
   down to the actions row. Scoped to the collapsed card: expanded, the panel is
   a three-column layout that sizes itself. */
.hznPlaceReportsPanel:not(.hznPlaceReportsExpanded) .hznPlaceReportsDetails { flex: 1 1 auto; }

@keyframes hznPlaceReportsExpand {
 from { opacity: .94; }
 to { opacity: 1; }
}

@keyframes hznPlaceReportsSectionReveal {
 from { opacity: 0; transform: translateY(4px); }
 to { opacity: 1; transform: translateY(0); }
}
.hznPlaceCategoryGrid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px; margin-top: 15px; }
.hznPillarCategoryGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.hznPlaceCategory { min-width: 0; }
.hznPlaceCategory > span { display: block; overflow: hidden; color: var(--hzn-muted); font-size: 0.72rem; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.hznPillarCategoryGrid .hznPlaceCategory > span { min-height: 2em; overflow: visible; line-height: 1.35; text-overflow: clip; white-space: normal; }
.hznPillarCategoryGrid .hznPlaceCategory > span i { width: 1.15em; margin-right: 4px; color: var(--hzn-place-score-color, var(--hzn-brand)); text-align: center; }
.hznPillarCategoryGrid > .hznPlaceCategory:nth-child(3):last-child { grid-column: 1 / -1; }
.hznPlaceCategory > strong { display: block; margin: 5px 0 8px; color: var(--hzn-place-score-color, var(--hzn-ink)); font-size: 1.15rem; font-variant-numeric: tabular-nums; }
.hznPlaceCategory > strong small { color: var(--hzn-muted); font-size: 0.64rem; font-weight: 500; }
.hznPlaceCategory .hznMeterFill { background: var(--hzn-place-score-color, var(--hzn-brand)); }
.hznPlaceCategory > p { margin: 4px 0 0; color: var(--hzn-muted); font-size: 0.68rem; line-height: 1.35; }
.hznPlaceEvidence { display: block; margin-top: 7px; color: var(--hzn-muted); font-size: 0.64rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.hznContributionChart { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--hzn-line); }
.hznContributionHead { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; }
.hznContributionHead > span { color: var(--hzn-muted); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.hznContributionHead > strong { color: var(--hzn-ink); font-size: 0.78rem; white-space: nowrap; }
.hznContributionBar { display: flex; width: 100%; height: 48px; overflow: hidden; margin-top: 13px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-surface); }
.hznContributionSegment { position: relative; min-width: 0; flex: 0 0 calc(var(--hzn-contribution-share, 0) * 1%); overflow: hidden; border-right: 1px solid var(--hzn-card); background-color: color-mix(in srgb, var(--hzn-contribution-color, var(--hzn-brand)) 12%, var(--hzn-card)); background-image: repeating-linear-gradient(135deg, transparent 0, transparent 6px, color-mix(in srgb, var(--hzn-contribution-color, var(--hzn-brand)) 12%, transparent) 6px, color-mix(in srgb, var(--hzn-contribution-color, var(--hzn-brand)) 12%, transparent) 8px); }
.hznContributionSegment:last-child { border-right: 0; }
.hznContributionSegment > i { position: absolute; inset: 0 auto 0 0; width: calc(var(--hzn-contribution-fill, 0) * 1%); background: color-mix(in srgb, var(--hzn-contribution-color, var(--hzn-brand)) 32%, var(--hzn-card)); }
.hznContributionSegment > b { position: relative; z-index: 1; color: var(--hzn-ink); font-size: 0.77rem; font-style: normal; font-variant-numeric: tabular-nums; }
.hznContributionLegend { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 12px; }
.hznContributionLegend > span { display: grid; min-width: 0; grid-template-columns: 18px minmax(0, 1fr); gap: 2px 6px; align-items: center; color: var(--hzn-muted); }
.hznContributionLegend > span:first-child { justify-self: start; }
.hznContributionLegend > span:nth-child(2) { justify-self: center; }
.hznContributionLegend > span:last-child { justify-self: end; }
.hznContributionLegend > span > i { grid-row: 1 / 3; color: var(--hzn-contribution-color, var(--hzn-brand)); font-size: 0.75rem; text-align: center; }
.hznContributionLegend > span > b { overflow: hidden; color: var(--hzn-ink); font-size: 0.72rem; text-overflow: ellipsis; white-space: nowrap; }
.hznContributionLegend > span > small { font-size: 0.66rem; font-variant-numeric: tabular-nums; }
.hznPlacePillar { border-top: 4px solid var(--hzn-pillar-color, var(--hzn-brand)); }
.hznPlacePillar .hznPillarIcon { background: color-mix(in srgb, var(--hzn-pillar-color, var(--hzn-brand)) 13%, var(--hzn-card)); color: var(--hzn-pillar-color, var(--hzn-brand)); }
.hznPlacePillarSummary { display: grid; grid-template-columns: 24px auto; grid-template-areas: 'impact score'; gap: 12px; align-items: center; justify-items: end; }
.hznPlacePillarSummary > strong { grid-area: score; color: var(--hzn-pillar-color, var(--hzn-ink)); font-size: 1.7rem; line-height: 1; font-variant-numeric: tabular-nums; }
.hznPlacePillarSummary > strong small { color: var(--hzn-muted); font-size: 0.66rem; font-weight: 500; }
.hznPlaceSectionHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.hznPlaceSectionHead h2 { margin: 4px 0 0; font-size: 1.45rem; }
.hznPlaceCoverageAuditCard > .hznPillarGrid { margin-top: 20px; }
.hznPlaceCoverageAuditLink { cursor: pointer; }
.hznPlaceCoverageAuditCard .hznPlacePillar { cursor: pointer; transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease; }
.hznPlaceCoverageAuditCard .hznPlacePillar:hover { border-color: color-mix(in srgb, var(--hzn-brand) 38%, var(--hzn-line)); box-shadow: 0 18px 36px -24px rgba(1, 102, 157, 0.55); transform: translateY(-1px); }
.hznPlaceCoverageAuditCard .hznPlacePillar:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 28%, transparent); outline-offset: 3px; }
.hznPlaceUpgradeStrip { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 18px 20px; border-color: color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line)); background: color-mix(in srgb, var(--hzn-data-soft) 45%, var(--hzn-card)); }
.hznPlaceUpgradeIcon { width: 42px; height: 42px; border-radius: 12px; background: var(--hzn-card); color: var(--hzn-brand); font-size: 1.05rem; box-shadow: inset 0 0 0 1px var(--hzn-line); }
.hznPlaceUpgradeCopy { min-width: 0; }
.hznPlaceUpgradeCopy .hznEyebrow { margin: 0; }
.hznPlaceUpgradeCopy h2 { margin: 4px 0 3px; font-size: 1.05rem; }
.hznPlaceUpgradeCopy > .hznMuted { margin: 0; font-size: 0.82rem; line-height: 1.45; }
.hznPlaceUpgradeFeatures { gap: 7px 14px; margin-top: 9px; }
.hznPlaceUpgradeFeatures span { display: inline-flex; align-items: center; gap: 6px; color: var(--hzn-muted); font-size: 0.75rem; font-weight: 700; }
.hznPlaceUpgradeFeatures i { color: var(--hzn-brand); }
.hznAuditNetworkHead { align-items: flex-start; }
.hznAuditNetworkHead h3 { margin: 5px 0 6px; }
.hznAuditNetworkHead .hznMuted { margin: 0; }
.hznAuditNetworkEmpty { margin-top: 16px; padding: 18px; }
.hznPhotoUnavailableNote { margin-bottom: 18px; }
.hznOptimizeProgress { gap: 12px; }
.hznOptimizeProgress > div:first-child { display: flex; flex-direction: column; align-items: flex-end; }
.hznOptimizeProgress > div:first-child strong { font-size: 0.8rem; }
.hznOptimizeProgress > div:first-child span { margin-top: 2px; color: var(--hzn-muted); font-size: 0.7rem; }
.hznOptimizeProgress > strong { width: 38px; font-size: 0.8rem; font-variant-numeric: tabular-nums; }
.hznOptimizeMeter { width: 120px; height: 8px; overflow: hidden; border-radius: 999px; background: var(--hzn-surface); }
.hznOptimizeMeter span { display: block; height: 100%; border-radius: inherit; background: var(--hzn-brand); }
.hznOptimizeList { gap: 11px; margin-top: 14px; }
.hznOptimizeItem { display: flex; align-items: flex-start; gap: 13px; padding: 16px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-card); box-shadow: var(--hzn-shadow-card); }
.hznOptimizeCheck { width: 26px; height: 26px; flex: none; margin-top: 1px; border: 1px solid var(--hzn-line); border-radius: 7px; background: var(--hzn-card); color: transparent; cursor: pointer; }
.hznOptimizeCheck:hover { border-color: var(--hzn-brand); }
.hznOptimizeDone { opacity: 0.68; }
.hznOptimizeDone .hznOptimizeCheck { border-color: var(--hzn-brand); background: var(--hzn-brand); color: var(--hzn-brand-fg); }
.hznOptimizeDone .hznOptimizeAction { color: var(--hzn-muted); text-decoration: line-through; }
.hznOptimizeBody { min-width: 0; flex: 1; }
.hznOptimizeAction { margin: 6px 0 0; font-size: 0.92rem; font-weight: 800; }
.hznOptimizeWhy { margin: 5px 0 0; color: var(--hzn-muted); font-size: 0.8rem; line-height: 1.45; }
.hznOptimizeHow { margin-top: 7px; }
.hznOptimizeHow summary { width: max-content; color: var(--hzn-brand); font-size: 0.78rem; font-weight: 700; cursor: pointer; }
.hznOptimizeInstructions { margin-top: 8px; padding: 12px 14px; border-radius: 9px; background: var(--hzn-surface); font-size: 0.8rem; line-height: 1.5; }
.hznOptimizeInstructions ol { margin: 0; padding-left: 20px; }
.hznOptimizeInstructions li + li { margin-top: 6px; }
.hznOptimizeInstructions p { margin: 10px 0 0; padding-top: 10px; border-top: 1px solid var(--hzn-line); }
.hznListingRetry { justify-content: center; gap: 10px; margin-top: 16px; }
.hznEnteredAddressOffer { margin-top: 14px; padding: 12px 14px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line)); border-radius: 9px; background: color-mix(in srgb, var(--hzn-brand) 5%, var(--hzn-surface)); }
.hznEnteredAddressOffer p { margin: 0; font-size: 0.82rem; line-height: 1.5; }
.hznEnteredAddressOffer p + p { margin-top: 6px; }
.hznEnteredAddressOffer strong { color: var(--hzn-text); overflow-wrap: anywhere; }
.hznEnteredAddressOffer .hznInlineAlert { margin-top: 10px; }
.hznPlaceCoverageNote { margin: 7px 0 0; font-size: 0.78rem; }
.hznPlaceCoverage { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 10px; margin-top: 16px; }

@media (max-width: 1240px) {
 .hznPlaceHero { grid-template-columns: 1fr; }
 .hznPlaceReportsPanel.hznPlaceReportsExpanded { width: 100%; }
 .hznPlaceReportsDetails { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 920px) {
 .hznOpportunitySummary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .hznPlaceCategoryGrid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
 .hznOpportunityRow { grid-template-columns: 72px minmax(0, 1fr); }
 .hznOpportunityScore { grid-column: 2; align-items: flex-start; }
 .hznPlaceHead, .hznPlaceInactive, .hznPlaceDeletedState, .hznPlaceSectionHead { align-items: flex-start; flex-direction: column; }
 .hznPlaceUpgradeStrip { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
 .hznPlaceUpgradeStrip > .hznBtn { grid-column: 1 / -1; justify-content: center; }
 .hznInlineConfirm { align-items: stretch; flex-direction: column; }
 .hznInlineConfirmActions { width: 100%; }
 .hznInlineConfirmActions .hznBtn { flex: 1; }
 .hznPlaceHeadMain { width: 100%; }
 .hznPlacePanelActions .hznBtn { flex: 1 1 auto; }
 .hznPlacePillarSummary { gap: 8px; }
 .hznContributionLegend { grid-template-columns: 1fr; }
 .hznContributionLegend > span,
 .hznContributionLegend > span:first-child,
 .hznContributionLegend > span:nth-child(2),
 .hznContributionLegend > span:last-child { justify-self: stretch; }
 .hznContributionLegend > span > b { white-space: normal; }
 .hznOptimizeProgress { width: 100%; flex-wrap: wrap; }
 .hznOptimizeProgress > div:first-child { align-items: flex-start; flex: 1 1 100%; }
 .hznOptimizeMeter { flex: 1; }
 .hznPlaceCategoryGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 520px) {
 .hznPlaceHeadMain { align-items: flex-start; flex-direction: column; }
 .hznPlaceHeroPhoto { width: min(100%, 360px); }
}

@media (max-width: 440px) {
 .hznOpportunitySummary { grid-template-columns: 1fr; }
 .hznOpportunityRow { grid-template-columns: 1fr; }
 .hznOpportunityValue { min-height: 0; align-items: flex-start; text-align: left; }
 .hznOpportunityScore { grid-column: 1; }
 .hznPlaceCategoryGrid, .hznPlaceCoverage { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
 .hznPlaceReportsPanel,
 .hznPlaceReportsExpanded .hznPlaceReportsSection { animation: none; transition: none; }
}

/* Purpose-led visualization catalog and portfolio comparison views. */
.hznVisualizationCatalog {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 16px;
}

.hznVisualizationCard {
 display: grid;
 grid-template-columns: 52px minmax(0, 1fr) 22px;
 align-items: center;
 gap: 16px;
 min-width: 0;
 padding: 22px;
 border: 1px solid var(--hzn-line);
 border-radius: var(--hzn-radius-card);
 background: var(--hzn-card);
 box-shadow: var(--hzn-shadow-card);
 color: var(--hzn-ink);
 font: inherit;
 text-align: left;
 cursor: pointer;
 transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.hznVisualizationCard:hover,
.hznVisualizationCard:focus-visible {
 border-color: color-mix(in srgb, var(--hzn-brand) 45%, var(--hzn-line));
 box-shadow: 0 14px 34px rgba(1, 53, 84, 0.13);
 transform: translateY(-2px);
}

.hznVisualizationCardWide { grid-column: 1 / -1; }
.hznVisualizationIcon {
 width: 52px;
 height: 52px;
 border-radius: 14px;
 background: color-mix(in srgb, var(--hzn-brand) 12%, var(--hzn-card));
 color: var(--hzn-brand);
 font-size: 1.35rem;
}
.hznVisualizationCard .hznEyebrow { display: block; margin-bottom: 4px; }
.hznVisualizationCard strong { display: block; margin-bottom: 6px; font-size: 1rem; }
.hznVisualizationCard .hznMuted { display: block; font-size: 0.8rem; line-height: 1.5; }
.hznVisualizationArrow { justify-self: end; color: var(--hzn-brand); }
.hznVisualizationPageHead { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }

.hznExploreGrid {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 20px;
}
.hznExploreCard {
 position: relative;
 min-width: 0;
 min-height: 520px;
 overflow: hidden;
 padding: 28px;
}
.hznExploreCard::before {
 position: absolute;
 top: 0;
 right: 0;
 left: 0;
 height: 5px;
 background: var(--hzn-brand);
 content: "";
}
.hznExploreCardWebsite::before { background: var(--hzn-accent); }
.hznExploreCardHead {
 gap: 16px;
 margin-bottom: 26px;
}
.hznExploreIcon {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 width: 58px;
 height: 58px;
 flex: 0 0 58px;
 border-radius: 18px;
 background: color-mix(in srgb, var(--hzn-brand) 12%, white);
 color: var(--hzn-brand);
 font-size: 1.55rem;
}
.hznExploreCardWebsite .hznExploreIcon {
 background: color-mix(in srgb, var(--hzn-accent) 13%, white);
 color: var(--hzn-accent);
}
.hznExploreCard h2 {
 margin: 6px 0 10px;
 font-size: 1.55rem;
 line-height: 1.15;
}
.hznExploreLead {
 margin: 0;
 color: var(--hzn-muted);
 font-size: 0.98rem;
 line-height: 1.65;
}
.hznExploreBenefits {
 display: grid;
 gap: 14px;
 margin: 24px 0 28px;
 padding: 0;
 list-style: none;
}
.hznExploreBenefits li {
 display: grid;
 grid-template-columns: 22px minmax(0, 1fr);
 gap: 10px;
 align-items: start;
 color: var(--hzn-ink);
 font-size: 0.9rem;
 line-height: 1.5;
}
.hznExploreBenefits i {
 margin-top: 3px;
 color: var(--hzn-good);
}
.hznExploreVideo {
 position: relative;
 width: 100%;
 max-width: 480px;
 aspect-ratio: 16 / 9;
 margin: 0 auto 24px;
 overflow: hidden;
 border: 2px solid var(--hzn-ink);
 border-radius: 14px;
 background: #000;
}
.hznExploreVideo iframe {
 display: block;
 width: 100%;
 height: 100%;
 border: 0;
}
.hznExploreActions {
 gap: 10px;
 margin-top: auto;
}
.hznExploreLaunchForm {
 display: grid;
 gap: 18px;
 margin: 2px 0 24px;
 padding: 20px;
 border: 1px solid color-mix(in srgb, var(--hzn-brand) 28%, var(--hzn-line));
 border-radius: 16px;
 background: color-mix(in srgb, var(--hzn-brand) 5%, var(--hzn-card));
}
.hznExploreLaunchFormHead {
 display: grid;
 grid-template-columns: 42px minmax(0, 1fr);
 gap: 12px;
 align-items: center;
}
.hznExploreLaunchFormHead > span {
 display: grid;
 width: 42px;
 height: 42px;
 place-items: center;
 border-radius: 13px;
 background: var(--hzn-blue-soft);
 color: var(--hzn-brand);
 font-size: 1.15rem;
}
.hznExploreLaunchFormHead strong,
.hznExploreLaunchFormHead p { display: block; margin: 0; }
.hznExploreLaunchFormHead p { margin-top: 4px; color: var(--hzn-muted); font-size: 0.8rem; line-height: 1.45; }
.hznExploreLaunchForm .hznPublicProfileManagementOptions { grid-template-columns: 1fr; }
.hznExploreLaunchFormActions {
 gap: 10px;
}
.hznExploreLaunchReady {
 display: grid;
 grid-template-columns: 42px minmax(0, 1fr) auto;
 gap: 12px;
 align-items: center;
 margin: 2px 0 24px;
 padding: 16px;
 border: 1px solid color-mix(in srgb, var(--hzn-good) 28%, var(--hzn-line));
 border-radius: 16px;
 background: var(--hzn-good-soft);
}
.hznExploreLaunchReady > span {
 display: grid;
 width: 42px;
 height: 42px;
 place-items: center;
 border-radius: 50%;
 background: color-mix(in srgb, var(--hzn-good) 14%, white);
 color: var(--hzn-good);
 font-size: 1.2rem;
}
.hznExploreLaunchReady strong,
.hznExploreLaunchReady p { display: block; margin: 0; }
.hznExploreLaunchReady p { margin-top: 3px; color: var(--hzn-muted); font-size: 0.78rem; }

.hznPerformanceCard,
.hznComparisonMatrixCard { padding: 0; overflow: hidden; }
.hznVisualizationSkeleton {
 min-height: 230px;
 justify-content: center;
 gap: 10px;
 padding: 36px;
 text-align: center;
}
.hznVisualizationSkeleton > strong { margin-top: 4px; font-size: 0.9rem; }
.hznVisualizationSkeleton > span:last-child { color: var(--hzn-muted); font-size: 0.75rem; }
.hznPerformanceTableWrap,
.hznComparisonMatrixWrap { width: 100%; overflow-x: auto; }
.hznPerformanceTable,
.hznComparisonMatrix {
 width: 100%;
 border-collapse: separate;
 border-spacing: 0;
 color: var(--hzn-ink);
 font-size: 0.8rem;
}
.hznPerformanceTable { table-layout: fixed; }
.hznPerformanceTable th:nth-child(1) { width: 7%; }
.hznPerformanceTable th:nth-child(2) { width: 7%; }
.hznPerformanceTable th:nth-child(3) { width: 26%; }
.hznPerformanceTable th:nth-child(4) { width: 16%; }
.hznPerformanceTable th:nth-child(5),
.hznPerformanceTable th:nth-child(6) { width: 22%; }
.hznPerformanceTable th,
.hznPerformanceTable td,
.hznComparisonMatrix th,
.hznComparisonMatrix td {
 padding: 14px 12px;
 border-bottom: 1px solid var(--hzn-line);
 text-align: left;
 vertical-align: middle;
}
.hznPerformanceTable thead th,
.hznComparisonMatrix thead th {
 position: sticky;
 top: 0;
 z-index: 2;
 background: var(--hzn-surface);
 color: var(--hzn-muted);
 font-size: 0.66rem;
 font-weight: 800;
 letter-spacing: 0.06em;
 text-transform: uppercase;
 white-space: nowrap;
}
.hznPerformanceTable th,
.hznPerformanceTable td { padding-right: 8px; padding-left: 8px; }
.hznPerformanceTable tbody tr:last-child > *,
.hznComparisonMatrix tbody tr:last-child > * { border-bottom: 0; }
.hznPerformanceTable tbody tr:hover,
.hznComparisonMatrix tbody tr:hover { background: color-mix(in srgb, var(--hzn-brand) 4%, var(--hzn-card)); }
.hznPerformanceRow { cursor: pointer; transition: background 150ms ease, box-shadow 150ms ease; }
.hznPerformanceRow:hover {
 background: color-mix(in srgb, var(--hzn-brand) 6%, var(--hzn-card));
 box-shadow: inset 3px 0 0 var(--hzn-brand);
}
.hznPerformanceInactive { opacity: 0.62; }
.hznPerformancePlace { display: block; min-width: 0; overflow-wrap: anywhere; }
.hznPerformancePlaceLine { min-width: 0; gap: 7px; }
.hznPerformancePlaceLink { min-width: 0; flex: 1 1 auto; border-radius: 4px; color: inherit; text-decoration: none; }
.hznPerformancePlaceLink:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 3px; }
.hznPortfolioCellLink { border-radius: 8px; color: inherit; text-decoration: none; }
.hznPortfolioCellLink:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 3px; }
.hznPerformanceScoreLink { display: inline-flex; }
.hznPerformanceMeasureLink { width: 100%; }
.hznPerformancePlaceLine .hznPerformancePlace { width: 100%; }
.hznPerformanceMeta {
 display: block;
 margin-top: 3px;
 color: var(--hzn-muted);
 font-size: 0.7rem;
 line-height: 1.35;
}
.hznPerformanceMeasure {
 display: grid;
 width: 100%;
 max-width: 100%;
 box-sizing: border-box;
 grid-template-columns: auto minmax(0, 1fr);
 align-items: center;
 gap: 10px;
 min-width: 0;
 padding: 0;
 border: 0;
 background: transparent;
}
.hznPerformanceMeasure > strong {
 display: block;
 font-size: 1rem;
 font-variant-numeric: tabular-nums;
 text-align: right;
}
.hznPerformanceMeasure > strong small { color: var(--hzn-muted); font-size: 0.56rem; }
.hznPerformanceTrend {
 width: 100%;
 min-width: 0;
 box-sizing: border-box;
 padding-left: 0;
 border-left: 0;
 flex-direction: row;
 flex-wrap: nowrap;
 gap: 7px;
}
.hznPerformanceSparkPlot {
 display: block;
 flex: 0 1 74px;
 width: 74px;
 height: 24px;
}
.hznPerformanceSpark { width: 74px; min-width: 0; height: 24px; overflow: visible; }
.hznPerformanceSpark polyline {
 fill: none;
 stroke: var(--hzn-brand);
 stroke-width: 2.5;
 stroke-linecap: round;
 stroke-linejoin: round;
 vector-effect: non-scaling-stroke;
}
.hznPerformanceNoTrend { width: auto; min-height: 0; color: var(--hzn-muted); font-size: 0.65rem; line-height: 1.2; white-space: normal; }
.hznPerformanceDelta,
.hznMatrixStatus {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 gap: 5px;
 width: max-content;
 padding: 5px 8px;
 border: 1px solid currentColor;
 border-radius: 999px;
 background: color-mix(in srgb, currentColor 8%, var(--hzn-card));
 font-size: 0.65rem;
 font-weight: 800;
 white-space: nowrap;
}
.hznVizGood { color: #147d64; }
.hznVizWarn { color: #b66b00; }
.hznVizBad { color: #d52c2c; }
.hznVizUnknown { color: var(--hzn-unknown); }

.hznMatrixLegend {
 gap: 8px;
 padding: 16px 18px;
 border-bottom: 1px solid var(--hzn-line);
}
.hznMatrixGroup + .hznMatrixGroup { border-top: 10px solid var(--hzn-surface); }
.hznComparisonMatrix { min-width: 760px; table-layout: fixed; }
.hznComparisonMatrix th:first-child {
 position: sticky;
 left: 0;
 z-index: 1;
 width: 240px;
 min-width: 240px;
 background: var(--hzn-card);
}
.hznComparisonMatrix thead th:first-child {
 z-index: 3;
 background: var(--hzn-surface);
}
.hznComparisonMatrix thead th:not(:first-child) {
 width: 54px;
 min-width: 54px;
 padding: 10px 5px;
 text-align: center;
}
.hznComparisonMatrix thead th span,
.hznComparisonMatrix thead th small { display: block; }
.hznComparisonMatrix .hznMatrixTypeHeading {
 padding: 12px 14px;
 white-space: normal;
}
.hznComparisonMatrix .hznMatrixTypeHeading .hznEyebrow {
 margin: 0 0 3px;
 color: var(--hzn-brand);
}
.hznComparisonMatrix .hznMatrixTypeHeading strong {
 display: block;
 color: var(--hzn-ink);
 font-size: 0.82rem;
 line-height: 1.25;
 letter-spacing: 0;
 text-transform: none;
}
.hznComparisonMatrix .hznMatrixTypeHeading small {
 display: block;
 margin-top: 3px;
 color: var(--hzn-muted);
 font-size: 0.61rem;
 font-weight: 600;
 line-height: 1.3;
 letter-spacing: 0;
 text-transform: none;
 white-space: normal;
}
.hznMatrixMetricHeading { cursor: help; }
.hznMatrixMetricHeading:hover,
.hznMatrixMetricHeading:focus { z-index: 5; }
.hznMatrixMetricHeading:focus-visible {
 outline: 2px solid var(--hzn-brand);
 outline-offset: -3px;
}
.hznMatrixHeaderTooltip {
 position: absolute;
 top: calc(100% - 2px);
 left: 50%;
 z-index: 8;
 width: max-content;
 max-width: 190px;
 padding: 8px 10px;
 border: 1px solid color-mix(in srgb, var(--hzn-line) 72%, var(--hzn-ink));
 border-radius: 8px;
 background: var(--hzn-ink);
 box-shadow: 0 8px 20px rgba(13, 31, 46, 0.18);
 color: #fff;
 font-size: 0.7rem;
 font-weight: 700;
 letter-spacing: 0;
 line-height: 1.3;
 opacity: 0;
 pointer-events: none;
 text-align: center;
 text-transform: none;
 transform: translate(-50%, -4px);
 transition: opacity 120ms ease, transform 120ms ease, visibility 120ms ease;
 visibility: hidden;
 white-space: normal;
}
.hznComparisonMatrix .hznMatrixHeaderTooltip strong,
.hznComparisonMatrix .hznMatrixHeaderTooltip small {
 display: block;
 color: inherit;
 font: inherit;
}
.hznComparisonMatrix .hznMatrixHeaderTooltip small { margin-top: 2px; opacity: 0.78; }
.hznMatrixMetricHeading:hover .hznMatrixHeaderTooltip,
.hznMatrixMetricHeading:focus .hznMatrixHeaderTooltip {
 opacity: 1;
 transform: translate(-50%, 0);
 visibility: visible;
}
.hznMatrixMetricHeading:nth-child(2) .hznMatrixHeaderTooltip {
 left: 0;
 transform: translate(0, -4px);
}
.hznMatrixMetricHeading:nth-child(2):hover .hznMatrixHeaderTooltip,
.hznMatrixMetricHeading:nth-child(2):focus .hznMatrixHeaderTooltip { transform: translate(0, 0); }
.hznMatrixMetricHeading:nth-last-child(2) .hznMatrixHeaderTooltip {
 right: 0;
 left: auto;
 transform: translate(0, -4px);
}
.hznMatrixMetricHeading:nth-last-child(2):hover .hznMatrixHeaderTooltip,
.hznMatrixMetricHeading:nth-last-child(2):focus .hznMatrixHeaderTooltip { transform: translate(0, 0); }
.hznMatrixSiteLogo {
 display: block;
 width: 28px;
 height: 28px;
 margin: 0 auto;
 object-fit: contain;
}
.hznMatrixFactorIcon {
 display: grid !important;
 width: 28px;
 height: 28px;
 margin: 0 auto;
 place-items: center;
 border-radius: 8px;
 background: color-mix(in srgb, var(--hzn-brand) 10%, var(--hzn-card));
 color: var(--hzn-brand);
 font-size: 28px;
}
.hznComparisonMatrix thead .hznMatrixScoreHeading {
 width: 68px;
 min-width: 68px;
 color: var(--hzn-ink);
}
.hznComparisonMatrix td { text-align: center; }
.hznMatrixPlaceButton {
 display: block;
 width: 100%;
 padding: 0;
 border: 0;
 background: transparent;
 color: inherit;
 font: inherit;
 text-align: left;
 cursor: pointer;
}
.hznMatrixPlaceButton strong,
.hznMatrixPlaceButton span { display: block; }
.hznMatrixPlaceButton strong { font-size: 0.78rem; }
.hznMatrixPlaceButton span { margin-top: 4px; color: var(--hzn-muted); font-size: 0.65rem; line-height: 1.35; }
.hznComparisonMatrix td .hznMatrixStatus { margin: 0 auto; }
.hznMatrixIconStatus {
 display: inline-grid;
 width: 30px;
 height: 30px;
 padding: 0;
 gap: 0;
 place-items: center;
 line-height: 1;
 font-size: 20px;
 font-synthesis: none;
}
/* Icon-font glyphs do not all have the same advance width: fa-circle-check,
   fa-circle-half-stroke and fa-rotate are each a different number of ems wide.
   Boxing the glyph at 1em therefore centred each icon on its own width rather
   than on the cell, which is why a grid of mixed icons never lined up. The
   glyph now gets the whole 30px cell and is centred as a line box: one
   baseline, positioned by the container's own height, identical for every
   icon. fa-fw in the markup makes the advance widths uniform as well.

   Giving ::before and ::after their own 100% boxes made it worse rather than
   better: they are text runs, so the box does not follow the glyph, and for a
   duotone icon the two layers became separate grid rows and stacked instead of
   superimposing. Both rules are gone. */
.hznMatrixIconStatus > i {
 display: block;
 width: 100%;
 line-height: 1;
 text-align: center;
}
.hznComparisonMatrix .hznMatrixScoreCell { width: 68px; min-width: 68px; padding: 10px 5px; }
.hznMatrixRowScore { display: inline-flex; align-items: baseline; justify-content: center; font-size: 0.9rem; font-weight: 900; font-variant-numeric: tabular-nums; }
.hznMatrixRowScore small { margin-left: 1px; color: currentColor; font-size: 0.52rem; font-weight: 700; }

@media (max-width: 700px) {
 .hznVisualizationCatalog { grid-template-columns: 1fr; }
 .hznVisualizationPageHead { align-items: flex-start; flex-direction: column; }
 .hznExploreGrid { grid-template-columns: 1fr; }
 .hznExploreCard { min-height: 0; }
 .hznExploreLaunchReady { grid-template-columns: 42px minmax(0, 1fr); }
 .hznExploreLaunchReady .hznBtn { grid-column: 1 / -1; justify-content: center; }
 .hznPerformanceTable { min-width: 900px; }
 .hznHistoryRow { grid-template-columns: 46px minmax(0, 1fr) auto; }
 .hznHistoryRow .hznListScore { width: 46px; }
 .hznHistoryRow .hznHistTime { grid-column: 3; grid-row: 1; }
 .hznHistoryRow > .hznPill { grid-column: 2; width: max-content; max-width: 100%; justify-self: start; }
}


.hznSettingsReportIcon,
.hznSettingsReportType > span {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 flex: 0 0 auto;
 width: 46px;
 height: 46px;
 border-radius: 14px;
 color: var(--hzn-brand);
 background: var(--hzn-data-soft);
 font-size: 1.25rem;
}

.hznSettingsReportGrid {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 18px;
}
.hznLandlordRecipientCard { display: grid; gap: 18px; }
.hznLandlordRecipientCard .hznSettingsReportType { justify-content: flex-start; }
.hznLandlordRecipientCard .hznSettingsReportType .hznMuted { max-width: none; margin: 5px 0 0; }
.hznLandlordRecipientFields { grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(180px, 0.72fr); }

.hznSettingsReportType {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  justify-content: flex-start;
  margin-bottom: 20px;
}

.hznSettingsReportType h3,
.hznSettingsReportType p {
 margin: 0;
}

.hznReportDefaults {
 display: grid;
 grid-template-columns: repeat(2, minmax(0, 1fr));
 gap: 10px 16px;
 margin: 0 0 20px;
 padding: 16px;
 border: 1px solid var(--hzn-line);
 border-radius: 14px;
}

.hznReportDefaults legend {
 padding: 0 7px;
 color: var(--hzn-muted);
 font-family: "IBM Plex Mono", monospace;
 font-size: .72rem;
 letter-spacing: .11em;
 text-transform: uppercase;
}

.hznReportDefaults label {
 display: flex;
 align-items: center;
 gap: 8px;
 color: var(--hzn-ink);
 font-weight: 650;
}

.hznReportEditorLabel {
 display: block;
 margin: 18px 0 8px;
 color: var(--hzn-ink);
 font-weight: 750;
}

.hznReportSettingsForm .tox-tinymce {
 border-color: var(--hzn-line);
 border-radius: 12px;
}

.hznReportContent {
 margin-top: 18px;
 padding: 16px;
 border: 1px solid var(--hzn-line);
 border-radius: 14px;
}

.hznReportContent > legend {
 padding: 0 7px;
 color: var(--hzn-muted);
 font-family: "IBM Plex Mono", monospace;
 font-size: .72rem;
 letter-spacing: .11em;
 text-transform: uppercase;
}

.hznReportContentHead {
 gap: 14px;
}

.hznReportContentHead h4,
.hznReportContentHead p {
 margin: 0;
}

.hznReportContentPreview {
 max-height: 320px;
 margin-top: 14px;
 padding: 18px;
 overflow: auto;
 border: 1px solid var(--hzn-line);
 border-radius: 12px;
 background: var(--hzn-surface);
 color: var(--hzn-ink);
 line-height: 1.55;
}

.hznReportContentPreview > :first-child { margin-top: 0; }
.hznReportContentPreview > :last-child { margin-bottom: 0; }
.hznReportContentPreview img { max-width: 100%; height: auto; }
.hznReportContentPreview table { width: 100%; border-collapse: collapse; }
.hznReportContentPreview th,
.hznReportContentPreview td { padding: 8px 10px; border: 1px solid var(--hzn-line); text-align: left; }

.hznReportContentEmpty {
 display: flex;
 align-items: flex-start;
 gap: 12px;
 margin-top: 14px;
 padding: 16px;
 border: 1px dashed var(--hzn-line);
 border-radius: 12px;
 background: var(--hzn-surface);
}

.hznReportContentEmpty > i {
 margin-top: 2px;
 color: var(--hzn-brand);
 font-size: 1.2rem;
}

.hznReportContentEmpty strong,
.hznReportContentEmpty p {
 display: block;
 margin: 0;
}

.hznReportContentEmpty p {
 margin-top: 4px;
 color: var(--hzn-muted);
 font-size: 0.78rem;
 line-height: 1.45;
}

.hznReportContentCancel { margin-top: 10px; }

.hznSettingsReportUnavailable {
 display: grid;
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 18px;
}

.hznSettingsReportUnavailable article {
 display: flex;
 align-items: flex-start;
 gap: 15px;
}

.hznSettingsReportUnavailable h3,
.hznSettingsReportUnavailable p {
 margin: 0;
}

.hznSettingsReportUnavailable p {
 margin-top: 8px;
 color: var(--hzn-muted);
 font-size: 0.82rem;
 line-height: 1.5;
}

.hznSettingsReportPlanNote {
 gap: 18px;
}

.hznSettingsReportPlanNote h3,
.hznSettingsReportPlanNote p {
 margin: 0;
}

@media (max-width: 900px) {
 .hznSettingsReportGrid {
  grid-template-columns: 1fr;
 }

 .hznLandlordRecipientFields {
  grid-template-columns: 1fr;
 }

 .hznSettingsReportUnavailable {
  grid-template-columns: 1fr;
 }
}

@media (max-width: 600px) {
 .hznReportContentHead,
 .hznSettingsReportPlanNote,
 .hznPlaceReportUpgrade {
  align-items: flex-start;
  flex-direction: column;
 }
}

.hznLiveReportCard {
 display: grid;
 gap: 16px;
}

.hznLiveReportMain {
 gap: 15px;
}

.hznLiveReportMain h2,
.hznLiveReportMain p {
 margin: 0;
}

.hznLiveReportMain .hznMuted {
 margin-top: 5px;
 max-width: none;
}

.hznLiveReportIcon {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 flex: 0 0 auto;
 width: 48px;
 height: 48px;
 border-radius: 15px;
 color: var(--hzn-brand);
 background: var(--hzn-blue-soft);
 font-size: 1.25rem;
}

.hznLiveReportMessage {
 margin: 0;
}

.hznLiveReportControls,
.hznLiveReportActions,
.hznLiveReportLink {
 display: flex;
 align-items: center;
 gap: 10px;
}

.hznLiveReportControls {
 justify-content: space-between;
 flex-wrap: wrap;
}

.hznLiveReportLink {
 min-width: 0;
}

.hznLiveReportLink > span {
 color: var(--hzn-brand);
}

.hznLiveReportLink a {
 display: block;
 overflow: hidden;
 color: var(--hzn-brand);
 font-weight: 750;
 word-break: break-all;
 overflow-wrap: anywhere;
 white-space: normal;
}

.hznLiveReportWarning {
 display: flex;
 align-items: flex-start;
 gap: 9px;
 padding: 12px 14px;
 border-radius: 12px;
 color: var(--hzn-warning-fg);
 background: var(--hzn-warning-soft);
}

.hznPlaceReportHistoryHead {
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
 margin-bottom: 14px;
}

.hznPlaceReportHistoryHead h2,
.hznPlaceReportHistoryHead p {
 margin: 0;
}

.hznPlaceReportHistoryHead .hznMuted {
 margin-top: 5px;
 max-width: none;
}

.hznPlaceReportRows {
 display: grid;
 gap: 8px;
}

.hznPlaceReportUpgrade {
 gap: 12px;
 margin-top: 10px;
}

.hznPlaceReportEmpty {
 min-height: 0;
 padding: 22px 20px;
}

.hznAccountPricingIdentity,
.hznAccountPricingHead {
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
 gap: 20px;
}

.hznAccountPricingIdentity h2,
.hznAccountPricingIdentity p,
.hznAccountPricingHead h2,
.hznAccountPricingHead p {
 margin: 0;
}

.hznAccountPricingIdentity .hznMuted,
.hznAccountPricingHead .hznMuted {
 margin-top: 6px;
 max-width: none;
}

.hznAccountPricingSummary {
 display: grid;
 grid-template-columns: repeat(3, minmax(0, 1fr));
 gap: 16px;
}

.hznAccountPricingMetric {
 display: grid;
 gap: 5px;
}

.hznAccountPricingMetric > span,
.hznAccountPricingMetric > small {
 color: var(--hzn-muted);
 font-size: 0.75rem;
}

.hznAccountPricingMetric > strong {
 color: var(--hzn-brand);
 font-size: 1.75rem;
 font-variant-numeric: tabular-nums;
 line-height: 1.1;
}

.hznAccountPricingFields {
 display: grid;
 grid-template-columns: minmax(0, 1fr) minmax(220px, 0.5fr);
 gap: 16px;
}

.hznAccountPricingFields label,
.hznAccountPricingReason {
 display: grid;
 min-width: 0;
 gap: 7px;
 color: var(--hzn-ink);
 font-size: 0.78rem;
 font-weight: 750;
}

.hznAccountPricingFields label > span > small {
 color: var(--hzn-muted);
 font-weight: 500;
}

.hznAccountPricingFields input,
.hznAccountPricingReason textarea {
 box-sizing: border-box;
 width: 100%;
 min-width: 0;
 max-width: 100%;
 min-height: 42px;
 padding: 10px 12px;
 border: 1px solid var(--hzn-line);
 border-radius: var(--hzn-radius-control);
 background: var(--hzn-card);
 color: var(--hzn-ink);
 font: inherit;
 font-weight: 500;
}

.hznAccountPricingReason {
 margin-top: 16px;
}

.hznAccountPricingReason textarea {
 resize: vertical;
}

.hznMoneyInput {
 display: grid;
 grid-template-columns: auto minmax(0, 1fr);
 align-items: center;
 overflow: hidden;
 border: 1px solid var(--hzn-line);
 border-radius: var(--hzn-radius-control);
 background: var(--hzn-card);
}

.hznMoneyInput > span {
 padding: 0 0 0 12px;
 color: var(--hzn-muted);
 font-size: 0.9rem;
}

.hznMoneyInput input {
 border: 0;
}

.hznMoneyInput:focus-within,
.hznAccountPricingFields input:focus,
.hznAccountPricingReason textarea:focus {
 border-color: var(--hzn-brand);
 outline: 2px solid color-mix(in srgb, var(--hzn-brand) 18%, transparent);
 outline-offset: 1px;
}

.hznAccountPricingActions {
 justify-content: flex-start;
}

.hznAddUserCard {
 margin-top: 18px;
}

.hznAddUserFields {
 grid-template-columns: repeat(6, minmax(0, 1fr));
}

.hznAddUserFields > label {
 grid-column: span 2;
}

.hznAddUserFields > .hznFieldHalf {
 grid-column: span 3;
}

.hznAddUserFields small {
 font-size: 0.62rem;
 font-weight: 500;
 letter-spacing: 0;
 text-transform: none;
}

.hznPasswordPage {
 width: min(620px, calc(100% - 32px));
 margin: clamp(32px, 8vh, 90px) auto;
}

.hznPasswordIntro {
 margin-bottom: 18px;
 text-align: center;
}

.hznPasswordIntro h1 {
 margin: 8px 0;
}

.hznPasswordIntro p {
 max-width: none;
}

.hznPasswordCard {
 padding: clamp(22px, 5vw, 38px);
}

.hznPasswordLabel {
 display: block;
 margin: 16px 0 6px;
 color: var(--hzn-muted);
 font-size: 0.72rem;
 font-weight: 800;
 letter-spacing: 0.06em;
 text-transform: uppercase;
}

.hznPasswordInputWrap {
 position: relative;
}

.hznPasswordInput {
 width: 100%;
 min-width: 0;
 box-sizing: border-box;
 padding: 12px 44px 12px 13px;
 border: 1px solid var(--hzn-line);
 border-radius: var(--hzn-radius-control);
 background: var(--hzn-surface);
 color: var(--hzn-ink);
 font: inherit;
}

#hznForgotEmail.hznPasswordInput {
 padding-right: 13px;
}

.hznPasswordInput:focus {
 border-color: var(--hzn-brand);
 outline: 3px solid color-mix(in srgb, var(--hzn-brand) 14%, transparent);
}

.hznPasswordReveal {
 position: absolute;
 top: 50%;
 right: 8px;
 display: grid;
 width: 34px;
 height: 34px;
 padding: 0;
 transform: translateY(-50%);
 place-items: center;
 border: 0;
 background: transparent;
 color: var(--hzn-muted);
 cursor: pointer;
}

.hznPasswordRequirements {
 display: flex;
 align-items: flex-start;
 gap: 9px;
 padding: 12px;
 border-radius: 10px;
 background: var(--hzn-data-soft);
 color: var(--hzn-muted);
 font-size: 0.76rem;
 line-height: 1.45;
}

.hznPasswordRequirements i {
 margin-top: 2px;
 color: var(--hzn-brand);
}

.hznPasswordSubmit {
 width: 100%;
 justify-content: center;
 margin-top: 20px;
}

.hznPasswordCard .hznImportResult {
 margin-top: 14px;
}

.hznPasswordLinks {
 gap: 12px;
 margin-top: 20px;
 padding-top: 18px;
 border-top: 1px solid var(--hzn-line);
 font-size: 0.76rem;
}

.hznPasswordLinks a {
 color: var(--hzn-brand);
 text-decoration: none;
}

.hznPasswordLinks a:hover {
 text-decoration: underline;
}

/* Places keeps the current data and actions, then adds compact comparison lanes. */
.hznFilterPanel .hznFilterChips { grid-column: 1 / -1; margin-top: 2px; }
.hznFilterPanel [data-hzn-filter-clear] { justify-self: start; }
.hznFilterChip { border: 1px solid var(--hzn-line); background: var(--hzn-surface); color: var(--hzn-ink); cursor: pointer; }
.hznFilterChip:hover { border-color: var(--hzn-brand); color: var(--hzn-brand); }
.hznViewTabs > *:focus-visible,
.hznFilterChip:focus-visible { position: relative; z-index: 1; outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent); outline-offset: 2px; }
.hznIconAction {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  min-height: 34px;
  padding: 0;
  border: 1px solid var(--hzn-line);
  border-radius: 8px;
  background: var(--hzn-card);
  color: var(--hzn-brand);
  font: inherit;
  cursor: pointer;
  transition: border-color 0.16s ease, background-color 0.16s ease;
}

@media (max-width: 700px) {
 .hznPlaceListRow.hznDataRow { grid-template-columns: minmax(0, 1fr); gap: 8px; }
 .hznPlaceListRow.hznDataRow .hznPlaceResult { grid-template-columns: minmax(0, 1fr); gap: 10px; }
 .hznPlaceListRow.hznDataRow .hznPlaceResult [data-label],
 .hznPlaceListRow.hznDataRow > [data-label] { display: grid; grid-template-columns: minmax(7rem, 40%) minmax(0, 1fr); gap: 12px; align-items: baseline; }
 .hznPlaceListRow.hznDataRow .hznPlaceResult [data-label]::before,
 .hznPlaceListRow.hznDataRow > [data-label]::before { color: var(--hzn-muted); content: attr(data-label); font: 700 0.68rem/1.25 var(--hzn-font-eyebrow); letter-spacing: 0.08em; text-transform: uppercase; }
 .hznPlaceListRow.hznDataRow .hznPlaceHistory,
 .hznPlaceListRow.hznDataRow .hznPlaceActivate,
 .hznPlaceListRow.hznDataRow .hznPlaceDeactivate,
 .hznPlaceListRow.hznDataRow .hznPlaceDelete { grid-column: auto; justify-self: stretch; }
}

@media (max-width: 760px) {
 .hznAccountPricingSummary,
 .hznAccountPricingFields {
  grid-template-columns: 1fr;
 }

 .hznAccountPricingIdentity,
 .hznAccountPricingHead {
  align-items: stretch;
  flex-direction: column;
 }

 .hznAccountPricingIdentity .hznPill,
 .hznAccountPricingHead .hznPill {
  align-self: flex-start;
 }

 .hznAddUserFields {
  grid-template-columns: 1fr;
 }

 .hznAddUserFields > label,
 .hznAddUserFields > .hznFieldHalf {
  grid-column: 1;
 }

}

/* Shared state and action controls keep their reading order and usable targets
   when the page has less horizontal room.  State surfaces are deliberately
   allowed to grow for translated or wrapped recovery copy. */
@media (max-width: 700px) {
 .hznPageToolbar { flex-direction: column; }
 .hznFilterPanel input,
 .hznFilterPanel select,
 .hznFilterPanel textarea {
   max-width: 100%;
   width: 100%;
   min-width: 0;
   box-sizing: border-box;
 }
 .hznDataRow {
   align-items: stretch;
   gap: 10px;
   padding: 14px 16px;
   flex-direction: column;
 }


 .hznIconAction { min-width: 34px; min-height: 34px; }
 .hznReviewMatchPicker { width: 100%; max-width: 100%; box-sizing: border-box; margin-right: 0; margin-left: 0; }
 .hznAddressConfirm,
 .hznInlineConfirm { width: 100%; max-width: 100%; box-sizing: border-box; }
 .hznVisualizationSkeleton,
 .hznPageLoadError { height: auto; min-height: 0; overflow-wrap: anywhere; }
}

@media (prefers-reduced-motion: reduce) {
 .hznIconAction { transition-duration: 0.01ms; }
}

/* Shared fidelity layer: presentation primitives only. Individual
   Horizon screens opt in with shared component classes while retaining their routes,
   gates, data hooks, and actions. */
.hznContentPage {
 width: min(100%, 1100px);
 max-width: 1100px;
 min-width: 0;
 box-sizing: border-box;
 margin: 0 auto;
 padding: 24px;
 color: var(--hzn-ink);
 font-family: var(--hzn-font-sans);
}

.hznPageHeader,
.hznActionToolbar,
.hznSurfaceCardHeader,
.hznSurfaceCardFooter,
.hznPortfolioFilterFooter {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 16px;
 min-width: 0;
}

.hznPageHeader {
 align-items: flex-start;
 margin-bottom: 20px;
}

.hznPageEyebrow,
.hznStructuredRow [data-label]::before {
 color: var(--hzn-muted);
 font: 700 0.68rem/1.25 var(--hzn-font-eyebrow);
 letter-spacing: 0.08em;
 text-transform: uppercase;
}

.hznPageHeading {
 margin: 4px 0 0;
 color: var(--hzn-ink);
 font: 700 clamp(1.45rem, 3vw, 2rem)/1.1 var(--hzn-font-sans);
}

.hznActionToolbar {
 flex-wrap: wrap;
 margin-bottom: 16px;
 padding: 12px 16px;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-surface);
}

.hznActionToolbarActions {
 flex: 0 1 auto;
 gap: 8px;
 min-width: 0;
}

.hznSurfaceCard {
 box-sizing: border-box;
 border-radius: 18px;
 border: 1px solid #e4e9f0;
 background: var(--hzn-card);
 box-shadow: 0 1px 2px #1018280a, 0 8px 24px -12px #10182829;
 color: var(--hzn-ink);
 overflow: visible;
}

.hznSurfaceCardHeader,
.hznSurfaceCardFooter {
 padding: 16px 20px;
}

.hznSurfaceCardHeader { border-bottom: 1px solid var(--hzn-line); }
.hznSurfaceCardFooter { border-top: 1px solid var(--hzn-line); }
.hznSurfaceCardBody { min-width: 0; padding: 20px; }

.hznSegmentedControl {
 display: inline-flex;
 align-items: center;
 height: 46px;
 padding: 3px;
 gap: 2px;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-surface);
}

.hznSegmentedControlItem {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 height: 38px;
 padding: 0 12px;
 border: 0;
 border-radius: 8px;
 background: transparent;
 color: var(--hzn-muted);
 font: 700 0.76rem/1 var(--hzn-font-sans);
 text-decoration: none;
 white-space: nowrap;
 cursor: pointer;
 transition: color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease;
}

.hznSegmentedControlItem:hover { color: var(--hzn-brand); }
.hznSegmentedControlItem.is-active {
 background: var(--hzn-card);
 color: var(--hzn-ink);
 box-shadow: 0 1px 2px #1018280a;
}

.hznSegmentedControlItem[aria-selected="true"],
.hznSegmentedControlItem[aria-pressed="true"] {
 background: var(--hzn-card);
 color: var(--hzn-ink);
 box-shadow: 0 1px 2px #1018280a;
}

.hznSegmentedControlItem:focus-visible,
.hznPortfolioFilterControl:focus-visible,
.hznReviewSectionTab:focus-visible {
 position: relative;
 z-index: 1;
 outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent);
 outline-offset: 2px;
}


.hznPortfolioFilterControl {
 width: 100%;
 min-width: 0;
 height: 40px;
 box-sizing: border-box;
 padding: 0 12px;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-card);
 color: var(--hzn-ink);
 font: inherit;
}

.hznPortfolioFilterChips {
 gap: 8px;
 padding: 0 16px 16px;
}

.hznPortfolioFilterChip {
 display: inline-flex;
 align-items: center;
 min-height: 32px;
 padding: 4px 8px;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-surface);
 color: var(--hzn-ink);
 font: 700 0.7rem/1 var(--hzn-font-sans);
}

.hznReviewSectionTabs {
 gap: 4px;
 border-bottom: 1px solid var(--hzn-line);
}

.hznReviewSectionTab {
 display: inline-flex;
 align-items: center;
 height: 44px;
 gap: 8px;
 padding: 0 12px;
 border: 0;
 border-bottom: 2px solid transparent;
 background: transparent;
 color: var(--hzn-muted);
 font: 700 0.76rem/1 var(--hzn-font-sans);
 cursor: pointer;
}

.hznReviewSectionTab.is-active,
.hznReviewSectionTab[aria-selected="true"] {
 border-bottom-color: var(--hzn-brand);
 color: var(--hzn-brand);
}

/* Paper Reviews keeps the source-authoritative request, audit, and matching
   renderers in one focused tab flow. */
.hznReviewsPageHead .hznPageToolbar { align-items: flex-end; }

.hznReviewProfileCard {
 display: grid;
 grid-template-columns: minmax(0, 1.45fr) repeat(3, minmax(92px, auto)) auto;
 align-items: center;
 gap: 20px;
 margin-top: 16px;
}

.hznReviewTabPanel > .hznCard {
 border-radius: 18px;
}

.hznReviewProfileIdentityWrap { min-width: 0; gap: 16px; }
.hznReviewProfileIcon { width: 52px; height: 52px; flex: 0 0 52px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-card); color: #4285f4; font-size: 1.55rem; }
.hznReviewGoogleLogo { display: block; width: 32px; height: 32px; object-fit: contain; }
.hznReviewProfileIdentity { min-width: 0; }
.hznReviewProfileIdentity h2 { margin: 4px 0 8px; font-size: 1.15rem; }
.hznReviewProfileIdentity a { color: var(--hzn-brand); font-size: 0.75rem; font-weight: 700; text-decoration: none; }
.hznReviewProfileIdentity a:hover { text-decoration: underline; }
.hznReviewProfileMetric {
 display: grid;
 gap: 3px;
 min-width: 0;
 color: var(--hzn-muted);
 font-size: 0.68rem;
}
.hznReviewProfileMetric > strong { color: var(--hzn-ink); font-size: 0.86rem; }
.hznReviewProfileRating > strong, .hznReviewProfileTotal > strong { display: flex; align-items: baseline; gap: 6px; font-size: 1.7rem; line-height: 1; }
.hznReviewProfileRating > strong i { font-size: .86rem; }
.hznReviewProfileRating strong i { color: #f4b400; }
.hznReviewProfileRating { padding-left: 20px; border-left: 1px solid var(--hzn-line); }

.hznReviewLastSync {
 min-width: 170px;
}
.hznReviewLastSync strong { color: var(--hzn-ink); font-size: 0.78rem; }
.hznReviewLastSync small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.hznReviewSupportDetails { min-width: 0; color: var(--hzn-muted); font-size: 0.7rem; }
.hznReviewSupportDetails summary { cursor: pointer; white-space: nowrap; }
.hznReviewSupportDetails p { max-width: 260px; margin: 8px 0; }
.hznReviewSupportDetails label { display: grid; gap: 5px; }
.hznReviewSupportDetails select { min-height: 36px; max-width: 220px; }

.hznReviewTabs {
 margin-top: 24px;
 overflow-x: auto;
 scrollbar-width: thin;
}

.hznReviewTabs .hznReviewSectionTab {
 flex: 0 0 auto;
 min-width: 104px;
 justify-content: center;
}

.hznReviewTabCount { display: inline-flex; min-width: 22px; height: 20px; align-items: center; justify-content: center; padding: 0 7px; border-radius: 999px; background: var(--hzn-surface); color: var(--hzn-muted); font-size: .68rem; font-variant-numeric: tabular-nums; }
.hznReviewTabCountBrand { background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznReviewTabCountBad { background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }

.hznReviewViewToggle { display: inline-flex; align-items: center; gap: 2px; min-height: 40px; padding: 3px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-surface); }
.hznReviewViewOption { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 11px; border: 0; border-radius: 8px; background: transparent; color: var(--hzn-muted); font: 700 .72rem/1 var(--hzn-font-sans); white-space: nowrap; cursor: pointer; }
.hznReviewViewOption:hover, .hznReviewViewOption[aria-pressed="true"] { background: var(--hzn-card); color: var(--hzn-brand); box-shadow: 0 1px 2px rgba(16,24,40,.06); }
.hznReviewViewCount, .hznReviewGroupCount { display: inline-flex; min-width: 20px; height: 18px; align-items: center; justify-content: center; padding: 0 6px; border-radius: 999px; background: var(--hzn-data-soft); color: var(--hzn-brand); font: 700 .64rem/1 var(--hzn-font-sans); font-variant-numeric: tabular-nums; }
.hznReviewGroupHead h2 { display: inline-flex; align-items: center; gap: 8px; }

.hznReviewTabPanel {
 display: none;
 min-width: 0;
 padding-top: 20px;
}

.hznReviewTabPanel.is-active { display: block; }

.hznReviewTabPanel[hidden] { display: none; }

.hznReviewQueueCard { overflow: hidden; padding: 0; }
.hznReviewQueueHeader { min-height: 56px; padding: 0 20px; border-bottom: 1px solid var(--hzn-line); background: linear-gradient(180deg, #fdfefe 0%, #f7f9fc 100%); }
.hznReviewQueueTitle { gap: 10px; }
.hznReviewQueueTitle p { margin: 0; }
.hznReviewQueueIcon { width: 28px; height: 28px; flex: 0 0 28px; border: 1px solid #cfe0ee; border-radius: 9px; background: var(--hzn-data-soft); color: var(--hzn-brand); }
.hznReviewQueueFilters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, 1.15fr) minmax(170px, .8fr) auto; align-items: end; gap: 12px; margin: 0; padding: 14px 20px; border: 0; border-radius: 0; background: var(--hzn-card); box-shadow: none; }
.hznReviewQueueFilterButtons { border-radius: var(--hzn-radius-control); gap: 2px; min-height: 40px; padding: 3px; border: 1px solid var(--hzn-line); background: var(--hzn-surface); overflow-x: auto; }
.hznReviewQueueFilter { min-height: 32px; padding: 0 12px; border: 0; border-radius: 8px; background: transparent; color: var(--hzn-muted); font: 700 .72rem/1 var(--hzn-font-sans); white-space: nowrap; cursor: pointer; }
.hznReviewQueueFilter:hover, .hznReviewQueueFilter.is-active { background: var(--hzn-card); color: var(--hzn-brand); box-shadow: 0 1px 2px rgba(16,24,40,.06); }
.hznReviewQueueColumns { display: grid; grid-template-columns: minmax(180px, 1.15fr) minmax(88px, .48fr) minmax(180px, 1.1fr) minmax(72px, .38fr) minmax(170px, .9fr) minmax(120px, .65fr) minmax(150px, .8fr); gap: 16px; align-items: center; min-height: 35px; padding: 0 20px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); color: var(--hzn-muted); font: 700 .62rem/1 var(--hzn-font-eyebrow); letter-spacing: .14em; text-transform: uppercase; }
.hznReviewQueueCard .hznReviewList { padding: 0 20px 10px; }
.hznReviewQueueFooter { min-height: 54px; padding: 0 20px; border-top: 1px solid var(--hzn-line); background: #f7f9fc; color: var(--hzn-muted); font-size: .74rem; }
.hznReviewQueueFooter p { margin: 0; }
.hznReviewQueueFooter strong { color: var(--hzn-ink); font-size: .8rem; }

.hznListRow.hznReviewRequestRow {
 display: grid;
 grid-template-columns: minmax(180px, 1.15fr) minmax(88px, .48fr) minmax(180px, 1.1fr) minmax(72px, .38fr) minmax(170px, .9fr) minmax(120px, .65fr) minmax(150px, .8fr);
 gap: 16px;
 align-items: center;
}

.hznReviewRequestRowNoTouch .hznReviewRowActions {
 grid-column: 6 / 8;
}

.hznReviewRequestPerson {
 display: flex;
 align-items: center;
 min-width: 0;
 gap: 10px;
}

.hznReviewRequestPerson .hznListBody,
.hznReviewRequestContact,
.hznReviewRequestRole,
.hznReviewRequestPlace,
.hznReviewRequestLastTouch {
 min-width: 0;
}

.hznReviewRequestRole,
.hznReviewRequestContact,
.hznReviewRequestPlace,
.hznReviewRequestLastTouch {
 display: flex;
 flex-direction: column;
 align-items: flex-start;
 gap: 4px;
}

.hznReviewRequestContact > span,
.hznReviewRequestContact > small {
 max-width: 100%;
 font-size: .68rem;
 line-height: 1.3;
 white-space: normal;
 overflow-wrap: anywhere;
}

.hznReviewRolePill {
 min-height: 24px;
 padding: 4px 9px;
 font-size: .68rem;
 line-height: 1;
}

.hznReviewResponseIndicator,
.hznReviewMatchIndicator {
 display: inline-grid;
 width: 24px;
 height: 24px;
 place-items: center;
 border-radius: 50%;
 font-size: .68rem;
}

.hznReviewResponseIndicator { margin-left: 6px; }
.hznReviewMatchIndicator { margin-right: 6px; background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznReviewImportStatus { display: inline-flex; align-items: center; gap: 10px; }
.hznReviewImportStatus .hznReviewResponseIndicator,
.hznReviewImportStatus .hznReviewMatchIndicator { margin: 0; }
.hznReviewResponseYes { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznReviewResponseNo { background: var(--hzn-surface); color: var(--hzn-muted); }

@media (max-width: 860px) {
 .hznReviewQueueFilters { grid-template-columns: 1fr; align-items: stretch; }
 .hznReviewQueueColumns { display: none; }
 .hznListRow.hznReviewRequestRow { grid-template-columns: 1fr; gap: 10px; }
 .hznReviewRequestPerson,
 .hznReviewRequestRole,
 .hznReviewRequestContact,
 .hznReviewRequestPlace,
 .hznReviewRequestLastTouch,
 .hznReviewRequestRow .hznReviewRowStatus,
 .hznReviewRequestRow .hznReviewRowActions,
 .hznReviewRequestRow .hznReviewRowDetail { grid-column: 1; justify-self: stretch; }
 .hznReviewRequestRole,
 .hznReviewRequestContact,
 .hznReviewRequestPlace,
 .hznReviewRequestLastTouch { flex-direction: row; align-items: center; justify-content: space-between; }
}

.hznReviewUnmatchedPanel .hznReviewUnmatchedIntro,
.hznReviewTemplatePanel .hznReviewTemplateEntry {
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 20px;
}

.hznReviewUnmatchedPanel .hznReviewUnmatchedIntro h2,
.hznReviewTemplatePanel .hznReviewTemplateEntry h2 {
 margin: 4px 0 6px;
 font-size: 1.15rem;
}

.hznReviewUnmatchedPanel .hznReviewUnmatchedIntro p,
.hznReviewTemplatePanel .hznReviewTemplateEntry p {
 margin: 0;
}

@media (max-width: 700px) {
 .hznReviewProfileCard { grid-template-columns: 1fr; align-items: stretch; }
 .hznReviewProfileRating { padding-left: 0; border-left: 0; }
 .hznReviewQueueFilters { grid-template-columns: 1fr; align-items: stretch; }
 .hznReviewQueueColumns { display: none; }
 .hznReviewQueueCard .hznReviewList { padding-inline: 12px; }
 .hznReviewTabs { margin-right: -4px; }
 .hznReviewTabs .hznReviewSectionTab { min-width: 96px; }
 .hznReviewUnmatchedPanel .hznReviewUnmatchedIntro,
 .hznReviewTemplatePanel .hznReviewTemplateEntry { align-items: stretch; flex-direction: column; }
 .hznReviewUnmatchedPanel .hznReviewUnmatchedIntro .hznBtn,
 .hznReviewTemplatePanel .hznReviewTemplateEntry .hznBtn { width: 100%; }
}

.hznStructuredRow {
 display: grid;
 grid-template-columns: minmax(0, 1.6fr) repeat(5, minmax(88px, 0.7fr));
 align-items: center;
 gap: 12px;
 min-height: 69px;
 padding: 12px 20px;
 border-bottom: 1px solid var(--hzn-line);
 background: var(--hzn-card);
}

.hznStructuredRow.hznPlacesRow { min-height: 77px; }
.hznStructuredRow:last-child { border-bottom: 0; }
.hznStructuredRow [data-label] { min-width: 0; overflow-wrap: anywhere; }
.hznStructuredRow [data-label]::before { display: none; }

.hznCompactIconAction {
 position: relative;
 display: inline-grid;
 width: 40px;
 height: 40px;
 box-sizing: border-box;
 flex: 0 0 40px;
 place-items: center;
 padding: 0;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-card);
 color: var(--hzn-muted);
 cursor: pointer;
 transition: border-color 0.16s ease, color 0.16s ease, background-color 0.16s ease;
}

.hznCompactIconAction:focus-visible {
 position: relative;
 z-index: 1;
 outline: 3px solid color-mix(in srgb, var(--hzn-brand) 34%, transparent);
 outline-offset: 2px;
}

.hznCompactIconAction:hover,
.hznCompactIconAction[aria-pressed="true"] {
 border-color: var(--hzn-brand);
 background: var(--hzn-surface);
 color: var(--hzn-brand);
}

.hznCompactIconAction[aria-label]::after {
 position: absolute;
 right: 0;
 bottom: calc(100% + 8px);
 z-index: 4;
 width: max-content;
 max-width: min(240px, 75vw);
 padding: 8px;
 border-radius: 4px;
 background: var(--hzn-ink);
 color: var(--hzn-card);
 content: attr(aria-label);
 font: 600 0.68rem/1.2 var(--hzn-font-sans);
 opacity: 0;
 pointer-events: none;
 transform: translateY(2px);
 transition: opacity 0.16s ease, transform 0.16s ease;
}

.hznCompactIconAction[aria-label]:hover::after,
.hznCompactIconAction[aria-label]:focus-visible::after {
 opacity: 1;
 transform: translateY(0);
}


.hznModalDialog {
  box-sizing: border-box;
  background: var(--hzn-card);
  color: var(--hzn-ink);
  box-shadow: var(--hzn-shadow-pop);
  overflow: auto;
  width: min(640px, calc(100vw - 32px));
  max-width: calc(100vw - 32px);
  max-height: calc(100vh - 32px);
  margin: 16px;
  border: 1px solid var(--hzn-line);
  border-radius: 18px;
}


.hznModalDialog[hidden]{ display: none; }

.hznContentState {
 min-height: 160px;
 padding: 24px;
 border: 1px dashed var(--hzn-line);
 border-radius: 18px;
 background: var(--hzn-surface);
 color: var(--hzn-muted);
 text-align: center;
}

.hznContentState[data-state="partial-failure"] { border-color: var(--hzn-warning); }
.hznContentState[data-state="loading"] { color: var(--hzn-brand); }

@media (max-width: 700px) {
 .hznContentPage {
  width: 100%;
  max-width: 100%;
  padding: 16px;
  overflow-x: clip;
 }

 .hznPageHeader,
 .hznActionToolbar,
 .hznSurfaceCardHeader,
 .hznSurfaceCardFooter,
 .hznPortfolioFilterFooter {
  align-items: stretch;
  flex-direction: column;
 }

 .hznActionToolbar { flex-direction: column; }
 .hznActionToolbarActions { display: flex; width: 100%; flex-wrap: wrap; }
 .hznActionToolbarActions > * { flex: 1 1 140px; }
 .hznSegmentedControl { width: 100%; max-width: 100%; overflow-x: auto; box-sizing: border-box; }

 .hznPortfolioFilterControl { min-width: 0; }
 .hznPortfolioFilterBody { grid-template-columns: 1fr; }
 .hznStructuredRow { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 12px 16px; }
 .hznPlaceGroupHead { padding-right: 16px; padding-left: 16px; }
 .hznStructuredRow [data-label] { display: grid; grid-template-columns: minmax(7rem, 40%) minmax(0, 1fr); gap: 12px; align-items: baseline; }
 .hznStructuredRow [data-label]::before { display: block; content: attr(data-label); }
 .hznModalDialog { width: calc(100vw - 32px); }

}

@media (prefers-reduced-motion: reduce) {
 .hznSurfaceCard,
 .hznSegmentedControl,
 .hznCompactIconAction,
 .hznSegmentedControlItem,
 .hznCompactIconAction[aria-label]::after { transition-duration: 0.01ms; }
}

/* Places composition. The existing List, Map, and Performance data
   renderers retain their canonical filters, routes, and authorization; these
   opt-in selectors only establish the shared Paper hierarchy and density. */
.hznPlacesPageHeader {
 align-items: flex-end;
 gap: 24px;
 width: min(100%, 1100px);
 min-height: 68px;
 margin: 0 auto 20px;
 padding: 0;
 border: 0;
 background: transparent;
 box-shadow: none;
}
.hznPlacesPageHeader > div:first-child { display: flex; flex-direction: column; gap: 5px; }
.hznPlacesPageHeader .hznEyebrow,
.hznPlacesPageHeader .hznPageH1,
.hznPlacesDescription { margin: 0; }
.hznPlacesPageHeader .hznPageH1 { font-size: 24px; line-height: 28px; }
.hznPlacesDescription { max-width: 660px; font-size: 14px; line-height: 21px; }
.hznPlacesViewSwitcher {
 display: flex;
 flex: 0 0 auto;
 box-sizing: border-box;
 width: 286px;
 height: 46px;
 padding: 3px;
 border: 1px solid var(--hzn-line);
 border-radius: 10px;
 background: var(--hzn-surface);
}
.hznPlacesViewSwitcher .hznSegmentedControlItem { flex: 1 1 0; gap: 7px; height: 38px; padding: 0 10px; border: 0; border-radius: 8px; font-size: 13px; }
.hznPlacesViewSwitcher .hznSegmentedControlItem.is-active { background: var(--hzn-card); box-shadow: 0 1px 2px rgba(16, 24, 40, .06); }

.hznPortfolioFilterCard {
 display: block;
 width: min(100%, 1100px);
 min-height: 57px;
 margin: 0 auto 20px;
 padding: 0;
 overflow: hidden;
}
.hznPortfolioFilterHeader {
 justify-content: flex-start;
 gap: 10px;
 min-height: 57px;
 box-sizing: border-box;
 margin-bottom: 0;
 padding: 14px 20px 14px 16px;
 border-bottom: 1px solid #e4e9f0;
 background: linear-gradient(180deg, #fefefe 0%, #f8fafc 100%);
}
.hznPortfolioFilterTitle { gap: 10px; min-width: 0; }
.hznPortfolioFilterHeader .hznEyebrow { margin: 0; }
.hznPortfolioFilterHeader h2 { margin: 2px 0 0; font-size: 1rem; }
.hznPortfolioFilterHeader .hznMuted { margin: 2px 0 0; font-size: 0.78rem; }
.hznPortfolioFilterIcon { flex: 0 0 28px; width: 28px; height: 28px; box-sizing: border-box; border: 1px solid #dbe3ec; border-radius: 9px; background: var(--hzn-surface); color: #4a5a66; font-size: 15px; }
.hznPortfolioFilterBody {
  min-width: 0;
  display: grid;
  gap: 12px;
  min-height: 92px;
  box-sizing: border-box;
  align-items: end;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  padding: 18px 24px 16px;
}
.hznPortfolioFilterBody label { min-width: 0; margin: 0; }
.hznPortfolioFilterBody label > span {
 display: block;
 margin: 0 0 6px;
 color: var(--hzn-muted);
 font: 700 0.65rem/1 var(--hzn-font-eyebrow);
 letter-spacing: 0.07em;
 text-transform: uppercase;
}
.hznPortfolioFilterFooter {
 gap: 16px;
 min-height: 51px;
 box-sizing: border-box;
 padding: 13px 24px;
 border-top: 1px solid #e4e9f0;
 background: #f7f9fc;
}
.hznPortfolioFilterSummary,
.hznPortfolioFilterActions { gap: 10px; min-width: 0; }
.hznPortfolioFilterResultCount { color: var(--hzn-ink); font-size: 14px; font-weight: 700; line-height: 18px; white-space: nowrap; }
.hznPlacesAccountSummary { color: var(--hzn-muted); font-size: 13px; line-height: 16px; }
.hznPortfolioFilterActions { justify-content: flex-end; }
.hznPortfolioFilterFooter .hznPortfolioFilterChips { padding: 0; }

.hznPlacesComparison { width: min(100%, 1100px); min-height: 57px; margin-left: auto; margin-right: auto; overflow: hidden; }
.hznPlacesComparisonHeader {
 gap: 16px;
 min-height: 57px;
 box-sizing: border-box;
 padding: 14px 20px 14px 16px;
 border-bottom-color: #e4e9f0;
 background: linear-gradient(180deg, #fefefe 0%, #f8fafc 100%);
}
.hznComparisonTitle { gap: 10px; min-width: 0; }
.hznComparisonIcon { flex: 0 0 28px; width: 28px; height: 28px; box-sizing: border-box; border: 1px solid #c6ddf0; border-radius: 9px; background: #e1edf7; color: var(--hzn-brand); font-size: 14px; }
.hznPlacesComparisonHeader .hznEyebrow { margin: 0; }
.hznPlacesComparisonHeader h2 { margin: 2px 0 0; font-size: 1rem; }
.hznPlacesSort { flex-wrap: nowrap; justify-content: flex-end; gap: 8px; }
.hznPlacesSort .hznSortLabel { font: 700 0.68rem/1 var(--hzn-font-eyebrow); letter-spacing: 0.07em; text-transform: uppercase; }
.hznPlacesSort select { width: 136px; height: 28px; box-sizing: border-box; padding: 0 28px 0 9px; border: 1px solid var(--hzn-line); border-radius: 8px; background-color: var(--hzn-card); color: var(--hzn-ink); font: 700 .72rem/1 var(--hzn-font-ui); }
.hznPlacesColumns {
 display: grid;
 grid-template-columns: minmax(0, 1fr) 104px 180px 180px 110px;
 align-items: center;
 min-height: 35px;
 box-sizing: border-box;
 gap: 16px;
 padding: 12px 24px 10px;
 border-bottom: 1px solid var(--hzn-line);
 color: var(--hzn-muted);
 font: 700 0.65rem/1 var(--hzn-font-eyebrow);
 letter-spacing: 0.07em;
 text-transform: uppercase;
}
.hznPlacesRow {
 grid-template-columns: minmax(0, 1fr) 104px 180px 180px 110px;
 min-height: 77px;
 gap: 16px;
 padding: 14px 24px;
}
.hznPlacesComparison > .hznList { margin: 0; }
.hznPlacesRow .hznPlacesLanePlace { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: center; gap: 12px; min-width: 0; }
.hznPlacesRow .hznPlaceResult { display: block; grid-column: auto; min-width: 0; padding-right: 0; color: inherit; text-decoration: none; }
.hznPlacesSourceVisual { box-sizing: border-box; width: 48px; height: 48px; overflow: hidden; border: 1px solid var(--hzn-line); border-radius: 11px; background: var(--hzn-surface); }
.hznPlacesSourceVisual .hznPlaceSourceBadge { display: grid; place-items: center; width: 100%; height: 100%; border: 0; border-radius: inherit; background: transparent; }
.hznPlacesSourceVisual .hznPlaceSourceImage { width: 32px; height: 32px; object-fit: contain; }
.hznPlacesSourceVisual .hznPlaceSourceMark { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; background: var(--hzn-brand); color: #fff; font-weight: 800; }
.hznPlacesSourceVisual i { display: block; width: 100%; font-size: 20px; line-height: 1; text-align: center; color: var(--hzn-brand); font-synthesis: none; }
.hznPlacesRow .hznListBody { display: grid; min-width: 0; gap: 3px; }
.hznPlacesRow .hznListTitle,
.hznPlacesRow .hznListSub { overflow-wrap: anywhere; }
.hznPlacesRow .hznListTitle { font-size: 15px; font-weight: 700; line-height: 18px; }
.hznPlacesTitleLink { display: flex; align-items: center; gap: 7px; min-width: 0; }
.hznPlacesRow .hznListSub { display: flex; align-items: center; gap: 8px; font-size: 12px; line-height: 16px; }
.hznPlacesRowLocation { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.hznPlacesRowType { flex: 0 0 auto; padding: 2px 7px; border-radius: 4px; background: var(--hzn-surface); color: var(--hzn-muted); font-size: 10px; font-weight: 700; letter-spacing: .04em; line-height: 12px; text-transform: uppercase; }
.hznPlacesRow .hznListSource { flex: 0 1 auto; min-width: 0; overflow: hidden; color: var(--hzn-muted); font-size: 11px; font-weight: 600; text-overflow: ellipsis; }
.hznPlacesRow .hznPlacesLaneScore { display: grid; align-items: center; justify-items: start; gap: 5px; }
.hznScorePill { display: inline-flex; align-items: center; box-sizing: border-box; gap: 7px; min-height: 28px; padding: 4px 9px 4px 4px; background: color-mix(in srgb, var(--hzn-score-color, var(--hzn-score-gray)) 12%, var(--hzn-card)); color: var(--hzn-score-color, var(--hzn-score-gray)); }
.hznScorePill strong { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--hzn-score-color, var(--hzn-score-gray)); color: #fff; font-size: 11px; line-height: 14px; }
.hznScorePill .hznListScore { color: inherit; font-size: 13px; font-weight: 800; line-height: 16px; }
.hznScorePill.hznGradeA,
.hznScorePill.hznGradeB { --hzn-score-color: var(--hzn-good); }
.hznScorePill.hznGradeC,
.hznScorePill.hznGradeD { --hzn-score-color: #c97614; }
.hznScorePill.hznGradeF { --hzn-score-color: var(--hzn-bad); }
.hznScorePill.hznGradeUnscored { --hzn-score-color: var(--hzn-unknown); }
.hznScorePill.hznScorePillUnscored { gap: 0; padding: 4px 10px; font-size: 12px; font-weight: 700; white-space: nowrap; }
.hznPlaceEmptyRecovery { max-width: none; margin: 22px 0 10px; }
.hznMissingChecks { display: grid; gap: 14px; margin: 18px 0 4px; }
.hznMissingCheck { padding: 18px 20px; border: 1px solid var(--hzn-bad); border-top: 4px solid var(--hzn-bad); border-radius: var(--hzn-radius-card); background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }
.hznMissingCheckTitle { display: flex; gap: 9px; align-items: baseline; font-size: 1rem; line-height: 1.35; color: var(--hzn-bad-fg); }
.hznMissingCheckTitle i { flex: none; font-size: 0.95rem; }
.hznMissingCheck p { margin: 9px 0 0; max-width: none; font-size: 0.85rem; line-height: 1.55; color: inherit; }
.hznMissingCheckWhy { opacity: 0.92; }
.hznMissingCheckFix { font-weight: 600; }
.hznFixBlocked { padding: 18px 20px; border: 1px solid var(--hzn-bad); border-top: 4px solid var(--hzn-bad); border-radius: var(--hzn-radius-card); background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }
.hznFixBlocked strong { display: block; font-size: 1rem; line-height: 1.35; }
.hznFixBlocked p { margin: 9px 0 0; max-width: none; font-size: 0.85rem; line-height: 1.55; }
.hznConflictCard { margin-top: 20px; }
.hznRentConflict { padding: 18px 20px; border: 1px solid var(--hzn-accent, #c97614); border-top: 4px solid var(--hzn-accent, #c97614); border-radius: var(--hzn-radius-card); background: var(--hzn-accent-soft, #fff6e9); }
.hznRentConflictTitle { display: flex; gap: 9px; align-items: baseline; font-size: 1rem; line-height: 1.35; }
.hznRentConflictTitle i { flex: none; font-size: 0.95rem; }
.hznRentConflict p { margin: 9px 0 0; max-width: none; font-size: 0.85rem; line-height: 1.55; }
.hznRentConflictWarn { font-weight: 600; }
.hznRentConflictActions { gap: 10px; margin-top: 14px; }
.hznRentConflictSettled { border-color: var(--hzn-line); background: var(--hzn-card); }
.hznPublishedRentMismatch { grid-column: 1 / -1; }
.hznPublishedRentMismatch .hznMuted { font-size: 0.82rem; }
@media (max-width: 620px) {
 .hznRentConflict { padding: 15px 16px; }
}

@media (max-width: 620px) {
 .hznMissingChecks { gap: 12px; }
 .hznMissingCheck { padding: 15px 16px; }
}
.hznPlacesRow .hznPlacesLaneCoverage,
.hznPlacesRow .hznPlacesLaneQuality,
.hznPlacesRow .hznPlacesLaneLastScan { min-width: 0; color: var(--hzn-muted); font-size: 0.78rem; }
.hznPlacesRow .hznPlacesLaneCoverage strong,
.hznPlacesRow .hznPlacesLaneQuality strong { color: var(--hzn-ink); font-size: 13px; font-weight: 800; line-height: 16px; }
.hznPlacesRow .hznPlacesLaneCoverage strong small,
.hznPlacesRow .hznPlacesLaneQuality strong small { color: var(--hzn-muted); font-size: 0.56rem; font-weight: 500; }
.hznPlacesRow .hznPlacesLaneCoverage,
.hznPlacesRow .hznPlacesLaneQuality { display: flex; align-items: center; gap: 9px; }
.hznPlacesMetricLink { display: flex; width: 100%; align-items: center; gap: 9px; }
.hznPlacesLaneCoverage[data-score-state="hznScoreGood"],
.hznPlacesLaneQuality[data-score-state="hznScoreGood"] { --hzn-place-metric-color: var(--hzn-good); }
.hznPlacesLaneCoverage[data-score-state="hznScoreWarn"],
.hznPlacesLaneQuality[data-score-state="hznScoreWarn"] { --hzn-place-metric-color: #c97614; }
.hznPlacesLaneCoverage[data-score-state="hznScoreBad"],
.hznPlacesLaneQuality[data-score-state="hznScoreBad"] { --hzn-place-metric-color: var(--hzn-bad); }
.hznPlacesLaneCoverage[data-score-state="hznScoreUnknown"],
.hznPlacesLaneQuality[data-score-state="hznScoreUnknown"] { --hzn-place-metric-color: var(--hzn-unknown); }
.hznMetricBar { display: block; width: 96px; height: 6px; overflow: hidden; border-radius: 999px; background: #d9e1ea; }
.hznMetricBarFill { display: block; height: 100%; border-radius: inherit; background: var(--hzn-place-metric-color); }
.hznPlacesLaneLastScan { display: flex; position: relative; align-items: flex-end; justify-content: center; flex-direction: column; gap: 4px; min-width: 0; text-align: right; }
.hznPlacesLaneLastScan .hznPlaceHistory { display: inline-flex; justify-content: flex-end; min-width: 0; padding: 0; border: 0; background: transparent; color: var(--hzn-muted); text-align: right; text-decoration: none; white-space: normal; }
.hznPlacesLaneLastScan .hznPlaceHistory:hover { background: transparent; color: var(--hzn-brand); text-decoration: underline; }
.hznPlaceHistory.hznScanRecent { font-style: italic; }
.hznPlaceHistory.hznScanWarning { color: var(--hzn-warning-fg); }
.hznPlaceHistory.hznScanOverdue { color: var(--hzn-bad); }
.hznPlaceRowActions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; min-width: 0; }
.hznPlaceStatusToggle {
 display: inline-flex;
 align-items: center;
 gap: 5px;
 min-height: 26px;
 box-sizing: border-box;
 padding: 3px 6px;
 border: 1px solid var(--hzn-line);
 border-radius: 999px;
 background: var(--hzn-card);
 color: var(--hzn-muted);
 font: 700 10px/1 var(--hzn-font-ui);
 cursor: pointer;
}
.hznPlaceStatusToggle:hover { border-color: color-mix(in srgb, var(--hzn-brand) 45%, var(--hzn-line)); background: var(--hzn-card); color: var(--hzn-ink); }
.hznPlaceStatusToggle:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-focus) 32%, transparent); outline-offset: 2px; }
.hznPlaceStatusToggleTrack { display: block; position: relative; flex: 0 0 26px; width: 26px; height: 14px; border-radius: 999px; background: var(--hzn-unknown); transition: background .15s ease; }
.hznPlaceStatusToggleThumb { display: block; position: absolute; top: 2px; left: 2px; width: 10px; height: 10px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(35, 42, 47, .28); transition: transform .15s ease; }
.hznPlaceStatusActive .hznPlaceStatusToggleTrack { background: var(--hzn-good); }
.hznPlaceStatusActive .hznPlaceStatusToggleThumb { transform: translateX(12px); }
.hznPlaceStatusStalled .hznPlaceStatusToggleTrack { background: var(--hzn-bad); }
.hznPlaceStatusStalled .hznPlaceStatusToggleLabel { color: var(--hzn-bad-fg); }
.hznPlaceStatusToggleLabel { white-space: nowrap; }
.hznPlaceRowActions .hznPlaceDelete { width: 26px; height: 26px; min-height: 26px; flex: 0 0 26px; border-radius: 8px; }
.hznPlacesComparisonFooter { justify-content: flex-start; min-height: 51px; box-sizing: border-box; padding: 13px 24px; background: #f7f9fc; }

.hznPlacesMapWorkspace { width: min(100%, 1100px); margin-right: auto; margin-left: auto; overflow: hidden; }
.hznPlacesMapWorkspace .hznPortfolioView { margin: 20px 20px 0; }
.hznPlacesMapWorkspace .hznPortfolioSummary { margin: 12px 20px; }
.hznPlacesMapWorkspace .hznPortfolioLayout { padding: 0 20px 20px; }
.hznPlacesMapWorkspace .hznPortfolioEmpty { margin: 20px; }
.hznPortfolioPerformanceComparison { width: min(100%, 1100px); margin-right: auto; margin-left: auto; overflow: hidden; }
.hznPortfolioPerformanceComparison .hznPerformanceTableWrap { margin: 0; border: 0; }
.hznPortfolioPerformanceComparison .hznPerformanceTable { width: 100%; }
.hznPortfolioPerformanceComparison .hznPerformanceTable thead th { height: 35px; box-sizing: border-box; padding-top: 10px; padding-bottom: 10px; background: var(--hzn-card); font: 700 0.65rem/1 var(--hzn-font-eyebrow); letter-spacing: .07em; }
.hznPortfolioPerformanceComparison .hznPerformanceTable th:nth-child(1) { width: 26%; }
.hznPortfolioPerformanceComparison .hznPerformanceTable th:nth-child(2) { width: 10%; }
.hznPortfolioPerformanceComparison .hznPerformanceTable th:nth-child(3),
.hznPortfolioPerformanceComparison .hznPerformanceTable th:nth-child(4) { width: 18%; }
.hznPortfolioPerformanceComparison .hznPerformanceTable th:nth-child(5) { width: 17%; }
.hznPortfolioPerformanceComparison .hznPerformanceTable th:nth-child(6) { width: 11%; }
.hznPortfolioPerformanceComparison .hznPortfolioPerformanceDataRow { min-height: 96px; }
.hznPortfolioPerformanceComparison .hznPortfolioPerformanceDataRow > td { padding: 14px 16px; }
.hznPortfolioPerformancePlaceCell { display: grid; grid-template-columns: 64px minmax(0, 1fr); align-items: center; gap: 14px; min-width: 0; }
.hznPortfolioPerformancePlaceBody { display: grid; gap: 4px; min-width: 0; }
.hznPortfolioPerformanceThumbnail { width: 64px; height: 64px; overflow: hidden; box-sizing: border-box; border: 1px solid var(--hzn-line); border-radius: 12px; background: var(--hzn-surface); color: var(--hzn-muted); }
.hznPortfolioPerformanceThumbnail img { width: 100%; height: 100%; object-fit: cover; }
.hznPortfolioPerformanceThumbnail i { font-size: 21px; }
.hznPerformanceScore { margin: 0; }
.hznPortfolioPerformanceComparison .hznPerformanceDelta { flex: 0 0 42px; width: 42px; height: 30px; min-height: 30px; box-sizing: border-box; padding: 0; border-radius: 999px; }
.hznPortfolioPerformanceTrend { color: var(--hzn-muted); }
.hznPortfolioPerformanceTrendBody { display: flex; align-items: center; flex-wrap: nowrap; gap: 8px; min-width: 0; white-space: nowrap; }
.hznPortfolioPerformanceTrend .hznPerformanceSpark { display: block; width: 74px; height: 24px; }
.hznPortfolioPerformanceTrendBody .hznPerformanceSpark { flex: 0 0 74px; }
.hznPortfolioPerformanceTrend .hznPerformanceSpark polyline { fill: none; stroke: var(--hzn-brand); stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.hznPortfolioPerformanceLastScan { color: var(--hzn-muted); text-align: right; }
.hznPortfolioPerformanceLastScan .hznPlaceHistory { display: inline-flex; justify-content: flex-end; width: 100%; padding: 0; border: 0; background: transparent; color: var(--hzn-muted); text-align: right; text-decoration: none; white-space: normal; }
.hznPortfolioPerformanceLastScan .hznPlaceHistory:hover { background: transparent; color: var(--hzn-brand); text-decoration: underline; }

@media (max-width: 1240px) {
 .hznPortfolioFilterBody { grid-template-columns: repeat(3, minmax(0, 1fr)); }
 .hznPlacesColumns,
 .hznPlacesRow { grid-template-columns: minmax(240px, 1.8fr) 104px repeat(2, minmax(120px, .9fr)) 110px; }
 .hznPortfolioPerformanceComparison .hznPerformanceTableWrap { overflow-x: auto; }
 .hznPortfolioPerformanceComparison .hznPerformanceTable { min-width: 900px; }
}

@media (max-width: 700px) {
 .hznPlacesPageHeader { align-items: stretch; }
 .hznPlacesViewSwitcher { width: 100%; }
 .hznPortfolioFilterHeader,
 .hznPortfolioFilterFooter,
 .hznPlacesComparisonHeader { align-items: stretch; flex-direction: column; }
 .hznPortfolioFilterFooter { min-height: 51px; }
 .hznPlacesColumns { display: none; grid-template-columns: 1fr; }
 .hznPlacesRow { grid-template-columns: 1fr; min-height: 77px; overflow-x: auto; }
 .hznPlacesRow [data-label] { display: grid; grid-template-columns: minmax(7rem, 40%) minmax(0, 1fr); gap: 12px; align-items: center; }
 .hznPlacesRow [data-label]::before { color: var(--hzn-muted); content: attr(data-label); font: 700 .65rem/1 var(--hzn-font-eyebrow); letter-spacing: .07em; text-transform: uppercase; }
 .hznPlaceRowActions { justify-self: end; }
 .hznPlacesMapWorkspace .hznPortfolioView,
 .hznPlacesMapWorkspace .hznPortfolioSummary { margin-left: 16px; margin-right: 16px; }
 .hznPlacesMapWorkspace .hznPortfolioLayout { padding: 0 16px 16px; }
 .hznPortfolioPerformanceComparison { overflow-x: auto; }
}

/* Dashboard Paper composition.  These selectors opt in only the Dashboard;
   every score, evidence field, action, route, and regional recovery control
   continues to be rendered by its existing Horizon source. */


.hznDashboardStateLine .hznMuted { margin: 8px 0 0; }


.hznCompanyVisibilityCard,
.hznListingVisibilityCard,
.hznTodaysWork,
.hznPortfolioChanges { min-width: 0; }

.hznCompanyVisibilityCard .hznSurfaceCardBody,
.hznListingVisibilityCard .hznSurfaceCardBody { padding: 20px; }

.hznCompanyVisibilityCard .hznCompanyMarketingCardBody { min-width: 0; }


@media (max-width: 900px) {
 .hznDashboardVisibilityGrid{ grid-template-columns: 1fr; }
}

@media (max-width: 700px) {

 .hznDashboardStateLine .hznActionToolbarActions { width: 100%; }
 .hznDashboardStateLine .hznBtn { flex: 1 1 auto; justify-content: center; }


 .hznPortfolioChanges #hznDashboardAlertSnapshot,
.hznTodaysWork .hznLeasingMomentum{ padding: 16px; }

}

/* Flat, columnar Today’s Work table. Group labels remain factual queue-state
   metadata, while every intervention itself is one dense table row. */
.hznDashboardFirstRun { text-align: center; }
.hznDashboardFirstRun .hznDisplay { font-size: 1.3rem; }
.hznDashboardFirstRun .hznMuted { margin: 8px 0 18px; }

.hznDashboardLastScan span { color: var(--hzn-muted); font: 600 0.72rem/1.3 var(--hzn-font-eyebrow); }


/* Dashboard Paper visual correction. The measured desktop composition is
   51 + 20 + 704 + 20 + 649 + 20 + 437 = 1901px in the 1100px content lane. */
.hznDashboardStateLine {
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  min-height: 51px;
  align-items: flex-end;
  gap: 24px;
  margin-bottom: 20px;
  padding-bottom: 4px;
}

.hznDashboardStatePrimary { min-width: 0; gap: 5px; }
.hznDashboardStatePrimary .hznPageEyebrow,
.hznDashboardScanMeta .hznPageEyebrow { margin: 0; }
.hznDashboardStateLine .hznPageHeading {
  margin: 0;
  font-size: 24px;
  line-height: 28px;
}
.hznDashboardStateActions { flex: 0 0 auto; gap: 18px; }
.hznDashboardScanMeta { align-items: flex-start; gap: 5px; }
.hznDashboardStateDivider { width: 1px; height: 34px; background: var(--hzn-line); }
.hznDashboardLastScan {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  background: transparent;
}
.hznDashboardLastScan > i { color: var(--hzn-good); font-size: 15px; }
.hznDashboardLastScan > strong { color: var(--hzn-ink); font-size: 14px; line-height: 18px; white-space: nowrap; }
.hznDashboardLastScan > span { color: var(--hzn-muted); font: 600 11px/14px var(--hzn-font-eyebrow); white-space: nowrap; }

.hznDashboardVisibilityGrid {
  display: grid;
  grid-template-columns: 541px 541px;
  gap: 18px;
  height: 704px;
  margin-bottom: 20px;
}

.hznCompanyVisibilityCard,
.hznListingVisibilityCard {
 display: flex;
 height: 704px;
 overflow: hidden;
 flex-direction: column;
}

.hznDashboardCardLabelHead {
 flex: 0 0 57px;
 gap: 12px;
 box-sizing: border-box;
 min-width: 0;
 padding: 14px 16px;
 border-bottom: 1px solid #e4e9f0;
 background: #fafbfd;
}

.hznTodaysWork > .hznDashboardCardLabelHead,
.hznPortfolioChanges > .hznDashboardCardLabelHead { border-radius: 17px 17px 0 0; }

.hznDashboardCardLabel { min-width: 0; gap: 10px; }
.hznDashboardCardLabel .hznPageEyebrow { margin: 0; }
.hznDashboardCardIcon { flex: 0 0 28px; width: 28px; height: 28px; box-sizing: border-box; border: 1px solid var(--hzn-line); border-radius: 9px; }
.hznDashboardCardIconCompany { color: var(--hzn-brand); background: color-mix(in srgb, var(--hzn-brand) 11%, var(--hzn-card)); border-color: color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line)); }
.hznDashboardCardIconListing { color: var(--hzn-brand); background: color-mix(in srgb, var(--hzn-brand) 11%, var(--hzn-card)); border-color: color-mix(in srgb, var(--hzn-brand) 24%, var(--hzn-line)); }
.hznDashboardCardIconWork { color: var(--hzn-bad); background: var(--hzn-bad-soft); border-color: #ffd2d2; }
.hznDashboardCardIconChanges { color: var(--hzn-data); background: color-mix(in srgb, var(--hzn-data) 12%, var(--hzn-card)); }
.hznDashboardCardHeadActions { gap: 8px; }
.hznDashboardCardCount { padding: 3px 8px; border-radius: 6px; background: #edf1f6; color: #55626c; font: 500 10px/12px var(--hzn-font-eyebrow); letter-spacing: .08em; text-transform: uppercase; }
.hznDashboardCardAction { width: 28px; height: 28px; padding: 0; border: 0; border-radius: 7px; background: transparent; color: #7a8894; cursor: pointer; }
.hznDashboardCardAction:hover { background: var(--hzn-surface); color: var(--hzn-brand); }
.hznDashboardCardAction:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 25%, transparent); outline-offset: 1px; }

.hznDashboardCardMenu { position: relative; }
.hznDashboardCardMenu > summary { list-style: none; }
.hznDashboardCardMenu > summary::-webkit-details-marker { display: none; }
.hznDashboardCardMenuPanel { position: absolute; z-index: 12; top: calc(100% + 6px); right: 0; display: none; width: max-content; min-width: 150px; padding: 6px; border: 1px solid var(--hzn-line); border-radius: 10px; background: var(--hzn-card); box-shadow: 0 14px 30px -18px rgba(15, 23, 42, .5); }
.hznDashboardCardMenu[open] .hznDashboardCardMenuPanel { display: grid; }
.hznDashboardCardMenuPanel a,
.hznDashboardCardMenuPanel button { display: flex; min-height: 36px; align-items: center; gap: 8px; padding: 0 10px; border: 0; border-radius: 7px; background: transparent; color: var(--hzn-ink); font: 700 12px/16px var(--hzn-font-ui); text-decoration: none; cursor: pointer; }
.hznDashboardCardMenuPanel a:hover,
.hznDashboardCardMenuPanel button:hover { background: var(--hzn-surface); color: var(--hzn-brand); }


.hznGaugeGrade { margin-top: 4px; color: var(--hzn-muted); font: 600 9px/12px var(--hzn-font-eyebrow); letter-spacing: .12em; text-transform: uppercase; }
.hznDashboardScoreHeadline { margin: 0; color: var(--hzn-ink); font: 800 22px/26px var(--hzn-font-ui); letter-spacing: -.02em; }

.hznDashboardScoreTitleRow { gap: 10px; }

.hznDashboardSegmentGauge {
 --hzn-gauge-size: 132px;
 --hzn-gauge-inner-size: 96px;
 position: relative;
 display: grid;
 flex: 0 0 var(--hzn-gauge-size);
 width: var(--hzn-gauge-size);
 height: var(--hzn-gauge-size);
 place-items: center;
 border-radius: 50%;
}
.hznDashboardGaugeSvg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.hznDashboardGaugeSegment { shape-rendering: geometricPrecision; }
.hznDashboardGaugeSegmentTrack { fill: #dfe6ee; }
.hznDashboardGaugeSegmentValue { fill: var(--hzn-gauge-color, var(--hzn-brand)); }
.hznDashboardSegmentGauge .hznGaugeInner { position: relative; z-index: 1; display: flex; width: var(--hzn-gauge-inner-size); height: var(--hzn-gauge-inner-size); align-items: center; justify-content: center; flex-direction: column; background: transparent; }
.hznDashboardSegmentGauge .hznGaugeScore { display: inline-flex; align-items: baseline; gap: 2px; color: var(--hzn-ink); font-size: 30px; font-weight: 800; line-height: 1; }
.hznDashboardSegmentGauge .hznGaugeScore small { color: var(--hzn-muted); font-size: 11px; font-weight: 700; }
.hznSegmentGaugeLarge { --hzn-gauge-size: 198px; --hzn-gauge-inner-size: 144px; }
.hznSegmentGaugeLarge .hznGaugeScore { font-size: 45px; }
.hznSegmentGaugeLarge .hznGaugeScore small { font-size: 16px; }
.hznSegmentGaugeLarge .hznGaugeGrade { font-size: 13px; line-height: 17px; }

/* The score card is the gauge, so it takes the width the card gives it instead
   of a fixed size that leaves the card half empty. Two classes, and placed
   after .hznDashboardSegmentGauge, so neither specificity nor source order can
   drop it back to the compact default. */
.hznPlaceGradePanel .hznPlaceSegmentGauge {
 --hzn-gauge-inner-size: 68%;
 flex: 0 1 auto;
 width: min(100%, 186px);
 height: auto;
 min-height: 0;
 max-height: 100%;
 margin: 0 auto;
 aspect-ratio: 1 / 1;
}
.hznPlaceGradePanel .hznPlaceSegmentGauge .hznGaugeScore { font-size: 42px; }
.hznPlaceGradePanel .hznPlaceSegmentGauge .hznGaugeScore small { font-size: 15px; }
.hznPlaceGradePanel .hznPlaceSegmentGauge .hznGaugeGrade { font-size: 12px; line-height: 16px; }

.hznDeltaPill { display: inline-flex; min-height: 24px; align-items: center; justify-content: center; gap: 4px; box-sizing: border-box; padding: 3px 8px; border-radius: 999px; font: 800 11px/15px var(--hzn-font-ui); font-variant-numeric: tabular-nums; white-space: nowrap; }
.hznDeltaGood { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznDeltaBad { background: var(--hzn-bad-soft); color: var(--hzn-bad); }
.hznDeltaNeutral { background: var(--hzn-surface); color: var(--hzn-muted); }

.hznCompanyVisibilityHero {
 flex: 0 0 152px;
 gap: 18px;
 box-sizing: border-box;
 padding: 10px 24px;
}

.hznCompanyVisibilityHero .hznCompanyMarketingCardBody { display: flex; min-width: 0; flex-direction: column; gap: 7px; }
.hznCompanyVisibilityHero .hznMuted { margin: 0; font-size: 13px; line-height: 18px; }
.hznCompanyVisibilityDetails { flex: 0 0 252px; box-sizing: border-box; padding: 0 24px; }
.hznCompanyAuditAreasHead,
.hznCompanyAuditArea { display: grid; grid-template-columns: minmax(0, 245px) minmax(0, 1fr) 72px; align-items: center; column-gap: 12px; }
.hznCompanyAuditAreasHead { min-height: 21px; color: var(--hzn-muted); font: 700 10px/12px var(--hzn-font-eyebrow); letter-spacing: .09em; text-transform: uppercase; }
.hznCompanyAuditAreasHead span:nth-child(-n+2) { text-align: left; }
.hznCompanyAuditAreasHead span:nth-child(3) { text-align: right; }
.hznCompanyAuditArea { min-height: 35px; border-bottom: 1px solid var(--hzn-line-soft); color: var(--hzn-ink); font-size: 12px; }
.hznCompanyAuditArea:last-child { border-bottom: 0; }
.hznCompanyAuditAreaScore { display: grid; grid-template-columns: minmax(0, 104px) 28px; align-items: center; gap: 10px; }
.hznDashboardScoreTrack { display: block; height: 6px; overflow: hidden; border-radius: 999px; background: var(--hzn-surface); }
.hznDashboardScoreTrack > span { display: block; height: 100%; border-radius: inherit; background: var(--hzn-score-color, var(--hzn-brand)); }
.hznCompanyAuditAreaScore strong { color: var(--hzn-ink); font-size: 12px; text-align: right; font-variant-numeric: tabular-nums; }
.hznCompanyAuditAreaTrend { text-align: right; }
.hznCompanyAuditAreaTrend .hznDeltaPill { min-width: 38px; min-height: 20px; padding: 2px 6px; font-size: 10px; }

.hznCompanyAIEngines { flex: 0 0 178px; box-sizing: border-box; padding: 22px 24px 23px; }
.hznCompanyAIPanel { height: 133px; box-sizing: border-box; padding: 13px 14px 14px; border: 1px solid #e4eaf1; border-radius: 12px; background: #f5f8fb; gap: 11px; }
.hznCompanyAIPanelHead { height: 16px; gap: 12px; }
.hznCompanyAIPanelHead .hznPageEyebrow { margin: 0; }
.hznCompanyAIPanelHead > span:last-child { color: var(--hzn-muted); font-size: 11px; }
.hznCompanyAIPanelHead strong { color: var(--hzn-ink); }
.hznCompanyAIEngineRow { display: grid; height: 77px; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.hznCompanyAIEngine { min-width: 0; height: 77px; justify-content: center; box-sizing: border-box; gap: 5px; padding: 9px 6px 8px; border: 1px solid #e4eaf1; border-radius: 9px; background: var(--hzn-card); text-align: center; }
.hznCompanyAIEngine img,
.hznCompanyGoogleAIIcon { width: 17px; height: 17px; object-fit: contain; }
.hznCompanyGoogleAIIcon { color: #4285f4; font-weight: 900; }
.hznCompanyAIEngine > strong { overflow: hidden; max-width: 100%; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.hznCompanyAIStatus { padding: 2px 5px; border-radius: 999px; font-size: 9px; font-weight: 800; white-space: nowrap; }
.hznCompanyAIStatus-named { background: var(--hzn-good-soft); color: var(--hzn-good); }
.hznCompanyAIStatus-partial { background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznCompanyAIStatus-absent { background: var(--hzn-bad-soft); color: var(--hzn-bad); }


.hznCompanyBiggestGap { flex-basis: 63px; }
.hznCompanyBiggestGap > span { display: flex; min-width: 0; flex-direction: column; gap: 3px; }
.hznCompanyBiggestGap small { font: 700 10px/12px var(--hzn-font-eyebrow); letter-spacing: .09em; text-transform: uppercase; }
.hznCompanyBiggestGap strong { overflow: hidden; color: var(--hzn-ink); font-size: 11px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }


.hznDashboardCardFooter {
  flex: 0 0 60px;
  gap: 16px;
  box-sizing: border-box;
  padding: 14px 24px;
  border-top: 1px solid #e4e9f0;
  background: #f7f9fc;
  color: var(--hzn-muted);
  font-size: 12px;
}

.hznDashboardTextAction { border: 0; background: transparent; color: var(--hzn-brand); font: 700 13px/16px var(--hzn-font-ui); text-decoration: none; cursor: pointer; }
.hznDashboardCardFooter.hznCompanyBiggestGap { flex: 0 0 63px; }
.hznDashboardTextAction:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 25%, transparent); outline-offset: 3px; }

.hznDashboardEmptyState { justify-content: center; gap: 18px; box-sizing: border-box; color: var(--hzn-ink); }
.hznDashboardEmptyState > div { min-width: 0; }
.hznDashboardEmptyState h2,
.hznDashboardEmptyState h3 { margin: 0; font-size: 18px; line-height: 24px; }
.hznDashboardEmptyState p { max-width: 390px; margin: 5px 0 0; color: var(--hzn-muted); font-size: 13px; line-height: 19px; }
.hznDashboardEmptyIcon { flex: 0 0 54px; width: 54px; height: 54px; border-radius: 16px; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 22px; }
.hznCompanyBaselineState { flex: 1 1 auto; flex-direction: column; padding: 32px; text-align: center; }
.hznCompanyBaselineState p { max-width: 360px; }

.hznListingVisibilityCard { position: relative; }
.hznListingVisibilityHero {
 flex: 0 0 152px;
 gap: 18px;
 box-sizing: border-box;
 padding: 10px 24px;
}

.hznListingVisibilityHero .hznPortfolioMarketingBody { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; }
.hznListingVisibilityHero .hznMuted { margin: 3px 0 0; font-size: 12px; line-height: 17px; }
.hznListingNetworks {
 flex: 0 0 174px;
 box-sizing: border-box;
 padding: 5px 24px;
 border-top: 1px solid var(--hzn-line-soft);
}
.hznListingNetworkHead,
.hznListingNetworkRow {
 display: grid;
 grid-template-columns: minmax(0, 225px) minmax(0, 1fr) 55px;
 align-items: center;
 gap: 12px;
}
.hznListingNetworkHead { min-height: 24px; color: var(--hzn-muted); font: 700 10px/12px var(--hzn-font-eyebrow); letter-spacing: .09em; text-transform: uppercase; }
.hznListingNetworkHead span:nth-child(-n+2) { text-align: left; }
.hznListingNetworkHead span:nth-child(3) { text-align: right; }
.hznListingNetworkRow { min-height: 35px; border-top: 1px solid var(--hzn-line-soft); }
.hznListingNetworkName { min-width: 0; gap: 8px; }
.hznListingNetworkName strong { overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.hznListingNetworkIcon { flex: 0 0 18px; width: 18px; height: 18px; color: var(--hzn-brand); font-size: 10px; font-weight: 900; }
.hznListingNetworkIcon img { width: 18px; height: 18px; object-fit: contain; }
.hznListingNetworkLive { display: grid; grid-template-columns: minmax(0, 1fr) 28px; align-items: center; gap: 9px; }
.hznListingNetworkLive strong { color: var(--hzn-ink); font-size: 12px; text-align: right; font-variant-numeric: tabular-nums; }
.hznListingNetworkTrend { text-align: right; }
.hznListingNetworkTrend .hznDeltaPill { min-width: 38px; min-height: 20px; padding: 2px 6px; font-size: 10px; }
.hznListingNetworkEmpty { min-height: 135px; color: var(--hzn-muted); font-size: 12px; }

.hznListingQualityAndMix {
 flex: 0 0 246px;
 justify-content: flex-end;
 gap: 10px;
 box-sizing: border-box;
 padding: 0 24px 18px;
}
.hznListingQuality { box-sizing: border-box; height: 129px; padding: 13px 14px 14px; border: 1px solid #e4eaf1; border-radius: 12px; background: #f5f8fb; }
.hznListingPanelHead,
.hznListingGradeMixHead { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.hznListingPanelHead .hznPageEyebrow,
.hznListingGradeMixHead .hznPageEyebrow { margin: 0; }
.hznListingPanelHead > span:last-child,
.hznListingGradeMixHead strong { color: var(--hzn-muted); font-size: 11px; }
.hznListingPanelHead strong,
.hznListingGradeMixHead strong { color: var(--hzn-ink); }
.hznListingQualitySummaryPercent { font-size: 10px; font-weight: 400; }
.hznListingGradePercent { font-weight: 400; }
.hznListingQualitySignals { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 11px; }
.hznListingQualitySignal { min-width: 0; height: 73px; gap: 5px; box-sizing: border-box; padding: 9px 6px 8px; border: 1px solid #e4eaf1; border-radius: 9px; background: var(--hzn-card); }
.hznListingQualityIcon { width: 16px; height: 16px; color: var(--hzn-good); font-size: 11px; }
.hznListingQualitySignal strong { color: var(--hzn-ink); font-size: 15px; line-height: 17px; font-variant-numeric: tabular-nums; }
.hznListingQualityPercent { font-size: 10px; font-weight: 400; }
.hznListingQualitySignal small { overflow: hidden; max-width: 100%; color: var(--hzn-muted); font-size: 9px; font-weight: 600; line-height: 12px; text-overflow: ellipsis; white-space: nowrap; }
.hznListingGradeMix { display: block; height: 89px; box-sizing: border-box; margin: 0; padding: 13px 14px 14px; border: 1px solid #e4eaf1; border-radius: 12px; background: #f5f8fb; }
.hznListingGradeBar { display: flex; height: 10px; margin-top: 10px; overflow: hidden; border-radius: 999px; background: var(--hzn-surface); }
.hznListingGradeBar span { min-width: 0; }
.hznListingGradeBar .hznGradeA,
.hznListingGradeLegend .hznGradeA { background: #147d64; }
.hznListingGradeBar .hznGradeB,
.hznListingGradeLegend .hznGradeB { background: #50ab93; }
.hznListingGradeBar .hznGradeC,
.hznListingGradeLegend .hznGradeC { background: #fbb040; }
.hznListingGradeBar .hznGradeD,
.hznListingGradeLegend .hznGradeD { background: #e08a1e; }
.hznListingGradeBar .hznGradeF,
.hznListingGradeLegend .hznGradeF {
  color: var(--hzn-score-red);
  background: #ff4141;
}
.hznListingGradeBar .hznGradeU,
.hznListingGradeLegend .hznGradeU { background: #cbd5e1; }
.hznListingGradeLegend { gap: 11px; margin-top: 10px; color: var(--hzn-muted); font-size: 10px; white-space: nowrap; }
.hznListingGradeLegend span { display: inline-flex; align-items: center; gap: 3px; }
.hznListingGradeLegend i { display: inline-block; width: 6px; height: 6px; border-radius: 2px; }
.hznListingGradeLegend strong { color: var(--hzn-ink); }

.hznListingTrendFoot {
 display: grid;
 flex: 0 0 73px;
 grid-template-columns: 125px minmax(0, 1fr) auto;
 align-items: center;
 gap: 14px;
 box-sizing: border-box;
 min-height: 73px;
 margin: 0;
 padding: 10px 24px;
 border: 0;
 border-top: 1px solid #e4e9f0;
 border-radius: 0;
 background: #f7f9fc;
}
.hznListingTrendCopy { min-width: 0; gap: 3px; }
.hznListingTrendCopy .hznPageEyebrow { margin: 0; }
.hznListingTrendCopy strong { color: var(--hzn-ink); font-size: 13px; }
.hznListingTrendChart { position: relative; height: 46px; }
.hznListingTrendChart svg { display: block; width: 100%; height: 42px; overflow: visible; }
.hznListingTrendLine { fill: none; stroke: var(--hzn-brand); stroke-linecap: round; stroke-linejoin: round; stroke-width: 3px; vector-effect: non-scaling-stroke; }
.hznListingTrendToday { fill: var(--hzn-card); stroke: var(--hzn-brand); stroke-width: 4px; vector-effect: non-scaling-stroke; }
.hznListingTrendTodayLabel { position: absolute; top: -8px; right: 0; padding: 3px 8px; border-radius: 8px; background: var(--hzn-good); box-shadow: 0 4px 10px -3px rgba(14, 107, 87, .55); color: #fff; font: 700 8px/11px var(--hzn-font-eyebrow); letter-spacing: .06em; text-transform: uppercase; }
.hznListingTrendEmpty { color: var(--hzn-muted); font-size: 11px; text-align: center; }
.hznListingTrendFoot .hznBtn { justify-self: end; white-space: nowrap; }


.hznDashboardWorkIntro,
.hznDashboardChangesIntro { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; box-sizing: border-box; padding: 18px 24px 12px; }
.hznDashboardWorkIntro { flex: 0 0 72px; }
.hznDashboardWorkIntro h2,
.hznDashboardChangesIntro h2 { margin: 0; color: var(--hzn-ink); font: 800 19px/24px var(--hzn-font-ui); letter-spacing: -.02em; }
.hznDashboardWorkIntro p { max-width: 660px; margin: 0; color: var(--hzn-muted); font-size: 12px; line-height: 17px; text-align: right; }
.hznTodaysWork .hznLeasingMomentum {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: 0;
}


.hznTodaysWork .hznVacancyAllClear { flex: 1 1 240px; flex-direction: column; margin-top: 0; padding: 48px 32px; border: 0; border-radius: 0; background: var(--hzn-card); box-shadow: none; text-align: center; }
.hznTodaysWork .hznVacancyAllClear .hznDashboardEmptyIcon { flex-basis: 72px; width: 72px; height: 72px; border-radius: 50%; background: var(--hzn-data-soft); color: var(--hzn-brand); font-size: 26px; }
.hznTodaysWork .hznVacancyAllClear p { max-width: 440px; }


.hznDashboardChangesIntro { flex: 0 0 60px; padding-top: 16px; padding-bottom: 10px; }


.hznPortfolioChanges .hznDashboardAlertSummary p { display: none; }


.hznDashboardChangesEmpty { flex: 1 1 auto; flex-direction: column; padding: 28px; text-align: center; }
.hznDashboardChangesEmpty p { max-width: 420px; }

@media (max-width: 1399px) {
 .hznDashboardVisibilityGrid { grid-template-columns: minmax(0, 1fr); height: auto; }
 .hznCompanyVisibilityCard,
 .hznListingVisibilityCard { width: 100%; }
}

@media (max-width: 1240px) {
 .hznDashboardStateLine { height: auto; min-height: 51px; align-items: stretch; flex-direction: column; }
 .hznDashboardStateActions { width: 100%; justify-content: flex-end; }
 .hznDashboardVisibilityGrid { grid-template-columns: minmax(0, 1fr); height: auto; }
 .hznCompanyVisibilityCard,
 .hznListingVisibilityCard { width: 100%; height: 704px; }


}

@media (max-width: 700px) {
 .hznDashboardStateLine { align-items: stretch; flex-direction: column; }
 .hznDashboardStateActions { align-items: stretch; flex-direction: column; }
 .hznDashboardScanMeta { align-items: flex-start; }
 .hznDashboardStateDivider { width: 100%; height: 1px; }
 .hznDashboardLastScan { flex-wrap: wrap; }
 .hznDashboardStateLine .hznActionToolbarActions,
 .hznDashboardStateLine .hznBtn { width: 100%; justify-content: center; }
 .hznCompanyVisibilityCard,
 .hznListingVisibilityCard { height: auto; min-height: 704px; }
 .hznCompanyVisibilityHero,
 .hznListingVisibilityHero { grid-template-columns: 1fr; justify-items: center; height: auto; text-align: center; }
 .hznCompanyVisibilityHero { flex-direction: column; }
 .hznCompanyVisibilityDetails { flex-basis: auto; padding: 0 16px; }
 .hznCompanyAuditAreasHead { display: none; }
 .hznCompanyAuditArea { grid-template-columns: minmax(0, 1fr) minmax(88px, 120px) 44px; column-gap: 8px; }
 .hznCompanyAuditAreaScore { grid-template-columns: minmax(0, 1fr) 26px; gap: 6px; }
 .hznCompanyAIEngines { flex-basis: auto; padding: 18px 16px; }
 .hznCompanyAIEngineRow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .hznCompanyBiggestGap { flex-basis: auto; }
 .hznListingNetworks { flex-basis: auto; padding-right: 16px; padding-left: 16px; }
 .hznListingNetworkHead,
 .hznListingNetworkRow { grid-template-columns: minmax(0, 1fr) minmax(84px, .7fr) 42px; gap: 8px; }
 .hznListingQualityAndMix { flex-basis: auto; padding-right: 16px; padding-left: 16px; }
 .hznListingQuality { height: auto; }
 .hznListingQualitySignals { grid-template-columns: repeat(2, minmax(0, 1fr)); }


 .hznListingGradeMix {
   height: auto;
   margin-right: 16px;
   margin-left: 16px;
 }

 .hznListingGradeLegend { flex-wrap: wrap; white-space: normal; }
 .hznListingTrendFoot {
   min-height: 73px;
   gap: 9px;
   padding-right: 16px;
   padding-left: 16px;
   grid-template-columns: 1fr;
   height: auto;
 }
 .hznDashboardWorkIntro { align-items: flex-start; flex-direction: column; height: auto; }
 .hznDashboardWorkIntro p { text-align: left; }


}

@media (max-width: 560px) {
 .hznTodaysWork .hznWorkQueueRow { grid-template-columns: 1fr; }
}

/* Paper People directory: one primary card and an on-demand edit surface. */
.hznPeoplePageHead { gap: 20px; }
.hznPeopleHeader { display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.hznPeopleHeader > div:first-child { min-width: 0; }
.hznPeopleHeader .hznPageH1 { margin-bottom: 6px; }
.hznPeopleHeaderActions { display: flex; align-items: end; gap: 12px; flex: 0 0 auto; }
.hznPeopleHeaderActions > .hznBtn { width: 141px; min-height: 44px; justify-content: center; white-space: nowrap; }
.hznPeopleHeader .hznPeopleSearchLabel { width: 260px; min-width: 260px; }
.hznPeopleHeader .hznPeopleSearchLabel > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.hznPeopleHeader .hznPeopleSearchLabel input { min-height: 44px; padding: 0 13px; border-radius: 10px; background: var(--hzn-card); }
.hznPeopleDirectoryCard { --hzn-people-columns: minmax(180px, 280px) 76px minmax(240px, 1fr) 96px 48px 48px; overflow: hidden; }
.hznPeopleDirectoryBar { display: flex; align-items: center; gap: 12px; min-height: 68px; padding: 12px 20px; border-bottom: 1px solid var(--hzn-line); background: linear-gradient(180deg, #fdfefe 0%, #f8fafc 100%); }
.hznPeopleDirectoryIcon { flex: 0 0 28px; width: 28px; height: 28px; border: 1px solid #c6ddf0; border-radius: 9px; background: #e1edf7; color: var(--hzn-brand); }
.hznPeopleDirectoryFilters { display: inline-flex; flex: 1 1 auto; gap: 2px; min-width: 0; min-height: 44px; padding: 3px; overflow-x: auto; border: 1px solid #e1e7ef; border-radius: var(--hzn-radius-control); background: var(--hzn-card); }
.hznPeopleDirectoryFilters .hznPersonFilter { min-height: 38px; padding: 0 16px; border: 0; border-radius: 8px; background: transparent; color: var(--hzn-ink); font: 600 0.78rem/1 var(--hzn-font-ui); cursor: pointer; white-space: nowrap; }
.hznPeopleDirectoryFilters .hznPersonFilter:hover { color: var(--hzn-brand); }
.hznPeopleDirectoryFilters .hznPersonFilter:focus-visible { outline: 3px solid color-mix(in srgb, var(--hzn-brand) 22%, transparent); outline-offset: -2px; }
.hznPeopleDirectoryFilters .hznPersonFilterActive { background: var(--hzn-card); box-shadow: 0 1px 2px #1018280f; color: var(--hzn-ink); font-weight: 800; }
.hznPeopleDirectoryMenu { position: relative; flex: 0 0 28px; }
.hznPeopleDirectoryMenu .hznDashboardCardMenuPanel { right: 0; left: auto; min-width: 190px; }
.hznPeopleDirectoryMenuNote { display: flex; align-items: center; gap: 8px; padding: 10px 12px; color: var(--hzn-muted); font-size: .76rem; white-space: nowrap; }
.hznPeopleDirectoryColumns, .hznPeopleDirectoryRow { display: grid; grid-template-columns: var(--hzn-people-columns); column-gap: 16px; }
.hznPeopleDirectoryColumns { align-items: center; min-height: 35px; padding: 0 20px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); color: var(--hzn-muted); font: 800 0.62rem/1 var(--hzn-font-eyebrow); letter-spacing: .07em; text-transform: uppercase; }
.hznPeopleDirectoryColumns .hznPeopleDirectoryLaneSource, .hznPeopleDirectoryColumns .hznPeopleDirectoryLaneAction { text-align: center; }
.hznPeopleList {
  gap: 0;
  display: block;
  overflow: visible;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
}
.hznPeopleList .hznPeopleDirectoryRow { min-height: 69px; align-items: center; gap: 16px; padding: 10px 20px; border: 0; border-bottom: 1px solid var(--hzn-line); border-radius: 0; box-shadow: none; background: var(--hzn-card); }
.hznPeopleList .hznPeopleDirectoryRow:last-child { border-bottom: 0; }
.hznPeopleDirectoryRow > div { min-width: 0; }
.hznPeopleDirectoryPerson { gap: 10px; }
.hznPeopleDirectoryPerson .hznOwnerAvatar { flex: 0 0 34px; width: 34px; height: 34px; border-radius: 10px; font-size: .76rem; }
.hznPeopleDirectoryPerson strong, .hznPeopleDirectoryRole strong, .hznPeopleDirectoryContact strong, .hznPeopleDirectoryPlaces strong, .hznPeopleDirectorySource strong { display: block; overflow-wrap: anywhere; font-size: .78rem; }
.hznPeopleDirectoryRow small, .hznPeopleDirectoryRow span:not(.hznOwnerAvatar) { display: block; margin-top: 2px; color: var(--hzn-muted); font-size: .68rem; line-height: 1.3; overflow-wrap: anywhere; }
.hznPeopleDirectoryRole .hznPeopleRolePill { display: inline-flex; width: fit-content; margin: 0; color: var(--hzn-ink); font-size: .68rem; line-height: 1; }
.hznPeopleDirectoryPlaces { display: flex; align-items: baseline; flex-wrap: wrap; column-gap: 5px; row-gap: 0; }
.hznPeopleDirectoryPlaces .hznPeoplePlaceCount { display: inline; margin: 0; color: var(--hzn-ink); font-size: 1.35rem; line-height: 1; }
.hznPeopleDirectoryPlaces .hznPeoplePlaceLabel { display: inline; margin: 0; color: var(--hzn-muted); font-size: .68rem; line-height: 1.2; }
.hznPeopleDirectorySource { display: flex; align-items: center; justify-content: center; }
.hznPeopleDirectorySource span.hznPlaceSourceBadge { display: inline-flex; align-items: center; justify-content: center; margin: 0; color: var(--hzn-brand); font-size: inherit; line-height: 1; }
.hznPeopleDirectorySource .hznPeopleSourceIcon { width: 24px; height: 24px; flex-basis: 24px; border-color: color-mix(in srgb, var(--hzn-data) 30%, var(--hzn-line)); border-radius: 7px; background: color-mix(in srgb, var(--hzn-data-soft) 72%, var(--hzn-card)); }
.hznPeopleDirectorySource .hznPeopleSourceIcon i { display: block; width: 100%; font-size: 16px; line-height: 1; text-align: center; font-synthesis: none; }
.hznPeopleDirectoryContact strong { white-space: nowrap; overflow-wrap: normal; }
.hznPeopleDirectoryAction { display: flex; justify-content: center; }
.hznPeopleDirectoryAction .hznCompactIconAction { width: 40px; height: 40px; min-width: 40px; min-height: 40px; }
.hznPeopleDirectoryEmpty { display: grid; justify-items: start; gap: 8px; min-height: 156px; padding: 28px 20px; color: var(--hzn-muted); }
.hznPeopleDirectoryEmpty strong { color: var(--hzn-ink); font: 700 1rem/1.25 var(--hzn-font-ui); }
.hznPeopleDirectoryFooter { display: flex; align-items: center; min-height: 58px; padding: 0 20px; border-top: 1px solid var(--hzn-line); background: var(--hzn-surface); }
.hznPeopleDirectoryFooterCount { margin: 0; color: var(--hzn-muted); font-size: .78rem; }
.hznPeopleDirectoryFooterCount strong { color: var(--hzn-ink); font: 800 .82rem/1 var(--hzn-font-ui); }
.hznPeopleLinkedCount { margin-left: 4px; }
.hznPersonDialog { display: grid; place-items: center; position: fixed; z-index: 1300; inset: 0; width: auto; max-width: none; padding: 16px; overflow: auto; background: color-mix(in srgb, #101828 48%, transparent); }
.hznPersonDialog .hznModalSurface { width: min(100%, 650px); padding: 24px; border: 1px solid #e4e9f0; border-radius: 18px; background: var(--hzn-card); box-shadow: 0 18px 56px -20px #101828; }
.hznPersonDialogHead { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.hznPersonDialogHead h2 { margin: 6px 0; }
.hznPersonDialogHead .hznMuted { margin: 0; }
.hznPersonDialog .hznSettingsNote, .hznPersonDialog .hznImportResult { margin-top: 16px; }
.hznPersonDialog .hznOwnerFields { margin-top: 20px; }
.hznPersonDialog .hznOwnerFormActions { flex-wrap: wrap; }
.hznPersonDialog[hidden], .hznPersonDialog [hidden] { display: none !important; }

@media (max-width: 1240px) {
 .hznPeopleHeader { align-items: stretch; flex-direction: column; }
 .hznPeopleHeaderActions { width: 100%; align-items: stretch; flex-wrap: wrap; }
 .hznPeopleHeader .hznPeopleSearchLabel { width: min(100%, 260px); min-width: 0; flex: 1 1 220px; }
 .hznPeopleHeaderActions > .hznBtn { flex: 0 1 141px; }
 .hznPeopleDirectoryBar { flex-wrap: wrap; }
 .hznPeopleDirectoryFilters { order: 3; flex-basis: 100%; }
 .hznPeopleDirectoryColumns { display: none; }
 .hznPeopleList .hznPeopleDirectoryRow { display: grid; grid-template-columns: 1fr; gap: 8px; padding: 14px 16px; }
 .hznPeopleList .hznPeopleDirectoryRow > [data-label] { display: grid; grid-template-columns: minmax(7rem, 40%) minmax(0, 1fr); gap: 10px; align-items: baseline; }
 .hznPeopleList .hznPeopleDirectoryRow > [data-label]::before { content: attr(data-label); color: var(--hzn-muted); font: 800 .62rem/1.25 var(--hzn-font-eyebrow); letter-spacing: .07em; text-transform: uppercase; }
 .hznPeopleList .hznPeopleDirectoryPerson { align-items: center; }
 .hznPeopleList .hznPeopleDirectoryAction { justify-content: start; }
 .hznPersonDialog { align-items: end; padding: 0; }
 .hznPersonDialog .hznModalSurface { width: 100%; max-height: 100vh; border-radius: 18px 18px 0 0; overflow-y: auto; }
}

/* Paper Dashboard below-fold: exact work queue and portfolio-change geometry. */
.hznTodaysWork {
  --hzn-work-columns: minmax(0, 1fr) 86px 196px 206px 104px 88px;
  margin-bottom: 20px;
  height: auto;
  min-height: 0;
  overflow: visible;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 32px -28px rgba(35, 42, 47, .42);
}

.hznTodaysWork:has(.hznWorkQueueRowExpanded) {
 height: auto;
 overflow: visible;
}

.hznTodaysWork .hznDashboardWorkLabelHead {
 display: flex;
 flex: 0 0 57px;
 align-items: center;
 justify-content: space-between;
 box-sizing: border-box;
 min-height: 57px;
 padding: 0 20px;
 border-bottom: 1px solid #e2e8f0;
}

.hznWorkQueueSort {
 gap: 12px;
 color: #5e6b76;
 font: 600 11px/1.2 var(--hzn-font-ui);
}

.hznWorkQueueSort > span { display: inline-flex; align-items: center; gap: 7px; }
.hznWorkQueueSort > button {
 display: grid;
 width: 32px;
 height: 32px;
 padding: 0;
 place-items: center;
 border: 1px solid transparent;
 border-radius: 9px;
 background: transparent;
 color: #5e6b76;
 cursor: pointer;
}
.hznWorkQueueSort > button:hover,
.hznWorkQueueSort > button:focus-visible { border-color: #e2e8f0; background: #f3f5f8; color: #01669d; }

.hznTodaysWork .hznDashboardWorkIntro {
 display: flex;
 flex: 0 0 42px;
 align-items: center;
 justify-content: space-between;
 box-sizing: border-box;
 min-height: 42px;
 padding: 0 28px;
}

.hznTodaysWork .hznDashboardWorkIntro h2 {
 overflow: hidden;
 margin: 0;
 font: 800 20px/24px var(--hzn-font-ui);
 letter-spacing: -.01em;
 text-overflow: ellipsis;
 white-space: nowrap;
}

.hznTodaysWork .hznDashboardWorkIntro a {
 color: #01669d;
 font: 700 11px/1 var(--hzn-font-ui);
 text-decoration: none;
 white-space: nowrap;
}

.hznTodaysWork .hznWorkQueueTable {
  display: flex;
  flex: 1 1 auto;
  min-height: 0;
  flex-direction: column;
  padding: 0;
}

.hznWorkQueueSummary {
 display: grid;
 flex: 0 0 auto;
 gap: 12px;
 box-sizing: border-box;
 padding: 12px 28px;
}

.hznWorkQueueTimelineSection {
 padding: 11px 18px 13px;
 border: 1px solid #e2e8f0;
 border-radius: 12px;
 background: #f7f9fc;
}

.hznWorkQueueSummaryLabel {
 color: #5e6b76;
 font: 600 10px/13px var(--hzn-font-eyebrow);
 letter-spacing: .14em;
 text-transform: uppercase;
}

.hznWorkQueueTimeline {
 position: relative;
 display: grid;
 grid-template-columns: repeat(4, minmax(0, 1fr));
 margin: 7px 0 0;
 padding: 0;
 list-style: none;
}

.hznWorkQueueTimeline::before {
 position: absolute;
 top: 8px;
 right: 12.5%;
 left: 12.5%;
 height: 2px;
 background: #9cc8df;
 content: "";
}

.hznWorkQueueTimeline > li {
 position: relative;
 display: grid;
 gap: 2px;
 min-width: 0;
 padding: 25px 10px 0;
 text-align: center;
}

.hznWorkQueueTimeline > li::before {
 position: absolute;
 top: 1px;
 left: 50%;
 z-index: 1;
 width: 12px;
 height: 12px;
 transform: translateX(-50%);
 border: 2px solid #01669d;
 border-radius: 50%;
 background: #fff;
 box-shadow: 0 0 0 4px #f7f9fc;
 content: "";
}

.hznWorkQueueTimeline span,
.hznWorkQueueRisk span {
 color: #5e6b76;
 font: 600 10px/13px var(--hzn-font-eyebrow);
 letter-spacing: .12em;
 text-transform: uppercase;
}

.hznWorkQueueTimeline strong,
.hznWorkQueueRisk strong {
 color: #232a2f;
 font: 800 28px/30px var(--hzn-font-ui);
 font-variant-numeric: tabular-nums;
 letter-spacing: -.02em;
}

.hznWorkQueueTimeline small,
.hznWorkQueueRisk small {
 overflow: hidden;
 color: #5e6b76;
 font: 600 11px/15px var(--hzn-font-ui);
 text-overflow: ellipsis;
 white-space: nowrap;
}

.hznWorkQueueRisk {
 display: grid;
 grid-template-columns: repeat(4, minmax(0, 1fr));
 overflow: hidden;
 border: 1px solid #e2e8f0;
 border-radius: 12px;
 background: #f7f9fc;
}

.hznWorkQueueRisk > div {
 display: grid;
 grid-template-columns: auto minmax(0, 1fr);
 align-items: baseline;
 gap: 2px 8px;
 min-width: 0;
 padding: 12px 16px;
 border-left: 1px solid #e2e8f0;
}

.hznWorkQueueRisk > div:first-child { border-left: 0; }
.hznWorkQueueRisk span { grid-column: 1 / -1; }
.hznWorkQueueRisk > div:nth-child(2) strong { color: #a91522; }
.hznWorkQueueRisk > div:nth-child(4) strong { color: #9a5b00; }

.hznTodaysWork .hznWorkQueueColumns,
.hznTodaysWork .hznWorkQueueRow {
  gap: 12px;
  align-items: start;
  display: grid;
  grid-template-columns: var(--hzn-work-columns);
  grid-auto-flow: row;
  column-gap: 14px;
  box-sizing: border-box;
  padding-right: 28px;
  padding-left: 28px;
}

.hznTodaysWork .hznWorkQueueColumns {
  box-sizing: border-box;
  padding: 10px 28px;
  flex: 0 0 31px;
  align-items: center;
  min-height: 31px;
  border-top: 1px solid #e2e8f0;
  border-bottom: 1px solid #e2e8f0;
  background: #f7f9fc;
  color: #5e6b76;
  font: 700 10px/1 var(--hzn-font-eyebrow);
  letter-spacing: .07em;
  text-transform: uppercase;
}

.hznTodaysWork .hznWorkQueueRows {
 display: block;
 flex: 0 0 auto;
 min-height: 0;
 overflow: visible;
}

.hznTodaysWork .hznWorkQueueRow {
  display: grid;
  grid-template-columns: var(--hzn-work-columns);
  gap: 14px;
  box-sizing: border-box;
  align-items: center;
  min-height: 71px;
  padding: 13px 28px;
  border: 0;
  border-bottom: 1px solid #e2e8f0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
}
.hznTodaysWork .hznWorkQueueRow:last-child { border-bottom: 0; }
.hznTodaysWork .hznWorkQueueRow > [role="cell"] { min-width: 0; }
.hznTodaysWork .hznWorkQueueRow [data-label]::before { display: none; }
.hznTodaysWork .hznWorkQueueRow > .hznWorkQueuePlace { grid-column: 1; }
.hznTodaysWork .hznWorkQueueRow > .hznWorkQueueVacant { grid-column: 2; }
.hznTodaysWork .hznWorkQueueRow > .hznWorkQueueIssue { grid-column: 3; }
.hznTodaysWork .hznWorkQueueRow > .hznWorkQueueNetworks { grid-column: 4; }
.hznTodaysWork .hznWorkQueueRow > .hznWorkQueueScore { grid-column: 5; }
.hznTodaysWork .hznWorkQueueRow > .hznWorkQueueAction { grid-column: 6; }

.hznWorkQueuePlace > .hznRecordLink { display: block; min-width: 0; }
.hznWorkQueuePlace .hznListBody { display: grid; min-width: 0; gap: 3px; }
.hznWorkQueuePlace .hznListTitle { display: flex; min-width: 0; color: #232a2f; font: 700 15px/18px var(--hzn-font-ui); }
.hznWorkQueuePlace .hznListSub { display: flex; min-width: 0; align-items: center; gap: 8px; font: 400 12px/16px var(--hzn-font-ui); }
.hznWorkQueuePlace .hznPlacesRowLocation { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.hznWorkQueueVacant { align-items: flex-end; text-align: right; }
.hznWorkQueueVacant .hznVacancyDay { color: #232a2f; font: 800 15px/18px var(--hzn-font-ui); }
.hznWorkQueueIssue { gap: 8px; margin: 0; }
.hznWorkQueueIssueIcon { flex: 0 0 17px; width: 17px; height: 17px; border-radius: 0; background: transparent; color: #e08a1e; font-size: 14px; }
.hznVacancySeverityDay21 .hznWorkQueueIssueIcon,
.hznVacancySeverityDay28 .hznWorkQueueIssueIcon { background: transparent; color: #ff4141; }
.hznWorkQueueIssue > span:last-child { min-width: 0; }
.hznWorkQueueIssue strong,
.hznWorkQueueIssue small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznWorkQueueIssue strong { color: #3d4852; font: 600 13px/16px var(--hzn-font-ui); }
.hznWorkQueueIssue small { margin-top: 2px; color: #5e6b76; font: 500 11px/14px var(--hzn-font-ui); }

.hznWorkQueueNetworks { min-height: 32px; gap: 6px; }
.hznWorkQueueNetworkSlot { display: grid; flex: 0 0 32px; width: 32px; height: 32px; place-items: center; border-width: 1px; border-style: solid; border-radius: 8px; }
.hznWorkQueueNetworkSlot.hznNetworkUnknown { border-color: var(--hzn-line); }
.hznWorkQueueNetworkSlot img { width: 18px; height: 18px; object-fit: contain; }
.hznWorkQueueNetworkSummary { margin-left: 0; color: #5e6b76; font: 600 12px/16px var(--hzn-font-ui); white-space: nowrap; }
.hznWorkQueueNetworkSummary strong { color: #232a2f; }
.hznWorkQueueNetworks > .hznWorkQueueNetworkUnknown { color: #5e6b76; font: 500 10px/1.2 var(--hzn-font-ui); }


.hznWorkQueueAction { display: flex; justify-content: flex-end; margin: 0; }
.hznWorkQueueAction .hznWorkQueueFix { width: 88px; min-width: 88px; height: 44px; justify-content: center; border-color: #e2e8f0; background: #e9eef5; color: #01669d; }
.hznWorkQueueAction .hznWorkQueueFix:hover { border-color: #01669d; background: #f1f8fc; }

.hznTodaysWork .hznWorkQueueRow > .hznWorkQueueFixPanel {
 display: grid;
 grid-column: 1 / -1;
 grid-row: 2;
 grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr);
 gap: 24px;
 margin: 4px 0 2px;
 padding: 16px 18px 18px;
 border: 1px solid #e2e8f0;
 border-radius: 12px;
 background: #f5f8fb;
}
.hznTodaysWork .hznWorkQueueFixPanel[hidden] { display: none; }
.hznWorkQueueRecommendation h4 { margin: 6px 0; color: #232a2f; font: 700 15px/20px var(--hzn-font-ui); }
.hznWorkQueueRecommendation p { margin: 0; color: #5e6b76; font-size: 12px; line-height: 17px; }
.hznWorkQueueRecommendation .hznVacancyEvidence { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.hznWorkQueueRecommendation .hznVacancyEvidence > span { padding: 6px 8px; border: 1px solid #e2e8f0; border-radius: 8px; background: #fff; color: #5e6b76; font-size: 12px; line-height: 16px; }
.hznWorkQueueFixControls { min-width: 0; justify-content: space-between; gap: 12px; }
.hznWorkQueueFixControls .hznVacancyLeadRefiner { margin: 0; }
.hznWorkQueueFixControls .hznVacancyLeadRefiner label { font-size: 12px; line-height: 16px; }
.hznVacancyLeadStatus { margin-top: 8px; }
.hznVacancyPriorCycle {
 display: flex;
 align-items: center;
 gap: 7px;
 margin: 9px 0 0;
 color: var(--hzn-muted);
 font-size: 0.7rem;
 line-height: 1.42;
}
.hznVacancyPriorCycle i { color: var(--hzn-brand); }
.hznPlaceVacancyInputsHead h2 { margin: 4px 0 0; }
.hznPlaceVacancyInputsHead > p.hznMuted { margin: 8px 0 0; max-width: none; }
/* At most four conditional refiners render here. Keep all four on one desktop
   row, then make the narrower layouts deliberate rather than dependent on the
   cards' varying copy length. */
.hznPlaceVacancyInputsGrid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin-top: 18px; align-items: start; }

@media (max-width: 900px) {
 .hznPlaceVacancyInputsGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
 .hznPlaceVacancyInputsGrid { grid-template-columns: minmax(0, 1fr); }
}

.hznPlaceVacancyInputs .hznVacancyLeadRefiner { display: flex; height: 100%; box-sizing: border-box; flex-direction: column; margin: 0; }
.hznPlaceVacancyInputs .hznVacancyRefinerControls { align-items: flex-end; margin-top: auto; padding-top: 9px; }
.hznWorkQueueFixControls .hznVacancyPriorCycle { font-size: 12px; line-height: 16px; }
.hznWorkQueueFixControls .hznWorkQueueActionBar { display: grid; width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 0; }
.hznWorkQueueActionBar .hznWorkQueuePanelAction { width: 100%; min-height: 38px; box-sizing: border-box; justify-content: center; gap: 7px; white-space: nowrap; }
.hznWorkQueueActionBar .hznWorkQueuePanelAction:only-child { grid-column: 1 / -1; }
.hznWorkQueuePanelAction > i { width: 16px; flex: 0 0 16px; text-align: center; }

.hznWorkQueueFooter {
 flex: 0 0 61px;
 box-sizing: border-box;
 min-height: 61px;
 padding: 0 20px;
 border-top: 1px solid #e2e8f0;
 background: #f7f9fc;
 color: #5e6b76;
 font: 500 11px/1.3 var(--hzn-font-ui);
}
.hznWorkQueueFooter strong { color: #232a2f; }
.hznTodaysWork .hznVacancyLoadError { flex: 1 1 auto; margin: 0; padding: 40px 32px; border: 0; border-radius: 0; background: #fff0f0; box-shadow: none; color: var(--hzn-bad); }
.hznTodaysWork .hznVacancyLoadError .hznDashboardEmptyIcon { background: var(--hzn-bad-soft); color: var(--hzn-bad-fg); }

.hznPortfolioChanges {
  margin-bottom: 0;
  display: flex;
  position: relative;
  height: 437px;
  min-height: 437px;
  overflow: hidden;
  flex-direction: column;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 32px -28px rgba(35, 42, 47, .42);
}
.hznPortfolioChanges .hznDashboardChangesLabelHead { flex: 0 0 57px; box-sizing: border-box; min-height: 57px; padding: 0 20px; border-bottom: 1px solid #e2e8f0; }
.hznPortfolioChanges .hznDashboardChangesIntro { display: flex; flex: 0 0 42px; align-items: center; box-sizing: border-box; min-height: 42px; padding: 0 20px; }
.hznPortfolioChanges .hznDashboardChangesIntro h2 { margin: 0; font: 700 15px/1.25 var(--hzn-font-ui); }
.hznDashboardChangesHeadActions { min-width: 0; }
.hznPortfolioChangesMenu[open] { z-index: 20; }
.hznPortfolioChanges:has(.hznPortfolioChangesMenu[open]) { overflow: visible; }
.hznDashboardChangesIntro #hznDashboardAlertCountsSlot { display: flex; min-width: 0; align-items: center; justify-content: flex-end; margin-left: auto; }
.hznPortfolioChanges #hznDashboardAlertSnapshot {
  display: flex;
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  flex-direction: column;
  padding: 0;
}
.hznPortfolioChanges .hznDashboardAlertSummary {
  position: relative;
  flex: 0 0 0;
  height: 0;
  margin: 0;
  padding: 0;
}
.hznPortfolioChanges .hznDashboardAlertSummary > p { display: none; }
.hznPortfolioChanges .hznDashboardAlertCounts { display: flex; position: static; align-items: center; gap: 6px; flex-wrap: nowrap; }
.hznPortfolioChanges .hznDashboardAlertCounts .hznPill { min-height: 22px; padding: 0 9px; font: 700 10px/22px var(--hzn-font-ui); white-space: nowrap; }
.hznPortfolioChanges .hznDashboardAlertPositive { color: var(--hzn-good); background: var(--hzn-good-soft); }
.hznPortfolioChanges .hznDashboardComparisonHook { display: none !important; }
.hznPortfolioChanges .hznPortfolioChangesGroups {
  display: grid;
  flex: 0 0 275px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  box-sizing: border-box;
  min-height: 275px;
  padding: 16px 28px;
  border-top: 1px solid #e2e8f0;
  background: #f3f5f8;
}
.hznPortfolioChanges .hznDashboardChangeGroup {
  min-width: 0;
  padding-top: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.hznPortfolioChanges .hznDashboardChangeGroupHead {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 27px;
  padding: 0 2px 8px;
}
.hznPortfolioChanges .hznDashboardChangeGroupHead h3 { margin: 0; color: #232a2f; font: 700 12px/1 var(--hzn-font-ui); }
.hznPortfolioChanges .hznDashboardChangeGroupHead > span { display: grid; min-width: 24px; height: 20px; place-items: center; border-radius: 999px; background: #e9eef5; color: #5e6b76; font: 700 10px/1 var(--hzn-font-ui); }
.hznPortfolioChanges .hznDashboardChangeGroupTitle { display: flex; min-width: 0; align-items: center; gap: 8px; }
.hznPortfolioChanges .hznDashboardChangeGroupTitle > i { display: block; flex: 0 0 10px; width: 10px; height: 10px; border-radius: 3px; }
.hznPortfolioChanges .hznDashboardChangeGroupTitle > .hznPortfolioChangesDeclinedMarker { background: #bf3b42; box-shadow: 0 0 0 3px #fff0f0; }
.hznPortfolioChanges .hznDashboardChangeGroupTitle > .hznPortfolioChangesImprovedMarker { background: #0e6b57; box-shadow: 0 0 0 3px #e7f5ef; }
.hznPortfolioChanges .hznDashboardAlertList {
  display: grid;
  gap: 8px;
  margin: 0;
}
.hznPortfolioChanges .hznDashboardChangeCard {
 display: grid;
 width: 100%;
 min-height: 66px;
 grid-template-columns: 34px minmax(0, 1fr) 52px;
 align-items: center;
 gap: 10px;
 box-sizing: border-box;
 padding: 10px 12px;
 border: 1px solid #e2e8f0;
 border-radius: 12px;
 background: #fff;
 box-shadow: 0 5px 14px -13px rgba(35, 42, 47, .6);
 color: #232a2f;
 text-align: left;
 cursor: pointer;
}
.hznPortfolioChanges .hznDashboardChangeCard:hover,
.hznPortfolioChanges .hznDashboardChangeCard:focus-visible { border-color: #9bc4d9; box-shadow: 0 7px 18px -12px rgba(1, 102, 157, .55); }
.hznDashboardChangeIcon { width: 34px; height: 34px; overflow: hidden; border-radius: 9px; background: #fff4e6; color: #b86b11; }
.hznDashboardChangeIcon img { width: 20px; height: 20px; border-radius: 4px; object-fit: contain; }
.hznDashboardChangeCard.hznAlertCritical .hznDashboardChangeIcon { background: #fff0f0; color: #bf3b42; }
.hznDashboardChangeCard.hznAlertPositive .hznDashboardChangeIcon { background: #e7f5ef; color: #0e6b57; }
.hznDashboardChangeBody { min-width: 0; }
.hznDashboardChangeBody strong,
.hznDashboardChangeBody small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznDashboardChangeBody strong { color: #232a2f; font: 700 14px/17px var(--hzn-font-ui); }
.hznDashboardChangeBody small { margin-top: 2px; color: #5e6b76; font: 500 12px/15px var(--hzn-font-ui); }
.hznDashboardChangeValue { text-align: right; }

.hznDashboardChangeValue .hznAlertTime {
  display: block;
  white-space: nowrap;
  color: #8793a0;
  font: 500 10px/13px var(--hzn-font-ui);
  text-align: right;
}
.hznPortfolioChanges .hznDashboardAlertFooter {
  display: flex;
  flex: 0 0 61px;
  align-items: center;
  justify-content: flex-end;
  box-sizing: border-box;
  min-height: 61px;
  margin: 0;
  padding: 0 20px;
  border-top: 1px solid #e2e8f0;
  background: #f7f9fc;
}
.hznPortfolioChanges .hznDashboardAlertFooter .hznBtn { min-height: 30px; }
.hznPortfolioChanges .hznDashboardAlertSkeleton { display: grid; flex: 0 0 275px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; box-sizing: border-box; margin: 0; padding: 43px 28px 16px; background: #f3f5f8; }
.hznPortfolioChanges .hznDashboardAlertSkeleton > div { display: grid; gap: 8px; }
.hznPortfolioChanges .hznDashboardAlertSkeleton > div > span { display: block; min-height: 66px; border: 1px solid #e2e8f0; border-radius: 12px; background: linear-gradient(90deg, #fff 20%, #f5f7fa 42%, #fff 64%); background-size: 240% 100%; animation: hznSkeletonShimmer 1.35s ease-in-out infinite; }
.hznPortfolioChanges .hznDashboardAlertLoading { flex: 0 0 45px; box-sizing: border-box; margin: 0; padding: 15px 20px; border-top: 1px solid #e2e8f0; background: #f7f9fc; color: #5e6b76; font-size: 10px; }

@media (max-width: 1240px) {
 .hznTodaysWork { height: auto; min-height: 649px; overflow: visible; }
 .hznWorkQueueFooter { border-radius: 0 0 17px 17px; }
 .hznWorkQueueRisk { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .hznWorkQueueRisk > div:nth-child(3) { border-left: 0; }
 .hznWorkQueueRisk > div:nth-child(n+3) { border-top: 1px solid #e2e8f0; }
 .hznTodaysWork .hznWorkQueueColumns { display: none; }
 .hznTodaysWork .hznWorkQueueRows { padding: 12px; background: #f3f5f8; }
 .hznTodaysWork .hznWorkQueueRow {
   grid-template-columns: repeat(2, minmax(0, 1fr));
   gap: 14px 20px;
   min-height: 0;
   margin-bottom: 10px;
   padding: 16px;
   border: 1px solid #e2e8f0;
   border-radius: 12px;
 }
 .hznTodaysWork .hznWorkQueueRow > .hznWorkQueuePlace,
 .hznTodaysWork .hznWorkQueueRow > .hznWorkQueueVacant,
 .hznTodaysWork .hznWorkQueueRow > .hznWorkQueueIssue,
 .hznTodaysWork .hznWorkQueueRow > .hznWorkQueueNetworks,
 .hznTodaysWork .hznWorkQueueRow > .hznWorkQueueScore,
 .hznTodaysWork .hznWorkQueueRow > .hznWorkQueueAction { grid-column: auto; }
 .hznTodaysWork .hznWorkQueueRow:last-child { margin-bottom: 0; border-bottom: 1px solid #e2e8f0; }
 .hznTodaysWork .hznWorkQueueRow [data-label]::before {
   display: block;
   margin-bottom: 5px;
   color: #5e6b76;
   content: attr(data-label);
   font: 700 9px/1 var(--hzn-font-eyebrow);
   letter-spacing: .07em;
   text-transform: uppercase;
 }
 .hznTodaysWork .hznWorkQueueRow > .hznWorkQueueFixPanel { grid-column: 1 / -1; grid-row: auto; grid-template-columns: 1fr; }
 .hznWorkQueueAction { justify-content: flex-start; }
 .hznPortfolioChanges { height: auto; min-height: 437px; overflow: visible; }
 .hznPortfolioChanges .hznPortfolioChangesGroups { flex: 0 0 auto; height: auto; min-height: 0; grid-template-columns: 1fr; }
 .hznPortfolioChanges .hznDashboardAlertSkeleton { height: auto; grid-template-columns: 1fr; }
 .hznPortfolioChanges .hznDashboardAlertCounts { position: static; }
}

@media (max-width: 700px) {
 .hznTodaysWork .hznDashboardWorkLabelHead,
 .hznTodaysWork .hznDashboardWorkIntro { height: auto; align-items: flex-start; flex-direction: column; gap: 8px; padding: 12px 16px; }
 .hznWorkQueueSort { width: 100%; justify-content: space-between; }
 .hznTodaysWork .hznDashboardWorkIntro h2 { white-space: normal; }
 .hznWorkQueueSummary { padding: 12px 16px; }
 .hznWorkQueueTimeline { grid-template-columns: 1fr; margin-top: 5px; padding-left: 23px; }
 .hznWorkQueueTimeline::before { top: 18px; right: auto; bottom: 18px; left: 7px; width: 2px; height: auto; }
 .hznWorkQueueTimeline > li { grid-template-columns: 72px 42px minmax(0, 1fr); align-items: center; min-height: 44px; padding: 7px 0 7px 12px; text-align: left; }
 .hznWorkQueueTimeline > li::before { top: 50%; left: -16px; transform: translate(-50%, -50%); }
 .hznWorkQueueTimeline strong { text-align: right; }
 .hznWorkQueueTimeline small { padding-left: 8px; }
 .hznWorkQueueRisk { grid-template-columns: 1fr; }
 .hznWorkQueueRisk > div { border-top: 1px solid #e2e8f0; border-left: 0; }
 .hznWorkQueueRisk > div:first-child { border-top: 0; }
 .hznTodaysWork .hznWorkQueueRow { grid-template-columns: 1fr; }
 .hznTodaysWork .hznWorkQueueFixPanel { grid-column: 1; margin: 2px 0 0; padding: 14px; }
 .hznWorkQueueFixControls .hznWorkQueueActionBar { grid-template-columns: 1fr; }
 .hznWorkQueueFooter { height: auto; align-items: stretch; flex-direction: column; gap: 10px; padding: 14px 16px; }
 .hznWorkQueueFooter .hznBtn { width: 100%; justify-content: center; }
 .hznPortfolioChanges .hznDashboardChangesIntro { height: auto; min-height: 62px; align-items: stretch; flex-direction: column; gap: 10px; padding: 12px 16px; }
 .hznPortfolioChanges .hznDashboardChangesIntro h2 { max-width: none; }
 .hznDashboardChangesIntro #hznDashboardAlertCountsSlot { width: 100%; justify-content: flex-start; margin-left: 0; }
 .hznPortfolioChanges .hznDashboardAlertSummary { flex: 0 0 auto; height: auto; }
 .hznPortfolioChanges .hznDashboardAlertCounts { position: static; justify-content: flex-start; margin: 0; flex-wrap: wrap; }
 .hznPortfolioChanges .hznPortfolioChangesGroups {
   grid-template-columns: 1fr;
   padding: 14px 16px;
 }
 .hznPortfolioChanges .hznDashboardAlertFooter { padding: 0 16px; }
}
.hznPotentialReviewMatchesCard { overflow: hidden; padding: 0; }
.hznPotentialReviewMatchesIntro { padding: 14px 20px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-card); }
.hznPotentialReviewMatchesIntro h2, .hznPotentialReviewMatchesIntro p { margin: 0; }
.hznPotentialReviewMatchesIntro h2 { font-size: 1rem; }
.hznPotentialReviewMatchesIntro p { margin-top: 3px; color: var(--hzn-muted); font-size: .76rem; }
.hznPotentialMatchColumns, .hznPotentialMatchCandidate { display: grid; grid-template-columns: minmax(160px, 1.1fr) 76px minmax(240px, 1.8fr) minmax(150px, 1fr) 100px minmax(178px, auto); gap: 16px; align-items: center; }
.hznPotentialMatchColumns { min-height: 35px; padding: 0 20px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); color: var(--hzn-muted); font: 700 .62rem/1 var(--hzn-font-eyebrow); letter-spacing: .14em; text-transform: uppercase; }
.hznPotentialReviewMatchesList, .hznPotentialMatchCandidates { display: grid; }
.hznPotentialMatchGroup + .hznPotentialMatchGroup { border-top: 10px solid var(--hzn-surface); }
.hznPotentialReviewMatchesCard .hznPotentialMatchReview { grid-template-columns: 40px minmax(0, 1fr) auto; margin: 0; padding: 14px 20px; }
.hznPotentialMatchAvatar { width: 40px; height: 40px; overflow: hidden; border-radius: 50%; background: var(--hzn-data-soft); color: var(--hzn-brand); font-weight: 800; }
.hznPotentialMatchAvatar img { width: 100%; height: 100%; object-fit: cover; }
.hznPotentialMatchNameLine, .hznPotentialMatchReviewStatus { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.hznPotentialMatchNameLine small, .hznPotentialMatchReviewCopy p { color: var(--hzn-muted); }
.hznPotentialMatchReviewCopy p { margin: 3px 0 0; }
.hznPotentialMatchReviewStatus { justify-content: flex-end; }
.hznPotentialMatchResponse { display: grid; width: 28px; height: 28px; place-items: center; border-radius: 50%; background: var(--hzn-card); }
.hznPotentialMatchCandidate { position: relative; min-height: 76px; padding: 12px 20px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-card); }
.hznPotentialMatchPerson, .hznPotentialMatchRole, .hznPotentialMatchConfidenceLane { display: flex; min-width: 0; align-items: center; }
.hznPotentialMatchContact, .hznPotentialMatchPlaces { min-width: 0; }
.hznPotentialMatchContact strong, .hznPotentialMatchPlaces strong { display: block; overflow: hidden; font-size: .78rem; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }
.hznPotentialMatchActions { display: flex; gap: 8px; justify-content: flex-end; }
.hznPotentialMatchActions .hznBtn { flex: 1; justify-content: center; }
.hznPotentialMatchCandidate > .hznInlineAlert { grid-column: 1 / -1; }
.hznPotentialReviewMatchesFooter { border-top: 0; }

@media (max-width: 1240px) {
 .hznPotentialMatchColumns { display: none; }
 .hznPotentialMatchCandidate { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
 .hznPotentialMatchCandidate > [data-label] { display: grid; gap: 4px; }
 .hznPotentialMatchCandidate > [data-label]::before { content: attr(data-label); color: var(--hzn-muted); font: 700 .62rem/1 var(--hzn-font-eyebrow); letter-spacing: .12em; text-transform: uppercase; }
 .hznPotentialMatchContact strong, .hznPotentialMatchPlaces strong { overflow: visible; white-space: normal; }
 .hznPotentialMatchActions { grid-column: 1 / -1; flex-direction: row; }
}

@media (max-width: 700px) {
 .hznPotentialMatchCandidate { grid-template-columns: 1fr; }
 .hznPotentialReviewMatchesCard .hznPotentialMatchReview { grid-template-columns: 40px minmax(0, 1fr); }
 .hznPotentialMatchReviewStatus { grid-column: 2; justify-content: flex-start; }
 .hznPotentialMatchActions { grid-column: 1; }
 .hznPotentialReviewMatchesFooter { align-items: flex-start; flex-direction: column; justify-content: center; gap: 4px; }
}


/* Shared semantic typography roles. Components may vary weight, color, and
   spacing, but equivalent content keeps the same size across surfaces. */
.hznEyebrow,
.hznPageEyebrow,
.hznNavEyebrow,
.hznStatLabel,
.hznReviewPipelineItem > span,
.hznPlanCapacityHead,
.hznPortfolioScore span,
.hznPortfolioGaps span,
.hznFixLiftL,
.hznProgRingInner small,
.hznVerificationAccount dt,
.hznReportSections legend,
.hznImportConflictSource,
.hznVacancyPlace span,
.hznVacancyState,
.hznMatrixScoreGrade,
.hznMatrixScoreSource,
.hznCompanyContributionHead > span,
.hznAEOMatrixSummary small,
.hznListingAIQuestion small,
.hznOpportunityValue span,
.hznPlaceEvidence,
.hznContributionHead > span,
.hznCompanyBiggestGap small { font-size: var(--hzn-type-label); }

.hznReviewFilters label,
.hznAlertTools label,
.hznLoginLabel,
.hznScanLabel,
.hznSignupLabel,
.hznReportBulkControls label,
.hznSupportComposer .hznField > span,
.hznImportFields label > span,
.hznIntegrationFields label > span,
.hznSettingsFields label > span:first-child,
.hznOwnerFields label > span,
.hznPeopleSearchLabel,
.hznPortfolioFilterBody label > span,
.hznAuditSelector label { font-size: var(--hzn-type-caption); }

.hznReviewPipelineItem > small,
.hznReportBulkProgress,
.hznIntegrationMeta,
.hznRetentionDisclosure,
.hznOpportunityValue small { font-size: var(--hzn-type-caption); }

.hznPortfolioSummary,
.hznSearchResultMeta,
.hznSupportFormFoot p,
.hznImportConflictSide,
.hznMatrixMeta,
.hznAuditOverviewMeta,
.hznGeoGridMeta,
.hznReviewQueueFooter,
.hznPeopleDirectoryFooterCount,
.hznPotentialReviewMatchesIntro p { font-size: var(--hzn-type-meta); }

.hznDashboardCardFooter,
.hznCompanyBiggestGap strong,
.hznListingTrendCopy strong,
.hznListingTrendEmpty { font-size: var(--hzn-type-body); }

.hznDashboardCardFooter .hznBtn,
.hznDashboardTextAction,
.hznListingTrendFoot .hznBtn,
.hznPortfolioChanges .hznDashboardAlertFooter .hznBtn { font-size: var(--hzn-type-body); }

.hznReviewQueueColumns,
.hznPeopleDirectoryColumns,
.hznPotentialMatchColumns,
.hznTodaysWork .hznWorkQueueColumns,
.hznCompanyAuditAreasHead,
.hznListingNetworkHead,
.hznQualityRubricHead,
.hznAEOMatrix thead th,
.hznPlacesColumns,
.hznPortfolioPerformanceComparison .hznPerformanceTable thead th,
.hznDataRow [data-label]::before,
.hznStructuredRow [data-label]::before,
.hznPlaceListRow.hznDataRow .hznPlaceResult [data-label]::before,
.hznPlaceListRow.hznDataRow > [data-label]::before,
.hznPlacesRow [data-label]::before,
.hznPeopleList .hznPersonCard [data-label]::before,
.hznPeopleList .hznPeopleDirectoryRow > [data-label]::before,
.hznTodaysWork .hznWorkQueueRow [data-label]::before,
.hznPotentialMatchCandidate > [data-label]::before { font-size: var(--hzn-type-label); }

.hznGeoGridSummary strong,
.hznAuditRankGrid .hznAuditCheckPassed > small,
.hznAuditAreaValue,
.hznMatrixScoreValue,
.hznRetentionPreviewGrid strong,
.hznPeopleDirectoryPlaces .hznPeoplePlaceCount { font-size: var(--hzn-type-metric); }

/* Horizon AnswerBase and Botpress-assisted support */
.hznAnswerBase { display: grid; gap: 18px; margin: 0; max-width: none; }
.hznAnswerBaseHead { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.hznAnswerBaseHead > div { min-width: 0; }
.hznAnswerBaseHead h2 { margin: 5px 0 6px; }
.hznAnswerBaseHead p:last-child { margin-bottom: 0; }
.hznAnswerBaseHead > .hznBtn { flex: none; }
.hznAnswerBaseSearch { display: flex; align-items: center; gap: 10px; padding: 5px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-card); background: var(--hzn-surface); transition: border-color .16s ease, box-shadow .16s ease, background .16s ease; }
.hznAnswerBaseSearch:focus-within { border-color: var(--hzn-brand); background: var(--hzn-card); box-shadow: 0 0 0 3px color-mix(in srgb, var(--hzn-brand) 12%, transparent); }
.hznAnswerBaseSearch input { min-width: 0; height: 44px; flex: 1; box-sizing: border-box; padding: 0 13px; border: 1px solid transparent; border-radius: calc(var(--hzn-radius-control) - 2px); background: var(--hzn-card); color: var(--hzn-ink); font: inherit; font-size: .9rem; outline: none; }
.hznAnswerBaseSearch input::placeholder { color: var(--hzn-muted); opacity: 1; }
.hznAnswerBaseSearch input:focus { border-color: color-mix(in srgb, var(--hzn-brand) 42%, var(--hzn-line)); }
.hznAnswerBaseSearch .hznBtn { min-height: 44px; justify-content: center; }
.hznAnswerBaseResults { min-height: 32px; }
.hznAnswerBaseHint { margin: 0; }
.hznAnswerBaseCount { margin: 0 0 10px; color: var(--hzn-muted); font-size: var(--hzn-type-meta); }
.hznAnswerBaseList { display: grid; gap: 8px; }
.hznAnswerBaseResult { display: grid; grid-template-columns: 34px minmax(0, 1fr) 18px; align-items: center; gap: 12px; width: 100%; padding: 12px; border: 1px solid var(--hzn-line); border-radius: var(--hzn-radius-control); background: var(--hzn-card); color: inherit; text-align: left; cursor: pointer; }
.hznAnswerBaseResult:hover, .hznAnswerBaseResult:focus-visible { border-color: var(--hzn-brand); box-shadow: 0 0 0 3px color-mix(in srgb, var(--hzn-brand) 15%, transparent); outline: none; }
.hznAnswerBaseResultIcon { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 10px; background: var(--hzn-brand-soft); color: var(--hzn-brand); }
.hznAnswerBaseResult span:nth-child(2) { display: grid; gap: 2px; min-width: 0; }
.hznAnswerBaseResult strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hznAnswerBaseResult small { color: var(--hzn-muted); }
.hznAnswerBaseResult > i { color: var(--hzn-brand); }
.hznAnswerBaseArticle { display: grid; gap: 14px; }
.hznAnswerBaseArticle > .hznBtn { justify-self: start; }
.hznAnswerBaseArticle h3 { margin: 0; }
.hznAnswerBaseArticleContent { color: var(--hzn-muted); line-height: 1.65; }
.hznAnswerBaseArticleContent > :first-child { margin-top: 0; }
.hznAnswerBaseArticleContent > :last-child { margin-bottom: 0; }
.hznSupportFindAnswer { margin-top: 14px; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 14px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 22%, var(--hzn-line)); border-radius: var(--hzn-radius-control); background: color-mix(in srgb, var(--hzn-brand) 4%, var(--hzn-card)); }
.hznSupportFindAnswer > div { display: grid; gap: 3px; }
.hznSupportFindAnswer span { color: var(--hzn-muted); font-size: var(--hzn-type-meta); }
.hznSupportFindAnswer > .hznBtn { flex: none; }
.hznFindMyAnswerStatus { margin-top: 12px; }
.hznFindMyAnswerResult { margin: 12px 0 0; padding: 16px; border: 1px solid color-mix(in srgb, var(--hzn-brand) 25%, var(--hzn-line)); border-radius: var(--hzn-radius-control); background: color-mix(in srgb, var(--hzn-brand) 5%, var(--hzn-card)); }
.hznFindMyAnswerResult > strong { display: block; color: var(--hzn-brand); font-size: var(--hzn-type-meta); letter-spacing: .04em; text-transform: uppercase; }
.hznFindMyAnswerBody { color: var(--hzn-ink); line-height: 1.55; }
.hznFindMyAnswerBody > :first-child { margin-top: 8px; }
.hznFindMyAnswerBody > :last-child { margin-bottom: 0; }
.hznFindMyAnswerBody p { margin: 10px 0 0; }
.hznFindMyAnswerBody ul { margin: 10px 0 0; padding-left: 20px; }
.hznFindMyAnswerBody li { margin: 4px 0; }
.hznFindMyAnswerBody b { color: var(--hzn-ink); font-weight: 800; }

@media (max-width: 720px) {
 .hznAnswerBaseHead, .hznSupportFindAnswer { align-items: stretch; flex-direction: column; }
 .hznAnswerBaseHead > .hznBtn, .hznSupportFindAnswer > .hznBtn { justify-content: center; }
 .hznAnswerBaseSearch { flex-direction: column; }
 .hznAnswerBaseSearch .hznBtn { justify-content: center; }
}

.hznReportEmailFields { margin: 18px 0 20px; padding: 16px; border: 1px solid var(--hzn-line); border-radius: 14px; }
.hznReportEmailFields > legend { padding: 0 7px; color: var(--hzn-muted); font-family: "IBM Plex Mono", monospace; font-size: .72rem; letter-spacing: .11em; text-transform: uppercase; }
.hznReportEmailFields > p.hznMuted { margin: 0 0 14px; font-size: 0.78rem; line-height: 1.5; }
.hznReportEmailFields .hznReportEditorLabel:first-of-type { margin-top: 0; }
.hznReportEmailSubject::placeholder,
.hznReportEmailBody::placeholder { color: var(--hzn-muted); font-style: italic; opacity: 0.75; }
.hznReportEmailSubject { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; padding: 9px 11px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-card); color: var(--hzn-ink); font: inherit; font-size: 0.82rem; }
.hznReportEmailBody { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; min-height: 132px; padding: 10px 12px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-card); color: var(--hzn-ink); font: inherit; font-size: 0.82rem; line-height: 1.55; resize: vertical; }
.hznReportEmailFieldHelp { margin: 12px 0 0; color: var(--hzn-muted); font-size: 0.74rem; line-height: 1.7; }
.hznReportEmailFieldHelp code { padding: 2px 6px; border-radius: 5px; background: var(--hzn-surface); color: var(--hzn-ink); font-family: "IBM Plex Mono", monospace; font-size: 0.72rem; }

.hznReportEmailAutoNote { display: flex; gap: 8px; align-items: flex-start; margin: 12px 0 0; padding-top: 12px; border-top: 1px solid var(--hzn-line); color: color-mix(in srgb, var(--hzn-ink) 62%, var(--hzn-muted)); font-size: 0.75rem; line-height: 1.5; }
.hznReportEmailAutoNote i { margin-top: 2px; flex: none; color: var(--hzn-brand); }

/* Places, visibility and performance lists are grouped by market, because a
   long-term rental, a storefront and a storage unit are not comparable and a
   single ranked list invites comparing them. */
.hznPlaceGroupHead { display: flex; align-items: center; gap: 10px; margin: 0; padding: 12px 20px 10px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); }
.hznPlaceGroupHead > span { color: var(--hzn-muted); font-family: "IBM Plex Mono", monospace; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; }
.hznPerformanceGroupRow > th { padding: 12px 8px 10px; border-bottom: 1px solid var(--hzn-line); background: var(--hzn-surface); color: var(--hzn-muted); font-family: "IBM Plex Mono", monospace; font-size: 0.7rem; font-weight: 700; letter-spacing: 0.1em; text-align: left; text-transform: uppercase; }
.hznPerformanceGroupRow:hover > th { background: var(--hzn-surface); }

/* Reputation panel additions. Both reuse the panel's own receipt-chip and muted
   note vocabulary rather than introducing a shape the other detail panels on
   this page do not have. */
.hznAuditReviewPipeline { margin-top: 10px; }
.hznAuditReviewPipelineOpen { border-color: color-mix(in srgb, var(--hzn-warning) 34%, var(--hzn-line)); background: var(--hzn-warning-soft); color: var(--hzn-warning-fg); }
.hznAuditReviewBenchmark { display: flex; align-items: center; gap: 8px; margin: 10px 0 0; font-size: 0.78rem; }
.hznAuditReviewBenchmark > i { flex: none; font-size: 14px; line-height: 1; font-synthesis: none; }

/* A control that is unavailable because the work is already done, rather than
   because the account lacks permission. It stays legible and says why in its
   title, instead of dimming into the "not authorized" vocabulary. */
.hznBtnSettled, .hznBtnSettled:hover { border-color: color-mix(in srgb, var(--hzn-good) 30%, var(--hzn-line)); background: var(--hzn-good-soft); color: var(--hzn-good); cursor: default; }
.hznBtnSettled > i { color: var(--hzn-good); font-size: 13px; line-height: 1; font-synthesis: none; }

/* Primary market. Shares the service-distance block's frame so the two read as
   one management-area setting rather than two unrelated controls. */
.hznPrimaryMarketField { display: grid; gap: 8px; margin: 0 0 18px; padding: 0 0 18px; border-bottom: 1px solid var(--hzn-line); }
.hznPrimaryMarketInputs { display: grid; grid-template-columns: minmax(0, 1fr) 84px; gap: 10px; }
.hznPrimaryMarketInputs input { width: 100%; max-width: 100%; min-width: 0; box-sizing: border-box; padding: 9px 11px; border: 1px solid var(--hzn-line); border-radius: 9px; background: var(--hzn-card); color: var(--hzn-ink); font: inherit; font-size: 0.82rem; }
.hznPrimaryMarketInputs input:last-child { text-transform: uppercase; }

/* The management relationship, sitting under the owner controls it qualifies. */
.hznPlaceManagedField { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--hzn-line); }
.hznPlaceManagedToggle { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; }
.hznPlaceManagedToggle input { width: 18px; height: 18px; margin-top: 1px; flex: none; accent-color: var(--hzn-brand); }
.hznPlaceManagedToggle strong { display: block; color: var(--hzn-ink); font-size: 0.8rem; }
.hznPlaceManagedToggle small { display: block; margin-top: 3px; color: var(--hzn-muted); font-size: 0.72rem; line-height: 1.45; }

/* Alert summary tiles. They wear the same severity classes as the cards below
   them, so the coloured left edge each tile shows is literally the rule the
   card uses and the two cannot drift apart.

   Label and number are coloured separately on purpose. The number carries the
   severity colour as drawn; the label is small uppercase text, where the same
   yellow would be unreadable, so it takes the darker foreground the card's own
   severity label uses. */
.hznAlertSummaryTile { border-left-width: 4px; }
.hznAlertSummaryTile > strong { font-variant-numeric: tabular-nums; }

.hznAlertSummaryTile.hznAlertCritical .hznStatLabel,
.hznAlertSummaryTile.hznAlertCritical > strong { color: var(--hzn-coral); }

.hznAlertSummaryTile.hznAlertWarning .hznStatLabel { color: var(--hzn-warning-fg); }
.hznAlertSummaryTile.hznAlertWarning > strong { color: var(--hzn-warning); }

.hznAlertSummaryTile.hznAlertPositive .hznStatLabel,
.hznAlertSummaryTile.hznAlertPositive > strong { color: var(--hzn-good); }

/* The tile caption carries as much meaning as the number beside it, so it is
   set at the same weight rather than left as a whisper above it. */
.hznAlertSummary .hznStatLabel { font-weight: 800; }

/* Recent changes is a count since a date. Sentence case, like the address lines
   on the cards, so it reads as a note about the number rather than a second
   caption competing with the first. */
.hznStatSince { display: block; margin-top: 6px; color: var(--hzn-muted); font-size: 0.68rem; font-weight: 500; letter-spacing: 0; line-height: 1.35; text-transform: none; }

/* The point change is what the card is about, so it takes the card's own
   severity colour. Sign included: a minus in grey beside a red number reads as
   two separate facts. */
.hznAlertCritical .hznAlertScoreValue { color: var(--hzn-coral); }
.hznAlertWarning .hznAlertScoreValue { color: var(--hzn-warning); }
.hznAlertPositive .hznAlertScoreValue { color: var(--hzn-good); }
.hznStatLabelGroup { display: flex; min-width: 0; flex-direction: column; }

/* The portfolio filter grid's narrow rules sat earlier in this file than the
   six-column base rule they were meant to override. Media queries add no
   specificity, so the base won at every width and a 390px screen still drew
   three columns: each select ended up about 100px wide and clipped its own
   option text to "All Sour" and "Any tim". Restated here, after the base and
   in narrowing order, so the narrowest match is the one that applies. */
@media (max-width: 1240px) {
 .hznPortfolioFilterBody { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
 .hznPortfolioFilterBody { grid-template-columns: minmax(0, 1fr); padding: 16px; }
 .hznPortfolioFilterControl { min-width: 0; max-width: 100%; }
}

/* The listing-type tag is flex: 0 0 auto, so it never shrinks. A long label
   like "LONG-TERM RENTAL / SINGLE FAMILY" therefore pushed its row open rather
   than fitting inside it, which on a 390px screen ran it past the container by
   the width of whatever did not fit. On a narrow screen it gives way and
   truncates instead; on a wide one it keeps its full label as before. */
@media (max-width: 700px) {
 .hznPlacesRow .hznListSub { min-width: 0; flex-wrap: wrap; row-gap: 4px; }
 .hznPlacesRowType { flex: 0 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
 .hznPlacesRowLocation { min-width: 0; overflow: hidden; text-overflow: ellipsis; }

 /* Restated after the base rule it overrides, which sits later in this file
    and was otherwise holding the heading at the wide inset. */
 .hznPlaceGroupHead { padding-right: 16px; padding-left: 16px; }
}

/* The reputation panel answers three separate questions -- how the company is
   seen, what is still waiting to be done about it, and where to go to do it --
   so the three are ruled apart rather than run together as one column of
   loose chips and sentences. */
.hznAuditReviewSection + .hznAuditReviewSection { margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--hzn-line); }
.hznAuditReviewSection .hznEyebrow { margin: 0; }
.hznAuditReviewSection > h4 { margin: 4px 0 6px; font-size: 1rem; }
.hznAuditReviewSection > .hznMuted { margin: 0 0 12px; font-size: 0.82rem; line-height: 1.55; }

/* A price gap wide enough that no vacancy estimate is honest reads in the bad
   colour, because it is not a smaller version of the same recommendation -- it
   is the reason the unit may not let at all. */
.hznOpportunityValue .hznOpportunityBlocked { color: var(--hzn-bad); }
.hznOpportunityValue strong.hznOpportunityBlocked { color: var(--hzn-bad); }

/* A refiner's Save appears only once its field differs from what it was
   rendered with. Standing next to an unchanged value it invites a pointless
   round trip and reads as an outstanding task; appearing on change, it means
   something. Visibility rather than display so the row does not reflow as the
   button comes and goes under the cursor. */
.hznVacancyLeadRefiner .hznRefinerSave { visibility: hidden; opacity: 0; transition: opacity 120ms ease; }
.hznVacancyLeadRefiner.hznRefinerDirty .hznRefinerSave { visibility: visible; opacity: 1; }


/* A bare number field does not say what unit it wants. Days and lead counts are
   unambiguous; a rent is not, so the money fields carry the currency. The sign
   sits over the field's own left padding rather than inside its value, because
   type="number" holds a number and a symbol in it would need stripping on every
   read. */
.hznRefinerMoney { position: relative; display: inline-flex; align-items: center; }
.hznRefinerCurrency {
 position: absolute;
 left: 9px;
 color: var(--hzn-muted);
 font-size: 0.82rem;
 line-height: 1;
 pointer-events: none;
}
.hznRefinerMoney input { width: 150px; padding-left: 20px; }

.hznRefinerTitle { display: block; margin-bottom: 6px; color: var(--hzn-ink); font-size: 0.82rem; font-weight: 700; }
.hznWorkQueueFixControls .hznRefinerTitle { font-size: 13px; }

/* The width above sits after the 620px rule that makes these fields full-width,
   and equal specificity means the later rule wins. Without this the money
   fields would stay 150px on a narrow screen while every other field stretched.
   Same breakpoint, stated again so the stacking survives. */
@media (max-width: 620px) {
 .hznRefinerMoney { width: 100%; }
 .hznRefinerMoney input { width: 100%; }
}
.hznPhotoThinNote { display: block; margin-top: 4px; color: #c97614; }
.hznPhotoThinNote i { margin-right: 4px; }
p.hznPhotoThinNote { margin: 8px 0 0; line-height: 1.45; }
.hznPhotoWarningCard { display: flex; align-items: flex-start; gap: 12px; margin: 18px 0; padding: 16px; border: 1px solid color-mix(in srgb, var(--hzn-warning) 42%, var(--hzn-line)); border-left: 4px solid var(--hzn-warning); border-radius: 12px; background: color-mix(in srgb, var(--hzn-warning-soft) 82%, var(--hzn-card)); color: var(--hzn-warning-fg); }
.hznPhotoWarningIcon { display: grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; border-radius: 10px; background: color-mix(in srgb, var(--hzn-warning) 18%, var(--hzn-card)); color: var(--hzn-warning-fg); }
.hznPhotoWarningBody { min-width: 0; }
.hznPhotoWarningBody > strong { display: block; color: var(--hzn-ink); font-size: 0.86rem; line-height: 1.35; }
.hznPhotoWarningBody > p { margin: 4px 0 0; color: color-mix(in srgb, var(--hzn-warning-fg) 82%, var(--hzn-ink)); font-size: 0.8rem; line-height: 1.55; }
