.library-page{--library-page-gutter:clamp(20px, 6vw, 131px);--library-focus:#feb800;--library-ease-out:cubic-bezier(.16, 1, .3, 1);width:100%;padding:clamp(16px, 3vw, 32px) var(--library-page-gutter) clamp(32px, 5vw, 64px);gap:clamp(24px,4vw,48px);display:flex}.library-page__main{flex-direction:column;flex:1;gap:24px;min-width:0;display:flex}.library-page__title{font-family:var(--font-heading), var(--font-body), system-ui, sans-serif;letter-spacing:-.02em;color:#fff;margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:500;line-height:1.15}.library-page__count{font-family:var(--font-body), system-ui, sans-serif;color:#b8b8b8;margin:0;font-size:14px;line-height:20px}.library-page__grid{grid-template-columns:1fr;gap:40px 32px;display:grid}@media (min-width:768px){.library-page__grid{grid-template-columns:repeat(2,1fr)}}.animation-card:focus-visible{outline:2px solid var(--library-focus);outline-offset:3px}.library-sidebar{flex-shrink:0;align-self:flex-start;width:240px}.library-sidebar__collapsible{display:none}.library-sidebar__panels{flex-direction:column;gap:32px;display:flex}.library-sidebar__panels--desktop{display:flex}.library-sidebar__section{flex-direction:column;gap:4px;display:flex}.library-sidebar__heading{font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.08em;text-transform:uppercase;color:#9a9a9a;margin:0 0 8px;padding:0 12px;font-size:11px;font-weight:400;line-height:16px}.library-sidebar__option{color:#b8b8b8;width:100%;min-height:44px;font-family:var(--font-body), system-ui, sans-serif;text-align:left;cursor:pointer;transition:background .15s var(--library-ease-out), color .15s var(--library-ease-out);background:0 0;border:none;border-radius:6px;justify-content:space-between;align-items:center;padding:10px 12px;font-size:14px;font-weight:400;line-height:20px;display:flex}.library-sidebar__option:hover{color:#e2e2e2}.library-sidebar__option:focus-visible{outline:2px solid var(--library-focus);outline-offset:2px}.library-sidebar__option--selected{color:#fff;background:#1a1a1a}.library-sidebar__option-label{align-items:center;gap:8px;display:flex}.library-sidebar__dot{background:0 0;border-radius:50%;flex-shrink:0;width:6px;height:6px}.library-sidebar__option--selected .library-sidebar__dot{background:#fff}.library-sidebar__count{color:inherit;opacity:.7;font-size:14px}.library-sidebar__reset{margin-top:8px}.library-sidebar__reset-btn{color:#b8b8b8;width:100%;min-height:44px;font-family:var(--font-body), system-ui, sans-serif;cursor:pointer;transition:border-color .15s var(--library-ease-out), color .15s var(--library-ease-out);background:0 0;border:1px solid #333;border-radius:6px;padding:10px 16px;font-size:14px;line-height:20px}.library-sidebar__reset-btn:hover{color:#e2e2e2;border-color:#555}.library-sidebar__reset-btn:focus-visible{outline:2px solid var(--library-focus);outline-offset:2px}.library-chips{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.library-chips__label{font-family:var(--font-body), system-ui, sans-serif;color:#b8b8b8;white-space:nowrap;font-size:14px;line-height:20px}.library-chips__list{flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.library-chips__chip{color:#fff;min-height:44px;font-family:var(--font-body), system-ui, sans-serif;white-space:nowrap;background:#222;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:4px;padding:6px 8px 6px 16px;font-size:13px;line-height:18px;display:inline-flex}.library-chips__chip--muted{color:#b8b8b8;background:0 0;border-color:#ffffff14;padding-left:16px;padding-right:16px}.library-chips__remove{color:#b8b8b8;cursor:pointer;min-width:44px;min-height:44px;transition:color .15s var(--library-ease-out);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;margin:-6px -8px -6px 0;padding:0;font-size:18px;line-height:1;display:inline-flex}.library-chips__remove:hover{color:#fff}.library-chips__remove:focus-visible{outline:2px solid var(--library-focus);outline-offset:1px}.library-chips__clear{color:#b8b8b8;min-height:44px;font-family:var(--font-body), system-ui, sans-serif;cursor:pointer;white-space:nowrap;transition:color .15s var(--library-ease-out);background:0 0;border:none;border-radius:6px;margin-left:auto;padding:10px 12px;font-size:14px;line-height:20px}.library-chips__clear:hover{color:#fff}.library-chips__clear:focus-visible{outline:2px solid var(--library-focus);outline-offset:2px}.library-page__empty{text-align:center;background:#ffffff05;border:1px dashed #ffffff1f;border-radius:12px;flex-direction:column;align-items:center;gap:12px;padding:clamp(48px,10vh,80px) clamp(20px,5vw,40px);display:flex}.library-page__empty-title{font-family:var(--font-heading), var(--font-body), system-ui, sans-serif;color:#fff;margin:0;font-size:clamp(1.125rem,2vw,1.35rem);font-weight:500}.library-page__empty-desc{color:#b8b8b8;max-width:36ch;margin:0;font-size:14px;line-height:1.5}.library-page__empty-reset{color:#fff;min-height:44px;font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s var(--library-ease-out), border-color .15s var(--library-ease-out);background:0 0;border:1px solid #fff3;border-radius:6px;margin-top:8px;padding:0 20px;font-size:13px}.library-page__empty-reset:hover{background:#1a1a1a;border-color:#ffffff59}.library-page__empty-reset:focus-visible{outline:2px solid var(--library-focus);outline-offset:3px}@media (max-width:900px){.library-page{flex-direction:column}.library-sidebar{width:100%}.library-sidebar__panels--desktop{display:none}.library-sidebar__collapsible{background:#141414;border:1px solid #ffffff1a;border-radius:8px;display:block}.library-sidebar__toggle{min-height:48px;font-family:var(--font-mono), ui-monospace, monospace;letter-spacing:.08em;text-transform:uppercase;color:#fff;cursor:pointer;align-items:center;padding:12px 16px;font-size:12px;font-weight:400;list-style:none;display:flex}.library-sidebar__toggle::-webkit-details-marker{display:none}.library-sidebar__toggle:after{content:"+";color:#b8b8b8;margin-left:auto;font-size:18px;line-height:1}.library-sidebar__collapsible[open] .library-sidebar__toggle:after{content:"−"}.library-sidebar__collapsible .library-sidebar__panels{padding:0 12px 16px}.library-sidebar__toggle:focus-visible{outline:2px solid var(--library-focus);outline-offset:-2px;border-radius:8px}}
