/* Light technical library using Future Roof logo colors. */
.library{--ink:#231F72;--line:#BBBCBE;--muted:#515b6c;--orange:#005DAA;background:#f4f6fa;color:var(--ink);color-scheme:light;border-block:1px solid var(--line);font-family:var(--font)}
.library h2 span{color:#005DAA}.library .section-heading .eyebrow{color:var(--orange)}
.library .warranty-reference{background:linear-gradient(120deg,#ffffff,#edf2f8);border:1px solid var(--line);border-top:2px solid var(--orange);padding:38px;gap:8%}
.library .warranty-intro .eyebrow{color:var(--orange)}
.library .warranty-intro h3{font-family:var(--display);font-size:48px;letter-spacing:-.3px}
.library .warranty-reference p,.library .warranty-terms .fine{color:var(--muted)}
.library .warranty-terms strong{color:var(--ink)}
.library .warranty-terms>div{border-color:var(--line)}
.library .warranty-intro .underlink{color:var(--ink);border-color:#91B0D5}
.library .warranty-intro .underlink:hover{color:var(--orange)}
.library .resource-browser{background:#ffffff;border-color:var(--line);box-shadow:none}
.library .resource-searchbar{background:#f8fafd;border-color:var(--line);padding:28px;gap:28px}
.library .resource-search{height:58px;background:#ffffff;border:1px solid #91B0D5;border-radius:0;color:var(--orange)}
.library .resource-search:focus-within{border-color:var(--orange);box-shadow:0 0 0 3px #005daa1a}
.library .resource-browser .resource-search input{color:var(--ink);font-family:var(--font);font-size:17px}
.library input::placeholder{color:#515b6c}
.library .resource-browser .resource-total{color:var(--ink);font-family:var(--display);font-size:26px;font-weight:500;letter-spacing:.8px;line-height:1.25}
.library .resource-browser .resource-total>span{font-family:var(--font);color:var(--muted);font-size:10px;letter-spacing:1.2px;margin-top:5px}
.library .resource-facets{background:#edf2f8;border-color:var(--line);padding:28px 20px}
.library .resource-browser .facet-heading{font-family:var(--display);font-size:25px;text-transform:uppercase;font-weight:400;letter-spacing:.3px}
.library .facet-heading button{font-family:var(--font);color:var(--orange);text-transform:none}
.library .resource-browser .resource-facets legend{color:var(--muted);font-size:11px;letter-spacing:1.5px}
.library .resource-browser .facet-option{color:#38465c;border-radius:0;font-family:var(--font);font-size:15px;min-height:46px;transition:background .2s,border-color .2s,color .2s}
.library .facet-option:hover{background:#dde7f3;color:var(--ink)}
.library .facet-option[aria-pressed=true]{background:#e3edf8;border-color:#91B0D5;border-left:2px solid var(--orange);color:var(--orange);box-shadow:none}
.library .facet-count{background:#dce5f0;color:#38465c;border-radius:2px;font-variant-numeric:tabular-nums}
.library .facet-option[aria-pressed=true] .facet-count{background:var(--orange);color:#fff}
.library .resource-access{border-color:var(--line);color:var(--muted)}
.library .resource-access>span{color:var(--orange)}
.library .resource-browser .resource-access strong{color:var(--ink)}
.library .resource-browser .resource-access p{color:var(--muted)}
.library .resource-results{padding:26px 28px 32px}
.library .resource-results-toolbar>p,.library .resource-sort{color:var(--muted)}
.library .resource-browser .resource-sort select{background:#ffffff;color:var(--ink);border-color:#BBBCBE;border-radius:0;color-scheme:light;font-family:var(--font)}
.library .active-filters button{background:#e3edf8;border-color:#91B0D5;color:#005DAA;border-radius:2px}
.library .resource-browser .resource-results .document-header{color:#515b6c;border-color:#BBBCBE;font-size:11px;letter-spacing:1.4px;padding-block:20px}
.library .resource-results .document-row{border-color:#dce1e8;min-height:100px;padding:22px 10px;position:relative}
.library .resource-results .document-row:hover{background:#edf3fa;padding-left:10px;box-shadow:inset 2px 0 var(--orange)}
.library .document-symbol{background:#edf3fa;color:var(--orange);border-color:#91B0D5;border-radius:0;width:42px;height:48px}
.library .resource-browser .document-name strong{color:var(--ink);font-family:var(--font);font-size:18px;font-weight:500;line-height:1.45}
.library .resource-browser .document-name small{color:#515b6c;font-family:var(--font);font-size:11px;letter-spacing:.6px;margin-top:8px}
.library .resource-results .document-type{color:#515b6c}
.library .resource-results .document-open{color:var(--orange)}
.library .document-open b{font-size:24px}
.library .resource-results #document-empty{color:var(--muted)}
.library #document-empty h3{font-family:var(--display);font-size:36px;color:var(--ink)}
.library .resource-results #document-empty .button{border-color:var(--orange);color:var(--orange)}
.library .resource-browser button:focus-visible,.library .resource-browser select:focus-visible,.library .resource-browser a:focus-visible{outline-color:var(--orange)}
.library .archive-note>span{color:var(--orange);font-size:11px}
.library .archive-note p,.library .source-note{color:var(--muted);font-size:14px;border-color:var(--line)}
.library .source-note summary{color:#231F72;font-size:15px}
@media(max-width:1100px){.library .resource-results{padding:22px}.library .resource-browser .document-name strong{font-size:17px}}
@media(max-width:700px){.library .warranty-reference{padding:26px 22px}.library .warranty-intro h3{font-size:40px}.library .resource-searchbar{padding:18px}.library .resource-facets{padding:22px 16px}.library .resource-browser .facet-option{font-size:14px;border-color:#BBBCBE;min-height:44px}.library .facet-option[aria-pressed=true]{border-color:#91B0D5}.library .resource-results{padding:18px 14px}.library .resource-browser .document-name strong{font-size:16px}.library .resource-results .document-row{padding:20px 6px;min-height:96px}.library .resource-results .document-row:hover{padding-left:6px}.library .document-symbol{width:34px;height:42px}.library .resource-browser .document-name small{font-size:10px}}

/* Portal-inspired document library. */
.library .resource-browser{border:1px solid #d5dde5;border-radius:12px;overflow:hidden;background:#e8edf1;box-shadow:0 16px 45px #172d4810}
.library .resource-searchbar{background:#f1f4f7;border-color:#d5dde5}
.library .resource-search{border-color:#cbd5e1;border-radius:9px}
.library .resource-layout{grid-template-columns:260px minmax(0,1fr)}
.library .resource-facets{background:#062746;border:0;padding:30px 20px;color:#fff}
.library-sidebar-brand{display:flex;flex-direction:column;gap:18px;margin-bottom:36px;padding:0 12px}
.library-sidebar-brand img{width:171px;height:60px;object-fit:contain;object-position:left}
.library-sidebar-brand>span{font-size:11px;letter-spacing:.12em;color:#91b0d5;font-weight:600}
.library .resource-browser .facet-heading{color:#fff;margin-bottom:28px}
.library .facet-heading button{color:#b8d7fa}.library .facet-heading button:disabled{opacity:.55}
.library .resource-browser .resource-facets legend{color:#a7caef}
.library .resource-facets .facet-option{color:#e7eff8;border-radius:0;border:1px solid transparent;min-height:48px}
.library .resource-facets .facet-option:hover{background:#153c62;color:#fff}
.library .resource-facets .facet-option[aria-pressed=true]{background:#005daa;border-color:#3384c5;color:#fff;box-shadow:inset 3px 0 #91b0d5}
.library .resource-facets .facet-count{background:transparent;color:#afd3ff}
.library .resource-facets .facet-option[aria-pressed=true] .facet-count{background:#ffffff15;color:#fff}
.library .resource-access{border-color:#ffffff28;color:#b7cce2}
.library .resource-access>span,.library .resource-browser .resource-access strong{color:#fff}
.library .resource-browser .resource-access p{color:#b7cce2}
.library .resource-results{background:linear-gradient(150deg,#eef2f4,#e1e7ec);padding:32px;min-width:0}
.library-type-filters{margin:0 0 24px;padding:0;border:0;min-width:0}
.library-type-filters legend{font-size:13px;font-weight:600;color:#566473;margin-bottom:14px}
.library #type-facets{display:flex;flex-wrap:wrap;gap:10px}
.library .library-type-filters .facet-option{width:auto;margin:0;padding:11px 17px;border:1px solid #d2d9e1;border-radius:30px;background:white;color:#34404c;box-shadow:0 1px 2px #13253d08;font-weight:600}
.library .library-type-filters .facet-option:hover{border-color:#91b0d5;background:#f7faff}
.library .library-type-filters .facet-option[aria-pressed=true]{background:#005daa;border-color:#005daa;color:#fff;box-shadow:none}
.library .library-type-filters .facet-count{background:transparent;color:#637180;padding:0}
.library .library-type-filters .facet-option[aria-pressed=true] .facet-count{background:transparent;color:#d0e5ff}
.library .resource-browser .resource-sort select{border-radius:7px;border-color:#ced7e0}
.library .resource-results .document-header{display:none}
.library #document-list{display:grid;gap:14px;margin-top:22px}
.library .resource-browser .resource-results .document-row{grid-template-columns:minmax(0,1fr) 150px;gap:22px;background:#fff;border:1px solid #d7dfe6;border-radius:9px;min-height:112px;padding:24px;box-shadow:0 3px 0 #102f4910;transition:border-color .2s,box-shadow .2s}
.library .resource-results .document-row:hover{padding-left:24px;background:#fff;border-color:#91b0d5;box-shadow:0 5px 16px #13375314}
.library .resource-browser .document-name strong{color:#303b46;font-weight:650}
.library .resource-browser .document-name small{color:#697583}
.library .document-symbol{border:0;background:#edf4fb;border-radius:8px;color:#005daa;flex-shrink:0}
.library .resource-results .document-type{display:none}
.library .resource-browser .resource-results .document-open{display:flex;align-items:center;justify-content:center;gap:12px;background:#005daa;color:#fff;border-radius:7px;padding:13px 16px;font-weight:600;font-size:14px;white-space:nowrap;min-height:48px}
.library .document-open b{font-size:20px}
.library .resource-results .document-row:hover .document-open{background:#072746}
.library .active-filters button{border-radius:20px;background:#fff}
.library .resource-facets button:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:1100px){.library .resource-layout{grid-template-columns:220px minmax(0,1fr)}.library .resource-results{padding:24px}.library .resource-browser .resource-results .document-row{padding:20px;gap:16px;grid-template-columns:minmax(0,1fr) 135px}.library .resource-results .document-row:hover{padding-left:20px}.library .document-symbol{display:none}}
@media(max-width:700px){.library .resource-layout{grid-template-columns:1fr}.library-sidebar-brand{display:none}.library .resource-facets{padding:24px 18px}.library .resource-browser .facet-heading{margin-bottom:18px}.library #scope-facets{display:flex;gap:8px;flex-wrap:wrap}.library .resource-facets .facet-option{width:auto}.library .resource-results{padding:24px 16px}.library .library-type-filters .facet-option{padding:9px 13px}.library .resource-browser .resource-results .document-row{grid-template-columns:1fr;padding:22px;gap:18px}.library .resource-results .document-row:hover{padding-left:22px}.library .resource-results .document-open{justify-self:start}.library .resource-browser .document-name strong{font-size:18px}.library .resource-results-toolbar{flex-wrap:wrap;gap:12px}}

/* Full-window technical library, opened explicitly with its button. */
.library-expand{display:block;margin:0 0 16px auto;padding:12px 18px;border:1px solid #91b0d5;border-radius:6px;background:#fff;color:#005daa;font:600 14px/1.5 var(--font);min-height:48px}
.library-expand:hover{background:#e3edf8}.library-expand:focus-visible{outline:3px solid #005daa;outline-offset:3px}
.library-viewer{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#e8edf1;color:#231f72;overflow:auto;color-scheme:light}
.library-viewer::backdrop{background:#061a30d9}
.library-viewer-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 32px;background:#062746;color:#fff;border-bottom:1px solid #ffffff25}
.library-viewer-header>div>span{font:600 11px/1.5 var(--font);letter-spacing:.12em;color:#91b0d5}
.library-viewer-header h2{font:600 24px/1.25 var(--font);letter-spacing:-.02em;text-transform:none;margin:3px 0 0}
.library-viewer-close{display:flex;align-items:center;gap:18px;min-height:48px;padding:10px 18px;background:#ffffff10;color:white;border:1px solid #91b0d5;border-radius:5px;font:600 15px/1.5 var(--font)}
.library-viewer-close span{font-size:25px;line-height:1}.library-viewer-close:hover{background:#005daa}.library-viewer-close:focus-visible{outline:3px solid white;outline-offset:3px}
.library-viewer-content{min-height:calc(100dvh - 100px)}
.library-viewer.library .resource-browser{border:0;border-radius:0;box-shadow:none}
.library-viewer.library .resource-layout{min-height:calc(100dvh - 215px)}
.library-viewer.library .resource-results{padding:32px 40px}
@media(max-width:700px){.library-viewer-header{padding:14px 18px}.library-viewer-header h2{font-size:20px}.library-viewer-close{padding:8px 12px;gap:12px}.library-viewer.library .resource-results{padding:24px 16px}.library-viewer.library .resource-facets{padding:18px}.library-viewer.library .resource-access{display:none}}
@media(prefers-reduced-motion:no-preference){.library-viewer[open]{animation:library-enter .28s ease-out}.motion-paused .library-viewer[open],.a11y-noAnim .library-viewer[open]{animation:none}@keyframes library-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}
