/* Source-first pages · readable, dark, compact, no false claim of PDF access */
.resource-library .source-document{max-width:930px;margin:0 auto;color:#f4e6d7}
.source-document .source-access{
  margin:12px 0 30px;
  background:linear-gradient(120deg,rgba(94,57,31,.82),rgba(35,22,15,.96));
  border:1px solid rgba(242,196,132,.42);border-radius:16px;
  padding:clamp(23px,3vw,35px);
}
.source-document .source-access h2{font:500 clamp(25px,3vw,35px)/1.2 Georgia,serif;color:#f7e3c5;margin:8px 0 13px}
.source-document .source-access p{color:#f2dcca;line-height:1.7;font-size:17px;max-width:70ch}
.source-document .source-primary{
  display:inline-flex;align-items:center;justify-content:center;gap:15px;
  padding:15px 25px;margin:10px 0 15px;min-height:56px;
  border-radius:9px;background:#efc486;color:#26180f!important;
  font:700 16px/1.35 Arial,sans-serif;text-decoration:none;text-align:center
}
.source-document .source-primary:hover{background:#f8d9ab}
.source-document .source-primary:focus-visible,
.source-document a:focus-visible{outline:3px solid #fff1ca;outline-offset:4px}
.source-document .source-small{
  color:#cebba5!important;font:13px/1.62 Arial,sans-serif!important;
}
.source-document .library-section{padding:18px 0 23px;border-bottom:1px solid rgba(242,197,135,.25)}
.source-document .library-section h2{font:500 clamp(24px,2.7vw,32px)/1.28 Georgia,serif;color:#f5e4cd;margin:14px 0 11px}
.source-document .library-section p{font:18px/1.7 Georgia,serif;color:#e8d9c8;max-width:76ch}
.source-document a{color:#f2c486;text-underline-offset:4px}
.source-document .source-reader-link{display:inline-block;margin:6px 0 10px;font:600 16px/1.5 Arial,sans-serif}
.source-document .source-origin dl{display:grid;grid-template-columns:minmax(145px,190px) minmax(0,1fr);gap:10px 22px;margin:22px 0}
.source-document .source-origin dt{font:700 13px/1.5 Arial,sans-serif;color:#d0b493}
.source-document .source-origin dd{font:17px/1.5 Georgia,serif;color:#eee2d1;margin:0;overflow-wrap:anywhere}
.source-document .source-technical{padding:12px 0 17px;border-top:1px solid rgba(240,199,156,.23);margin-top:20px}
.source-document .source-technical summary{font:600 14px/1.5 Arial,sans-serif;color:#edc692;cursor:pointer}
.source-document .source-technical summary:focus-visible{outline:3px solid #fff1ca}
.source-document .source-technical p{font-size:16px}
.resource-library .source-catalogue-hub{max-width:950px;margin:0 auto}
.source-hub-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:25px 0}
.source-hub-stats>div{padding:25px;border:1px solid rgba(242,195,133,.3);background:rgba(60,36,24,.55);border-radius:12px;display:flex;flex-direction:column;gap:12px}
.source-hub-stats strong{font:500 clamp(27px,3vw,42px)/1 Georgia,serif;color:#efd09f}
.source-hub-stats span{font:14px/1.6 Arial,sans-serif;color:#dbc5a9}
.source-hub-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:23px 0}
.source-hub-list li{background:rgba(48,33,25,.6);border:1px solid rgba(240,198,143,.23);padding:14px;border-radius:9px}
.source-hub-list a{display:block;font:500 17px/1.35 Georgia,serif;color:#f3d4a6;text-decoration:none}
.source-hub-list a:hover{text-decoration:underline}
.source-hub-list span{display:block;margin-top:7px;font:12px/1.45 Arial,sans-serif;color:#c5aa8e}
.repertoire-source-page{display:block;color:#e9cda6!important;font:600 13px/1.55 Arial,sans-serif;padding:8px 0;margin:8px 0}
@media(max-width:720px){
  .source-document .source-primary{display:flex;width:100%}
  .source-document .source-origin dl{grid-template-columns:1fr;gap:4px 0}
  .source-document .source-origin dd{margin-bottom:11px}
  .source-hub-stats,.source-hub-list{grid-template-columns:1fr}
}

.source-directory-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(94px,1fr));gap:10px;margin:22px 0 35px}
.source-directory-links a,.source-directory-nav a{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 8px;border:1px solid rgba(242,195,140,.3);border-radius:9px;
  text-decoration:none;color:#f4d1a5;font:600 14px/1.4 Arial,sans-serif;
  background:rgba(56,36,24,.65)
}
.source-directory-links a:hover,.source-directory-nav a:hover{background:rgba(109,71,38,.8)}
.source-directory-nav{display:flex;flex-wrap:wrap;gap:11px;margin:23px 0}
.source-catalogue-directory{max-width:960px;margin:0 auto}
.source-catalogue-directory .source-hub-list{margin-top:20px}
