:root{--sr-ink:#172033;--sr-blue:#2057d4;--sr-line:#e2e7ef;--sr-soft:#f6f8fb;--sr-green:#087a55;--sr-radius:18px}*{box-sizing:border-box}.sr-shell{width:min(1180px,calc(100% - 32px));margin:48px auto;color:var(--sr-ink)}.sr-shell h1,.sr-shell h2,.sr-shell h3{letter-spacing:-.025em;color:var(--sr-ink)}.sr-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:32px}.sr-page-head h1{font-size:clamp(34px,4vw,48px);margin:0 0 8px}.sr-page-head p{font-size:18px;color:#5d687a;margin:0}.sr-button{appearance:none;border:0;border-radius:12px;background:var(--sr-blue);color:#fff!important;font-weight:750;padding:14px 22px;cursor:pointer;text-decoration:none}.sr-button-secondary{background:#eef3ff;color:var(--sr-blue)!important}.sr-button-small{padding:11px 16px}.sr-panel{border:1px solid var(--sr-line);border-radius:var(--sr-radius);padding:28px;margin:24px 0;background:#fff}.sr-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.sr-form label,.sr-panel label{font-weight:700}.sr-form input,.sr-form select,.sr-form textarea,.sr-panel input,.sr-panel select,.sr-panel textarea{width:100%;border:1px solid #ccd5e2;border-radius:12px;padding:13px 15px;margin-top:7px;background:#fff}.sr-search-form{display:grid;grid-template-columns:2fr .8fr 1.15fr auto;align-items:end;border:1px solid var(--sr-line);border-radius:18px;padding:10px;background:#fff;box-shadow:0 8px 30px rgba(23,32,51,.08);margin-bottom:28px}.sr-search-field{display:flex;flex-direction:column;padding:4px 14px;border-right:1px solid var(--sr-line)}.sr-search-field span{font-size:12px;font-weight:800;margin-bottom:2px}.sr-search-field input,.sr-search-field select{border:0!important;outline:0;padding:5px 0!important;margin:0!important;background:transparent!important;min-height:34px}.sr-search-button{height:48px;margin-left:8px}.sr-search-badges{grid-column:1/-1;margin:6px 4px 0;border-top:1px solid var(--sr-line);padding:10px 10px 2px}.sr-search-badges summary{cursor:pointer;font-weight:750;color:var(--sr-blue)}.sr-checkbox-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.sr-check{font-weight:500!important}.sr-results-head{display:flex;justify-content:space-between;align-items:center;margin:18px 0}.sr-results-head strong{font-size:20px}.sr-results-head span{color:#697386}.sr-view-toggle{display:flex;border:1px solid var(--sr-line);padding:3px;border-radius:12px}.sr-view-toggle button{border:0;background:transparent;padding:8px 13px;border-radius:9px;font-weight:750;cursor:pointer}.sr-view-toggle button.is-active{background:var(--sr-ink);color:#fff}.sr-home-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.sr-home-card{border:1px solid var(--sr-line);border-radius:18px;background:#fff;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.sr-home-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(23,32,51,.11)}.sr-home-card-media{position:relative}.sr-home-card-image{position:relative;display:block;aspect-ratio:4/3;background:#eef2f7;overflow:hidden}.sr-home-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.sr-home-card:hover img{transform:scale(1.02)}.sr-image-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#7a8495;text-align:center;padding:24px}.sr-image-placeholder span{font-size:34px}.sr-badge{position:absolute;left:12px;top:12px;background:#fff;color:var(--sr-ink);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:850;box-shadow:0 3px 12px rgba(0,0,0,.12)}.sr-photo-count{position:absolute;right:12px;bottom:12px;background:rgba(23,32,51,.78);color:#fff;border-radius:999px;padding:5px 9px;font-size:12px}.sr-save-form{position:absolute;right:12px;top:12px;margin:0}.sr-save-button{width:40px;height:40px;border:0;border-radius:50%;background:#fff;font-size:25px;line-height:1;color:var(--sr-ink);cursor:pointer;box-shadow:0 3px 12px rgba(0,0,0,.15)}.sr-save-button.is-saved{color:#d42d55}.sr-home-card-body{padding:17px 18px 15px}.sr-home-card h3{font-size:21px;margin:0 0 7px}.sr-home-card h3 a{color:var(--sr-ink);text-decoration:none}.sr-home-facts{display:flex;gap:7px;flex-wrap:wrap;color:#596477;margin:0 0 12px}.sr-chip-row{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 15px}.sr-chip{background:#f0f4fa;border-radius:999px;padding:5px 8px;font-size:12px;color:#425067}.sr-card-footer{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #edf0f4;padding-top:12px;font-size:12px;color:#7a8495}.sr-active{color:var(--sr-green)!important;font-weight:700}.sr-active i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--sr-green);margin-right:4px}.sr-map-panel{min-height:520px}.sr-map-placeholder{min-height:520px;border-radius:18px;background:linear-gradient(135deg,#edf3f4,#f6f8fb);border:1px solid var(--sr-line);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px}.sr-map-mark{font-size:44px}.sr-map-placeholder h2{margin:6px 0}.sr-map-placeholder p{max-width:560px;color:#647084}.sr-map-locations{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;max-width:760px;margin-top:14px}.sr-map-locations a{background:#fff;border:1px solid var(--sr-line);border-radius:999px;padding:7px 10px;text-decoration:none}.sr-empty-state{grid-column:1/-1;border:1px dashed #cbd4e1;border-radius:18px;padding:54px;text-align:center;background:#fafbfc}.sr-save-search{display:flex;justify-content:space-between;align-items:center;gap:24px;border-top:1px solid var(--sr-line);margin-top:38px;padding-top:28px}.sr-save-search>div{display:flex;flex-direction:column}.sr-save-search span{color:#697386}.sr-inline-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sr-inline-form input,.sr-inline-form select{border:1px solid #ccd5e2;border-radius:10px;padding:10px}.sr-score-pill{background:#eef3ff;color:var(--sr-blue);border-radius:999px;padding:12px 16px;font-weight:800}.sr-notice{padding:16px 18px;border-radius:14px;margin:18px 0}.sr-notice-success{background:#eaf8f1;color:#086a4b}.sr-muted,.sr-small{color:#667286}.sr-form-actions{display:flex;gap:12px;margin-top:24px}.sr-photo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.sr-photo-field img{display:block;margin:8px 0;border-radius:10px}.sr-narrow{max-width:760px}
@media(max-width:900px){.sr-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sr-search-form{grid-template-columns:1fr 1fr}.sr-search-location{grid-column:1/-1}.sr-search-field{border-right:0;border-bottom:1px solid var(--sr-line)}.sr-search-button{margin:8px;align-self:center}.sr-checkbox-grid{grid-template-columns:1fr 1fr}.sr-form-grid{grid-template-columns:1fr}.sr-save-search{align-items:flex-start;flex-direction:column}.sr-photo-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.sr-shell{width:min(100% - 22px,1180px);margin:28px auto}.sr-page-head{margin-bottom:22px}.sr-home-grid{grid-template-columns:1fr;gap:18px}.sr-search-form{grid-template-columns:1fr}.sr-search-location{grid-column:auto}.sr-search-field{padding:8px 12px}.sr-search-button{width:calc(100% - 16px)}.sr-checkbox-grid{grid-template-columns:1fr}.sr-results-head{align-items:flex-start;gap:12px}.sr-form-actions{flex-direction:column}.sr-form-actions .sr-button{width:100%}.sr-card-footer{font-size:11px}}
.sr-results-map{height:520px;border:1px solid var(--sr-line);border-radius:18px;background:var(--sr-soft);overflow:hidden}.sr-map-empty{min-height:520px;border:1px dashed #cbd4e1;border-radius:18px;background:#fafbfc;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px}.sr-map-empty p{margin:8px 0 0;color:#647084}.sr-results-map .leaflet-popup-content p{margin:5px 0}.sr-results-map .leaflet-popup-content a{font-weight:750}
.sr-notice-warning{background:#fff4df;border:1px solid #e4aa45;color:#65420a}.sr-publish-summary{margin:10px 0 0;padding-left:22px}.sr-publish-summary li+li{margin-top:5px}.sr-publish-summary a{color:inherit;font-weight:750}
.sr-privacy-reassurance{margin:20px 0 0;padding:14px 16px;border-radius:12px;background:#eef7f3;color:#245844}.sr-feature-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px}.sr-feature-group,.sr-option-fieldset,.sr-preference-row{min-width:0;margin:0;border:0;padding:0}.sr-feature-group{border-top:1px solid var(--sr-line);padding-top:14px}.sr-feature-group legend,.sr-option-fieldset>legend,.sr-preference-row>legend{padding:0;font-weight:800;color:var(--sr-ink)}.sr-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.sr-choice{display:flex;align-items:center;gap:11px;min-height:50px;margin:0;padding:12px 14px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;cursor:pointer;font-weight:650!important}.sr-choice input,.sr-segmented-options input{width:20px!important;height:20px;margin:0!important;padding:0!important;flex:0 0 auto;accent-color:var(--sr-blue)}.sr-choice:has(input:checked){border-color:var(--sr-blue);box-shadow:0 0 0 1px var(--sr-blue);background:#f1f5ff}.sr-choice:has(input:disabled){cursor:not-allowed;opacity:.55;background:#f3f4f6}.sr-choice:focus-within,.sr-segmented-options label:focus-within{outline:3px solid rgba(32,87,212,.28);outline-offset:2px}.sr-choice-inline{align-self:end}.sr-option-fieldset{margin-top:28px;border-top:1px solid var(--sr-line);padding-top:20px}.sr-option-fieldset>legend{font-size:20px}.sr-option-fieldset>.sr-small{margin:4px 0 0}.sr-preference-list{display:grid;gap:12px;margin-top:16px}.sr-preference-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(420px,1.5fr);align-items:center;gap:18px;padding:14px;border:1px solid var(--sr-line);border-radius:14px}.sr-preference-row>legend{float:left;width:100%}.sr-segmented-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.sr-segmented-options label{display:flex;align-items:center;justify-content:center;gap:7px;min-height:46px;padding:9px;border:1px solid #cbd5e1;border-radius:10px;cursor:pointer;font-weight:650!important;text-align:center}.sr-segmented-options label:has(input:checked){border-color:var(--sr-blue);box-shadow:0 0 0 1px var(--sr-blue);background:#f1f5ff;font-weight:800!important}
@media(max-width:900px){.sr-feature-groups{grid-template-columns:1fr}.sr-preference-row{grid-template-columns:1fr}.sr-preference-row>legend{float:none}}
.sr-step-nav{margin:0 0 24px}.sr-step-nav ol{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.sr-step-nav a{display:flex;align-items:flex-start;gap:9px;height:100%;padding:12px;border:1px solid var(--sr-line);border-radius:12px;color:var(--sr-ink);text-decoration:none;background:#fff}.sr-step-nav a[aria-current="step"]{border-color:var(--sr-blue);box-shadow:0 0 0 1px var(--sr-blue);background:#f1f5ff}.sr-step-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 25px;height:25px;border-radius:50%;background:#eef3ff;color:var(--sr-blue);font-weight:800}.sr-step-nav strong,.sr-step-nav small{display:block}.sr-step-nav small{margin-top:3px;color:#667286;font-size:12px}.sr-home-step{scroll-margin-top:24px}
@media(max-width:900px){.sr-step-nav ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.sr-step-nav ol{grid-template-columns:1fr}}
@media(max-width:600px){.sr-choice-grid{grid-template-columns:1fr}.sr-segmented-options{grid-template-columns:1fr}.sr-segmented-options label{justify-content:flex-start}.sr-panel{padding:20px}.sr-preference-row{padding:12px}}
.sr-form select,.sr-panel select{height:40px;line-height:24px;padding:7px 36px 7px 15px}
.sr-mobile-step-header{display:none}.sr-save-state{margin:0 0 12px;color:#526074;font-size:14px;font-weight:750}.sr-step-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px;padding-top:20px;border-top:1px solid var(--sr-line)}
.sr-home-enhanced .sr-home-step-layout{display:grid;grid-template-columns:minmax(190px,230px) minmax(0,1fr);align-items:start;gap:24px}.sr-home-enhanced .sr-step-nav{margin:24px 0;position:sticky;top:24px}.sr-home-enhanced .sr-step-nav ol{display:grid;grid-template-columns:1fr;gap:7px}.sr-home-enhanced .sr-step-nav a{min-height:58px}.sr-home-enhanced .sr-home-form{min-width:0}.sr-home-enhanced .sr-home-step[hidden]{display:none}.sr-step-nav a:focus-visible,.sr-step-actions button:focus-visible,.sr-mobile-step-header button:focus-visible{outline:3px solid rgba(32,87,212,.38);outline-offset:3px}
@media(max-width:600px){.sr-home-enhanced .sr-home-step-layout{display:block}.sr-home-enhanced .sr-mobile-step-header{display:grid;gap:3px;margin-bottom:12px;padding:16px;border:1px solid var(--sr-line);border-radius:14px;background:#fff}.sr-mobile-step-header>span{color:#667286;font-size:13px}.sr-mobile-step-header>strong{font-size:18px}.sr-mobile-step-header button{min-height:44px;margin-top:9px}.sr-home-enhanced .sr-step-nav{display:none;position:static;margin:0 0 18px}.sr-home-enhanced .sr-step-nav.is-open{display:block}.sr-home-enhanced .sr-step-nav a{min-height:58px}.sr-step-actions{display:grid;grid-template-columns:1fr;margin-top:22px}.sr-step-actions .sr-button{width:100%;min-height:44px}}

/* My Home Phase 3: conditional details and accessible photo slots. */
.sr-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sr-photo-grid-core{margin-bottom:30px}.sr-photo-grid-evidence{margin-top:14px}.sr-photo-card{min-width:0;border:1px solid var(--sr-line);border-radius:14px;padding:16px;background:#fff}.sr-photo-card.is-pending-removal{border-style:dashed;background:#fafbfc}.sr-photo-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sr-photo-status{font-size:13px;font-weight:750;color:#596477;text-align:right}.sr-photo-help,.sr-photo-filename,.sr-photo-error{font-size:13px;margin:8px 0;color:#667286;overflow-wrap:anywhere}.sr-photo-error{color:#a12622;min-height:1.3em}.sr-photo-media{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:4/3;margin:12px 0;border-radius:10px;overflow:hidden;background:#eef2f7}.sr-photo-media img{display:block;width:100%;height:100%;object-fit:cover}.sr-photo-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#687589;font-weight:700}.sr-photo-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sr-photo-actions .sr-button,.sr-photo-choose{min-height:44px;padding:11px 15px}.sr-photo-choose{display:inline-flex;align-items:center;cursor:pointer}.sr-photo-input{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}.sr-photo-card:focus-within .sr-photo-choose{outline:3px solid rgba(32,87,212,.35);outline-offset:3px}.sr-photo-noscript-remove{display:block;margin-top:12px}.sr-evidence-photos{padding-top:6px;border-top:1px solid var(--sr-line)}[data-sr-conditional-field][hidden],[data-sr-evidence][hidden]{display:none!important}
@media(max-width:600px){.sr-photo-grid{grid-template-columns:1fr}.sr-photo-card{padding:14px}.sr-photo-media{max-height:230px}.sr-photo-actions{align-items:stretch}.sr-photo-actions .sr-button,.sr-photo-choose{justify-content:center;flex:1 1 140px}.sr-photo-filename{max-width:100%}}

/* My Home Phase 4: Review and publish conclusion. */
.sr-review-intro{margin-top:-8px;color:#667286}.sr-review-card{margin-top:22px;padding:22px;border:1px solid var(--sr-line);border-radius:16px;background:#fafbfc}.sr-review-kicker{margin:0 0 4px;color:#667286;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.sr-completion-summary h3{margin:0 0 16px;font-size:24px}.sr-review-score{font-size:clamp(34px,5vw,46px);line-height:1;color:var(--sr-ink)}.sr-progress{height:14px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;overflow:hidden}.sr-progress>span{display:block;height:100%;background:var(--sr-blue)}.sr-complete-message{margin:18px 0 0;color:#245844}.sr-next-tasks{margin-top:22px}.sr-next-tasks h4{margin:0 0 10px;font-size:17px}.sr-next-task{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:52px;margin-top:8px;padding:12px 14px;border:1px solid var(--sr-line);border-radius:12px;background:#fff;color:var(--sr-ink);text-decoration:none}.sr-next-task strong{color:var(--sr-blue);white-space:nowrap}.sr-next-task:hover{border-color:var(--sr-blue)}.sr-next-task:focus-visible,.sr-review-actions .sr-button:focus-visible{outline:3px solid rgba(32,87,212,.38);outline-offset:3px}.sr-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}.sr-status-card{min-width:0;padding:16px;border:1px solid var(--sr-line);border-left:4px solid #6b778a;border-radius:12px;background:#fff}.sr-status-card>span,.sr-status-card>strong,.sr-status-card>small{display:block}.sr-status-card>span{margin-bottom:5px;color:#667286;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.sr-status-card>strong{overflow-wrap:anywhere}.sr-status-card>small{margin-top:5px;color:#7a4b08;font-weight:700}.sr-status-card.is-earned{border-left-color:var(--sr-green);background:#f4fbf7}.sr-status-card.needs-attention{border-left-color:#c67a08;background:#fffaf0}.sr-swap-ready-state h3{margin-top:0}.sr-swap-ready-state p,.sr-swap-ready-state ul{margin-bottom:0}.sr-swap-ready-state ul{padding-left:20px}.sr-swap-ready-state li+li{margin-top:5px}.sr-review-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--sr-line)}.sr-review-section h3{margin-top:0}.sr-review-optional{color:#526074}.sr-review-optional h3 span{font-size:13px;font-weight:650;color:#667286}.sr-review-actions{justify-content:flex-end}.sr-review-actions .sr-button{min-width:150px}.sr-publish-summary h3{margin:14px 0 6px;font-size:16px}
@media(max-width:600px){.sr-status-grid{grid-template-columns:1fr}.sr-review-card{padding:17px}.sr-next-task{grid-template-columns:minmax(0,1fr) auto auto}.sr-review-actions .sr-button{width:100%;min-height:48px}}

/* Manual photo verification V1. */
.sr-photo-review-approved{color:#087a55}.sr-photo-review-pending{color:#7a5b00}.sr-photo-review-needs_replacement{color:#a12622}.sr-photo-review-guidance{margin:8px 0;color:#a12622;font-size:13px;font-weight:700}

/* Interest and mutual-match Phase 1. Kept separate from reciprocal-match presentation. */
.sr-account-options{margin:24px 0;padding:0;border:0}.sr-account-options legend{margin-bottom:12px;font-size:18px;font-weight:800}.sr-notification-choice{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid var(--sr-line);cursor:pointer}.sr-notification-choice input{width:20px!important;height:20px;margin:3px 0 0!important;accent-color:var(--sr-blue)}.sr-notification-choice span,.sr-notification-choice small{display:block}.sr-notification-choice small{margin-top:3px;color:#667286;font-weight:500}.sr-saved-search-setting{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:20px;border-top:1px solid var(--sr-line)}.sr-saved-search-setting .sr-notification-choice{border:0}.sr-privacy-actions{display:flex;gap:12px;flex-wrap:wrap}.sr-privacy-actions form{margin:0}.sr-button-danger{background:#a12622}.sr-account-status .sr-status-card p{margin:8px 0 0}.sr-account-status .sr-status-card small{margin-top:8px}@media(max-width:600px){.sr-saved-search-setting{grid-template-columns:1fr}.sr-privacy-actions,.sr-privacy-actions form,.sr-privacy-actions button{width:100%}}

.sr-interest-state{padding:18px;border:1px solid #d7deea;border-radius:14px;background:#f8fafc}.sr-interest-state h3{margin:0 0 8px}.sr-interest-state p{margin:6px 0}.sr-interest-state.is-mutual{border-color:#9bcdb5;background:#f1faf5}.sr-interest-state.is-incoming{border-color:#a9c1ed;background:#f4f7fd}.sr-interest-form small{display:block;margin-top:6px;color:#667286}.sr-interests>section+section{margin-top:32px}.sr-interest-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:22px}.sr-interest-card .sr-home-card{margin:0}.sr-interest-meta{color:#667286;font-size:14px}.sr-interest-sent{display:flex;align-items:center;justify-content:space-between;gap:16px}.sr-interest-sent p{margin:4px 0 0;color:#667286}.sr-dashboard-activity-links strong small{display:block;margin-top:2px;color:#667286;font-size:11px;font-weight:600}@media(max-width:700px){.sr-interest-card{grid-template-columns:1fr}.sr-interest-sent{align-items:flex-start;flex-direction:column}}
