/* Library content previews. Card geometry and modal chrome remain shared owners. */
.library-preview-frame { padding: 0; align-items: stretch; }
.library-preview { width: 100%; margin: 0; padding: var(--space-5); overflow: hidden; color: var(--text-secondary); background: var(--surface-subtle); font: var(--fw-regular) var(--type-c1-size)/var(--type-c1-lh) var(--font-sans); }
.library-preview h2 { margin: var(--space-3) 0; color: var(--text-primary); font: var(--fw-medium) var(--type-s1-size)/var(--type-b3-lh) var(--font-sans); letter-spacing: var(--letter-spacing-ui); }
.library-preview h3 { margin: var(--space-6) 0 var(--space-3); font: var(--fw-medium) var(--type-b3-size)/var(--type-b3-lh) var(--font-sans); color: var(--text-primary); }
.library-preview p { margin: 0; }
.library-preview__eyebrow { display: block; font: var(--fw-medium) var(--type-c3-size)/var(--type-c3-lh) var(--font-sans); color: var(--neutral-600); letter-spacing: var(--letter-spacing-ui); }
.library-preview__detail { display: none; }
.library-preview--report { background: var(--neutral-100); }
.library-preview--document { background: var(--surface); }
.library-preview--canvas { background: var(--neutral-50); }
.library-preview--canvas h2 { font-style: italic; }
.library-preview--image { padding: 0; }
.library-preview--image > img { width: 100%; height: 100%; display: block; object-fit: cover; }
.library-preview--storyboard { display: flex; flex-direction: column; padding: 0; background: var(--surface); }
.library-preview__frames { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-1); flex: 1; min-height: 0; overflow: hidden; }
.library-preview__frames img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.library-preview--storyboard > .library-preview__eyebrow { flex: none; padding: var(--space-4); font-size: var(--type-c3-size); letter-spacing: var(--letter-spacing-ui); }
.library-preview--knowledge dl { display: grid; gap: var(--space-2); margin: var(--space-4) 0 0; font-size: var(--type-c3-size); }
.library-preview--knowledge dl > div { display: flex; gap: var(--space-4); }
.library-preview--knowledge dt { flex: 0 0 var(--space-10); color: var(--neutral-600); }
.library-preview--knowledge dd { margin: 0; }
.library-preview--skill { background: var(--surface); }
.library-preview--skill ol { display: grid; gap: var(--space-4); padding-left: var(--space-6); margin: var(--space-5) 0 0; }
.library-preview--skill li::marker { color: var(--neutral-500); }
.library-preview--slides { display: grid; grid-template-columns: 1fr 42%; gap: var(--space-4); padding: 0 0 0 var(--space-5); background: var(--art-sage-200); }
.library-preview__slide-copy { align-self: center; min-width: 0; }
.library-preview--slides .library-preview__eyebrow { font-size: var(--type-c3-size); letter-spacing: var(--letter-spacing-ui); }
.library-preview--slides > img { display: block; height: 100%; width: 100%; object-fit: cover; }
.library-preview--slides h2 { font-size: var(--type-s1-size); }
.library-preview--slides .library-preview__detail { grid-column: 1 / -1; }
.library-preview--audio blockquote { margin: var(--space-4) 0 0; color: var(--text-primary); font: var(--fw-regular) var(--type-s1-size)/var(--type-s1-lh) var(--font-sans); letter-spacing: var(--letter-spacing-ui); }
.library-preview-reader { max-height: 55vh; overflow: auto; overscroll-behavior: contain; }
.library-preview-reader > .library-preview { overflow: visible; padding: var(--space-6); border-radius: var(--radius-sm); font-size: var(--type-b3-size); line-height: var(--type-b3-lh); }
.library-preview-reader .library-preview h2 { font-size: var(--type-h2-size); line-height: var(--type-h2-lh); margin-block: var(--space-4); }
.library-preview-reader .library-preview__detail { display: block; }
.library-preview-reader .library-preview__detail p + p { margin-top: var(--space-5); }
.library-preview-reader .library-preview__detail ul,
.library-preview-reader .library-preview__detail ol { padding-left: var(--space-7); margin: var(--space-4) 0; }
.library-preview-reader .library-preview__detail li + li { margin-top: var(--space-4); }
.library-preview-reader .library-preview--image { padding: 0; background: var(--surface); }
.library-preview-reader .library-preview--image > img { height: auto; border-radius: var(--radius-sm); }
.library-preview-reader .library-preview__frames { flex: auto; aspect-ratio: 2 / 1; }
.library-preview-reader .library-preview--storyboard > .library-preview__eyebrow { padding-inline: 0; }
.library-preview-reader .library-preview--knowledge dl { font-size: var(--type-b3-size); gap: var(--space-4); }
.library-preview-reader .library-preview--knowledge dt { flex-basis: var(--space-12); }
.library-preview-reader .library-preview--slides { padding: var(--space-6); }
.library-preview-reader .library-preview--slides > img { aspect-ratio: 1; height: auto; border-radius: var(--radius-2xs); }
.library-preview-reader .library-preview--audio blockquote { font-size: var(--type-h2-size); line-height: var(--type-h2-lh); }
[data-library-file]:focus-visible,
[data-library-open]:focus-visible,
.library-preview-reader:focus-visible { outline: var(--stroke-1) solid var(--neutral-700); outline-offset: var(--space-2); }

/* Reusable template thumbnails keep a complete composition inside Library cards. */
.library-preview--template-email,.library-preview--template-creative{display:flex;flex-direction:column;gap:var(--space-3);height:100%}
.library-preview--template-email{background:var(--surface)}
.library-preview--template-email h2{font:var(--fw-medium) var(--type-c1-size)/var(--type-c1-lh) var(--font-sans);margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.library-preview--template-email p{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;color:var(--neutral-600)}
.library-preview__template-cta{display:flex;align-items:center;gap:var(--space-3);margin-top:auto;font:var(--fw-medium) var(--type-c3-size)/var(--type-c3-lh) var(--font-sans)}
.library-preview--template-email .library-preview__template-cta{border-top:var(--stroke-hairline) solid var(--border);padding-top:var(--space-3)}
.library-preview--template-creative{background:var(--neutral-800);color:var(--neutral-50);padding:var(--space-6)}
.library-preview--template-creative .library-preview__eyebrow{color:var(--neutral-300)}
.library-preview--template-creative h2{max-width:80%;margin:0;color:inherit;font:var(--fw-medium) var(--type-h3-size)/var(--type-h3-lh) var(--font-sans);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.library-preview--template-creative .library-preview__template-cta{justify-content:space-between}
