.film-card .card-image{transition:transform .25s ease,box-shadow .25s ease;transform-style:preserve-3d}.legendary-art .card-image{border:1px solid #e3bc69;border-radius:12px;box-shadow:0 0 0 3px #302614,0 10px 30px #0008;isolation:isolate;overflow:hidden;background:#0b0907;aspect-ratio:2/3}.legendary-art .card-image>img{width:100%;height:100%;object-fit:cover;opacity:1}.legendary-art .card-image:before{content:"";position:absolute;inset:7px;border:1px solid #e9cb7d88;border-radius:6px;z-index:3;pointer-events:none}.legendary-art .card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 25%,#e4d6a800 40%,#fff4c745 49%,#cfffec33 53%,transparent 65%);background-size:240% 240%;background-position:var(--shine-x,80%) var(--shine-y,20%);mix-blend-mode:screen;opacity:.5;z-index:4;pointer-events:none}.legendary-art:hover .card-image:after{opacity:.9}.legendary-art .card-number{background:#0b0907b8;color:#f7dc98;border:1px solid #ddbb7666;font-size:9px;top:15px;left:15px;z-index:5;letter-spacing:1px}.legendary-art .card-image>.rarity{top:15px;bottom:auto;right:15px;left:auto;background:#0b0907b8;color:#f7dc98;font-size:8px;border:1px solid #ddbb7666;padding:4px 6px;z-index:5}.art-caption{position:absolute;bottom:0;left:0;right:0;padding:58px 16px 23px;background:linear-gradient(transparent,#070706ed 60%);display:flex;flex-direction:column;text-align:center;z-index:2}.art-caption strong{font:400 clamp(18px,2vw,30px)/1.05 var(--display);color:#fff0c5;text-shadow:0 2px 8px #000}.art-caption small{font-size:8px;letter-spacing:2px;color:#d0b477;margin-top:9px}.legendary-art h3{color:#e7ca85}.legendary-art .card-image img{min-height:100%}.legendary-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px;margin-top:32px}.legendary-showcase section:nth-child(4){grid-column:1}.legendary-showcase p{margin:16px 0}.legendary-showcase .button{width:100%}.legend-preview-card{width:min(320px,80vw);margin:24px auto;perspective:1200px}.legend-preview-card .film-card>h3,.legend-preview-card .film-card>p{display:none}.legend-preview-title{text-align:center;color:var(--gold);font-family:var(--display);font-size:24px}.fx-settings{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:16px 0 24px;color:var(--muted);font-size:12px}.fx-settings label{display:flex;align-items:center;gap:8px;margin:0}.fx-settings input{width:16px;height:16px;accent-color:var(--gold);margin:0}.fx-settings a{display:flex;align-items:center;gap:6px;margin-left:auto;color:var(--gold)}.gold-burst{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:180}.reveal-grid{perspective:1400px}.revealed-card,.card-back{backface-visibility:hidden}.card-back{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 25%,#302719,#0b0d12 65%);border:1px solid #c6a66b;box-shadow:0 8px 28px #0009,inset 0 0 0 6px #131518}.card-back:after{content:"";position:absolute;inset:12px;border:1px solid #b1955466;border-radius:4px;pointer-events:none}.card-back:before{content:"";position:absolute;inset:-30%;background:linear-gradient(110deg,transparent 44%,#ffe3a618 50%,transparent 56%);transform:translateX(-35%);transition:transform .55s}.card-back:hover:before{transform:translateX(35%)}.card-back:hover{box-shadow:0 0 28px #c6a66b35}.legendary-hit .card-image{animation:legend-hit 1.6s ease-out}.pack-cinematic{position:fixed;inset:0;z-index:160;background:#06070bf5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;overflow:hidden}.pack-cinematic>p,.pack-cinematic>button{z-index:2}.pack-cinematic p{font:400 28px var(--display);margin:0;color:#f8df9b}.cinema-pack{position:relative;width:210px;height:315px;border:1px solid #e2c07c;border-radius:10px;background:linear-gradient(135deg,#1b1811,#090b10);display:flex;align-items:center;justify-content:space-around;flex-direction:column;box-shadow:0 0 70px #d7ac5f44;animation:pack-break 1.5s cubic-bezier(.3,.6,.3,1) both;z-index:2}.cinema-pack svg{width:64px;height:64px;color:#e3c482}.cinema-pack>span{font:400 30px var(--display);color:#fff0ce}.cinema-pack strong{font-size:11px;letter-spacing:4px;color:#ba9c63}.tear-line{position:absolute;left:-20px;right:-20px;top:25%;height:2px;box-shadow:0 0 26px #ffd986;background:#fff4cc;transform:scaleX(0);animation:pack-tear 1.5s both}.pack-aura{position:absolute;width:600px;height:600px;background:radial-gradient(ellipse,#cc9c3d44,transparent 65%);animation:aura-open 1.5s both}.draw-station .sealed-pack{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 10%,#342919,#101217 70%);box-shadow:8px 8px 0 #1b2028,0 0 50px #b18b3315}.draw-station .sealed-pack:before{content:"";position:absolute;inset:10px;border:1px solid #c6a66b44;pointer-events:none}.detail-art{max-width:360px;width:100%}.detail-art .film-card>h3,.detail-art .film-card>p{display:none}.album-card.owned .legendary-art{display:block}.legendary-teaser{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #66512a;border-bottom:1px solid #66512a;padding:24px 0;margin:24px 0}.legendary-teaser h2{font-family:var(--display);font-size:28px;margin:0 0 8px}.legendary-teaser p{margin:0;color:var(--muted)}@keyframes pack-break{0%{transform:scale(.8) rotate(-4deg);opacity:0}20%{transform:scale(1);opacity:1}45%{transform:rotate(-2deg)}52%{transform:rotate(2deg)}60%{transform:rotate(-1deg)}75%{transform:scale(1.07);filter:brightness(1.6)}100%{transform:scale(1.4);opacity:0}}@keyframes pack-tear{0%,40%{transform:scaleX(0)}75%{transform:scaleX(1)}100%{transform:scaleX(1.5);opacity:0}}@keyframes aura-open{0%{transform:scale(.4);opacity:0}65%{opacity:1}100%{transform:scale(2);opacity:0}}@keyframes legend-hit{0%{box-shadow:0 0 0 3px #f7da8c,0 0 70px #e2b45099;filter:brightness(1.3)}100%{box-shadow:0 0 0 3px #302614,0 10px 30px #0008;filter:brightness(1)}}@media(max-width:900px){.legendary-showcase{grid-template-columns:repeat(2,minmax(0,1fr))}.legendary-showcase section:nth-child(4){grid-column:auto}}@media(max-width:600px){.legendary-showcase{gap:32px 18px}.legendary-showcase .button{font-size:11px;padding:10px 8px}.legendary-art .card-image>.rarity{font-size:6px;right:11px;top:11px;padding:3px}.legendary-art .card-number{top:11px;left:11px;font-size:7px;padding:3px}.art-caption{padding:44px 10px 18px}.art-caption strong{font-size:20px}.art-caption small{font-size:6px;letter-spacing:1px}.fx-settings{gap:16px}.fx-settings a{margin-left:0}.legendary-teaser{align-items:flex-start;flex-direction:column}.legendary-teaser h2{font-size:24px}.detail-art{justify-self:center;max-width:280px}.legend-preview-card .art-caption strong{font-size:32px}}@media(prefers-reduced-motion:reduce){.legendary-hit .card-image,.cinema-pack,.pack-aura,.tear-line{animation:none!important}.legendary-art .card-image{transform:none!important;transition:none!important}}
/* Collector frames: presentation follows the actual rarity, never changes it. */
.film-card{--metal:#a4aebb;--metal-light:#eef1f5;--metal-dark:#3a4656;--foil-strength:.07}
.film-card.tier-rare{--metal:#64bffa;--metal-light:#d9f6ff;--metal-dark:#143f70;--foil-strength:.17}
.film-card.tier-epic{--metal:#bd8cf5;--metal-light:#f3ddff;--metal-dark:#54277a;--foil-strength:.24}
.film-card.tier-legendary{--metal:#e5b644;--metal-light:#fff2ac;--metal-dark:#755018;--foil-strength:.24}
.film-card:not(.legendary-art) .card-image{position:relative;isolation:isolate;aspect-ratio:2/3;overflow:hidden;border:3px solid var(--metal);border-radius:12px;background:linear-gradient(135deg,var(--metal-light),var(--metal-dark) 20%,var(--metal) 45%,var(--metal-dark) 75%,var(--metal-light));box-shadow:inset 0 0 0 2px #111,0 6px 20px #0008;padding:27px 7px 65px}
.film-card:not(.legendary-art) .card-image>img{width:100%;height:100%;min-height:0;object-fit:contain;opacity:1;background:#0a0c10;border:1px solid var(--metal-light);border-radius:3px}
.film-card:not(.legendary-art) .card-number{top:6px;left:9px;padding:0;border:0;background:none;color:var(--metal-light);font-size:8px;font-weight:700;z-index:5;text-shadow:0 1px 3px #000}
.film-card:not(.legendary-art) .card-image>.rarity{top:5px;right:9px;bottom:auto;left:auto;padding:0;background:none;color:var(--metal-light);font-size:8px;font-weight:700;z-index:5;text-shadow:0 1px 3px #000}
.collector-caption{position:absolute;left:7px;right:7px;bottom:7px;min-height:54px;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:7px 9px;border:1px solid var(--metal);border-radius:3px;background:linear-gradient(120deg,#0d121bf5,#17202cf0);z-index:3;text-align:left}
.collector-caption strong{font:600 clamp(10px,1.15vw,16px)/1.2 var(--sans,sans-serif);color:var(--metal-light);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.collector-caption small{display:flex;justify-content:space-between;gap:8px;font-size:8px;letter-spacing:1px;color:var(--metal)}
.card-surface,.card-sparks{position:absolute;inset:0;pointer-events:none;z-index:4;border-radius:inherit}
.card-surface{background:repeating-linear-gradient(130deg,#ffcd7699 0%,#d6a6ff88 10%,#8cf5ff88 20%,#bcff9888 30%,#ffcd7699 40%);mix-blend-mode:color-dodge;opacity:var(--foil-strength);background-size:220% 220%;background-position:var(--shine-x,30%) var(--shine-y,70%)}
.card-sparks{opacity:0;background:radial-gradient(ellipse 1px 7px at 18% 24%,#fffbdc 80%,transparent),radial-gradient(ellipse 7px 1px at 18% 24%,#fffbdc 80%,transparent),radial-gradient(ellipse 1px 5px at 83% 67%,#fffbdc 80%,transparent),radial-gradient(ellipse 5px 1px at 83% 67%,#fffbdc 80%,transparent);filter:drop-shadow(0 0 3px #fff2b5)}
.tier-rare .card-sparks{opacity:.35}.tier-epic .card-sparks{opacity:.65}.tier-legendary .card-sparks{opacity:.8}
.legendary-art .card-image{border:1px solid #ffe6a2;border-radius:12px;box-shadow:0 0 0 2px #6d4d16,0 0 24px #e6b44235,0 12px 30px #0009}
.legendary-art .card-image:before{display:none}
.legendary-art .card-image>img{object-fit:contain}
.legendary-art .card-number{top:8%;left:8%;font-size:8px;padding:4px 6px;border:1px solid #f0c45a;background:#160e09e8;box-shadow:0 2px 8px #0008}
.legendary-art .card-image>.rarity{top:8%;right:8%;font-size:8px;padding:4px 6px;border:1px solid #f0c45a;background:#160e09e8;box-shadow:0 2px 8px #0008}
.legendary-art .art-caption{left:7%;right:7%;bottom:7%;padding:18px 8px 10px;background:linear-gradient(transparent,#100b08eb 35%,#100b08f5);border-bottom:1px solid #e5ba54;filter:drop-shadow(0 3px 8px #0008)}
.legendary-art .art-caption strong{font-size:clamp(18px,2.1vw,32px);color:#fff0b2;text-shadow:0 1px 1px #000,0 0 14px #df9a3288}
.legendary-art .art-caption small{font-size:7px;letter-spacing:1.5px;color:#ffe09b}
@media(hover:hover) and (prefers-reduced-motion:no-preference){html:not(.fx-disabled) .film-card:hover .card-surface{animation:collector-foil 2.2s ease-in-out infinite alternate}html:not(.fx-disabled) .film-card:hover .card-sparks{animation:collector-spark 1.5s ease-in-out infinite alternate}}
@keyframes collector-foil{from{background-position:0% 15%}to{background-position:100% 85%}}
@keyframes collector-spark{from{filter:drop-shadow(0 0 2px #ffe3a1);opacity:.3}to{filter:drop-shadow(0 0 6px #fff);opacity:1}}
.fx-disabled .card-image{transform:none!important;transition:none!important}.fx-disabled .card-surface,.fx-disabled .card-sparks{animation:none!important}
@media(max-width:600px){.film-card:not(.legendary-art) .card-image{border-width:2px;border-radius:8px;padding:22px 4px 58px}.film-card:not(.legendary-art) .card-number{font-size:6px;top:6px;left:6px}.film-card:not(.legendary-art) .card-image>.rarity{font-size:6px;top:6px;right:6px}.collector-caption{left:4px;right:4px;bottom:4px;min-height:49px;padding:6px}.collector-caption strong{font-size:10px}.collector-caption small{font-size:6px}.legendary-art .card-number,.legendary-art .card-image>.rarity{font-size:5px;padding:3px;top:8%}.legendary-art .card-number{left:8%}.legendary-art .card-image>.rarity{right:8%}.legendary-art .art-caption{padding:14px 4px 6px}.legendary-art .art-caption strong{font-size:18px}.legendary-art .art-caption small{font-size:5px;letter-spacing:.5px}.legend-preview-card .art-caption strong{font-size:28px}}
@media(max-width:600px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}}
