/* Source-bound couples diagrams. Plain HTML remains readable without scripts. */
.cv-overview,.cv-diagram{color:#203f39;max-width:100%;box-sizing:border-box}
.cv-overview{margin:2rem 0 2.5rem;padding:1.75rem 0;border-top:1px solid #ccd5cd;border-bottom:1px solid #ccd5cd;scroll-margin-top:6rem}
.cv-overview h2{margin:.3rem 0 .75rem}
.cv-intro{margin:0 0 1.5rem;color:#52635b}
.cv-strength-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem}
.cv-strength-summary article{padding:1.2rem;background:#edf2eb;border-radius:.75rem;min-width:0}
.cv-overview .cv-strength-summary h3{font:600 1.12rem/1.45 Arial,Helvetica,sans-serif;margin:0 0 .7rem}
.cv-strength-summary p{font-size:1rem;line-height:1.6;margin:0 0 .8rem}
.cv-overview a{color:#24544a;text-underline-offset:.2em;overflow-wrap:anywhere}
.cv-overview .cv-read-link{font-size:.95rem;line-height:1.5;display:inline-block;padding:.3rem 0}
.cv-pattern-summary{padding-top:1.3rem;margin-top:1.3rem;border-top:1px solid #ccd5cd}
.cv-pattern-summary h3{font:600 1.05rem/1.5 Arial,Helvetica,sans-serif;margin:0 0 .7rem}
.cv-pattern-summary ol{margin:0;padding-left:1.4rem;display:grid;gap:.6rem}
.cv-pattern-summary li{padding-left:.2rem}
.cv-pattern-summary a{display:inline-block;padding:.3rem 0;line-height:1.5}
.cv-diagram{margin:1.6rem 0 2rem;padding:1.5rem;background:#fffdf7;border:1px solid #d9ddd4;border-radius:1rem;scroll-margin-top:6rem;overflow-wrap:anywhere}
.cv-diagram figcaption{margin:0 0 1.3rem}
.cv-diagram .cv-kicker{font:600 .76rem/1.5 Arial,Helvetica,sans-serif;letter-spacing:.09em;color:#52635b;margin:0 0 .55rem}
.cv-diagram h3{font:400 1.5rem/1.3 Georgia,serif;margin:0}
.cv-diagram p{font:400 1.05rem/1.6 Arial,Helvetica,sans-serif;margin:.45rem 0 0}
.cv-diagram .cv-name{font:600 .95rem/1.4 Arial,Helvetica,sans-serif;display:block}
.cv-contributions{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.cv-person{padding:1rem 1.1rem;border-radius:.6rem;min-width:0}
.cv-person-a{background:#eaf1f4;color:#173e53}
.cv-person-b{background:#f9eee6;color:#684234}
.cv-merge{display:grid;grid-template-columns:1fr 1fr;text-align:center;color:#62756c;font:400 1.5rem/1.4 Arial,Helvetica,sans-serif;padding:.25rem 0}
.cv-together{background:#edf2e9;text-align:center;border-radius:.6rem;padding:1rem 1.2rem}
.cv-loop{list-style:none;margin:0;padding:0 0 0 1rem;border-left:2px solid #d5ddd5;display:grid;gap:1.65rem}
.cv-loop li{position:relative;margin:0}
.cv-next{position:absolute;bottom:-1.55rem;left:1.1rem;color:#62756c;font:400 1.15rem/1.4 Arial,Helvetica,sans-serif}
.cv-diagram .cv-repeat{font-size:.95rem;margin:.9rem 0 1.4rem;display:flex;gap:.6rem;align-items:baseline;color:#52635b}
.cv-repeat>span{font-size:1.4rem}
.cv-alternatives{border-top:1px solid #d9ddd4;padding-top:1.1rem}
.cv-alternatives h4{font:600 1.08rem/1.5 Arial,Helvetica,sans-serif;margin:0 0 1rem}
.cv-responses{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}
.cv-agreement{margin-top:1.2rem;padding-top:1rem;border-top:1px solid #d9ddd4}
.cv-overview a:focus-visible{outline:3px solid #315f7d;outline-offset:4px;border-radius:2px}
@media(max-width:600px){.cv-overview{margin:1.5rem 0;padding:1.5rem 0}.cv-diagram{padding:1rem;margin:1.3rem 0 1.7rem}.cv-contributions{gap:.65rem}.cv-person{padding:.85rem}.cv-diagram h3{font-size:1.3rem}.cv-diagram p{font-size:1rem}.cv-responses{grid-template-columns:1fr;gap:1rem}.cv-overview a{min-height:44px;box-sizing:border-box}.cv-loop{padding-left:.7rem}}
@media(max-width:360px){.cv-contributions{grid-template-columns:1fr}.cv-merge{display:block}.cv-merge span:first-child{display:none}.cv-merge span:last-child{font-size:0}.cv-merge span:last-child:after{content:'↓';font-size:1.4rem}}
@media print{.cv-overview{display:none!important}.cv-diagram{break-inside:avoid;page-break-inside:avoid;border-radius:0;padding:12pt;margin:14pt 0;color:#203f39}.cv-diagram h3{font-size:15pt}.cv-diagram p{font-size:10pt;line-height:1.4}.cv-diagram .cv-name{font-size:10pt}.cv-diagram .cv-kicker{font-size:8pt}.cv-person{padding:8pt}.cv-loop{gap:18pt}.cv-next{bottom:-17pt}.cv-diagram figcaption{margin-bottom:10pt}.cv-alternatives{padding-top:9pt}.cv-responses{gap:12pt}.cv-repeat{margin-bottom:9pt!important}.cv-contributions{grid-template-columns:1fr 1fr}.cv-merge{display:grid}.cv-merge span:first-child{display:block}.cv-merge span:last-child{font-size:1.5rem}.cv-merge span:last-child:after{content:none}.cv-alternatives h4{font-size:11pt;margin-bottom:8pt}.cv-agreement{margin-top:9pt;padding-top:8pt}}

.cv-arrow{flex:none;display:inline-block;vertical-align:middle}.cv-merge .cv-arrow{justify-self:center}.cv-merge .cv-arrow-down{display:none}.cv-next .cv-arrow{width:18px;height:22px}@media(max-width:360px){.cv-merge .cv-arrow-right,.cv-merge .cv-arrow-left{display:none}.cv-merge .cv-arrow-down{display:inline-block}}@media print{.cv-merge .cv-arrow-right,.cv-merge .cv-arrow-left{display:inline-block}.cv-merge .cv-arrow-down{display:none}.cv-friction{break-inside:auto;page-break-inside:auto}.cv-loop,.cv-alternatives,.cv-loop li{break-inside:avoid;page-break-inside:avoid}.cv-diagram figcaption{break-after:avoid}.cv-person{padding:7pt}.cv-loop{gap:14pt}.cv-next{bottom:-14pt}.cv-next .cv-arrow{height:14pt;width:12pt}.cv-diagram p{font-family:Arial,Helvetica,sans-serif}.cv-diagram .cv-repeat{break-before:avoid}}
@media print{.cv-friction{border:0;background:transparent;padding:0}.cv-loop-group{break-inside:avoid;page-break-inside:avoid}}


/* Complete sentences need room to read and to flow across printed pages. */
.cv-context-passage{scroll-margin-top:8rem;min-width:0}
.cv-context-passage .cv-diagram{margin-top:1rem}
.cv-strength-summary h3 a{display:block}
.cv-situation{margin:.5rem 0 1.2rem;font:400 1rem/1.65 Arial,Helvetica,sans-serif;overflow-wrap:anywhere}
.cv-outcome{margin-top:1rem;text-align:left}
@media(max-width:600px){.cv-contributions{grid-template-columns:1fr}.cv-merge{display:block}.cv-merge .cv-arrow-right,.cv-merge .cv-arrow-left{display:none}.cv-merge .cv-arrow-down{display:inline-block}}
@media print{.cv-context-passage,.cv-diagram,.cv-loop,.cv-loop-group,.cv-alternatives{break-inside:auto;page-break-inside:auto}.cv-diagram p{orphans:3;widows:3}.cv-contributions,.cv-person,.cv-together,.cv-agreement,.cv-diagram figcaption{break-inside:avoid;page-break-inside:avoid}.cv-responses{display:block}.cv-responses>div{break-inside:avoid;page-break-inside:avoid;margin-bottom:10pt}}

/* Shared guide orientation and grounded, fully visible chapter context. */
.relationship-orientation{max-width:68ch;margin:1.3rem 0 2rem;color:#304b40}
.relationship-orientation h2{font:400 clamp(1.75rem,3vw,2.25rem)/1.22 Georgia,serif;margin:0 0 1.1rem;text-wrap:pretty}
.relationship-orientation h3{font:600 1.05rem/1.5 Arial,Helvetica,sans-serif;margin:1.6rem 0 .6rem}
.relationship-orientation p{font:400 1.0625rem/1.8 Georgia,serif;margin:0 0 1rem}
.relationship-overview-link{display:inline-block;min-height:44px;padding:.6rem 0;box-sizing:border-box;color:#24544a;text-underline-offset:.2em}
.cv-enjoyment p{font:400 1rem/1.65 Arial,Helvetica,sans-serif;max-width:68ch;margin:.4rem 0 .65rem}
.chapter-workbook-actions{margin:1.4rem 0 .25rem;padding-top:.75rem;border-top:1px solid #ccd5cd}
.chapter-workbook-actions a{display:inline-block;min-height:44px;box-sizing:border-box;padding:.65rem 0;color:#24544a;font:600 .95rem/1.5 Arial,Helvetica,sans-serif;text-underline-offset:.2em;overflow-wrap:anywhere}
.chapter-workbook-actions a:focus-visible,.relationship-overview-link:focus-visible{outline:3px solid #315f7d;outline-offset:4px}
.chapter-workbook-reference{display:none}
@media print{
 .relationship-orientation{max-width:none;margin:0 0 20pt;break-inside:auto;break-after:auto}
 .relationship-orientation h2{font-size:20pt;break-after:avoid;break-inside:avoid}
 .relationship-orientation h3{font-size:11pt;break-after:avoid}
 .relationship-orientation p{font-size:11pt;line-height:1.6;orphans:3;widows:3;break-inside:auto}
 .relationship-overview-link,.chapter-workbook-actions{display:none!important}
 .chapter-workbook-reference{display:block!important;font:10pt/1.5 Arial,Helvetica,sans-serif;color:#40594b;margin:14pt 0;break-inside:avoid}
 .book-document:has(.relationship-orientation) .pdf-contents{min-height:0;padding:8mm 4mm 12mm;break-after:page}
 .book-document .relationship-orientation{break-after:auto}
}

/* Shared PDF headings and their introductory text form one reading unit. */
@media print{
 .book-document .book-chapter-heading,.book-document .book-reference-heading{break-inside:avoid;page-break-inside:avoid;break-after:avoid;page-break-after:avoid}
 .book-document .book-chapter-heading>h2{font-size:28px;line-height:1.18;max-width:18ch;margin:8px 0 12px}
 .book-document .book-chapter-heading>.answer-question{font:600 10px/1.45 Arial,sans-serif;color:#2d715d;margin:0 0 9px}
 .book-document .book-chapter-heading>.eyebrow,.book-document .book-chapter-heading>.book-chapter-subtitle{break-after:avoid}
 .book-document .book-reference-heading>h2{font-size:28px;margin-top:8px}
 .book-document .book-reference-heading>p{orphans:3;widows:3}
 /* This is a pagination preference, not a fixed-height box. The browser can
    still fragment a group that is taller than an entire printable page. */
 .book-document .cv-context-with-figure{break-inside:avoid;page-break-inside:avoid}
 .book-document .cv-context-with-figure .cv-strength{break-inside:auto;page-break-inside:auto}
}

@media print{
 .book-document .cv-loop-group{break-inside:avoid;page-break-inside:avoid}
 .book-document .cv-alternatives{break-inside:avoid;page-break-inside:avoid}
 .book-document .chapter-workbook-reference{break-before:avoid;page-break-before:avoid}
}
