:root{--lib-ink:#183a2e;--lib-muted:#5d7068;--lib-line:#d9e5dc;--lib-accent:#78af3d;--lib-surface:#f7faf5}
.library-breadcrumb{display:flex;gap:.65rem;align-items:center;padding:1.2rem clamp(1rem,5vw,5rem);font-size:.83rem;color:var(--lib-muted)}
.library-breadcrumb a{color:inherit;text-decoration:none}.library-breadcrumb a:hover{text-decoration:underline}
.library-hero,.library-catalog,.library-detail-hero,.library-detail-grid{padding-left:clamp(1rem,5vw,5rem);padding-right:clamp(1rem,5vw,5rem)}
.library-hero{padding-top:5rem;padding-bottom:5rem;background:linear-gradient(125deg,#153f30,#225c3e 63%,#35804e);color:#fff}
.library-kicker{font-size:.72rem;font-weight:750;letter-spacing:.15em;text-transform:uppercase;color:var(--lib-accent)}
.library-hero .library-kicker,.library-detail-hero .library-kicker{color:#abe66a}
.library-hero h1{max-width:12ch;margin:1.2rem 0;font-size:clamp(3rem,7vw,6.7rem);line-height:1;letter-spacing:-.055em}
.library-hero h1 em{font-family:Georgia,serif;font-weight:400;color:#d3f7a8}
.library-lead{max-width:64rem;font-size:clamp(1.12rem,1.8vw,1.4rem);line-height:1.55}
.library-stats{display:flex;flex-wrap:wrap;gap:1.2rem;margin:2.5rem 0}.library-stats span{border-top:1px solid #ffffff70;padding-top:.8rem;min-width:10rem;color:#d9eddb}.library-stats strong{display:block;color:#fff;font-size:2rem}
.library-caveat{max-width:72rem;padding:1rem 1.2rem;border-left:3px solid #aae56a;background:#ffffff14;line-height:1.5}
.library-catalog{padding-top:4rem;padding-bottom:6rem;background:var(--lib-surface)}
.library-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem}.library-heading h2{font-size:clamp(2rem,4vw,3.5rem);margin:.4rem 0 1.5rem;letter-spacing:-.04em;color:var(--lib-ink)}.library-heading>p{font-size:.95rem;color:var(--lib-muted)}
.library-controls{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:.8rem;margin-bottom:1rem}.library-controls label{font-size:.76rem;font-weight:700;color:var(--lib-ink);display:grid;gap:.4rem}.library-controls input,.library-controls select{width:100%;min-height:2.8rem;padding:.65rem .75rem;border:1px solid var(--lib-line);border-radius:.35rem;background:#fff;color:var(--lib-ink);font:inherit;font-size:.9rem}
.library-quick{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-bottom:2rem}.library-quick>span{margin-right:.5rem;font-size:.75rem;font-weight:700;color:var(--lib-muted)}.library-quick button{border:1px solid #bcd4bc;background:#fff;color:var(--lib-ink);border-radius:999px;padding:.4rem .75rem;cursor:pointer;font:inherit;font-size:.79rem}.library-quick button:hover,.library-quick button:focus-visible{background:#e4f1dc;outline-color:#36904d}
.library-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.library-card{min-width:0;display:flex;flex-direction:column;padding:1.35rem;border:1px solid var(--lib-line);border-radius:.55rem;background:#fff;box-shadow:0 8px 22px #17433108}.library-card[hidden]{display:none}.library-card-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.library-code{display:inline-block;font:700 .8rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em;color:#196d45}.library-status{display:inline-block;border-radius:999px;background:#fff3d8;color:#78541d;padding:.35rem .6rem;font-size:.72rem;font-weight:750;white-space:nowrap}.library-overline{margin:1rem 0 .4rem;color:var(--lib-muted);font-size:.76rem}.library-card h2{font-size:1.23rem;line-height:1.24;margin:.1rem 0 .7rem;letter-spacing:-.02em}.library-card h2 a{color:var(--lib-ink);text-decoration:none}.library-card h2 a:hover{text-decoration:underline}.library-card>p:not(.library-overline){font-size:.88rem;line-height:1.53;color:var(--lib-muted)}.library-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin:1rem 0}.library-tag{display:inline-block;border:1px solid #cfe2cf;border-radius:999px;padding:.25rem .55rem;background:#f3f8ef;color:#326043;font-size:.7rem;line-height:1.15}.library-card-foot{margin-top:auto;padding-top:1rem;border-top:1px solid var(--lib-line);display:flex;justify-content:space-between;align-items:center;gap:.7rem;font-size:.78rem}.library-card-foot a,.library-links a{color:#176b43;font-weight:700;text-decoration:none}.library-card-foot a:hover,.library-links a:hover{text-decoration:underline}.library-card-foot span{color:var(--lib-muted)}.library-empty{padding:3rem;text-align:center}
.library-detail-hero{padding-top:4rem;padding-bottom:3rem;background:#194a35;color:#fff}.library-detail-title{display:flex;align-items:start;justify-content:space-between;gap:1rem}.library-detail-title .library-code{color:#ace575}.library-detail-title h1{max-width:19ch;font-size:clamp(2.2rem,5vw,4.8rem);line-height:1.06;letter-spacing:-.04em;margin:.7rem 0}.library-detail-hero .library-tag{background:#ffffff14;border-color:#ffffff40;color:#f1f8ec}.library-detail-grid{padding-top:3rem;padding-bottom:5rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;background:var(--lib-surface)}.library-panel{padding:2rem;background:#fff;border:1px solid var(--lib-line);border-radius:.55rem}.library-panel h2{font-size:1.5rem;color:var(--lib-ink)}.library-panel p:not(.library-kicker){line-height:1.6;color:var(--lib-muted)}.library-panel dl{margin:0}.library-panel dl div{display:grid;grid-template-columns:11rem 1fr;gap:1rem;padding:.8rem 0;border-bottom:1px solid var(--lib-line)}.library-panel dt{font-size:.85rem;color:var(--lib-muted)}.library-panel dd{margin:0;font-weight:600;color:var(--lib-ink)}.library-links{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}
.library-document{padding:3rem clamp(1rem,5vw,5rem) 6rem;background:#fff;color:var(--lib-ink)}.library-document-head{max-width:78rem;margin:auto;display:flex;justify-content:space-between;align-items:end;gap:1rem;border-bottom:1px solid var(--lib-line);padding-bottom:1.25rem}.library-document-head h2{font-size:clamp(2rem,4vw,3.4rem);margin:.4rem 0;letter-spacing:-.04em}.library-document-head>a{display:inline-block;border:1px solid #a9caac;border-radius:.3rem;padding:.7rem 1rem;color:#176b43;text-decoration:none;font-weight:700;white-space:nowrap}.library-document-head>a:hover{background:#eef7e9}.library-document-body{max-width:78rem;margin:2rem auto;columns:1}.library-document-body h2{margin:2.5rem 0 1rem;padding-top:1rem;border-top:1px solid var(--lib-line);font-size:1.48rem;line-height:1.3}.library-document-body p{max-width:76ch;line-height:1.68;margin:.55rem 0;color:#344b40;overflow-wrap:anywhere}.library-document-body p:first-child{font-weight:800;color:var(--lib-ink);font-size:1.3rem}.library-document-body .library-item{padding-left:1rem;border-left:2px solid #b9d99e}.library-document-body .library-check{padding:.3rem .7rem;background:#f5f9f3;border-radius:.25rem}.library-status{background:#e5f3df;color:#225f38}
@media(max-width:1000px){.library-list{grid-template-columns:repeat(2,minmax(0,1fr))}.library-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
.library-toc,.library-workbench,.library-adjacent{padding:2.5rem clamp(1rem,5vw,5rem);color:var(--lib-ink)}.library-toc{background:#edf4e9;display:grid;grid-template-columns:minmax(12rem,1fr) 3fr;gap:2rem}.library-toc h2,.library-workbench h2{font-size:clamp(1.7rem,3vw,2.5rem);margin:.4rem 0 1rem}.library-toc>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.2rem}.library-toc a{color:#176b43;text-decoration:none;padding:.4rem 0;border-bottom:1px solid #d3e2d2}.library-toc a:hover{text-decoration:underline}.library-workbench{background:#f9fbf7}.library-workbench-head{max-width:72rem}.library-workbench-head>p:last-child{line-height:1.6;color:var(--lib-muted)}.library-workbench-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}.library-workbench-card{background:#fff;border:1px solid var(--lib-line);border-radius:.4rem;padding:1.2rem}.library-workbench h3{font-size:1.15rem;margin:1.5rem 0 .6rem}.library-workbench-card h3{margin:0 0 .5rem}.library-workbench p{line-height:1.6}.library-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1.8rem;padding-left:1.4rem;line-height:1.6}.library-steps li{padding:.3rem .3rem .7rem;border-bottom:1px solid var(--lib-line)}.library-table-wrap{overflow:auto}.library-workbench table{width:100%;border-collapse:collapse;background:#fff}.library-workbench th,.library-workbench td{text-align:left;border:1px solid var(--lib-line);padding:.7rem;vertical-align:top}.library-workbench th{background:#e8f3e4}.library-guardrail{margin-top:1.5rem;padding:1.2rem;background:#eaf4e5;border-left:3px solid #579646}.library-guardrail p{margin:.4rem 0 0}.library-downloads{display:flex;flex-wrap:wrap;gap:.5rem}.library-downloads a,.library-downloads button{display:inline-block;border:1px solid #a9caac;border-radius:.3rem;padding:.7rem 1rem;color:#176b43;background:#fff;text-decoration:none;font:inherit;font-weight:700;cursor:pointer}.library-downloads a:hover,.library-downloads button:hover{background:#eef7e9}.library-adjacent{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;background:#f5f9f3}.library-adjacent a{display:grid;gap:.45rem;padding:1rem;border:1px solid var(--lib-line);border-radius:.4rem;background:#fff;color:var(--lib-ink);text-decoration:none}.library-adjacent a:hover{border-color:#59915f}.library-adjacent span{color:var(--lib-muted);font-size:.75rem}.library-adjacent strong{font-size:.85rem}.library-document-body h2{scroll-margin-top:2rem}
@media(max-width:650px){.library-list,.library-detail-grid,.library-controls,.library-workbench-grid,.library-steps,.library-adjacent,.library-toc,.library-toc>div:last-child{grid-template-columns:1fr}.library-heading,.library-detail-title,.library-document-head{display:block}.library-detail-title .library-status{margin:0 0 1rem}.library-panel dl div{grid-template-columns:1fr;gap:.2rem}.library-hero{padding-top:3rem;padding-bottom:3rem}.library-downloads{margin-top:1rem}}
@media print{@page{size:A4;margin:18mm 16mm}body{background:#fff!important;color:#111!important;font:10pt/1.45 Georgia,serif}.site-header,.site-footer,.library-breadcrumb,.library-detail-grid,.library-toc,.library-adjacent,.library-downloads,.library-workbench,.library-tags{display:none!important}.library-detail-hero{background:#fff!important;color:#111!important;padding:0 0 8mm}.library-detail-title h1{font-size:22pt;max-width:none}.library-detail-title .library-code{color:#333}.library-detail-title .library-status{color:#333;background:#fff;border:1px solid #aaa}.library-lead{font-size:11pt}.library-document{padding:0}.library-document-head{margin:0}.library-document-head h2{font-size:15pt}.library-document-body{margin:0;max-width:none}.library-document-body p{max-width:none;color:#222}.library-document-body h2{break-after:avoid;page-break-after:avoid}.library-document-body p{orphans:3;widows:3}a{color:#111;text-decoration:none}}
