.jpk-library{position:fixed;inset:0;background:#112a23fa;color:#fff;z-index:150;overflow:auto;padding:32px max(24px,calc((100vw - 1150px)/2));box-sizing:border-box;font-family:jpk-yahei,sans-serif}
.jpk-library[hidden]{display:none}
.jpk-library-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.jpk-library h1{font-size:26px;margin:0;font-weight:600}
.jpk-library .intro{color:#c5d8cf;font-size:15px;line-height:1.8;margin:0 0 24px}
.jpk-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:22px}
.jpk-library-card{border:1px solid #6689766b;border-radius:12px;padding:10px;background:#ffffff07}
.jpk-library-card img{width:100%;aspect-ratio:16/9;object-fit:contain;display:block;border-radius:5px;background:#fff}
.jpk-library-card h2{font-size:18px;margin:14px 4px 7px;line-height:1.5;font-weight:500}
.jpk-library-card p{color:#b6d1c2;margin:0 4px 14px;font-size:13px}
.jpk-library-actions{display:flex;gap:8px;padding:0 4px 4px}
.jpk-library button{font:14px jpk-yahei,sans-serif;border:1px solid #93b6a28c;border-radius:7px;color:#fff;background:#ffffff0a;padding:9px 14px;cursor:pointer}
.jpk-library button:hover{background:#ffffff19}
.jpk-library button:focus-visible{outline:3px solid #e3c568;outline-offset:3px}
.jpk-library button.primary{background:#dceee3;color:#173d2c;border-color:#dceee3}
.jpk-font-status{font-size:13px;line-height:1.7;color:#b6d1c2;border-top:1px solid #ffffff20;margin-top:28px;padding-top:18px}
.jpk-font-status[data-exact=false]{color:#ffda9b}
@media(max-width:620px){.jpk-library{padding:20px}.jpk-library h1{font-size:22px}.jpk-library-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.jpk-library *{transition:none;animation:none}}
