/* Library-specific visual language: directory cards + white collection panels. */
.grasplr-library-directory-cards { margin: 1.2em 0 2em; scroll-margin-top: 100px; }
.grasplr-library-directory-cards ol { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.grasplr-library-directory-cards li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.grasplr-library-directory-cards a { display: flex; flex-direction: column; gap: 5px; height: 100%; box-sizing: border-box; padding: 15px 16px; border: 1px solid #dbe2e5; border-radius: 6px; background: #f5f7f8; color: #20282d; text-decoration: none !important; }
.grasplr-library-directory-cards a:hover, .grasplr-library-directory-cards a:focus-visible { border-color: #6ba75b; background: #eef5ed; outline-offset: 2px; }
.grasplr-library-card-number { color: #27811c; font-size: .72em; font-weight: 700; letter-spacing: .06em; }
.grasplr-library-directory-cards strong { color: #20282d; font-size: 1em; line-height: 1.35; }
.grasplr-library-card-count { color: #27811c; font-size: .82em; margin-top: auto; }
.grasplr-library-collection { box-sizing: border-box; padding: 20px; margin: 22px 0; border: 1px solid #dbe2e5; border-radius: 6px; background: #fff; scroll-margin-top: 85px; }
.grasplr-library-collection > h2, .grasplr-library-collection > h3 { margin-top: 0 !important; }
.grasplr-library-collection .grasplr-library-grompt-group { background: #f5f7f8; border: 1px solid #dbe2e5; border-radius: 6px; padding: 14px 16px; margin: 15px 0; }
.grasplr-library-collection .grasplr-library-grompt-group p { margin: 0 0 12px; }
.grasplr-library-collection .grasplr-library-grompt-group p:last-child { margin-bottom: 0; }
.grasplr-library-back { margin: 14px 0 0 !important; font-size: .88em; }
.grasplr-library-back a { color: #27811c; text-decoration: none !important; }
.grasplr-library-back a:hover { text-decoration: underline !important; }
@media (max-width: 600px) { .grasplr-library-directory-cards ol { grid-template-columns: 1fr; } .grasplr-library-collection { padding: 14px; } }
