.library-review-note{background:#fff5d9;border-left:4px solid #bf8a19;padding:16px 20px;color:#513c0b}.library-intro{display:flex;gap:32px;align-items:center;justify-content:space-between;margin:35px 0}.library-intro>div{max-width:720px}.library-filters{display:grid;grid-template-columns:2fr 1fr;gap:20px;padding:24px;background:#edf3f7;border-radius:12px}.library-filters label,.library-controls label{display:flex;flex-direction:column;gap:8px;font-weight:650}.library-filters input,.library-filters select,.library-controls select{font:inherit;color:inherit;background:#fff;border:1px solid #9aabb7;border-radius:6px;min-height:48px;padding:10px;width:100%}.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.library-card{border:1px solid #dce4e9;border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.library-card[hidden],[hidden]{display:none!important}.library-card img{display:block;width:100%;height:auto;background:#fff}.library-card-body{padding:24px;flex:1;display:flex;flex-direction:column}.library-card h2{font-size:1.4rem;margin:4px 0 16px}.library-card h2 a{color:inherit;text-decoration:none}.library-card h2 a:hover{text-decoration:underline}.library-card .card-link{margin-top:auto;padding-top:20px}.library-level{font-size:.8rem;color:#4e6475}.library-next{padding:28px;background:#eff4f7;border-radius:12px;margin:36px 0}.library-reading{max-width:1000px}.library-prose{max-width:78ch;margin:auto}.library-prose section{margin:36px 0}.library-prose h2{font-size:1.6rem}.library-byline,.library-figure figcaption{font-size:.85rem;color:#526577;line-height:1.6}.library-figure{margin:28px 0}.library-figure img{width:100%;height:auto;border:1px solid #dce4e9;border-radius:10px}.library-lab{border:1px solid #cad8e3;border-radius:12px;background:#f4f7fa;padding:28px;margin:32px 0}.library-controls{display:flex;gap:16px;flex-wrap:wrap}.library-controls label{flex:1 1 170px}.library-controls button{font:inherit;color:#102536;background:#fff;border:1px solid #8ca4b7;border-radius:7px;padding:12px 18px;cursor:pointer;min-height:48px}.library-lab output{display:block;background:#fff3cb;padding:16px;margin-top:22px;font-size:1.2rem;font-weight:700}.library-filters :focus-visible,.library-controls :focus-visible{outline:3px solid #986700;outline-offset:3px}.library-prose li{overflow-wrap:anywhere}@media(max-width:700px){.library-grid,.library-filters{grid-template-columns:1fr}.library-intro{display:block}.library-intro .button{margin-top:12px}.library-lab,.library-next{padding:20px}.library-card-body{padding:20px}.library-controls button{width:100%}.library-prose h2{font-size:1.35rem}.library-byline{overflow-wrap:anywhere}}

/* Camada editorial v2: ilustração de apoio e diagrama técnico separados. */
.library-index-hero{position:relative;isolation:isolate;overflow:hidden;min-height:440px}.library-index-hero>.container{position:relative;z-index:2}.library-index-hero h1,.library-index-hero p{max-width:600px}.library-index-art{position:absolute;right:0;top:0;height:100%;width:52%;object-fit:cover;opacity:.65;z-index:-2}.library-index-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#102536 25%,rgba(16,37,54,.95) 44%,rgba(16,37,54,.15));z-index:-1}.library-grid{gap:32px}.library-card{box-shadow:0 8px 30px #142b4010;border-color:#e0e7ed;transition:transform .2s,box-shadow .2s}.library-card:hover{transform:translateY(-4px);box-shadow:0 14px 34px #142b4020}.library-card>a{overflow:hidden}.library-card img{aspect-ratio:3/2;object-fit:cover;transition:transform .4s}.library-card:hover img{transform:scale(1.025)}.library-card-body{padding:28px}.library-card-body>.eyebrow{color:#6d5014;font-size:.72rem;letter-spacing:.12em}.library-card h2{font-size:1.55rem;line-height:1.28}.library-cover{margin:32px 0 18px}.library-cover img{width:100%;height:auto;max-height:510px;object-fit:cover;border-radius:20px;background:#edf1f3}.library-cover figcaption{font-size:.78rem;color:#526577;margin-top:10px}.library-learning{padding:30px;background:#102b45;color:#fff;border-radius:16px;margin:28px 0}.library-learning h2{font-size:1.45rem;line-height:1.4;color:#fff;margin-top:8px}.library-learning .eyebrow{color:#f1cf79}.library-learning ul{display:grid;gap:10px;padding-left:22px;margin-bottom:0}.library-learning li::marker{color:#efc55f}.library-toc{border:1px solid #dce4eb;border-radius:12px;padding:18px 24px;margin-bottom:28px}.library-toc summary{cursor:pointer;font-weight:700}.library-toc ol{columns:2;column-gap:35px;font-size:.93rem;padding-left:22px}.library-toc li{break-inside:avoid;margin:12px 0}.library-prose{font-size:1.08rem;line-height:1.9}.library-prose section{margin:42px 0}.library-prose h2{letter-spacing:-.015em;line-height:1.35}.library-figure{padding:14px;background:#fff;border:1px solid #dde7ee;border-radius:16px}.library-figure img{border:0}.library-figure figcaption{padding:8px 10px 4px}.library-checkpoint{padding:28px;border:1px solid #ecd38b;border-radius:16px;background:#fffaf0}.library-checkpoint .eyebrow{color:#74541b}.library-checkpoint h2{font-size:1.4rem}.library-checkpoint details{margin:20px 0;padding:16px 20px;background:#fff;border-radius:10px}.library-checkpoint summary{font-weight:700;cursor:pointer;color:#164e72}.library-mistake{border-left:3px solid #e2b349;padding-left:20px;margin-top:20px}.library-mistake p{margin-bottom:0}.library-review-note{font-size:.85rem;border-radius:9px}.library-lab{box-shadow:0 4px 18px #152a3d08}.library-lab output{border-radius:8px}.library-next{border:1px solid #dde7ee;background:linear-gradient(120deg,#f0f5f8,#fff)}@media(max-width:700px){.library-index-art{width:100%;opacity:.22}.library-index-hero:after{background:linear-gradient(90deg,#102536e8,#102536b8)}.library-index-hero{min-height:380px}.library-learning,.library-checkpoint{padding:22px}.library-toc ol{columns:1}.library-prose{font-size:1rem;line-height:1.85}.library-cover img{border-radius:12px}.library-card-body{padding:22px}.library-card h2{font-size:1.4rem}.library-figure{padding:4px}.library-figure figcaption{font-size:.75rem}}@media(prefers-reduced-motion:reduce){.library-card,.library-card img{transition:none}.library-card:hover,.library-card:hover img{transform:none}}
