.ca-fragment-art{position:relative;display:block;width:100%;height:100%;isolation:isolate;overflow:hidden;border-radius:5px}
.ca-fragment-art .ca-fragment-base{display:block;width:100%;height:100%;object-fit:contain;filter:grayscale(.95) brightness(.42)!important;transform:none!important}
.ca-fragment-piece{position:absolute;inset:0;display:block;background-size:contain;background-position:center;background-repeat:no-repeat;opacity:0;pointer-events:none}
.ca-fragment-piece.is-filled{opacity:1;filter:none}
.ca-fragment-cracks{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.ca-fragment-cracks path{fill:none;stroke:#f1b6d7;stroke-width:.6;stroke-linejoin:round;stroke-linecap:round;opacity:.55;vector-effect:non-scaling-stroke}
.ca-fragment-art[data-fragment-count="0"] .ca-fragment-cracks{opacity:.35}
.ca-fragment-counter{position:absolute;left:50%;bottom:5%;transform:translateX(-50%);white-space:nowrap;border:1px solid #c68bae88;border-radius:12px;padding:4px 9px;background:#1e1329eb;color:#ffe2f5;font:600 11px system-ui,sans-serif;box-shadow:0 0 8px #0008;z-index:2}
.has-new-fragment .ca-fragment-piece.is-latest{animation:ca-fragment-fill 1.1s ease-out both}
.has-new-fragment .ca-fragment-cracks path{stroke:#ffe1a8;animation:ca-fragment-crack 1.1s ease-out both}
@keyframes ca-fragment-fill{0%{opacity:.1;filter:brightness(3) saturate(.2);translate:0 -3px}45%{opacity:1;filter:brightness(1.8) saturate(1.3)}100%{opacity:1;filter:brightness(1) saturate(1);translate:0 0}}
@keyframes ca-fragment-crack{0%{stroke-dasharray:200;stroke-dashoffset:200;opacity:1}70%{stroke-dasharray:200;stroke-dashoffset:0;opacity:1}100%{stroke-dasharray:200;stroke-dashoffset:0;opacity:.55}}
.ca-fragment-preview{width:min(250px,100%);aspect-ratio:695/1000;margin:0 auto;filter:drop-shadow(0 5px 12px #0008)}
.ca-fragment-description{font-size:13px;line-height:1.6;color:#dfc9d8}
@media(prefers-reduced-motion:reduce){.has-new-fragment .ca-fragment-piece.is-latest,.has-new-fragment .ca-fragment-cracks path{animation:none}}

.card-title-with-fragments{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}
.card-fragment-badge{display:inline-flex;align-items:center;gap:5px;flex:none;white-space:nowrap;font:700 16px/1.2 system-ui,sans-serif;color:#efcf8e;-webkit-text-fill-color:#efcf8e}
.card-fragment-badge img{display:block;width:28px;height:28px;object-fit:contain}
.card-fragment-badge>span{font:inherit}
.ca-fragment-name,.pc-fragment-card-name{justify-content:center}
@media(max-width:600px){.card-fragment-badge{font-size:14px}.card-fragment-badge img{width:25px;height:25px}}
