.searchrow{display:flex;gap:6px;padding:6px 8px;background:var(--bg-0);border-bottom:1px solid var(--border-1);flex-shrink:0}.searchrow .libsearch .ne-tf-cap svg{width:14px;height:14px}.lib-locator{flex-shrink:0;width:26px;height:26px;align-self:center;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:50%;background:var(--bg-2);border:1px solid var(--border-1);color:var(--txt-3);cursor:pointer;transition:color .12s,border-color .12s,background .12s,box-shadow .12s}.lib-locator:hover{border-color:var(--border-2);background:var(--bg-3)}.lib-locator.on{color:var(--acc);border-color:var(--acc-glow);box-shadow:0 0 0 1px var(--acc-glow)}.lib-locator.on.inview{color:var(--txt-2);border-color:var(--border-2);box-shadow:none}.lib-locator .loc-needle{width:16px;height:16px;display:inline-flex;transition:transform .14s ease-out;will-change:transform}.lib-locator .loc-needle svg{width:16px;height:16px;display:block}.lib-locator.is-clear{color:var(--txt-2)}.lib-locator.is-clear:hover{color:var(--txt-0);border-color:var(--border-2)}.lib-locator.is-clear svg{width:11px;height:11px;display:block}.filterrow{display:flex;flex-wrap:nowrap;gap:3px;padding:5px 8px;background:var(--bg-1);border-bottom:1px solid var(--border-1);flex-shrink:0;align-items:center;overflow:hidden}.filterrow .chip,.f-cm-wrap .chip{font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.5px;padding:4px 9px;border-radius:999px;color:var(--txt-1);background:var(--bg-2);border:1px solid var(--border-1);white-space:nowrap;text-transform:uppercase;flex-shrink:0;cursor:pointer;transition:color .12s,background .12s,border-color .12s}.filterrow .chip:hover,.f-cm-wrap .chip:hover{color:var(--txt-0);border-color:var(--border-2)}.filterrow .chip.on,.f-cm-wrap .chip.on{color:var(--acc);background:var(--acc-dim);border-color:var(--acc-glow)}.f-seg{display:inline-flex;align-items:center;flex:0 0 auto;height:24px;background:var(--bg-2);border:1px solid var(--border-1);border-radius:4px;overflow:hidden}.f-seg button{height:100%;padding:0 9px;display:inline-flex;align-items:center;gap:5px;background:none;border:0;border-right:1px solid var(--border-1);color:var(--txt-2);font:700 9px/1 var(--mono);letter-spacing:.6px;text-transform:uppercase;cursor:pointer;transition:color .12s,background .12s}.f-seg button:last-child{border-right:0}.f-seg button:hover{color:var(--txt-0);background:var(--bg-3)}.f-seg button[aria-pressed=true]{color:var(--txt-0);background:var(--bg-4)}.f-seg button[aria-pressed=true][data-scope=mine]{color:var(--deep);background:var(--deep-dim)}.f-seg button .sg{display:none;line-height:0}.f-seg button .sg svg{width:12px;height:12px;display:block}.filterrow .f-key{height:24px;padding:0 8px;display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;background:var(--bg-2);border:1px solid var(--border-1);border-radius:4px;color:var(--txt-2);font:700 9px/1 var(--mono);letter-spacing:.6px;text-transform:uppercase;cursor:pointer;transition:color .12s,background .12s,border-color .12s}.filterrow .f-key:hover{color:var(--txt-0);border-color:var(--border-2)}.filterrow .f-key .chip-dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto}.filterrow .f-key .gl{line-height:0;display:inline-flex;flex:0 0 auto}.filterrow .f-key .gl svg{width:12px;height:12px;display:block}.filterrow .f-key[data-key=free] .chip-dot{background:var(--acc)}.filterrow .f-key[data-key=pro] .chip-dot{background:var(--warn)}.filterrow .f-key[data-key=free][aria-pressed=true]{color:var(--acc);background:var(--acc-dim);border-color:var(--acc-glow)}.filterrow .f-key[data-key=pro][aria-pressed=true]{color:var(--warn);background:var(--warn-dim);border-color:var(--warn-glow)}.filterrow .f-key[data-key=fav][aria-pressed=true]{color:#ea911c;background:#ea911c21;border-color:#ea911c73}.filterrow .f-key[data-key=node][aria-pressed=true]{color:var(--deep);background:var(--deep-dim);border-color:var(--deep-glow)}.filterrow .f-key[data-key=code][aria-pressed=true]{color:#b2b6c4;background:#8b8f9e24;border-color:#8b8f9e73}.filterrow .f-key[data-key=draft][aria-pressed=true]{color:var(--txt-0);background:var(--bg-4);border-color:var(--border-2)}.filterrow .f-sep{width:1px;height:16px;background:var(--border-1);margin:0 3px;flex:0 0 auto}.filterrow .f-grow{flex:1;min-width:4px}.filterrow .f-drop{height:24px;padding:0 7px;display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;background:var(--bg-2);border:1px solid var(--border-1);border-radius:4px;color:var(--txt-1);font:700 9px/1 var(--mono);letter-spacing:.6px;text-transform:uppercase;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.filterrow .f-drop:hover{color:var(--txt-0);border-color:var(--border-2)}.filterrow .f-drop[aria-pressed=true]{color:var(--acc);border-color:var(--acc-glow);background:var(--acc-dim)}.filterrow .f-drop .dg{display:none;line-height:0}.filterrow .f-drop .dg svg{width:12px;height:12px;display:block}.filterrow .f-drop .cv svg{width:9px;height:9px;display:block;opacity:.7}.filterrow .f-drop .n{min-width:13px;height:13px;padding:0 3px;border-radius:7px;background:var(--acc);color:#0b1a0f;font:700 8px/13px var(--mono);text-align:center}.filterrow:not([data-stage="0"]) .f-seg button .lb{display:none}.filterrow:not([data-stage="0"]) .f-seg button .sg{display:inline-flex}.filterrow:not([data-stage="0"]) .f-seg button{padding:0 8px}.filterrow:not([data-stage="0"]) .f-seg button[data-scope=all] .lb{display:inline}.filterrow:not([data-stage="0"]) .f-seg button[data-scope=all] .sg{display:none}.filterrow[data-stage="2"] .f-key,.filterrow[data-stage="3"] .f-key{width:26px;padding:0;gap:0;justify-content:center}.filterrow[data-stage="2"] .f-key .lb,.filterrow[data-stage="3"] .f-key .lb{display:none}.filterrow[data-stage="3"] .f-drop{padding:0 6px}.filterrow[data-stage="3"] .f-drop .lb{display:none}.filterrow[data-stage="3"] .f-drop .dg{display:inline-flex}.f-catmenu{position:fixed;z-index:9000;width:230px;padding:8px;background:var(--bg-1);border:1px solid var(--border-2);border-radius:6px;box-shadow:0 8px 20px #0000008c}.f-cm-head{font:700 8.5px/1 var(--mono);letter-spacing:.9px;text-transform:uppercase;color:var(--txt-3);margin:2px 2px 7px}.f-cm-wrap{display:flex;flex-wrap:wrap;gap:4px}.f-cm-foot{display:flex;justify-content:flex-end;margin-top:9px;padding-top:8px;border-top:1px solid var(--border-1)}.f-cm-foot button{font:700 9px/1 var(--mono);letter-spacing:.5px;text-transform:uppercase;color:var(--txt-1);background:var(--bg-2);border:1px solid var(--border-1);border-radius:4px;padding:5px 8px;cursor:pointer}.f-cm-foot button:hover{color:var(--txt-0);border-color:var(--border-2)}.library{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.grid{padding:6px;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;align-content:start}.card{position:relative;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--radius);overflow:hidden;cursor:pointer;aspect-ratio:16 / 9}.card:hover{transform:translateY(-1px);border-color:var(--border-2);box-shadow:0 0 0 1px #ffffff0f,0 2px 4px #00000080}.card.selected{border-color:var(--deep);box-shadow:0 0 0 1px var(--deep-glow)}.card[data-tier=custom].selected{border-color:var(--custom);box-shadow:0 0 0 1px var(--custom-glow)}.card.dirty.selected{border-color:#f7b955;box-shadow:0 0 0 1px #f7b95580}.card-menu{position:absolute;top:5px;right:5px;z-index:9;display:flex;align-items:center;gap:4px;flex-direction:row-reverse}.card-dot{width:10px;height:10px;border-radius:50%;flex:none;margin:5px 3px 3px}.card-dot.dirty{background:#f7b955;box-shadow:0 0 0 2px var(--bg-2)}.card-dot.fail{background:var(--err, #e06262);box-shadow:0 0 0 2px var(--bg-2),0 0 0 4px #e0626247;cursor:help}.card-dot.clean{background:#ffffff0f;border:1.5px solid rgba(255,255,255,.3);opacity:0;transition:opacity .18s ease}.card:hover .card-dot.clean{opacity:1;border-color:#ffffff8c;background:#ffffff1a}.card-dot.dirty.saving,.card-dot.fail.saving{animation:cd-saving var(--cd-blink, .45s) ease-in-out infinite}@keyframes cd-saving{0%,to{opacity:1}50%{opacity:.5}}.card-acts{display:none;align-items:center;gap:4px;flex-direction:row-reverse}.card-menu:hover .card-dot{display:none}.card-menu:hover .card-acts{display:flex}.card-act{width:22px;height:22px;border-radius:5px;flex:none;display:flex;align-items:center;justify-content:center;background:#000000d9;border:1px solid rgba(255,255,255,.12);color:var(--txt-0);cursor:pointer;padding:0}.card-act svg{width:13px;height:13px;display:block}.card-act.save{background:#6fcf8033;border-color:var(--acc-glow);color:var(--acc)}.card-act.save:hover{background:#6fcf8052}.card-act:disabled{opacity:.4;cursor:default}.card-act.save:disabled{background:#6fcf8014}.card-act.save:disabled:hover{background:#6fcf8014}.card-act.revert:hover{color:var(--warn);border-color:var(--warn-glow);background:#000}.card-act.rm:hover{color:var(--err);border-color:#e0626299;background:#000}.card-act.discard{color:var(--err-pale, #f09a95);border-color:#e0626273}.card-act.discard:hover{color:var(--err);border-color:#e06262cc;background:#000}.card-act.copyerr{color:var(--err-pale, #f09a95);border-color:#e0626266}.card-act.copyerr:hover{color:#ffb3ad;border-color:#e06262b3;background:#000}.card-act.copyerr.ok{color:var(--acc);border-color:var(--acc-glow)}.card-act.fork:hover{color:var(--custom);border-color:var(--custom-glow);background:#000}.card-act.pub:hover{color:var(--deep-bright);border-color:var(--deep-glow);background:#000}.card-act.fav svg{fill:none;stroke:currentColor;stroke-width:1.7px}.card-act.fav:hover{color:#ea911c;border-color:#e8c24c99;background:#000}.card-act.fav.on{color:#ea911c;border-color:#e8c24c66}.card-act.fav.on svg{fill:#ea911c;stroke:#ea911c}.catalog-section.subsec{padding-top:4px;padding-left:4px;opacity:.92}.catalog-section.subsec .cs-label{font-size:9px;letter-spacing:.8px;color:var(--txt-3)}.catalog-section.subsec .cs-icon{width:10px;height:10px}.catalog-section.subsec .cs-icon svg{width:10px;height:10px}.catalog-section.subsec .cs-count{font-size:9px}.catalog-section.subsec:hover .cs-label{color:var(--txt-1)}.card-thumb{position:absolute;inset:0;background:#0a0a0c;overflow:hidden;transform-origin:center center;transform:translateZ(0);backface-visibility:hidden;transition:transform .14s ease-out}.card:hover .card-thumb{transform:scale(1.12)}.card-thumb img{width:100%;height:100%;object-fit:cover;display:block}.card-thumb .placeholder{position:absolute;inset:0;background:#292e34;display:flex;align-items:center;justify-content:center}.card-thumb .placeholder img{width:55%;height:55%;object-fit:contain;opacity:.35}.card[data-tier=custom] .card-thumb .placeholder{background:#141c2b}.card[data-tier=custom] .card-thumb .placeholder img{display:none}.card[data-tier=custom] .card-thumb .placeholder:before{content:"";position:absolute;inset:-10% 0 0;background:#3a5d86;-webkit-mask:url(../mono-puppies.svg) no-repeat center / auto 35%;mask:url(../mono-puppies.svg) no-repeat center / auto 35%;pointer-events:none}.card[data-tier=custom]{box-shadow:inset 0 0 0 1px #5b9bf08c,0 0 0 1px #5b9bf073}.card[data-hue=deep]:hover{border-color:var(--deep);box-shadow:0 0 0 1px var(--deep-glow),0 3px 10px #00000080}.card[data-hue=free]:hover{border-color:var(--acc);box-shadow:0 0 0 1px var(--acc-glow),0 3px 10px #00000080}.card[data-hue=pro]:hover{border-color:var(--warn);box-shadow:0 0 0 1px var(--warn-glow),0 3px 10px #00000080}.card[data-hue=custom]:hover{border-color:var(--custom);box-shadow:inset 0 0 0 1px var(--custom),0 0 0 1px var(--custom-glow),0 3px 10px #00000080}.card-thumb:after{content:"";position:absolute;left:0;right:0;bottom:0;height:46%;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.82) 0%,rgba(0,0,0,.38) 52%,transparent 100%)}.badge{position:absolute;top:6px;left:6px;font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.7px;padding:3px 7px;border-radius:4px;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px;background:#0000008c;z-index:5}.badge-free{color:var(--acc);border:1px solid var(--acc-glow);background:#1e3c288c}.badge-pub{background:#e8833c24;color:#ffab63;border:1px solid rgba(232,131,60,.45)}.badge-draft{background:#f7b95524;color:#f7b955;border:1px solid rgba(247,185,85,.45)}.badge-deep{color:var(--deep, #a78bfa);border:1px solid rgba(167,139,250,.5);background:#261e3e8c}.badge-pro{color:var(--warn);border:1px solid rgba(200,149,58,.5);background:#3228148c}.card[data-tier=pro]:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(200,149,58,.9),transparent);z-index:5;pointer-events:none}.card-name{position:absolute;left:9px;bottom:7px;right:9px;font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--txt-0);text-shadow:0 1px 4px rgba(0,0,0,.85);letter-spacing:-.005em;line-height:1.2;pointer-events:none;white-space:nowrap;overflow:hidden;-webkit-mask-image:linear-gradient(to right,#000 88%,transparent 100%);mask-image:linear-gradient(to right,#000 88%,transparent 100%);z-index:4}.card.selected .card-name{color:var(--deep)}.card[data-tier=custom].selected .card-name{color:var(--custom)}.card.has-desc:hover .card-name{opacity:.12}.card.has-desc:hover .badge,.card.has-desc:hover .pro-ribbon{display:none}.card-name.two{display:flex;flex-direction:column;align-items:flex-start;gap:4px;white-space:normal;overflow:visible;-webkit-mask-image:none;mask-image:none}.card-name.two .fam{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt-0)}.card-inds{display:inline-flex;align-items:center;gap:3px;flex:none;margin-right:5px}.card-ind{display:inline-grid;place-items:center;width:14px;height:14px;pointer-events:auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.85))}.card-ind svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7}.card-ind.fav{color:#ea911c}.card-ind.fav svg{fill:currentColor;stroke:none}.card-ind.fork{color:#ffab63}.card-ind.node{color:var(--deep-bright)}.card-ind.pend{color:#8b8f96;cursor:help}.collar{width:9px;height:9px;border-radius:50%;flex:none;background:var(--c);box-shadow:0 0 0 1.5px #0000008c}.pupchip{display:inline-flex;align-items:center;gap:5px;padding:2px 7px;border-radius:20px;font:700 9px/1 var(--mono);letter-spacing:.4px;background:#0000008c;border:1px solid var(--c);color:var(--c)}.pupchip .collar{width:6px;height:6px;box-shadow:none}.linechip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px 2px 6px;border-radius:20px;font:700 9px/1 var(--mono);letter-spacing:.4px;background:var(--deep-dim);border:1px solid var(--deep-glow);color:var(--deep-bright)}.linechip svg{width:14px;height:12px;flex:none;stroke:currentColor;fill:none}.linechip svg .fillp{fill:currentColor;stroke:none}.card-hoverdesc{position:absolute;inset:0;z-index:6;display:none;align-items:flex-end;padding:11px 11px 12px;background:linear-gradient(to bottom,#0000000f,#00000038 44%,#000000f0);color:var(--txt-0);font:400 11px/1.4 var(--sans);pointer-events:none}.card:hover .card-hoverdesc{display:flex}.card-hoverdesc span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;width:100%}.catalog-section{grid-column:1 / -1;display:flex;align-items:center;gap:7px;padding:2px 0 8px;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--txt-2);cursor:pointer}.catalog-section .cs-label{cursor:pointer;transition:color .1s}.catalog-section:hover .cs-label,.catalog-section:hover .cs-icon{color:var(--txt-1)}.catalog-section:first-child{padding-top:2px}.catalog-section .cs-icon{width:12px;height:12px;color:var(--txt-2);flex-shrink:0;line-height:0;display:inline-flex;align-items:center;justify-content:center}.catalog-section .cs-icon svg{width:12px;height:12px;display:block}.catalog-section .cs-count{color:var(--txt-1);font-weight:500;flex-shrink:0}.catalog-section .cs-grow{flex:1;height:1px;background:var(--border-1);margin:0 2px}.catalog-group{display:contents}.catalog-group.collapsed{display:none}.catalog-section.my-sec .cs-label,.catalog-section.my-sec .cs-icon{color:var(--deep, #a78bfa)}.catalog-section.my-sec:hover .cs-label,.catalog-section.my-sec:hover .cs-icon{color:#c6b4ff}.catalog-section.my-sec .cs-count{color:var(--deep, #a78bfa);opacity:.7}.catalog-section.my-sec .cs-grow{background:#a78bfa47}.catalog-section.off-sec .cs-label,.catalog-section.off-sec .cs-icon{color:var(--txt-1)}.lib-divider{grid-column:1 / -1;height:1px;margin:4px 0 10px;background:linear-gradient(90deg,rgba(167,139,250,.22),var(--border-1) 55%,transparent)}.card-new{background:linear-gradient(135deg,#6fcf8012,#6fcf8005);border:1.5px dashed rgba(111,207,128,.34);border-radius:6px;cursor:pointer;overflow:hidden;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:8px;aspect-ratio:16 / 9;color:var(--acc, #6fcf80);transition:all .15s ease}.card-new:hover{border-color:var(--acc-glow, rgba(111,207,128,.35));background:var(--acc-dim, rgba(111,207,128,.12))}.card-new .new-icon{width:24px;height:24px;border-radius:50%;background:var(--acc-dim, rgba(111,207,128,.12));border:1px solid var(--acc-glow, rgba(111,207,128,.35));color:var(--acc, #6fcf80);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:0;line-height:0;transition:background .12s,color .12s,border-color .12s}.card-new .new-icon svg{width:12px;height:12px;display:block}.card-new .new-label{font:700 10.5px/1 var(--mono);letter-spacing:.4px;text-transform:uppercase;color:var(--acc, #6fcf80);margin:0}.card-new:hover .new-icon{background:var(--acc, #6fcf80);color:#0a0a0b;border-color:var(--acc, #6fcf80)}.my-locked{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:22px 18px;border:1.5px dashed var(--deep-glow);border-radius:8px;background:linear-gradient(135deg,#a78bfa12,#a78bfa05)}.my-locked .ml-ic{font-size:22px;line-height:1;color:var(--deep-bright)}.my-locked .ml-title{font:600 12px/1 var(--mono);color:var(--txt-0);letter-spacing:.3px}.my-locked .ml-sub{font:400 10.5px/1.5 var(--sans);color:var(--txt-2);max-width:260px}.my-locked .ev-cta{margin-top:4px}.my-unsynced{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;text-align:center;gap:7px;padding:20px 18px;border:1px solid var(--border-2);border-radius:8px;background:var(--bg-1)}.my-unsynced .mu-ic{color:var(--info);opacity:.85}.my-unsynced .mu-ic svg{width:26px;height:26px;display:block}.my-unsynced .mu-title{font:600 12px/1.35 var(--mono);color:var(--txt-0);letter-spacing:.2px}.my-unsynced .mu-sub{font:400 10.5px/1.5 var(--sans);color:var(--txt-2);max-width:260px}.card-skel{aspect-ratio:16 / 9;border-radius:var(--radius);border:1px solid var(--border-1);background:var(--bg-2);opacity:.55;animation:cardSkelBreathe 2s ease-in-out infinite}.card-skel:nth-child(2){animation-delay:.12s}.card-skel:nth-child(3){animation-delay:.24s}.card-skel:nth-child(4){animation-delay:.36s}.card-skel:nth-child(5){animation-delay:.48s}.card-skel:nth-child(6){animation-delay:.6s}@keyframes cardSkelBreathe{0%,to{opacity:.3}50%{opacity:.62}}@media (prefers-reduced-motion: reduce){.card-skel{animation:none;opacity:.45}}.my-loading-note{grid-column:1 / -1;font:400 10.5px/1.4 var(--mono);color:var(--txt-2);letter-spacing:.3px;padding:2px 2px 4px}.card.is-new{border:1px solid transparent;background:linear-gradient(var(--bg-2),var(--bg-2)) padding-box,linear-gradient(135deg,#6fcf80,#5aa9e6,#c973e0,#c8953a) border-box;box-shadow:0 0 0 1px #6fcf8033}.card .new-ribbon{position:absolute;bottom:8px;right:-22px;width:80px;background:var(--acc);color:#082010;font:800 8.5px/1 var(--mono);letter-spacing:1.2px;text-align:center;padding:3px 0;transform:rotate(-45deg);box-shadow:0 1px 6px #00000080;z-index:6;pointer-events:none}.card .custom-mark{position:absolute;top:8px;right:8px;width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;color:var(--custom);pointer-events:none;z-index:5}.card .custom-mark svg{width:14px;height:14px;display:block;transform:rotate(45deg)}.card .pro-ribbon{position:absolute;top:8px;left:-22px;width:80px;background:linear-gradient(180deg,#e0b04a,#b8902f);color:#1a1106;font:800 8.5px/1 var(--mono);letter-spacing:1.2px;text-align:center;padding:3px 0;transform:rotate(-45deg);box-shadow:0 1px 6px #00000080;z-index:6;pointer-events:none;display:inline-flex;align-items:center;justify-content:center;gap:3px}
