.lib-container{max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.lib-hero{text-align:center;padding:2rem 0 1.5rem}.lib-hero-title{font-family:var(--font-brand),serif;text-transform:uppercase;color:var(--text-primary);letter-spacing:.05em;margin-bottom:.5rem;font-size:2rem;font-weight:800}.lib-hero-desc{color:var(--text-secondary);max-width:560px;margin:0 auto;font-size:.9rem;line-height:1.6}.lib-disclaimer{color:#d97706;background-color:#f59e0b0f;border:1px solid #f59e0b33;border-radius:8px;align-items:flex-start;gap:.625rem;margin-bottom:1.5rem;padding:.875rem 1rem;font-size:.825rem;line-height:1.5;display:flex}.lib-disclaimer svg{flex-shrink:0;margin-top:1px}[data-theme=dark] .lib-disclaimer{color:#fbbf24;background-color:#f59e0b14;border-color:#f59e0b40}.lib-accordion-controls{justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:.25rem 0;display:flex}.lib-accordion-toggle-all{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:.375rem;padding:.4rem .75rem;font-size:.8rem;font-weight:500;transition:all .15s;display:inline-flex}.lib-accordion-toggle-all:hover{border-color:var(--accent-color);color:var(--accent-color);background:var(--bg-tertiary)}.lib-accordion-info{color:var(--text-secondary);font-size:.775rem}.lib-accordion-list{flex-direction:column;gap:.5rem;display:flex}.lib-accordion-item{border:1px solid var(--border-color);border-radius:10px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.lib-accordion-item:hover{border-color:var(--text-secondary)}.lib-accordion-item.open{border-color:var(--border-color);box-shadow:0 1px 6px #0000000a}.lib-accordion-trigger{background:var(--bg-secondary);cursor:pointer;text-align:left;border:none;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.875rem 1rem;transition:background-color .15s;display:flex}.lib-accordion-trigger:hover{background:var(--bg-tertiary)}.lib-accordion-item.open .lib-accordion-trigger{border-bottom:1px solid var(--border-color);background:var(--bg-tertiary)}.lib-accordion-left{flex:1;align-items:center;gap:.625rem;min-width:0;display:flex}.lib-accordion-title{color:var(--text-primary);margin:0;font-size:.95rem;font-weight:600}.lib-accordion-right{flex-shrink:0;align-items:center;gap:.5rem;display:flex}.lib-accordion-count{color:var(--text-secondary);background:var(--bg-tertiary);white-space:nowrap;border-radius:4px;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.lib-accordion-chevron{color:var(--text-secondary);flex-shrink:0;transition:transform .25s}.lib-accordion-chevron.rotated{transform:rotate(180deg)}.lib-accordion-body{background:var(--bg-primary);padding:1rem;animation:.25s lib-accordionReveal}@keyframes lib-accordionReveal{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.lib-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (min-width:640px){.lib-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1024px){.lib-grid{grid-template-columns:repeat(4,1fr)}}.lib-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;border-radius:12px;transition:all .2s;animation:.3s both lib-cardFadeIn;overflow:hidden}@keyframes lib-cardFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.lib-card:hover{border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 4px 16px #ef444414}.lib-card-img-wrap{background:var(--bg-tertiary);width:100%;padding-top:100%;position:relative;overflow:hidden}.lib-card-img-wrap:before{content:"";z-index:0;background:linear-gradient(90deg,#0000 25%,#ffffff0f 50%,#0000 75%) 0 0/200% 100%;animation:1.5s ease-in-out infinite lib-shimmer;position:absolute;inset:0}@keyframes lib-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.lib-card-img-wrap img{object-fit:cover;width:100%;height:100%;transition:transform .3s;position:absolute;top:0;left:0}.lib-card:hover .lib-card-img-wrap img{transform:scale(1.05)}.lib-card-img-wrap.sensitive img{filter:blur(15px);transform:scale(1.1)}.lib-card:hover .lib-card-img-wrap.sensitive img{filter:blur(15px);transform:scale(1.15)}.lib-sensitive-overlay{z-index:2;width:100%;height:100%;color:var(--text-primary);pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;display:flex;position:absolute;top:0;left:0}.lib-sensitive-overlay svg{opacity:.7}.lib-sensitive-overlay span{opacity:.7;letter-spacing:.02em;font-size:.7rem;font-weight:600}.lib-card-body{padding:.75rem}.lib-card-name{color:var(--text-primary);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.25rem;font-size:.85rem;font-weight:600;display:-webkit-box;overflow:hidden}.lib-lightbox-overlay{z-index:9999;background:#000000d9;justify-content:center;align-items:center;padding:1.5rem;animation:.2s lib-fadeIn;display:flex;position:fixed;inset:0}@keyframes lib-fadeIn{0%{opacity:0}to{opacity:1}}.lib-lightbox{background:var(--bg-secondary);border-radius:16px;width:100%;max-width:720px;max-height:90vh;animation:.25s lib-slideUp;overflow-y:auto}@keyframes lib-slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lib-lightbox-img-wrap{background:#000;border-radius:16px 16px 0 0;justify-content:center;align-items:center;width:100%;max-height:60vh;display:flex;position:relative;overflow:hidden}.lib-lightbox-img-wrap img{object-fit:contain;max-width:100%;max-height:60vh}.lib-lightbox-close{color:#fff;cursor:pointer;z-index:1;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.25rem;transition:background .15s;display:flex;position:absolute;top:.75rem;right:.75rem}.lib-lightbox-close:hover{background:#000000d9}.lib-lightbox-info{padding:1.25rem 1.5rem 1.5rem}.lib-lightbox-name{color:var(--text-primary);margin-bottom:.5rem;font-size:1.2rem;font-weight:700}.lib-lightbox-desc{color:var(--text-secondary);margin-bottom:1rem;font-size:.9rem;line-height:1.6}.lib-lightbox-source{border:1px solid var(--border-color);color:var(--accent-color);border-radius:8px;align-items:center;gap:.375rem;padding:.5rem 1rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.lib-lightbox-source:hover{background:var(--bg-tertiary);border-color:var(--accent-color)}.lib-empty{text-align:center;color:var(--text-secondary);padding:4rem 2rem}.lib-empty-icon{background:var(--bg-tertiary);width:64px;height:64px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1rem;display:flex}.lib-empty p{font-size:.9rem}.lib-search{max-width:360px;margin-bottom:1rem;position:relative}.lib-search input{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:8px;outline:none;padding:.55rem .875rem .55rem 2.25rem;font-size:.85rem;transition:border-color .15s}.lib-search input:focus{border-color:var(--accent-color)}.lib-search input::placeholder{color:var(--text-secondary)}.lib-search-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:.625rem;transform:translateY(-50%)}.lib-loading-spinner{border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;width:32px;height:32px;margin:0 auto 1rem;animation:.7s linear infinite lib-spin}@keyframes lib-spin{to{transform:rotate(360deg)}}@media (max-width:768px){.lib-container{padding:1rem 1rem 5rem}.lib-hero-title{font-size:1.5rem}.lib-lightbox{border-radius:12px;max-width:100%}.lib-lightbox-img-wrap{border-radius:12px 12px 0 0}.lib-lightbox-info{padding:1rem}.lib-modal{padding:1.5rem}.lib-accordion-trigger{gap:.5rem;padding:.75rem}.lib-accordion-title{font-size:.85rem}.lib-accordion-body{padding:.75rem}}
