/**
 * MRG City Matchmaker — results page styles.
 *
 * Migrated verbatim from the inline render_results_styles() block (Phase 6.5),
 * which is gone: the results page is styled from this enqueued file only.
 * Enqueued by enqueue_results_styles() on gform_enqueue_scripts_<FORM_ID>, so
 * it loads on Matchmaker form/report pages and nowhere else. Vanilla CSS, no build step —
 * the plugin has no asset pipeline and the theme's SCSS build does not reach
 * here. Bump MRG_MATCHMAKER_VERSION to cache-bust.
 */

.mrg-results {
    max-width: 720px;
    margin: 0 auto;
    padding: 0 16px;
}
.mrg-results__heading {
    text-align: center;
    margin-bottom: 24px;
    font-size: 1.6em;
}
.mrg-notice {
    border-radius: 6px;
    padding: 12px 16px;
    margin-bottom: 20px;
    font-size: 0.95em;
}
.mrg-notice p {
    margin: 0;
}
.mrg-notice--warning {
    background: #fef3cd;
    border: 1px solid #ffc107;
    color: #664d03;
}
.mrg-notice--info {
    background: #d1ecf1;
    border: 1px solid #0dcaf0;
    color: #055160;
}
.mrg-city-card {
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 20px 24px;
    margin-bottom: 20px;
    background: #fff;
}
.mrg-city-card--top {
    border-left: 4px solid #198754;
}
.mrg-city-card__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}
.mrg-city-card__rank {
    font-weight: 700;
    font-size: 0.85em;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #198754;
}
.mrg-city-card__percentage {
    font-weight: 600;
    font-size: 0.95em;
    color: #495057;
}
.mrg-city-card__name {
    margin: 0 0 4px;
    font-size: 1.3em;
}
.mrg-city-card__meta {
    color: #6c757d;
    margin: 0 0 10px;
    font-size: 0.9em;
}
.mrg-city-card__blurb {
    margin: 0 0 14px;
    line-height: 1.6;
    font-size: 0.95em;
    max-width: 65ch;
}
.mrg-city-card__highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 14px;
}
.mrg-city-card__badge {
    display: inline-block;
    background: #e9ecef;
    color: #495057;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 0.8em;
    white-space: nowrap;
}
.mrg-city-card__reasons {
    border-top: 1px solid #e9ecef;
    padding-top: 12px;
    margin-top: 4px;
}
.mrg-city-card__reasons h3 {
    margin: 0 0 8px;
    font-size: 0.9em;
    color: #495057;
}
.mrg-city-card__reasons ul {
    margin: 0;
    padding-left: 18px;
}
.mrg-city-card__reasons li {
    margin-bottom: 4px;
    font-size: 0.9em;
    line-height: 1.4;
}
.mrg-results__framing {
    margin-bottom: 24px;
    font-size: 1.02em;
    line-height: 1.55;
}
.mrg-results__framing p {
    margin: 0 0 10px;
}
.mrg-results__framing-note {
    font-size: 0.93em;
    color: #495057;
}
.mrg-city-card__comparison {
    border-top: 1px solid #e9ecef;
    padding-top: 12px;
    margin: 4px 0 12px;
    font-size: 0.9em;
    line-height: 1.4;
    color: #495057;
}
.mrg-city-card__tradeoffs {
    border-top: 1px solid #e9ecef;
    padding-top: 12px;
    margin-top: 4px;
}
.mrg-city-card__tradeoffs h3 {
    margin: 0 0 8px;
    font-size: 0.9em;
    color: #856404;
}
.mrg-city-card__tradeoffs ul {
    margin: 0;
    padding-left: 18px;
}
.mrg-city-card__tradeoffs li {
    margin-bottom: 4px;
    font-size: 0.9em;
    line-height: 1.4;
    color: #664d03;
}
@media (max-width: 600px) {
    .mrg-city-card {
        padding: 16px;
    }
    .mrg-results {
        padding: 0 8px;
    }
}

/* Tease block — summary mode only (Phase 6.5). Stands where cards 2-5 sit in
   full mode, so it carries the same top rule the cards' sections do. */
.mrg-results__tease {
    border: 1px dashed #adb5bd;
    border-radius: 8px;
    padding: 16px 24px;
    margin-bottom: 20px;
    background: #f8f9fa;
}
.mrg-results__tease-heading {
    margin: 0 0 8px;
    font-size: 1em;
    color: #495057;
}
.mrg-results__tease-body {
    margin: 0;
    font-size: 0.95em;
    line-height: 1.55;
    max-width: 65ch;
}
@media (max-width: 600px) {
    .mrg-results__tease {
        padding: 16px;
    }
}

/* Anonymous summary rows use only the restricted server projection. */
.mrg-results .mrg-previews { list-style: none; padding: 0; margin: 24px 0; border: 1px solid #c5d6dc; border-radius: 8px; overflow: hidden; }
.mrg-preview { display: grid; grid-template-columns: auto auto minmax(0, 1fr) minmax(0, .8fr); gap: 12px; align-items: center; padding: 18px 22px; border-bottom: 1px solid #c5d6dc; color: #173e46; font-size: 1rem; line-height: 1.6; }
.mrg-preview:last-child { border-bottom: 0; }
.mrg-preview__rank { font-size: 1.25rem; font-weight: 700; color: #016787; }
.mrg-preview p { margin: 0; color: #50646a; }
.mrg-preview__locked { font-size: 1rem; color: #50646a; }
@media (max-width: 600px) {
    .mrg-preview { grid-template-columns: auto minmax(0, 1fr); padding: 18px; }
    .mrg-preview > div, .mrg-preview__locked { grid-column: 2; }
}

/* House full report. Summary/reveal retains its own presentation. */
.mrg-matchmaker--report .mrg-results { max-width: 850px; padding: 0; }
.mrg-matchmaker--report .mrg-results__heading { display: none; }
.mrg-matchmaker--report .mrg-city-card {
    padding: 40px 44px;
    margin-bottom: 30px;
    background: #fff;
    border: 1px solid var(--mrg-line);
    border-radius: 8px;
    scroll-margin-top: 24px;
}
.mrg-matchmaker--report .mrg-city-card--top { border-top: 4px solid #fe7e00; }
.mrg-matchmaker--report .mrg-city-card:focus { outline: 3px solid var(--mrg-deep); outline-offset: 5px; }
.mrg-matchmaker--report .mrg-city-card__header { flex-wrap: wrap; gap: 18px; margin-bottom: 24px; }
.mrg-matchmaker--report .mrg-city-card__rank { color: var(--mrg-teal); font-size: .875rem; font-weight: 750; letter-spacing: .06em; }
.mrg-matchmaker--report .mrg-city-card__percentage { padding: 5px 12px; border-radius: 30px; background: #e5eff3; color: var(--mrg-deep); font-size: .875rem; font-weight: 650; letter-spacing: .06em; }
.mrg-matchmaker--report .mrg-city-card__name { font-size: 2.5rem; margin: 0 0 10px; }
.mrg-matchmaker--report .mrg-city-card__meta { color: var(--mrg-muted); font-size: 1rem; line-height: 1.65; margin-bottom: 28px; }
.mrg-matchmaker--report .mrg-city-card__blurb { max-width: 65ch; color: var(--mrg-ink); font-size: 1.125rem; line-height: 1.75; }
.mrg-matchmaker--report .mrg-city-card__highlights { gap: 8px; margin: 25px 0; }
.mrg-matchmaker--report .mrg-city-card__badge { padding: 5px 10px; border-radius: 3px; background: #e5eff3; color: var(--mrg-ink); font-size: 1rem; line-height: 1.65; white-space: normal; }
.mrg-matchmaker--report .mrg-city-card__reasons,
.mrg-matchmaker--report .mrg-city-card__tradeoffs { padding: 22px 0 8px; border-top: 1px solid var(--mrg-line); }
.mrg-matchmaker--report .mrg-city-card__reasons h3,
.mrg-matchmaker--report .mrg-city-card__tradeoffs h3 { color: var(--mrg-deep); font-size: 1.375rem; margin: 0 0 10px; line-height: 1.3; }
.mrg-matchmaker--report .mrg-city-card ul { margin: 10px 0; padding-left: 20px; }
.mrg-matchmaker--report .mrg-city-card li { padding-left: 4px; margin-bottom: 5px; color: var(--mrg-ink); font-size: 1.125rem; line-height: 1.75; }
.mrg-matchmaker--report .mrg-city-card__reasons li::marker { color: var(--mrg-teal); }
.mrg-matchmaker--report .mrg-city-card__tradeoffs { background: #fcf1e5; padding: 20px 22px; margin-top: 18px; border: 0; border-radius: 6px; }
.mrg-matchmaker--report .mrg-city-card__tradeoffs ul { margin-bottom: 0; }
.mrg-matchmaker--report .mrg-city-card__comparison { padding-top: 20px; margin: 0; border-color: var(--mrg-line); color: var(--mrg-muted); font-size: 1rem; line-height: 1.75; }
@media (max-width: 600px) {
    .mrg-matchmaker--report .mrg-city-card { padding: 24px 20px; margin: 0 -4px 24px; }
    .mrg-matchmaker--report .mrg-city-card__header { gap: 10px; }
    .mrg-matchmaker--report .mrg-city-card__name { font-size: 2.25rem; }
    .mrg-matchmaker--report .mrg-city-card__meta { margin-bottom: 20px; }
    .mrg-matchmaker--report .mrg-city-card__tradeoffs { padding: 18px 15px; }
}

/* Browser print keeps the saved report readable without the site navigation or controls.
   Long cards may split naturally; headings/list items stay with their content. */
@media print {
    body:has(.mrg-matchmaker--report) { background: #fff !important; }
    body:has(.mrg-matchmaker--report) :is(.before-footer, .footer-widgets, .site-footer, .genesis-skip-link, #wpadminbar, .go-to-top) { display: none !important; }
    /* The header holds only the logo; keep it as the first page's masthead. */
    body:has(.mrg-matchmaker--report) .site-header { position: static !important; margin: 0 0 18pt; padding: 0; background: none !important; border: 0 !important; box-shadow: none !important; }
    body:has(.mrg-matchmaker--report) .site-header :is(.wrap, .site-header__top, .site-header__interior-wrap) { min-height: 0; margin: 0; padding: 0; background: none; border: 0; }
    body:has(.mrg-matchmaker--report) .site-header__logo { width: 150pt; margin: 0 auto; }
    body:has(.mrg-matchmaker--report) .site-header a::after { content: none !important; }
    body:has(.mrg-matchmaker--report) :is(.site-container, .site-inner, .content-sidebar-wrap, .content, .entry, .entry-content) { display: block !important; float: none !important; width: auto !important; max-width: none !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; overflow: visible !important; }
    .mrg-matchmaker--report { color: #000; font-size: 11pt; line-height: 1.45; }
    .mrg-matchmaker--report :is(p, li, small, .mrg-city-card__blurb, .mrg-city-card__meta, .mrg-city-card__comparison, .mrg-city-card__badge) { color: #000; font-size: 11pt; line-height: 1.45; }
    .mrg-matchmaker--report :is(h1, h2, h3) { color: #000; break-after: avoid; }
    .mrg-matchmaker--report h1 { font-size: 26pt; }
    .mrg-matchmaker--report :is(h2, .mrg-city-card__name) { font-size: 22pt; }
    .mrg-matchmaker--report h3 { font-size: 14pt; }
    .mrg-matchmaker--report :is(p, li) { orphans: 3; widows: 3; }
    .mrg-matchmaker--report li { break-inside: avoid; }
    .mrg-matchmaker--report :is(.mrg-report__next, .mrg-report__retake, .mrg-report__arrow, .mrg-report__jump) { display: none !important; }
    /* The member view prints from inside the quiz form: drop its progress steps and Back button. */
    .mrg-matchmaker--member-reveal :is(.gf_page_steps, .gform_page_footer) { display: none !important; }
    .mrg-report__intro { margin: 0 0 20pt; }
    .mrg-report__intro .mrg-results__framing { background: #fff; border-color: #aaa; }
    .mrg-report__shortlist { display: block; max-width: none; margin: 20pt 0; padding: 16pt; background: #fff; }
    .mrg-report__shortlist nav a { break-inside: avoid; min-height: 0; padding: 8pt 0; }
    .mrg-matchmaker--report a { color: #000; }
    .mrg-matchmaker--report a::after { content: none !important; }
    .mrg-matchmaker--report .mrg-results { max-width: none; margin: 0; }
    .mrg-matchmaker--report .mrg-city-card { break-before: page; break-inside: auto; padding: 12pt; margin: 0; border: 1px solid #777; border-radius: 0; outline: none; }
    /* The next card already starts a new page; trailing space can create an empty fragment. */
    .mrg-matchmaker--report .mrg-city-card > :last-child { margin-bottom: 0; }
    .mrg-matchmaker--report .mrg-city-card__header { break-after: avoid; margin-bottom: 10pt; }
    .mrg-matchmaker--report .mrg-city-card__meta { margin-bottom: 8pt; }
    .mrg-matchmaker--report .mrg-city-card__blurb { margin-bottom: 10pt; }
    .mrg-matchmaker--report .mrg-city-card__reasons { padding: 12pt 0 4pt; }
    .mrg-matchmaker--report .mrg-city-card__tradeoffs { padding: 10pt 12pt; margin-top: 10pt; }
    .mrg-matchmaker--report .mrg-city-card__comparison { padding-top: 10pt; }
    .mrg-matchmaker--report .mrg-city-card__highlights { margin: 8pt 0; }
    .mrg-matchmaker--report :is(.mrg-city-card__percentage, .mrg-city-card__badge, .mrg-city-card__tradeoffs) { background: #fff; color: #000; border: 1px solid #aaa; }
    .mrg-report__guide { break-before: page; max-width: none; margin: 0; }
    .mrg-report__guide .mrg-guide__intro { margin-bottom: 14pt; }
    .mrg-report__guide :is(.mrg-guide__features, .mrg-guide__panel, .mrg-guide__offer) { break-inside: avoid; box-shadow: none; border-color: #777; }
    .mrg-report__guide .mrg-guide__features { padding: 10pt 0; margin-bottom: 12pt; }
    .mrg-report__guide .mrg-guide__panel { margin-bottom: 12pt; padding: 14pt; }
    .mrg-report__guide .mrg-guide__offer { padding: 14pt; border-top-width: 1px; }
    .mrg-report__guide .mrg-guide__icon { background: none; }
    .mrg-report__guide .mrg-guide__topics { background: #fff; }
    .mrg-matchmaker--report a.mrg-matchmaker__button { background: #fff !important; color: #000 !important; border-color: #777; transition: none !important; }
}
