/* anúncios relacionados da página de detalhes no desktop. */
.listing-report-trigger { position:fixed; right:18px; bottom:18px; z-index:40; display:inline-flex; align-items:center; gap:7px; border:0; border-radius:99px; background:#183153; color:#fff; padding:12px 17px; font-weight:900; text-transform:lowercase; box-shadow:var(--shadow); cursor:pointer; }
.listing-report-trigger svg { width:16px; height:16px; flex:0 0 16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.listing-report-modal { position:fixed; inset:0; z-index:110; display:grid; place-items:center; padding:18px; background:rgb(15 23 42 / 58%); }
.listing-report-modal[hidden] { display:none; }
body.is-listing-report-modal-open { overflow:hidden; }
.listing-report-card { position:relative; width:min(520px,100%); max-height:calc(100vh - 36px); overflow:auto; border-radius:10px; background:#fff; padding:26px; box-shadow:var(--shadow); }
.listing-report-close { position:absolute; top:12px; right:12px; width:34px; height:34px; border:1px solid var(--line); border-radius:6px; background:#fff; color:var(--deep); font-weight:900; cursor:pointer; }
.listing-report-card h2 { margin:0; padding-right:38px; color:var(--ink); font-size:22px; line-height:1.2; }
.listing-report-card > p { margin:8px 0 18px; color:var(--muted); font-size:13px; font-weight:800; }
.listing-report-card form,.listing-report-card fieldset { display:grid; gap:12px; }
.listing-report-card fieldset { margin:0; padding:0; border:0; }
.listing-report-card legend,.listing-report-summary > span { margin-bottom:2px; color:var(--deep); font-size:12px; font-weight:900; text-transform:lowercase; }
.listing-report-card label { min-width:0; }
.listing-report-card fieldset label { display:flex; align-items:flex-start; gap:9px; padding:10px 12px; border:1px solid var(--line); border-radius:7px; background:#f9fafb; color:var(--deep); font-size:14px; font-weight:800; }
.listing-report-card input[type="radio"] { margin-top:2px; accent-color:var(--green); }
.listing-report-summary { display:grid; gap:7px; }
.listing-report-summary textarea { width:100%; min-height:108px; resize:vertical; border:1px solid var(--line); border-radius:7px; padding:12px; color:var(--ink); font:inherit; }
.listing-report-card button[type="submit"] { min-height:44px; border:0; border-radius:7px; background:var(--green); color:#fff; font:inherit; font-weight:900; cursor:pointer; }
.listing-report-errors,.listing-report-success { margin:0 0 14px; border-radius:7px; padding:11px 12px; font-size:13px; font-weight:800; }
.listing-report-errors { border:1px solid #fecaca; background:#fff1f2; color:#991b1b; }
.listing-report-success { border:1px solid #bbf7d0; background:#f0fdf4; color:#166534; }
@media (min-width: 1024px) {
    .public-interest-primary,.public-interest-whatsapp { display:inline-flex; align-items:center; justify-content:center; gap:8px; }
    .public-interest-primary svg,.public-interest-whatsapp svg { width:18px; height:18px; flex:0 0 18px; }
    .public-interest-primary svg { fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
    .public-interest-whatsapp svg { fill:currentColor; stroke:none; }
    .listing-detail-advertiser-identity { display:flex; align-items:center; gap:12px; margin-top:6px; }
    .listing-detail-advertiser-identity img { width:72px; height:56px; flex:0 0 72px; display:block; border:1px solid var(--line); border-radius:6px; background:#fff; object-fit:contain; padding:6px; }
    .listing-detail-advertiser-identity h2 { min-width:0; margin:0; }
    .listing-detail-related { display:grid; gap:18px; margin-top:32px; }
    .listing-detail-related-header { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; }
    .listing-detail-related-header span { color:var(--muted); font-size:12px; font-weight:800; }
    .listing-detail-related-header h2 { margin:4px 0 0; color:var(--ink); font-size:22px; }
    .listing-detail-related-header a { color:var(--brand); font-size:13px; font-weight:900; text-decoration:none; }
    .listing-detail-related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
    .listing-detail-related-grid .public-listing-card { min-width:0; overflow:hidden; display:block; border:1px solid var(--green); border-radius:7px; background:#fff; transition:transform .2s ease,box-shadow .2s ease; }
    .listing-detail-related-grid .public-listing-card:hover { transform:translateY(-2px); box-shadow:var(--shadow); }
    .listing-detail-related-grid .public-listing-media { position:relative; aspect-ratio:4/3; background:#dfe5e9; }
    .listing-detail-related-grid .public-listing-media img,.listing-detail-related-grid .public-listing-no-image { width:100%; height:100%; display:grid; place-items:center; object-fit:cover; }
    .listing-detail-related-grid .public-listing-body { min-width:0; padding:14px; display:grid; gap:3px; }
    .listing-detail-related-grid .public-listing-body h3 { min-width:0; min-height:0!important; margin:0; display:-webkit-box; overflow:hidden; color:var(--deep); font-size:14px; line-height:1.35; text-overflow:clip; white-space:normal; overflow-wrap:anywhere; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
    .listing-detail-related-grid .public-listing-price { margin-top:2px!important; margin-bottom:5px!important; overflow-wrap:anywhere; font-size:19px; }
    .listing-detail-related-grid .public-listing-location { min-width:0; margin:0; overflow:hidden; color:var(--deep); font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
    .listing-detail-related-grid .public-listing-specs,.listing-detail-related-grid .public-listing-link { display:none; }
    .listing-detail-related-grid .public-listing-metrics { display:flex!important; align-items:center!important; justify-content:space-between!important; gap:8px!important; color:#475467!important; font-size:11px!important; }
    .listing-detail-related-grid .public-listing-metric { min-height:28px; display:inline-flex!important; flex-direction:row!important; align-items:center!important; gap:5px!important; border-radius:5px; background:#f2f4f7; padding:0 8px; color:#344054!important; line-height:1!important; white-space:nowrap; }
    .listing-detail-related-grid .public-listing-metric:last-child { color:#16794b!important; }
    .listing-detail-related-grid .public-listing-metric svg { width:15px!important; height:15px!important; flex:0 0 15px!important; display:block!important; fill:none!important; stroke:currentColor!important; stroke-width:1.6!important; }
    .public-option-tags li { border-radius:6px; padding:7px 10px; font-size:12px; line-height:1.25; }
}
