.library-body{background:#faf9f6;color:#152c3d}.library-page{--ink:#152c3d;--muted:#526571;--paper:#faf9f6;--line:#dce3e5}.library-page [hidden]{display:none!important}.library-page .wrap{max-width:1180px;margin-inline:auto;padding-inline:24px}.library-page h1,.library-page h2,.library-page h3{color:var(--ink);letter-spacing:-.035em}.library-page a:focus-visible,.library-page button:focus-visible,.library-page input:focus-visible,.library-page select:focus-visible{outline:3px solid #b96c00;outline-offset:5px}.library-eyebrow{font-size:.7rem;font-weight:800;letter-spacing:.14em;display:block}.library-hero{padding:68px 0 48px;background:#edf2ef;border-bottom:1px solid var(--line)}.library-hero-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:70px;align-items:center}.library-hero h1{font-size:clamp(2.7rem,5vw,4.6rem);line-height:1.08;margin:23px 0}.library-hero h1 em{font-style:normal;color:#326658}.library-hero p{font-size:1.08rem;line-height:1.7;max-width:550px;color:var(--muted)}.library-hero-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:28px 0}.library-text-link{font-weight:750;color:var(--ink);padding-block:12px}.library-facts{display:flex;gap:28px;border-top:1px solid #ccd9d2;padding-top:23px;margin-top:32px;font-size:.78rem;color:var(--muted)}.library-facts b{display:block;font-size:1.3rem;color:var(--ink)}.library-feature{background:#fff;border:1px solid #d6dfd8;padding:26px;border-radius:18px;box-shadow:0 18px 42px #193b2920;max-width:430px}.library-feature h2{font-size:1.35rem;line-height:1.3;margin:22px 0 8px}.library-feature p{font-size:.88rem;margin:0 0 15px}.library-feature a{font-size:.9rem;font-weight:800;color:#326658}.book-spine{margin-top:20px;background:#173e38;color:#f9f6e9;padding:24px 26px 20px;border-radius:3px 12px 12px 3px;border-left:10px solid #0c2c28;display:grid;gap:22px;box-shadow:5px 5px 0 #e3d9bd}.book-spine span{font-size:.6rem;letter-spacing:.16em;line-height:1.6}.book-spine strong{font-size:2rem;line-height:1.15;letter-spacing:-.04em;color:#f4d18a}.library-start{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-block:32px!important}.library-start a{display:grid;gap:8px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--ink)}.library-start a:hover{border-color:#326658}.library-start span,.library-start small{font-size:.73rem;color:var(--muted)}.library-start span{font-weight:800;letter-spacing:.06em}.library-start strong{font-size:1.04rem}.library-section{padding-top:40px;padding-bottom:55px;scroll-margin-top:95px}.library-section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}.library-page h2{font-size:clamp(1.65rem,3vw,2.4rem);line-height:1.2;margin:12px 0}.library-section-heading>p{max-width:300px;font-size:.9rem;color:var(--muted)}.library-controls{background:#fff;border:1px solid var(--line);padding:22px;border-radius:14px;margin-bottom:24px}.library-search-row{display:grid;grid-template-columns:2fr 1fr;gap:20px}.library-search-row label{display:grid;gap:7px;font-size:.82rem;font-weight:750}.library-search-row input,.library-search-row select{width:100%;min-width:0;border:1px solid #bac8cf;border-radius:8px;padding:13px;background:#fafcfb;color:var(--ink);font:inherit;min-height:48px}.library-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}.library-filters button,.library-results-row button{font:inherit;font-size:.77rem;cursor:pointer;min-height:44px;border:1px solid var(--line);border-radius:24px;background:#fff;padding:10px 15px;color:var(--ink)}.library-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.library-results-row{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:14px}.library-results-row p{font-size:.8rem;color:var(--muted);margin:0}.library-results-row button{border:0;text-decoration:underline}.library-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.library-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;transition:border-color .15s,box-shadow .15s}.library-card:hover,.library-card:focus-within{border-color:#73978a;box-shadow:0 8px 24px #172e3810}.library-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.resource-number{font-size:1rem;font-weight:800;color:#557267;background:#edf2ef;border-radius:9px;padding:8px 12px}.access-badge{font-size:.67rem;font-weight:800;color:#285d4d;background:#edf6ee;border:1px solid #d5e8d9;padding:5px 10px;border-radius:20px}.resource-kind{font-size:.67rem;letter-spacing:.06em;color:var(--muted);text-transform:uppercase;margin:0 0 10px}.library-card h3{font-size:1.15rem;line-height:1.3;margin:0 0 12px}.library-card h3 a{color:inherit;text-decoration:none}.library-card h3 a:after{position:absolute;inset:0;content:'';border-radius:14px}.resource-description{font-size:.85rem;line-height:1.65;color:var(--muted);margin:0 0 24px}.resource-open{display:flex;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid #e8eeee;color:#326658;font-size:.76rem;font-weight:800}.library-empty{text-align:center;background:#fff;border:1px dashed #abbcb4;border-radius:12px;padding:35px}.library-personal{margin-block:15px 55px!important;display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center}.library-personal h2{font-size:1.8rem}.library-personal p{font-size:.9rem;line-height:1.7;color:var(--muted)}.library-personal-actions{display:grid;justify-items:start;gap:10px}.library-plus{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;background:#172f40;color:#fff;padding:42px!important;border-radius:18px;margin-bottom:60px!important}.library-plus h2,.library-plus h3{color:#fff}.library-plus-intro>p{color:#d0dde4;line-height:1.7;font-size:.94rem}.library-plus .library-eyebrow{color:#f4c87b}.library-plus .library-price{font-size:2.2rem;font-weight:800;color:#fff;margin:22px 0}.library-price span{font-size:.75rem;font-weight:400;display:block}.library-plus .library-launch-note{font-size:.75rem}.library-plus-features article{padding:20px 0;border-bottom:1px solid #3d5360}.library-plus-features article:last-child{border:0}.library-plus-features article>span{color:#e8bb71;font-size:.75rem}.library-plus-features h3{font-size:1.15rem;margin:6px 0}.library-plus-features p{font-size:.86rem;line-height:1.7;color:#d0dde4;margin:0}.library-faq{padding-bottom:75px}.library-faq details{border-bottom:1px solid var(--line);padding:5px 0}.library-faq summary{cursor:pointer;font-size:.95rem;font-weight:700;padding:18px 0;min-height:44px}.library-faq details p{max-width:780px;color:var(--muted);line-height:1.7;font-size:.9rem;padding-bottom:15px}.library-page .btn{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:10px}.library-page .btn-dark{background:#152c3d;color:white}
@media(max-width:900px){.library-hero-grid{gap:30px;grid-template-columns:1.2fr 1fr}.library-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.library-start{gap:10px}.library-start a{padding:16px}.library-plus{margin-inline:24px!important;gap:30px}.library-personal{gap:25px}.library-hero{padding-top:40px}.book-spine strong{font-size:1.7rem}}
@media(max-width:600px){.library-page .wrap{padding-inline:20px}.library-hero-grid,.library-personal,.library-plus{grid-template-columns:1fr}.library-hero{padding:34px 0}.library-hero h1{font-size:2.7rem}.library-feature{max-width:none;padding:22px}.book-spine{gap:15px}.library-start{grid-template-columns:1fr;margin-block:22px!important}.library-start a{padding:18px}.library-section{padding-top:22px}.library-section-heading{display:block}.library-section-heading>p{max-width:none}.library-cards{grid-template-columns:1fr}.library-search-row{grid-template-columns:1fr;gap:14px}.library-controls{padding:16px}.library-filters{gap:6px}.library-filters button{padding:10px 12px}.library-plus{padding:26px!important;margin-inline:20px!important;margin-bottom:35px!important;gap:20px}.library-personal{gap:15px;margin-bottom:35px!important}.library-facts{gap:22px}.library-faq{padding-bottom:55px}}
@media(prefers-reduced-motion:reduce){.library-card{transition:none}}
.library-account{padding-block:26px}.library-account h2{font-size:1.8rem}.library-account p{font-size:1rem;line-height:1.65;color:var(--muted)}.library-account .member-actions{display:flex;gap:10px;flex-wrap:wrap;margin-block:16px}.library-account .btn{font-size:.875rem;text-decoration:none}.member-next,.member-locked{padding:22px;margin-top:22px;border:1px solid #d5dfe4;border-radius:12px;background:white}.member-locked{border-left:4px solid #b57c24;background:#fffaf0}.library-member-practice{margin-top:28px;border-top:1px solid #d5dfe4;padding-top:20px}.library-member-practice input{width:100%;max-width:500px;padding:14px;font:inherit;border:1px solid #adbdc7;border-radius:8px}.member-activity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start}.member-activity-list details{background:white;border:1px solid #d5dfe4;border-radius:10px;padding:18px}.member-activity-list summary{cursor:pointer;font-weight:700;min-height:44px}.member-activity-list h4{margin-bottom:4px}.member-activity-list .btn{margin:5px 5px 5px 0}.library-signed-in .library-hero{display:none}.library-page .resource-description,.library-page .library-feature p,.library-page .library-personal p,.library-page .library-faq details p{font-size:1rem}.library-page .resource-kind,.library-page .resource-open,.library-page .library-eyebrow,.library-page .access-badge{font-size:.8125rem}.library-page .library-filters button,.library-page .library-results-row p,.library-page .library-search-row label{font-size:.875rem}@media(max-width:600px){.member-activity-list{grid-template-columns:1fr}.library-account .member-actions{align-items:stretch}.library-account .member-actions .btn{flex:1 1 180px}.library-account h2{font-size:1.6rem}}

.library-use-guide{margin:18px 0 24px;border:1px solid #d7e2ea;border-radius:12px;background:#fff;padding:14px 18px;color:#344d61}.library-use-guide summary{cursor:pointer;font-weight:700;min-height:28px}.library-use-guide li{margin:12px 0;line-height:1.65}.library-use-guide p{line-height:1.65}.library-use-guide a{text-decoration:underline}
