.documentary-module { max-width: 74rem; margin: 0 auto; padding: 0; color: var(--brand-text); }
.documentary-module > header { margin-bottom: var(--space-3); }
.documentary-module > header h1 { margin: 0 0 var(--space-1); color: var(--brand-text); font-size: clamp(2rem, 3vw, 2.7rem); }
.documentary-module form { display: grid; gap: .5rem; }
.documentary-module select { width: min(100%, 31rem); }
.documentary-query-controls { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: .5rem; align-items: end; }
.documentary-query-controls textarea { min-height: 4.8rem; resize: vertical; }
.documentary-library, .documentary-examples { margin-top: var(--space-4); }
.documentary-section-heading { display: flex; align-items: end; justify-content: space-between; gap: var(--space-2); margin-bottom: var(--space-2); }
.documentary-section-heading h2, .documentary-examples h2 { margin: 0 0 .2rem; color: var(--brand-text); font-size: clamp(1.35rem, 2vw, 1.7rem); }
.documentary-section-heading p, .documentary-examples p { max-width: 49rem; margin: 0; color: var(--brand-muted-text); line-height: 1.5; }
.documentary-library-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-2); }
.documentary-library-grid--agreements { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.documentary-library-card { display: grid; align-content: start; gap: var(--space-2); min-width: 0; padding: 1.15rem; border: 1px solid var(--brand-border); border-radius: var(--radius-lg); background: var(--brand-surface); box-shadow: var(--shadow-sm); }
.documentary-library-card--rite { border-color: color-mix(in srgb, var(--brand-primary) 38%, var(--brand-border)); }
.documentary-library-card--cte { border-color: color-mix(in srgb, #2f9d62 35%, var(--brand-border)); background: linear-gradient(145deg, color-mix(in srgb, #2f9d62 4%, white), white 42%); }
.documentary-library-card--insulation { border-color: color-mix(in srgb, #b8872e 35%, var(--brand-border)); background: linear-gradient(145deg, color-mix(in srgb, #d8a53c 6%, white), white 42%); }
.documentary-library-card--installer { border-color: color-mix(in srgb, var(--brand-primary) 42%, var(--brand-border)); background: linear-gradient(145deg, color-mix(in srgb, var(--brand-primary) 4%, white), white 46%); }
.documentary-library-card--commerce { border-color: color-mix(in srgb, #2f9d62 31%, var(--brand-border)); background: linear-gradient(145deg, color-mix(in srgb, #2f9d62 5%, white), white 46%); }
.documentary-library-card__heading { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .75rem; align-items: start; }
.documentary-library-card__icon { display: grid; width: 2.9rem; height: 2.9rem; place-items: center; flex: 0 0 auto; border-radius: 50%; color: var(--brand-primary-dark); background: color-mix(in srgb, var(--brand-primary) 12%, white); font-size: 1.35rem; font-weight: 800; }
.documentary-library-card--cte .documentary-library-card__icon, .documentary-library-card--commerce .documentary-library-card__icon { color: #177541; background: #e8f8ee; }
.documentary-library-card--insulation .documentary-library-card__icon { color: #806015; background: #fff4d9; }
.documentary-library-card__eyebrow { margin: 0 0 .15rem; color: var(--brand-primary); font-size: .72rem; font-weight: 820; letter-spacing: .07em; text-transform: uppercase; }
.documentary-library-card h3 { margin: 0 0 .35rem; color: var(--brand-text); font-size: 1.08rem; line-height: 1.25; }
.documentary-library-card__heading p, .documentary-library-card__topics { margin: 0; color: var(--brand-muted-text); font-size: .86rem; line-height: 1.45; }
.documentary-library-card__topics { display: grid; gap: .28rem; padding-top: var(--space-2); border-top: 1px solid var(--brand-border); }
.documentary-library-card__topics strong { color: var(--brand-text); font-size: .78rem; text-transform: uppercase; letter-spacing: .035em; }
.documentary-library-card__scope { display: grid; gap: .38rem; margin: 0; padding: .7rem 0 0; border-top: 1px solid var(--brand-border); list-style: none; }
.documentary-library-card__scope li { display: grid; grid-template-columns: .9rem minmax(0, 1fr); gap: .35rem; color: var(--brand-muted-text); font-size: .79rem; line-height: 1.35; }
.documentary-library-card__scope li::before { content: "▤"; color: var(--brand-primary); font-size: .72rem; }
.documentary-library-card details { min-width: 0; }
.documentary-library-card summary { display: inline-flex; min-height: 2.5rem; align-items: center; color: var(--brand-primary-dark); font-size: .82rem; font-weight: 800; list-style: none; }
.documentary-library-card summary::-webkit-details-marker { display: none; }
.documentary-library-card summary::after { content: "⌄"; margin-left: .45rem; font-size: 1rem; }
.documentary-library-card details[open] summary::after { transform: rotate(180deg); }
.documentary-document-list { display: grid; gap: .55rem; padding-top: .25rem; }
.documentary-document-entry { display: grid; gap: .55rem; min-width: 0; padding: .7rem; border-radius: var(--radius-md); background: color-mix(in srgb, var(--brand-primary) 4%, white); }
.documentary-document-entry > div:first-child { display: grid; gap: .16rem; min-width: 0; }
.documentary-document-entry strong { overflow-wrap: anywhere; color: var(--brand-text); font-size: .82rem; }
.documentary-document-entry span { color: var(--brand-muted-text); font-size: .74rem; }
.documentary-document-actions { display: flex; flex-wrap: wrap; gap: .38rem; }
.documentary-document-actions a, .documentary-select-agreement { display: inline-flex; min-height: 2.35rem; align-items: center; justify-content: center; padding: .48rem .62rem; border: 1px solid var(--brand-border); border-radius: var(--radius-sm); color: var(--brand-primary-dark); background: var(--brand-surface); font-size: .72rem; font-weight: 780; text-decoration: none; }
.documentary-select-agreement { width: fit-content; margin-top: auto; border-color: var(--brand-primary); color: white; background: var(--brand-primary); }
.documentary-examples { display: grid; grid-template-columns: minmax(12rem, .62fr) minmax(0, 1.38fr); gap: var(--space-3); align-items: center; padding: var(--space-3); border: 1px solid color-mix(in srgb, var(--brand-primary) 32%, var(--brand-border)); border-radius: var(--radius-lg); background: color-mix(in srgb, var(--brand-primary) 5%, white); }
.documentary-example-list { display: flex; flex-wrap: wrap; gap: .5rem; }
.documentary-example-list button { min-height: 2.35rem; padding: .42rem .75rem; color: var(--brand-primary-dark); background: var(--brand-surface); font-size: .77rem; }
.documentary-answer { margin-top: 1.25rem; padding: 1.15rem; border: 1px solid var(--brand-border); border-radius: var(--radius-lg); background: var(--brand-surface); box-shadow: var(--shadow-sm); }
.documentary-answer-title { margin: 0 0 .75rem; color: var(--brand-text); font-size: clamp(1.35rem, 2.2vw, 1.8rem); }
.documentary-answer-text { color: var(--brand-text); line-height: 1.65; }
.documentary-answer-text h3 { margin: 1.1rem 0 .35rem; color: var(--brand-primary-dark); font-size: 1rem; }
.documentary-collection { color: #5f6368; font-size: .9rem; }
.documentary-sources { margin-top: 1.25rem; display: grid; gap: .75rem; }
.documentary-sources > h2 { margin: 0; font-size: 1.2rem; }
.documentary-sources article { border: 1px solid var(--brand-border); border-radius: var(--radius-md); padding: .9rem; background: color-mix(in srgb, var(--brand-primary) 2.5%, white); }
.documentary-sources h3 { margin: 0 0 .35rem; font-size: 1rem; }
.documentary-sources blockquote { margin: .65rem 0; padding-left: .8rem; border-left: .2rem solid var(--brand-primary, #24526b); white-space: pre-wrap; max-height: 14rem; overflow: auto; }
.documentary-sources article div { display: flex; flex-wrap: wrap; gap: .8rem; }
.documentary-sources article a { display: inline-flex; min-height: 2.6rem; align-items: center; padding: .55rem .75rem; border: 1px solid var(--brand-border); border-radius: var(--radius-md); color: var(--brand-primary-dark); background: white; font-size: .78rem; font-weight: 760; text-decoration: none; }
@media (max-width: 62rem) { .documentary-library-grid, .documentary-library-grid--agreements { grid-template-columns: 1fr; } .documentary-library-card { padding: 1rem; } .documentary-document-entry { grid-template-columns: minmax(0, 1fr) auto; align-items: center; } }
@media (max-width: 42rem) { .documentary-query-controls { grid-template-columns: minmax(0, 1fr) auto; } .documentary-query-controls textarea { grid-column: 1 / -1; } .documentary-section-heading, .documentary-examples { grid-template-columns: 1fr; display: grid; align-items: start; } .documentary-document-entry { grid-template-columns: 1fr; } .documentary-select-agreement { width: 100%; } }
