.accordion-gallery{--ag-accent:#fff;--ag-overlay:#060010;--ag-text:#fff;--ag-gap:10px;--ag-radius:16px;--ag-media-size:320px;gap:var(--ag-gap);perspective:1400px;perspective-origin:50%;flex-direction:row;width:100%;max-width:100%;display:flex}.accordion-gallery--vertical{flex-direction:column}.ag-panel{border-radius:var(--ag-radius);cursor:pointer;min-width:0;min-height:0;transform-style:preserve-3d;transform-origin:50%;will-change:flex-grow, transform;-webkit-tap-highlight-color:transparent;background:#e9e9e8;outline:none;flex:1 1 0;text-decoration:none;display:block;position:relative;overflow:hidden}.ag-panel:focus-visible{box-shadow:0 0 0 2px var(--ag-accent), 0 0 0 4px var(--focus,#2a85ff)}.ag-panel__frame{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.ag-panel__media{width:var(--ag-media-size);filter:grayscale();will-change:transform, filter;height:100%;position:absolute;top:50%;left:50%;translate:-50% -50%}.accordion-gallery--vertical .ag-panel__media{width:100%;height:var(--ag-media-size)}.ag-panel__media img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.ag-panel__overlay{pointer-events:none;background:linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--ag-overlay) 78%, transparent) 100%);position:absolute;inset:0}.ag-panel__dim{pointer-events:none;background:var(--ag-overlay);opacity:.35;position:absolute;inset:0}.ag-panel__label{pointer-events:none;z-index:2;align-items:flex-end;gap:12px;display:flex;position:absolute;bottom:20px;left:20px;right:20px}.ag-panel__bar{background:var(--ag-accent);opacity:0;border-radius:2px;flex:none;width:2px;height:40px}.ag-panel__text{min-width:0;color:var(--ag-text);opacity:0}.ag-panel__title{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:clamp(1.125rem,1.5vw,1.5rem);line-height:1.15;display:block;overflow:hidden}.ag-panel__sub{opacity:.8;margin-top:4px;font-size:.875rem;line-height:1.4;display:block}.ag-panel__spine{z-index:2;color:var(--ag-text);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;writing-mode:vertical-rl;pointer-events:none;font-size:.8125rem;position:absolute;bottom:18px;left:50%;transform:translate(-50%)rotate(180deg)}.accordion-gallery--vertical .ag-panel__spine{writing-mode:horizontal-tb;bottom:50%;left:18px;transform:translateY(50%)}@media (prefers-reduced-motion:reduce){.ag-panel,.ag-panel__media{will-change:auto}}
.folder-float{--ff-w:200px;--ff-h:148px;--ff-r:14px;--ff-tab:14px;--ff-back:#3f3f46;--ff-front:#52525b;--ff-paper:#f5f5f5;--ff-item:#f5f5f5;--ff-item-ink:#18181b;--ff-label:#f5f5f5;--ff-spread:180px;--ff-lift:26px;--ff-angle:34deg;--ff-rest:16deg;--ff-open:.52s;--ff-close:.312s;--ff-stagger:45ms;--ff-n:6;--ff-spring:cubic-bezier(.34, 1.57, .64, 1);--ff-ease-out:cubic-bezier(.23, 1, .32, 1);width:var(--ff-w);padding-top:var(--ff-tab);font-family:inherit;font-size:13px;font-weight:600;line-height:1;display:inline-block;position:relative}.folder-float__folder{width:var(--ff-w);height:var(--ff-h);position:relative}.folder-float__back{z-index:0;border-radius:var(--ff-r);background:var(--ff-back);transform-origin:50% 100%;position:absolute;inset:0;transform:perspective(600px)rotateX(8deg)}.folder-float__back:before{content:"";top:calc(-1 * var(--ff-tab));width:42%;height:calc(var(--ff-tab) + var(--ff-r));border-radius:var(--ff-r) var(--ff-r) 0 0;background:inherit;position:absolute;left:0}.folder-float__paper{z-index:1;background:var(--ff-paper);opacity:0;height:50%;transition:transform var(--ff-close) var(--ff-ease-out), opacity var(--ff-close) ease;border-radius:6px;position:absolute;top:10%;left:8%;right:8%;transform:translateY(10px)}.folder-float__front{z-index:2;box-sizing:border-box;border-radius:var(--ff-r);background:linear-gradient(180deg, color-mix(in srgb, var(--ff-front) 92%, #fff), var(--ff-front) 60%);height:76%;color:var(--ff-label);transform:perspective(600px) rotateX(calc(-1 * var(--ff-rest)));transform-origin:50% 100%;transition:transform var(--ff-open) var(--ff-ease-out);flex-direction:column;justify-content:flex-end;gap:5px;padding:14px 16px;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 24px #00000047}.folder-float__label{font-size:14px;font-weight:600}.folder-float__sub{opacity:.6;font-size:12px;font-weight:400}.folder-float__trigger{z-index:3;border-radius:var(--ff-r);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;outline:none;height:76%;margin:0;padding:0;position:absolute;bottom:0;left:0;right:0}.folder-float__trigger:focus-visible{outline:2px solid var(--focus,#2a85ff);outline-offset:3px}.folder-float[data-open] .folder-float__front{transform:perspective(600px) rotateX(calc(-1 * var(--ff-angle)))}.folder-float[data-open] .folder-float__paper{opacity:1;transition:transform var(--ff-open) var(--ff-ease-out), opacity .2s ease;transform:translateY(0)}.folder-float__items{top:var(--ff-tab);z-index:1;width:0;height:0;position:absolute;left:50%}.folder-float[data-open] .folder-float__items:before{content:"";top:calc(-1 * (var(--ff-lift) + 120px));left:calc(-1 * (var(--ff-spread) + 100px));width:calc(2 * var(--ff-spread) + 200px);height:calc(var(--ff-lift) + 120px);position:absolute}.folder-float__item{background:var(--ff-item);height:34px;color:var(--ff-item-ink);font:inherit;white-space:nowrap;cursor:pointer;opacity:0;transform-origin:50%;pointer-events:none;touch-action:none;-webkit-tap-highlight-color:transparent;transition:transform var(--ff-close) var(--ff-ease-out) calc((var(--ff-n) - 1 - var(--i)) * var(--ff-stagger) * .5), opacity .16s ease calc((var(--ff-n) - 1 - var(--i)) * var(--ff-stagger) * .5 + var(--ff-close) * .45), scale .16s var(--ff-ease-out);border:0;border-radius:17px;outline:none;margin:0;padding:0 14px;position:absolute;top:0;left:50%;transform:translate(-50%,44px)scale(.6);box-shadow:0 4px 12px #00000024}.folder-float__item:focus-visible{outline:2px solid var(--focus,#2a85ff);outline-offset:2px}.folder-float__item[aria-pressed=true]{background:var(--ff-item-ink);color:var(--ff-item)}.folder-float[data-open] .folder-float__item{opacity:1;transform:translate(calc(-50% + var(--x)), var(--y)) rotate(var(--r)) scale(1);pointer-events:auto;transition:transform var(--ff-open) var(--ff-spring) calc(var(--i) * var(--ff-stagger)), opacity .16s ease calc(var(--i) * var(--ff-stagger)), scale .16s var(--ff-ease-out), background-color .2s ease, color .2s ease}.folder-float[data-live] .folder-float__item{cursor:grab;transition:scale .16s var(--ff-ease-out), background-color .2s ease, color .2s ease}.folder-float__item[data-drag]{cursor:grabbing}@media (hover:hover) and (pointer:fine){.folder-float[data-open] .folder-float__item:hover{scale:1.05}}.folder-float[data-open] .folder-float__item:active{scale:.97}.folder-float__item[data-pop]{animation:folder-float-pop .32s var(--ff-ease-out)}.folder-float__drift{animation:3.2s ease-in-out infinite folder-float-drift;animation-delay:calc(var(--i) * -.7s);animation-play-state:paused;display:block}.folder-float[data-open] .folder-float__drift{animation-play-state:running}.folder-float[data-physics] .folder-float__drift,.folder-float[data-live] .folder-float__drift{animation:none}@keyframes folder-float-drift{0%,to{translate:0}50%{translate:0 -3px}}@keyframes folder-float-pop{30%{scale:1.1}to{scale:1}}@media (prefers-reduced-motion:reduce){.folder-float__front,.folder-float__paper{transition:opacity .2s}.folder-float[data-open] .folder-float__front{transform:perspective(600px) rotateX(calc(-1 * var(--ff-rest)))}.folder-float__paper{transform:none!important}.folder-float__item{transition:opacity .2s}.folder-float[data-open] .folder-float__item{transition:opacity .2s ease calc(var(--i) * var(--ff-stagger))}.folder-float__drift{animation:none}}
