.artwork-card{background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:var(--radius-md,8px);box-shadow:0 4px 16px #0000000a,0 1px 4px #00000005;cursor:pointer;display:flex;flex-direction:column;position:relative;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;width:100%}.artwork-card:hover{border-color:#0000001a;box-shadow:0 12px 32px #00000014,0 4px 12px #0000000a;z-index:10}.artwork-card__thumb{align-items:center;background:#fff;border-top-left-radius:var(--radius-md,8px);border-top-right-radius:var(--radius-md,8px);display:flex;justify-content:center;overflow:hidden;padding:.5rem;position:relative}.artwork-card__thumb--loading{animation:thumb-shimmer 1.6s ease-in-out infinite;background:linear-gradient(90deg,var(--color-ink-100,#f0ede8) 25%,var(--color-ink-50,#f8f6f3) 50%,var(--color-ink-100,#f0ede8) 75%);background-size:200% 100%}@keyframes thumb-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.artwork-card__thumb img{display:block;height:auto;max-height:calc(70vh - 1rem);max-width:100%;-o-object-fit:contain;object-fit:contain;transition:transform .5s ease-in-out;width:auto}.artwork-card__no-img{align-items:center;color:var(--color-ink-200);display:flex;justify-content:center;min-height:160px;width:100%}.artwork-card__overlay{inset:0;opacity:0;position:absolute;transition:opacity .2s ease}@media(hover:hover){.artwork-card:hover .artwork-card__overlay{opacity:1}}.artwork-card__title{color:var(--color-ink-900);display:-webkit-box;font-family:var(--font-display);font-size:.9375rem;font-style:normal;font-weight:600;-webkit-line-clamp:2;line-clamp:2;text-decoration:none;transition:color .2s;-webkit-box-orient:vertical;overflow:hidden}.artwork-card__title:hover{color:var(--color-cinnabar-600)}.artwork-card--admin{box-shadow:0 1px 2px #1a1a2e0f,0 6px 24px #1a1a2e1f}.artwork-card--admin:hover{box-shadow:0 2px 4px #1a1a2e14,0 20px 56px #1a1a2e38}.artwork-card--admin .artwork-card__thumb,.artwork-card--framed .artwork-card__thumb{min-height:140px}@media(hover:hover){.artwork-card--admin:hover .artwork-card__thumb img,.artwork-card--framed:hover .artwork-card__thumb img{transform:scale(1.03)}}.artwork-card--admin .artwork-card__overlay,.artwork-card--framed .artwork-card__overlay{align-items:center;background:#fff0;display:flex;gap:.5rem;justify-content:center;transition:background .4s ease}@media(hover:hover){.artwork-card--admin:hover .artwork-card__overlay,.artwork-card--framed:hover .artwork-card__overlay{background:#ffffff47}}.artwork-card--admin .artwork-card__info,.artwork-card--framed .artwork-card__info{background:#fff;border-bottom-left-radius:var(--radius-md,8px);border-bottom-right-radius:var(--radius-md,8px);border-top:1px solid var(--color-ink-100);display:flex;flex-direction:column;gap:.25rem;padding:.5rem .75rem .625rem}.artwork-card__footer{align-items:center;border-top:1px solid var(--color-ink-100);display:flex;justify-content:space-between;margin-top:.125rem;padding-top:.5rem}.artwork-card__date{color:var(--color-ink-400);font-size:.75rem;font-variant-numeric:tabular-nums}.overlay-btn{align-items:center;background:#fff;border:none;border-radius:var(--radius-md,8px);box-shadow:0 1px 4px #1a1a2e24;color:var(--color-ink-700);cursor:pointer;display:flex;justify-content:center;padding:.625rem;text-decoration:none;transition:color .15s ease,background .15s ease,transform .15s ease,box-shadow .15s ease}.overlay-btn:hover{box-shadow:0 4px 12px #1a1a2e2e;color:var(--color-cinnabar-600);transform:scale(1.1)}.overlay-btn--danger:hover{background:var(--color-cinnabar-500);box-shadow:0 4px 12px #c0392b4d;color:#fff}.artwork-card--gallery{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:var(--radius-md,8px);box-shadow:0 2px 8px #0000000d,0 1px 2px #00000008;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s cubic-bezier(.2,.8,.2,1),border-color .3s ease}@media(hover:hover){.artwork-card--gallery:hover{border-color:#00000017;box-shadow:0 16px 48px #00000021,0 4px 12px #0000000f;transform:translateY(-6px)}}.artwork-card--gallery .artwork-card__thumb{background:#fff;border-radius:var(--radius-md,8px) var(--radius-md,8px) 0 0;box-shadow:none;padding:.5rem;transition:none}@media(hover:hover){.artwork-card--gallery:hover .artwork-card__thumb img{transform:scale(1.03)}}.artwork-card--gallery .artwork-card__no-img{aspect-ratio:1;min-height:unset}.artwork-card--gallery .artwork-card__overlay{align-items:center;background:#fff0;border-radius:var(--radius-md,8px) var(--radius-md,8px) 0 0;display:flex;justify-content:center;transition:background .4s ease}@media(hover:hover){.artwork-card--gallery:hover .artwork-card__overlay{background:#ffffff38}}.artwork-card--gallery .artwork-card__overlay span{background:#ffffffe6;border-radius:var(--radius-full);color:var(--color-ink-900);font-family:var(--font-body);font-size:.8125rem;font-weight:600;letter-spacing:.05em;padding:.5rem 1.5rem;text-transform:uppercase;transform:translateY(15px);transition:transform .4s cubic-bezier(.2,.8,.2,1)}.artwork-card--gallery:hover .artwork-card__overlay span{transform:translateY(0)}.artwork-card--gallery .artwork-card__info{background:#fff;border-radius:0 0 var(--radius-md,8px) var(--radius-md,8px);border-top:1px solid var(--color-ink-100);padding:.625rem .75rem .75rem;text-align:left}.artwork-card--gallery .artwork-card__title{display:-webkit-box;font-size:1rem;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;text-align:left;-webkit-box-orient:vertical}.ac-badge{background:#0009;border-radius:var(--radius-full);box-shadow:0 2px 4px #0003;color:#fff;font-size:.6875rem;font-weight:700;padding:.25rem .75rem;position:absolute;right:1rem;top:1rem}.ac-badge,.ac-meta{letter-spacing:.1em;text-transform:uppercase}.ac-meta{align-items:center;color:var(--color-ink-500);display:flex;font-family:var(--font-body);font-size:.75rem;gap:.5rem;justify-content:center;margin-top:.25rem}@media(max-width:639px){.artwork-card__thumb img{max-height:none}.artwork-card--admin .artwork-card__thumb,.artwork-card--framed .artwork-card__thumb{min-height:unset}.artwork-card--admin:hover{box-shadow:0 1px 2px #1a1a2e0f,0 6px 24px #1a1a2e1f!important;transform:none}.artwork-card--framed:hover{box-shadow:0 4px 16px #0000000a,0 1px 4px #00000005;transform:none}}.artwork-card[data-orientation=landscape] .artwork-card__thumb{aspect-ratio:4/3;background:#fff;border-radius:var(--radius-md,8px) var(--radius-md,8px) 0 0;display:block;max-height:none;min-height:unset;overflow:hidden;padding:.5rem 0 .5rem .5rem;position:relative}.artwork-card[data-orientation=landscape] .artwork-card__thumb img{display:block;height:100%;max-height:unset;max-width:unset;-o-object-fit:cover;object-fit:cover;-o-object-position:0 50%;object-position:0 50%;transition:object-position var(--pan-duration,3s) ease-in-out,transform var(--pan-duration,3s) ease-in-out;transition:object-position var(--pan-duration,3s) ease-in-out,transform var(--pan-duration,3s) ease-in-out,-o-object-position var(--pan-duration,3s) ease-in-out;width:100%}@media(hover:hover){.artwork-card[data-orientation=landscape]:hover .artwork-card__thumb img{-o-object-position:100% 50%;object-position:100% 50%;transform:scale(1.03)}}.artwork-card[data-orientation=landscape] .artwork-card__thumb:after{background:linear-gradient(270deg,#fff 0,hsla(0,0%,100%,.85) 15%,transparent);bottom:0;content:"";pointer-events:none;position:absolute;right:0;top:0;transition:opacity .6s ease;width:40%;z-index:1}@media(hover:hover){.artwork-card[data-orientation=landscape]:hover .artwork-card__thumb:after{opacity:0}}.artwork-card[data-orientation=landscape] .artwork-card__thumb:before{animation:pan-hint-pulse 2.5s ease-in-out .8s infinite;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0000006b;border-radius:999px;bottom:calc(1.5rem + 8px);color:#ffffffeb;content:"→";font-size:11px;line-height:1;padding:4px 9px;pointer-events:none;position:absolute;right:8px;transition:opacity .3s ease;z-index:2}@keyframes pan-hint-pulse{0%,to{opacity:.85;transform:translate(0)}50%{opacity:.4;transform:translate(-3px)}}@media(hover:hover){.artwork-card[data-orientation=landscape]:hover .artwork-card__thumb:before{animation:none;opacity:0}}.artwork-card[data-orientation=landscape] .artwork-card__overlay{z-index:3}@media(hover:none){.artwork-card[data-orientation=landscape] .artwork-card__thumb:before,.artwork-card[data-orientation=portrait] .artwork-card__thumb:before{display:none}.mobile-swipe-hint{align-items:center;animation:swipe-hint-pulse 2.5s ease-in-out 1s infinite;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0000006b;border-radius:999px;bottom:calc(1.5rem + 8px);color:#ffffffeb;display:flex;justify-content:center;padding:4px 8px;pointer-events:none;position:absolute;right:8px;z-index:4}@keyframes swipe-hint-pulse{0%,to{opacity:.85;transform:scale(1)}50%{opacity:.4;transform:scale(.92)}}}@media(hover:hover){.mobile-swipe-hint{display:none}}.artwork-card[data-orientation=portrait] .artwork-card__thumb{aspect-ratio:4/5;background:#fff;border-radius:var(--radius-md,8px) var(--radius-md,8px) 0 0;display:block;max-height:none;overflow:hidden;padding:.5rem .5rem 0;position:relative}.artwork-card[data-orientation=portrait] .artwork-card__thumb img{display:block;height:100%;max-height:unset;max-width:unset;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 0;object-position:50% 0;transition:object-position var(--pan-duration,3s) ease-in-out,transform var(--pan-duration,3s) ease-in-out;transition:object-position var(--pan-duration,3s) ease-in-out,transform var(--pan-duration,3s) ease-in-out,-o-object-position var(--pan-duration,3s) ease-in-out;width:100%}@media(hover:hover){.artwork-card[data-orientation=portrait]:hover .artwork-card__thumb img{-o-object-position:50% 100%;object-position:50% 100%;transform:scale(1.03)}}.artwork-card[data-orientation=portrait] .artwork-card__thumb:after{background:linear-gradient(0deg,#fff 0,hsla(0,0%,100%,.85) 15%,transparent);bottom:0;content:"";height:40%;left:0;pointer-events:none;position:absolute;right:0;transition:opacity .6s ease;z-index:1}@media(hover:hover){.artwork-card[data-orientation=portrait]:hover .artwork-card__thumb:after{opacity:0}}.artwork-card[data-orientation=portrait] .artwork-card__thumb:before{animation:pan-hint-pulse-y 2.5s ease-in-out .8s infinite;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0000006b;border-radius:999px;bottom:8px;color:#ffffffeb;content:"↓";font-size:11px;left:50%;line-height:1;padding:4px 9px;pointer-events:none;position:absolute;transform:translate(-50%);transition:opacity .3s ease;z-index:2}@keyframes pan-hint-pulse-y{0%,to{opacity:.85;transform:translate(-50%)}50%{opacity:.4;transform:translate(-50%,3px)}}@media(hover:hover){.artwork-card[data-orientation=portrait]:hover .artwork-card__thumb:before{animation:none;opacity:0}}.artwork-card[data-orientation=portrait] .artwork-card__overlay{z-index:3}.artwork-card--no-pan .artwork-card__thumb:after,.artwork-card--no-pan .artwork-card__thumb:before{display:none!important}.artwork-card--no-pan[data-orientation=landscape] .artwork-card__thumb,.artwork-card--no-pan[data-orientation=portrait] .artwork-card__thumb{padding:.5rem}.artwork-card--cell{background:transparent;border:none;border-radius:0;box-shadow:none;height:100%;width:100%}.artwork-card--cell:hover{border:none;box-shadow:none;transform:none}.artwork-card--cell .artwork-card__thumb{background:transparent;border-radius:0;height:100%;min-height:unset;padding:0;width:100%}.artwork-card--cell:hover .artwork-card__thumb img{transform:none}.artwork-card--cell[data-orientation=landscape] .artwork-card__thumb,.artwork-card--cell[data-orientation=portrait] .artwork-card__thumb{aspect-ratio:auto;height:100%;padding:0}.artwork-card--cell[data-orientation=landscape]:hover .artwork-card__thumb img,.artwork-card--cell[data-orientation=portrait]:hover .artwork-card__thumb img{transform:none}.artwork-card--cell .artwork-card__overlay{pointer-events:none}
