:root{--sky:#72cfff;--sky-soft:#e5f8ff;--pink:#ff78bd;--pink-hot:#ff4fa7;--pink-soft:#ffe2f1;--blue:#155bd8;--navy:#08277d;--gold:#ffc84a;--cream:#fffaf7;--lav:#f4ecff;--ink:#063186;--muted:#5071b0;--glass:rgba(255,255,255,.78);--line:rgba(27,91,190,.22);--shadow:0 18px 45px rgba(29,76,168,.18);--deep-shadow:0 26px 75px rgba(4,35,117,.30);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;color:var(--navy);font-family:"Trebuchet MS","Segoe UI",system-ui,sans-serif;background:radial-gradient(circle at 18% 5%,rgba(255,120,189,.35),transparent 28%),radial-gradient(circle at 84% 15%,rgba(255,200,74,.28),transparent 24%),linear-gradient(135deg,#bdecff 0%,#eef8ff 42%,#ffe3f2 100%);overflow-x:hidden}body.modal-open{overflow:hidden}a{color:inherit}button,input,select{font:inherit}.sky{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.95) 0 2px,transparent 3px),radial-gradient(circle,rgba(255,255,255,.95) 0 1px,transparent 2px);background-size:110px 110px,70px 70px;opacity:.72;animation:twinkle 8s linear infinite}@keyframes twinkle{50%{opacity:.3;transform:translateY(-6px)}}.site{display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;min-height:100vh;padding:18px}.sidebar,.topbar,.panel,.detail,.info-strip{background:var(--glass);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow);backdrop-filter:blur(14px)}.sidebar{border-radius:28px;padding:16px;position:sticky;top:18px;height:calc(100vh - 36px);display:flex;flex-direction:column;gap:14px;overflow:auto}.brand{text-align:center}.logo{width:min(260px,100%);height:auto;display:block;margin:0 auto;object-fit:contain;filter:drop-shadow(0 12px 15px rgba(12,61,160,.25))}.binder-ribbon{display:inline-block;margin-top:-16px;padding:8px 22px;border-radius:999px;background:linear-gradient(180deg,#ff89c8,#f13491);color:#fff;font-weight:900;letter-spacing:.04em;text-shadow:0 2px 0 rgba(153,0,84,.35);box-shadow:0 8px 18px rgba(255,78,163,.25);transform:rotate(-2deg)}.side-card{border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(255,226,241,.70));border:1px solid rgba(97,164,255,.26);padding:16px}.side-title{margin:0 0 10px;color:var(--navy);font-size:.86rem;text-transform:uppercase;letter-spacing:.04em}.big-stat{font-size:2rem;font-weight:900;color:var(--blue)}.bar{height:13px;background:#cfe4ff;border-radius:999px;overflow:hidden;border:1px solid rgba(21,91,216,.18)}.bar span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--pink),#ffacd6,var(--gold));border-radius:999px;transition:width .35s ease}.mini-series{display:grid;gap:10px}.mini-row{font-size:.86rem}.mini-row b{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px}.filters{display:grid;gap:12px}.filters label{font-weight:900;color:var(--navy);font-size:.8rem}.filters select,.search{width:100%;border:1px solid #b8d4ff;border-radius:14px;padding:11px 12px;background:#fff;color:var(--navy);outline:none}.checkline{display:flex;align-items:center;gap:8px;margin:8px 0;color:var(--navy);font-size:.9rem}.main{display:grid;gap:14px;align-content:start}.topbar{position:sticky;top:12px;z-index:40;border-radius:24px;padding:0 14px;display:flex;align-items:center;justify-content:space-between;min-height:72px}.nav{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.nav a{display:flex;gap:8px;align-items:center;text-decoration:none;padding:16px 18px;border-radius:18px;font-weight:900;color:var(--navy);transition:.18s}.nav a:hover,.nav a.active{background:linear-gradient(180deg,#ffacd6,#ff5db0);color:white;box-shadow:0 8px 18px rgba(255,78,163,.26);transform:translateY(-1px)}.top-actions{display:flex;gap:10px;align-items:center}.search{min-width:min(320px,34vw);box-shadow:inset 0 1px 3px rgba(18,70,150,.08)}.star-btn{width:48px;height:48px;border-radius:50%;border:0;background:linear-gradient(180deg,#ff7dc1,#ff4fa7);color:#fff;font-size:1.4rem;box-shadow:0 10px 20px rgba(255,79,167,.25)}.series-hero{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(230px,320px);gap:14px;align-items:center;padding:12px 18px;min-height:88px;background:linear-gradient(125deg,rgba(255,255,255,.82),rgba(238,248,255,.74),rgba(255,226,241,.48))}.eyebrow{margin:0 0 2px;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--pink-hot);font-weight:900}.series-hero h1,.page-head h1{margin:0;color:var(--navy);font-size:clamp(1.55rem,3vw,2.15rem);font-style:italic;line-height:1.02}.series-hero p,.page-head p{margin:5px 0 0;color:#174198;font-size:.95rem}.compact-stat{display:inline-flex;gap:8px;align-items:center;padding:9px 12px;border-radius:16px;background:rgba(255,255,255,.65);border:1px solid rgba(97,164,255,.25);font-weight:900;color:var(--blue)}.starlight-mode{position:relative;display:flex;align-items:center;justify-content:end;gap:9px;font-size:.86rem;color:var(--navy)}.toggle-pill{width:48px;height:26px;border:0;border-radius:999px;background:#c7ddff;padding:3px;cursor:pointer}.toggle-pill span{display:block;width:20px;height:20px;border-radius:50%;background:white;box-shadow:0 2px 5px rgba(0,0,0,.18);transition:transform .2s ease}.toggle-pill.on{background:linear-gradient(90deg,#72cfff,#ff78bd)}.toggle-pill.on span{transform:translateX(22px)}.help-dot{width:24px;height:24px;border-radius:50%;border:0;background:#fff;color:var(--blue);font-weight:900;box-shadow:0 3px 8px rgba(20,80,170,.12)}.mode-tip{position:absolute;right:0;top:34px;width:310px;z-index:20;display:none;padding:12px;border-radius:16px;background:#fff;box-shadow:var(--shadow);border:1px solid #cfe0ff;color:var(--muted)!important}.help-dot:hover+.mode-tip,.help-dot:focus+.mode-tip{display:block}.binder-meta{padding:0 2px;font-weight:900;color:#244ca3}.workarea{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.binder-wrap{min-width:0}.binder-book{position:relative;min-height:535px;background:linear-gradient(90deg,#f6f1e9,#fff,#f6f1e9);border-radius:28px;padding:22px 28px;box-shadow:inset 0 0 0 3px rgba(97,77,60,.12),var(--shadow);display:grid;grid-template-columns:1fr 1fr;gap:32px;overflow:hidden}.binder-book::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 45%,rgba(255,120,189,.06))}.binder-book:before{content:'';position:absolute;top:22px;bottom:22px;left:50%;width:12px;transform:translateX(-50%);background:linear-gradient(90deg,#cbc0bb,#fff,#cbc0bb);border-radius:999px;box-shadow:0 0 0 1px rgba(50,35,25,.12)}.ring{position:absolute;left:50%;transform:translateX(-50%);width:38px;height:18px;border:4px solid #b4858b;border-left:0;border-right:0;border-radius:999px;background:#ffd7df;z-index:2}.ring.r1{top:20%}.ring.r2{top:40%}.ring.r3{top:60%}.ring.r4{top:80%}.binder-page{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:8px;border-radius:20px;background:rgba(255,255,255,.45);border:1px dashed rgba(61,97,150,.18);z-index:1}.slot{position:relative;min-width:0;aspect-ratio:2.5/3.5;border-radius:16px;background:linear-gradient(145deg,rgba(200,221,255,.55),rgba(255,219,237,.5));padding:7px;box-shadow:inset 0 0 0 2px rgba(255,255,255,.75);transform-style:preserve-3d}.empty-slot{opacity:.38}.card-tile{width:100%;height:100%;border:0;padding:0;background:none;perspective:1000px;cursor:pointer}.card-inner{position:relative;width:100%;height:100%;display:block;transition:transform .65s cubic-bezier(.2,.85,.2,1),filter .2s ease;transform-style:preserve-3d}.card-tile:hover .card-inner{transform:translateY(-8px) rotateX(9deg) rotateY(12deg) scale(1.035);filter:drop-shadow(0 22px 26px rgba(8,39,125,.27))}.card-tile.tap-tilt .card-inner{transform:rotateY(14deg) scale(1.05)}.face{position:absolute;inset:0;border-radius:12px;overflow:hidden;backface-visibility:hidden;background:#fff;box-shadow:0 8px 16px rgba(13,60,148,.18)}.face img{width:100%;height:100%;object-fit:cover;display:block}.back{transform:rotateY(180deg)}.badge{position:absolute;left:8px;top:8px;background:#0f49b7;color:#fff;border-radius:8px;padding:3px 7px;font-size:.75rem;font-weight:900;z-index:3}.fav{position:absolute;right:8px;top:8px;color:var(--pink);font-size:1.05rem;text-shadow:0 1px 0 #fff;z-index:3}.obscured{filter:brightness(.78) saturate(.9) blur(.35px)}.rarity-glow{position:absolute;inset:0;opacity:0;mix-blend-mode:screen;background:linear-gradient(110deg,transparent 18%,rgba(255,255,255,.85),transparent 46%);transform:translateX(-100%);animation:shine 3.2s infinite}.rarity-epic .rarity-glow{opacity:.75;background:linear-gradient(110deg,transparent 12%,rgba(255,255,255,.8),rgba(255,93,222,.55),rgba(118,224,255,.62),transparent 52%)}.rarity-legendary .rarity-glow{opacity:.88;background:linear-gradient(110deg,transparent 10%,rgba(255,255,255,.96),rgba(255,214,83,.82),rgba(255,120,189,.55),transparent 55%)}.rarity-legendary .face{box-shadow:0 0 0 2px var(--gold),0 0 20px rgba(255,207,70,.35),0 14px 34px rgba(255,191,0,.38)}.rarity-epic .face{box-shadow:0 0 0 2px #b57cff,0 0 18px rgba(193,118,255,.34),0 12px 28px rgba(181,124,255,.28)}.rarity-rare .face{box-shadow:0 0 0 2px #56a5ff,0 12px 24px rgba(86,165,255,.22)}@keyframes shine{60%,100%{transform:translateX(120%)}}.tiny-reveal{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);z-index:4;border:0;border-radius:999px;padding:9px 15px;color:#fff;background:linear-gradient(180deg,#ff8bca,#ff4fa7);font-size:.82rem;font-weight:900;opacity:.94;transition:.2s;box-shadow:0 8px 18px rgba(255,79,167,.25);white-space:nowrap}.tiny-reveal:hover{bottom:13px;transform:translateX(-50%) scale(1.08);box-shadow:0 0 0 5px rgba(255,120,189,.18),0 12px 22px rgba(255,79,167,.32)}.is-collected .tiny-reveal{background:linear-gradient(180deg,#7bcfff,#4a99ed)}.reveal-burst .card-inner::after{content:'';position:absolute;inset:-24px;border-radius:24px;background:radial-gradient(circle,rgba(255,255,255,.96),rgba(255,120,189,.65) 32%,rgba(255,200,74,.48) 48%,transparent 70%);animation:revealBurst 1.15s ease-out forwards;z-index:10}.reveal-burst .card-inner::before{content:'✨';position:absolute;inset:0;display:grid;place-items:center;font-size:2rem;z-index:11;animation:sparkPop 1.1s ease-out forwards}@keyframes revealBurst{0%{transform:scale(.25);opacity:0}28%{transform:scale(1.05);opacity:1}100%{transform:scale(1.55);opacity:0}}@keyframes sparkPop{0%{opacity:0;transform:scale(.5) rotate(0deg)}35%{opacity:1;transform:scale(1.4) rotate(12deg)}100%{opacity:0;transform:scale(2.3) rotate(45deg)}}.detail{border-radius:28px;padding:20px;position:sticky;top:100px;align-self:start;min-height:calc(100vh - 120px)}.detail-actions{display:flex;gap:10px;justify-content:center;margin-bottom:12px;flex-wrap:wrap}.btn{border:0;border-radius:16px;padding:12px 18px;font-weight:900;cursor:pointer;color:var(--navy);background:linear-gradient(180deg,#fff,#e9f4ff);box-shadow:0 5px 12px rgba(43,104,194,.12);transition:.18s ease;text-decoration:none}.btn:hover{transform:translateY(-2px);filter:brightness(1.04)}.btn.primary{color:white;background:linear-gradient(180deg,#ff90ca,#ff55ad)}.btn.blue{color:white;background:linear-gradient(180deg,#7bcfff,#4a99ed)}.btn.wide{width:100%}.reveal-big{font-size:1.02rem;padding:14px 22px;box-shadow:0 0 0 5px rgba(114,207,255,.16),0 12px 22px rgba(74,153,237,.2)}.preview-card{width:min(100%,292px);margin:0 auto 14px;perspective:1200px;border:0;background:transparent;padding:0;display:block;cursor:zoom-in}.preview-inner{aspect-ratio:2.5/3.5;position:relative;display:block;transform-style:preserve-3d;transition:.7s;filter:drop-shadow(0 18px 28px rgba(8,39,125,.24))}.preview-card:hover .preview-inner{transform:rotateX(4deg) rotateY(-5deg) scale(1.02)}.preview-card.flipped .preview-inner{transform:rotateY(180deg)}.preview-card.flipped:hover .preview-inner{transform:rotateY(180deg) rotateX(4deg) scale(1.02)}.preview-card img{width:100%;height:100%;object-fit:cover}.detail h2{margin:.2rem 0;color:var(--navy)}.pill{display:inline-block;border-radius:999px;background:#ffe8b7;color:#9b5a00;padding:5px 10px;font-size:.8rem;font-weight:900}.detail-list{display:grid;gap:6px;margin:14px 0}.detail-list p{display:flex;justify-content:space-between;gap:10px;margin:0;padding-bottom:6px;border-bottom:1px solid rgba(21,91,216,.14);color:#33539a}.description{color:#33539a;line-height:1.55}.pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:12px}.pager button{width:42px;height:42px;border-radius:50%;border:0;background:#ffd9ee;color:#ff4fa7;font-size:1.4rem;font-weight:900;cursor:pointer}.page-label{font-weight:900}.info-strip{border-radius:22px;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:.9rem}.info-strip p{margin:0;color:var(--muted)}.info-strip b{color:var(--navy)}.page-head{padding:22px}.grid-page{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}.grid-page.empty-grid{display:block}.collection-card{border-radius:20px;background:rgba(255,255,255,.78);border:1px solid var(--line);padding:12px;box-shadow:var(--shadow);transition:.18s}.collection-card:hover{transform:translateY(-4px)}.collection-card img{width:100%;aspect-ratio:2.5/3.5;object-fit:cover;border-radius:14px}.collection-card h3{margin:10px 0 4px;color:var(--navy)}.collection-card p{margin:0;color:var(--muted);font-size:.9rem}.card-buttons{display:flex;gap:8px;margin-top:10px}.text-card{padding:18px}.empty-state{display:grid;justify-items:start;gap:12px;max-width:420px;padding:24px;border-radius:22px;background:rgba(255,255,255,.76);border:1px solid var(--line);box-shadow:var(--shadow)}.empty-state h2{margin:0}.empty-state p{margin:0;color:var(--muted)}.table-wrap{padding:14px;overflow:auto}.table{width:100%;border-collapse:separate;border-spacing:0 10px}.table th{text-align:left;color:var(--navy);font-size:.84rem;text-transform:uppercase}.table td,.table th{padding:10px}.table tr.item{background:rgba(255,255,255,.78);box-shadow:var(--shadow)}.table tr.item td:first-child{border-radius:14px 0 0 14px}.table tr.item td:last-child{border-radius:0 14px 14px 0}.check-card{display:flex;align-items:center;gap:10px;font-weight:900}.check-card img{width:52px;aspect-ratio:2.5/3.5;object-fit:cover;border-radius:8px;box-shadow:0 5px 10px rgba(13,60,148,.16)}.icon-btn{border:1px solid #bad6ff;border-radius:12px;background:#fff;color:var(--navy);padding:8px 11px;cursor:pointer;font-weight:900}.link-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.link-card{display:block;padding:24px;border-radius:22px;background:rgba(255,255,255,.78);box-shadow:var(--shadow);border:1px solid var(--line);font-weight:900;text-decoration:none}#cardOverlay{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;background:rgba(4,20,65,.56);backdrop-filter:blur(9px);padding:28px}#cardOverlay.open{display:flex}.full-card-stage{position:relative;display:grid;place-items:center;max-width:min(900px,96vw);width:100%;min-height:min(860px,92vh);border-radius:34px;background:radial-gradient(circle at 50% 50%,rgba(255,120,189,.28),transparent 36%),radial-gradient(circle at 50% 60%,rgba(255,200,74,.24),transparent 30%),linear-gradient(135deg,rgba(9,22,84,.86),rgba(71,39,126,.82));border:2px solid rgba(255,255,255,.65);box-shadow:var(--deep-shadow),inset 0 0 80px rgba(114,207,255,.30);animation:modalPop .25s ease-out;overflow:hidden}.full-card-stage::before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.9) 0 2px,transparent 3px);background-size:68px 68px;opacity:.34;animation:twinkle 5s ease-in-out infinite}@keyframes modalPop{from{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}.full-card-wrap{position:relative;width:min(430px,70vw);aspect-ratio:2.5/3.5;border-radius:24px;z-index:2;perspective:1200px;animation:floatCard 3s ease-in-out infinite}.full-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s}.full-card-wrap.flipped .full-inner{transform:rotateY(180deg)}.full-card-wrap img{width:100%;height:100%;object-fit:cover;border-radius:24px;box-shadow:0 0 0 4px rgba(255,255,255,.4),0 28px 70px rgba(0,0,0,.40)}.full-card-glow{position:absolute;inset:-22px;border-radius:34px;border:2px solid rgba(114,207,255,.6);box-shadow:0 0 28px rgba(114,207,255,.7),inset 0 0 24px rgba(255,120,189,.45);pointer-events:none}@keyframes floatCard{50%{transform:translateY(-10px)}}.overlay-close,.overlay-arrow,.overlay-flip{position:absolute;z-index:5;border:0;cursor:pointer;color:white;background:linear-gradient(180deg,#ff8bca,#ff4fa7);box-shadow:0 12px 25px rgba(255,79,167,.25)}.overlay-close{top:18px;right:18px;width:54px;height:54px;border-radius:50%;font-size:2rem}.overlay-flip{top:20px;left:50%;transform:translateX(-50%);border-radius:999px;padding:13px 22px;font-weight:900}.overlay-arrow{top:50%;transform:translateY(-50%);width:62px;height:62px;border-radius:50%;font-size:3rem;line-height:.8}.overlay-arrow.left{left:24px}.overlay-arrow.right{right:24px}.full-caption{position:absolute;bottom:26px;z-index:3;text-align:center;color:white;text-shadow:0 2px 8px rgba(0,0,0,.32)}.full-caption h2{margin:0 0 4px;font-size:2rem}.full-caption p{margin:0}@media(max-width:1250px){.site{grid-template-columns:1fr}.sidebar{position:relative;height:auto;top:0}.workarea{grid-template-columns:1fr}.detail{position:relative;top:0;min-height:0}}@media(max-width:900px){.series-hero{grid-template-columns:1fr}.binder-book{grid-template-columns:1fr}.binder-book:before,.ring{display:none}.search{min-width:0}}@media(max-width:700px){.site{padding:10px}.topbar{align-items:stretch;flex-direction:column;padding:12px}.nav a{padding:12px}.top-actions{width:100%}.search{flex:1}.binder-page{grid-template-columns:repeat(2,1fr)}.sidebar .side-card.filters{display:none}.table{font-size:.86rem}.overlay-arrow{width:46px;height:46px;font-size:2.2rem}.overlay-arrow.left{left:8px}.overlay-arrow.right{right:8px}}

/* V6 polish tweaks */
.site{grid-template-columns:270px minmax(0,1fr);gap:14px;padding:12px;min-height:100dvh}.sidebar{top:12px;height:calc(100dvh - 24px);overflow:hidden;padding:12px;gap:10px}.logo{width:min(225px,100%)}.binder-ribbon{margin-top:-12px;padding:7px 20px}.side-card{padding:12px;border-radius:18px}.side-title{margin-bottom:7px}.big-stat{font-size:1.65rem}.mini-series{gap:7px}.mini-row{font-size:.78rem}.filters{gap:8px}.filters select,.search{padding:9px 11px}.topbar{top:8px;min-height:58px;border-radius:20px;padding:0 10px}.nav a{padding:12px 14px;border-radius:15px}.main{gap:10px}.top-actions{margin-left:auto}.series-hero{grid-template-columns:minmax(0,1fr) minmax(255px,340px);gap:10px;min-height:62px;padding:10px 16px;border-radius:22px;position:relative;overflow:visible}.series-hero:before{content:'';position:absolute;inset:0;border-radius:inherit;background:linear-gradient(90deg,rgba(255,120,189,.10),transparent 45%,rgba(114,207,255,.14));pointer-events:none}.series-hero h1{font-size:clamp(1.35rem,2.2vw,1.85rem)}.series-hero p{font-size:.86rem;margin-top:3px;max-width:850px}.starlight-mode{font-size:.8rem}.mode-tip{width:min(340px,75vw);font-size:.84rem}.workarea{grid-template-columns:minmax(0,1fr) 320px;gap:12px}.binder-book{min-height:min(54vh,470px);padding:16px 22px;gap:24px;border-radius:24px}.binder-page{gap:10px;padding:7px;border-radius:17px}.slot{padding:5px;border-radius:13px}.face{border-radius:10px}.detail{position:sticky;top:78px;min-height:0;max-height:calc(100dvh - 92px);overflow:hidden;padding:14px;border-radius:22px}.preview-card{width:min(100%,245px);margin-bottom:10px}.detail h2{font-size:1.22rem;margin:.05rem 0}.detail-list{gap:4px;margin:9px 0}.detail-list p{font-size:.86rem;padding-bottom:5px}.description{font-size:.88rem;line-height:1.35;margin:.4rem 0}.detail-actions{gap:8px;margin-bottom:9px}.btn{padding:10px 14px;border-radius:14px}.reveal-big{font-size:1rem;padding:13px 19px}.pager{margin-top:8px}.pager button{width:36px;height:36px}.info-strip{padding:10px 14px;border-radius:18px}.star-btn,.compact-stat{display:none!important}

/* calmer card hover: no skewy 3D, just a polished lift and glow */
.card-inner{transition:transform .28s ease,filter .28s ease,box-shadow .28s ease}.card-tile:hover .card-inner{transform:translateY(-6px) scale(1.025);filter:drop-shadow(0 14px 20px rgba(8,39,125,.22))}.card-tile:hover .face{box-shadow:0 0 0 2px rgba(255,255,255,.95),0 0 18px rgba(255,120,189,.22),0 10px 24px rgba(21,91,216,.20)}.card-tile.tap-tilt .card-inner{transform:scale(1.06)}

/* bigger, more satisfying reveal button */
.tiny-reveal{bottom:9px;padding:10px 18px;font-size:.9rem;letter-spacing:.02em;background:linear-gradient(180deg,#ff9bd1,#ff43a5);box-shadow:0 0 0 3px rgba(255,255,255,.55),0 10px 22px rgba(255,79,167,.28)}.tiny-reveal:hover{bottom:14px;transform:translateX(-50%) scale(1.1);box-shadow:0 0 0 7px rgba(255,120,189,.16),0 0 24px rgba(255,79,167,.38),0 14px 28px rgba(21,91,216,.18)}.is-collected .tiny-reveal{background:linear-gradient(180deg,#8bd9ff,#4a99ed)}.reveal-burst .card-inner{animation:revealPop .95s ease both}@keyframes revealPop{0%{transform:scale(.92);filter:brightness(1.4) drop-shadow(0 0 0 rgba(255,120,189,0))}35%{transform:scale(1.1);filter:brightness(1.35) drop-shadow(0 0 28px rgba(255,120,189,.75))}100%{transform:scale(1);filter:drop-shadow(0 16px 24px rgba(8,39,125,.22))}}

/* clean holo treatments */
.rarity-glow{pointer-events:none;opacity:0;mix-blend-mode:screen;background:linear-gradient(115deg,transparent 0 28%,rgba(255,255,255,.75) 38%,rgba(255,255,255,.18) 45%,transparent 56%);transform:translateX(-130%);animation:cleanShine 4.6s ease-in-out infinite}.rarity-epic .rarity-glow{opacity:.48;background:linear-gradient(115deg,transparent 0 30%,rgba(190,128,255,.28),rgba(255,255,255,.70),rgba(119,218,255,.32),transparent 58%)}.rarity-epic .face{box-shadow:0 0 0 2px rgba(174,123,255,.75),0 8px 22px rgba(125,96,220,.24)}.rarity-legendary .rarity-glow{opacity:.9;background:linear-gradient(115deg,transparent 0 24%,rgba(255,255,255,.88),rgba(255,218,82,.82),rgba(255,154,211,.48),rgba(128,222,255,.38),transparent 64%);animation:cleanShine 3.3s ease-in-out infinite}.rarity-legendary .face{box-shadow:0 0 0 2px rgba(255,201,59,.98),0 0 16px rgba(255,201,59,.55),0 0 30px rgba(255,120,189,.25),0 15px 34px rgba(255,179,0,.30)}.legendary-aura{position:absolute;inset:0;opacity:0;pointer-events:none;background:radial-gradient(circle at 18% 22%,rgba(255,255,255,.9) 0 1.5px,transparent 2.5px),radial-gradient(circle at 78% 30%,rgba(255,255,255,.85) 0 1.5px,transparent 2.5px),radial-gradient(circle at 60% 74%,rgba(255,231,117,.95) 0 1.5px,transparent 2.8px),linear-gradient(135deg,rgba(255,226,96,.08),rgba(255,120,189,.07),rgba(114,207,255,.08));background-size:100% 100%,100% 100%,100% 100%,100% 100%;animation:legendaryPulse 2.7s ease-in-out infinite}.rarity-legendary .legendary-aura{opacity:.85}@keyframes cleanShine{0%,52%{transform:translateX(-130%)}78%,100%{transform:translateX(135%)}}@keyframes legendaryPulse{0%,100%{filter:brightness(1);opacity:.58}50%{filter:brightness(1.55);opacity:.95}}

/* enlarged-card holo toggle */
.overlay-tools{position:absolute;top:20px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:6}.overlay-flip,.overlay-holo{position:static!important;transform:none!important;border:0;cursor:pointer;color:white;background:linear-gradient(180deg,#ff8bca,#ff4fa7);box-shadow:0 12px 25px rgba(255,79,167,.25);border-radius:999px;padding:13px 22px;font-weight:900}.overlay-holo{background:linear-gradient(180deg,#76d8ff,#4f90ec)}.full-card-wrap.holo-disabled .rarity-glow,.full-card-wrap.holo-disabled .legendary-aura,.full-card-wrap.holo-disabled .full-card-glow{display:none}.full-card-wrap.holo-enabled.rarity-legendary .full-card-glow{box-shadow:0 0 30px rgba(255,209,64,.9),0 0 56px rgba(255,120,189,.55),inset 0 0 28px rgba(114,207,255,.45)}.full-card-wrap.holo-enabled.rarity-epic .full-card-glow{box-shadow:0 0 24px rgba(181,124,255,.65),inset 0 0 24px rgba(114,207,255,.34)}

/* better contact cards */
.social-links .link-card{display:grid;gap:5px;min-height:120px}.social-links .link-card span{font-size:2rem}.social-links .link-card b{font-size:1.15rem}.social-links .link-card small{color:var(--muted);font-weight:700;word-break:break-word}

@media (max-height:850px) and (min-width:1000px){.sidebar{gap:8px}.side-card{padding:10px}.logo{width:min(198px,100%)}.binder-ribbon{font-size:.9rem}.workarea{grid-template-columns:minmax(0,1fr) 300px}.binder-book{min-height:445px;padding:14px 20px}.binder-page{gap:8px}.preview-card{width:min(100%,215px)}.detail{font-size:.92rem}.description{font-size:.82rem;line-height:1.26}.btn{padding:9px 12px}.series-hero{min-height:55px}.topbar{min-height:52px}.nav a{padding:10px 12px}}
@media (max-width:1180px){.site{grid-template-columns:1fr}.sidebar{position:relative;height:auto;overflow:visible}.workarea{grid-template-columns:1fr}.detail{position:relative;top:auto;max-height:none}.binder-book{min-height:520px}.search{min-width:220px}}

/* V7: booster packs, reveal theater, cleaner holo, audio toggle, dynamic hero, favorites showcase */
.sfx-toggle{width:42px;height:42px;border-radius:999px;border:0;background:linear-gradient(180deg,#ffffff,#eaf6ff);box-shadow:0 8px 18px rgba(29,77,170,.14);color:var(--blue-deep,#12338f);font-weight:900;cursor:pointer}.sfx-toggle.on{background:linear-gradient(180deg,#ff96cf,#ff4fa7);color:#fff;box-shadow:0 10px 22px rgba(255,79,167,.26)}
.series-hero{align-items:center;background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(255,240,250,.64) 50%,rgba(224,245,255,.72));box-shadow:0 10px 30px rgba(67,116,209,.12)}
.series-hero .hero-copy{display:grid;gap:4px}.series-stats{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.hero-pill{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:5px 10px;background:rgba(255,255,255,.72);border:1px solid rgba(150,185,255,.35);font-size:.78rem;font-weight:900;color:#14348f}.hero-pill.progress{background:linear-gradient(90deg,rgba(255,137,203,.18),rgba(255,215,93,.22))}.hero-pill.epic{color:#743ad8}.hero-pill.legendary{color:#a86f00;background:linear-gradient(90deg,rgba(255,220,88,.28),rgba(255,255,255,.75))}
.booster-shelf{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:-3px}.booster-pack{position:relative;isolation:isolate;overflow:hidden;min-height:78px;text-align:left;border:1px solid rgba(255,255,255,.72);border-radius:20px;padding:14px 16px;color:#14348f;background:linear-gradient(135deg,#fff8fc,#e6f6ff 60%,#fff3c8);box-shadow:0 12px 30px rgba(34,86,190,.12);cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}.booster-pack:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(34,86,190,.18);filter:saturate(1.06)}.booster-pack b{display:block;font-size:1rem}.booster-pack small{display:block;margin-top:5px;color:#4a63aa;font-weight:800}.pack-spark{position:absolute;right:-18px;top:-20px;width:90px;height:90px;background:radial-gradient(circle,#fff 0 9%,transparent 10%),radial-gradient(circle at 50% 50%,rgba(255,76,167,.25),transparent 62%);filter:blur(.2px);animation:packSpark 3s ease-in-out infinite;z-index:-1}@keyframes packSpark{50%{transform:rotate(18deg) scale(1.1);opacity:.65}}
.binder-book.pack-open{animation:packOpen .8s ease both}@keyframes packOpen{0%{filter:brightness(1);transform:scale(1)}35%{filter:brightness(1.18) saturate(1.2);transform:scale(1.012)}100%{filter:brightness(1);transform:scale(1)}}
/* Replace jittery hover with clean sticker lift and spotlight */
.card-tile:hover .card-inner{transform:translateY(-7px) scale(1.035)!important;filter:drop-shadow(0 18px 18px rgba(35,78,185,.18)) drop-shadow(0 0 16px rgba(255,126,196,.18))}.card-tile:hover .face:after{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.34),transparent 38%);pointer-events:none;mix-blend-mode:screen}.tap-tilt .card-inner{animation:softBounce .42s ease}@keyframes softBounce{0%{transform:scale(1)}50%{transform:scale(1.07)}100%{transform:scale(1)}}
/* Cleaner holo language: Epic = soft prism, Legendary = celestial gold stage */
.rarity-epic .rarity-glow{opacity:.42;background:linear-gradient(110deg,transparent 0 32%,rgba(183,132,255,.24),rgba(255,255,255,.75),rgba(121,216,255,.22),transparent 62%);animation:cleanShine 5.2s ease-in-out infinite}.rarity-epic .face,.rarity-epic.collection-card{box-shadow:0 0 0 2px rgba(176,127,255,.58),0 10px 22px rgba(126,86,217,.16)}
.rarity-legendary .face,.rarity-legendary.collection-card{box-shadow:0 0 0 2px rgba(255,215,92,.96),0 0 20px rgba(255,205,68,.55),0 0 34px rgba(255,145,209,.22),0 18px 36px rgba(206,138,0,.25)}.rarity-legendary .rarity-glow{opacity:.86;background:linear-gradient(112deg,transparent 0 24%,rgba(255,255,255,.95),rgba(255,227,96,.88),rgba(255,255,255,.48),transparent 66%);animation:cleanShine 3.15s ease-in-out infinite}.rarity-legendary .legendary-aura{opacity:.95;background:radial-gradient(circle at 18% 25%,#fff 0 1.5px,transparent 2.6px),radial-gradient(circle at 82% 18%,#fff6a8 0 1.7px,transparent 3px),radial-gradient(circle at 70% 73%,#fff 0 1.5px,transparent 2.8px),radial-gradient(circle at 27% 78%,#ffd44f 0 1.5px,transparent 2.8px),linear-gradient(135deg,rgba(255,220,86,.09),rgba(255,127,201,.07),rgba(114,207,255,.07));animation:legendaryConstellation 4s linear infinite, legendaryPulse 2.7s ease-in-out infinite}@keyframes legendaryConstellation{to{background-position:18px -16px,-14px 12px,10px 18px,-10px -14px,0 0}}
/* Reveal theater */
#revealOverlay{position:fixed;inset:0;z-index:9999;display:none;place-items:center;background:rgba(22,22,58,.42);backdrop-filter:blur(10px)}#revealOverlay.open{display:grid}.reveal-stage{position:relative;display:grid;place-items:center;gap:12px;width:min(680px,92vw);min-height:min(760px,88vh);border-radius:34px;overflow:hidden;padding:32px;background:radial-gradient(circle at 50% 48%,rgba(255,255,255,.32),transparent 26%),radial-gradient(circle at 50% 58%,rgba(255,116,196,.25),transparent 34%),linear-gradient(135deg,rgba(85,155,255,.92),rgba(86,56,157,.92));box-shadow:0 28px 90px rgba(18,41,116,.45),inset 0 0 80px rgba(255,255,255,.18);color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.22)}.reveal-stage:before{content:'';position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.85) 0 1px,transparent 2px);background-size:42px 42px;animation:twinkle 4s ease-in-out infinite;opacity:.42}.reveal-card-wrap{position:relative;width:min(360px,62vw);aspect-ratio:2.5/3.5;perspective:1200px;z-index:2;filter:drop-shadow(0 22px 40px rgba(0,0,0,.36));animation:revealFloat 2.3s ease-in-out infinite}.reveal-card{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .88s cubic-bezier(.2,.8,.2,1)}.reveal-back .reveal-card{transform:rotateY(180deg)}.reveal-card-wrap.flip-now .reveal-card{transform:rotateY(0deg)}.reveal-card-wrap.charging{animation:revealShake .45s ease-in-out infinite}.reveal-card img{width:100%;height:100%;object-fit:cover;border-radius:24px;box-shadow:0 0 0 4px rgba(255,255,255,.5),0 0 26px rgba(255,255,255,.26)}.reveal-title{z-index:2;margin:0;font-size:clamp(1.6rem,4vw,2.5rem)}.reveal-sub{z-index:2;margin:0;font-weight:900}.reveal-skip{position:absolute;top:18px;right:18px;z-index:3;border:0;border-radius:999px;padding:11px 18px;background:linear-gradient(180deg,#ff8bca,#ff4fa7);color:#fff;font-weight:900;box-shadow:0 12px 28px rgba(255,79,167,.28);cursor:pointer}.reveal-orbit{position:absolute;inset:50% auto auto 50%;width:440px;height:440px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(255,255,255,.18);animation:orbitSpin 9s linear infinite}.reveal-orbit i{position:absolute;width:16px;height:16px;border-radius:50%;background:#fff4a2;box-shadow:0 0 18px #fff}.reveal-orbit i:nth-child(1){left:10%;top:48%}.reveal-orbit i:nth-child(2){right:18%;top:14%;background:#ff9bd3}.reveal-orbit i:nth-child(3){right:9%;bottom:24%;background:#8ee5ff}@keyframes revealFloat{50%{transform:translateY(-12px)}}@keyframes revealShake{0%,100%{transform:translateX(0) rotate(0)}25%{transform:translateX(-3px) rotate(-1deg)}75%{transform:translateX(3px) rotate(1deg)}}@keyframes orbitSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
/* Favorite showcase */
.favorite-showcase{min-height:220px;margin-bottom:16px;overflow:hidden}.favorite-stage{position:relative;display:flex;align-items:end;gap:clamp(10px,2vw,24px);min-height:280px;padding:28px 22px;border-radius:26px;background:radial-gradient(circle at 50% 10%,rgba(255,255,255,.82),transparent 28%),linear-gradient(135deg,rgba(255,196,226,.35),rgba(211,240,255,.45));overflow-x:auto}.fav-spot{flex:0 0 150px;border:0;background:transparent;color:#14348f;font-weight:900;cursor:pointer;transform:translateY(calc((var(--i) % 2) * -18px));transition:transform .22s ease,filter .22s ease}.fav-spot:hover{transform:translateY(-24px) scale(1.05)}.fav-spot img{width:100%;border-radius:16px;box-shadow:0 18px 35px rgba(28,72,168,.24)}.fav-spot span{display:block;margin-top:8px}.trophy-empty{width:100%;min-height:170px;background:linear-gradient(135deg,rgba(255,255,255,.76),rgba(255,238,248,.76));border-radius:22px;padding:24px;text-align:center}
/* Enhanced full-view holo toggle presentation */
.full-card-wrap.holo-enabled.rarity-legendary:before{content:'';position:absolute;inset:-32px;border-radius:38px;background:conic-gradient(from 0deg,transparent,rgba(255,224,86,.46),rgba(255,255,255,.62),rgba(255,112,199,.30),rgba(112,220,255,.30),transparent);filter:blur(16px);animation:spin 7s linear infinite;z-index:-1}.full-card-wrap.holo-enabled.rarity-epic:before{content:'';position:absolute;inset:-20px;border-radius:34px;background:linear-gradient(120deg,rgba(177,113,255,.28),rgba(255,255,255,.34),rgba(112,220,255,.24));filter:blur(14px);animation:cleanShine 5s ease-in-out infinite;z-index:-1}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-height:850px) and (min-width:1000px){.booster-shelf{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.booster-pack{min-height:62px;padding:10px 12px}.booster-pack small{font-size:.72rem}.series-stats{gap:4px}.hero-pill{font-size:.7rem;padding:4px 8px}.reveal-card-wrap{width:min(310px,56vw)}}

/* V8: series pack landing, epic reveal theater, cleaner favorites, tooltip modal */
.mode-tip{display:none!important}.help-dot{position:relative;z-index:5}.series-hero{overflow:visible!important}.starlight-mode{position:relative;z-index:20}.starlight-mode .toggle-pill{box-shadow:0 0 0 1px rgba(255,255,255,.75),0 8px 18px rgba(93,146,220,.18)}
#modeHelp{position:fixed;inset:0;z-index:9999;display:none;place-items:center;background:rgba(30,45,105,.28);backdrop-filter:blur(8px)}#modeHelp.open{display:grid}.mode-help-card{position:relative;width:min(460px,92vw);border-radius:28px;padding:28px;background:linear-gradient(145deg,#ffffff,#eaf8ff 52%,#ffe3f2);border:1px solid rgba(255,255,255,.95);box-shadow:0 30px 90px rgba(20,55,150,.32);color:var(--navy)}.mode-help-card h2{margin:0 0 12px;font-size:2rem}.mode-help-card p{line-height:1.55;color:#3158a4}.mode-help-close{position:absolute;top:12px;right:12px;width:42px;height:42px;border-radius:50%;border:0;background:linear-gradient(180deg,#ff8bca,#ff4fa7);color:#fff;font-weight:900;font-size:1.4rem;cursor:pointer}

body.series-select .workarea,body.series-select .binder-meta{display:none!important}body:not(.series-select) #seriesLanding{display:none!important}.series-landing{padding:20px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(234,248,255,.74) 45%,rgba(255,226,241,.78));box-shadow:0 18px 48px rgba(29,76,168,.16)}.series-landing-head{text-align:center;margin:4px auto 18px;max-width:760px}.series-landing-head h2{margin:.1rem 0;font-size:clamp(1.8rem,3.5vw,3.25rem);color:var(--navy);letter-spacing:.01em}.series-landing-head p{color:#3a61ab;font-weight:800}.series-pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.series-pack-card{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:130px 1fr;align-items:center;gap:16px;min-height:230px;text-align:left;border:1px solid rgba(255,255,255,.95);border-radius:30px;padding:18px;color:var(--navy);background:radial-gradient(circle at 80% 18%,rgba(255,215,96,.34),transparent 26%),linear-gradient(145deg,#fff,#e6f7ff 52%,#ffe3f4);box-shadow:0 20px 48px rgba(36,83,180,.16);cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}.series-pack-card:hover{transform:translateY(-6px) scale(1.012);box-shadow:0 26px 62px rgba(36,83,180,.24);filter:saturate(1.08)}.series-pack-card img{width:124px;height:auto;filter:drop-shadow(0 16px 20px rgba(55,51,130,.28));animation:packFloat 4.2s ease-in-out infinite}.series-pack-card b{display:block;font-size:1.45rem;margin-bottom:8px}.series-pack-card small{display:block;min-height:38px;color:#4867a7;font-weight:800;line-height:1.35}.series-pack-card em{display:block;margin-top:10px;font-style:normal;color:#e24b9f;font-weight:900}.open-pack-cta{display:inline-flex;width:max-content;margin-top:14px;padding:10px 16px;border-radius:999px;background:linear-gradient(180deg,#ff8bca,#ff4fa7);color:#fff;font-weight:900;box-shadow:0 10px 20px rgba(255,79,167,.22)}.pack-bg-sparkles{position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 18% 22%,rgba(255,255,255,.95) 0 2px,transparent 3px),radial-gradient(circle at 84% 30%,rgba(255,255,255,.85) 0 2px,transparent 3px),radial-gradient(circle at 70% 78%,rgba(255,215,96,.75) 0 2px,transparent 3px);animation:twinkle 3.5s ease-in-out infinite}@keyframes packFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1.5deg)}}
#backToSeries{display:inline-flex;margin-right:auto}.btn.soft{background:rgba(255,255,255,.74);color:#153893;border:1px solid rgba(122,171,255,.35)}
#packOverlay{position:fixed;inset:0;z-index:9998;display:none;place-items:center;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.20),rgba(30,25,100,.62));backdrop-filter:blur(10px)}#packOverlay.open{display:grid}.pack-open-stage{position:relative;display:grid;place-items:center;text-align:center;color:#fff;isolation:isolate}.pack-open-stage img{width:min(360px,64vw);filter:drop-shadow(0 30px 46px rgba(0,0,0,.34));animation:packOpenFloat 1.7s ease-in-out both}.pack-open-stage h2{font-size:clamp(1.8rem,4vw,3.2rem);margin:12px 0 0;text-shadow:0 3px 12px rgba(0,0,0,.28)}.pack-open-stage p{font-weight:900}.pack-light{position:absolute;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,#fff,rgba(255,217,97,.7),rgba(255,120,189,.18),transparent 70%);filter:blur(8px);animation:packLight 1.7s ease-in-out both;z-index:-1}.pack-open-stage.burst .pack-light{width:760px;height:760px}@keyframes packOpenFloat{0%{opacity:0;transform:translateY(40px) scale(.8) rotate(-8deg)}55%{opacity:1;transform:translateY(-10px) scale(1.04) rotate(4deg)}100%{transform:translateY(0) scale(.96) rotate(0)}}@keyframes packLight{0%{transform:scale(.4);opacity:.25}75%{transform:scale(3.8);opacity:.9}100%{transform:scale(5);opacity:.2}}

/* cleaner binder hover: lift, glow, tiny sparkle; no awkward 3D tilt */
.card-tile{transform:none!important;transition:transform .18s ease,filter .18s ease,box-shadow .18s ease}.card-tile:hover{transform:translateY(-5px) scale(1.025)!important;filter:saturate(1.08) brightness(1.03)}.card-tile:hover .face{box-shadow:0 12px 28px rgba(35,81,180,.22),0 0 0 2px rgba(255,255,255,.82)}.card-tile:hover:after{content:'✨';position:absolute;right:7px;top:5px;font-size:1.05rem;animation:sparkPop .7s ease both;z-index:4}@keyframes sparkPop{0%{transform:scale(.2) rotate(-15deg);opacity:0}55%{opacity:1}100%{transform:scale(1.05) rotate(10deg);opacity:.8}}
.tiny-reveal{font-size:.88rem;padding:9px 10px;border-radius:999px;background:linear-gradient(180deg,#fff,#eaf6ff);border:1px solid rgba(122,171,255,.35);color:#14348f;font-weight:900;box-shadow:0 8px 16px rgba(70,105,190,.12);transition:transform .18s ease, box-shadow .18s ease}.tiny-reveal:hover{transform:translateY(-2px) scale(1.04);box-shadow:0 10px 20px rgba(255,79,167,.24),0 0 0 3px rgba(255,137,203,.22)}.is-hidden .tiny-reveal{background:linear-gradient(180deg,#ff8bca,#ff4fa7);color:#fff;animation:revealPulse 2.2s ease-in-out infinite}@keyframes revealPulse{50%{box-shadow:0 0 0 6px rgba(255,120,189,.14),0 10px 24px rgba(255,79,167,.25)}}

/* Cleaner holo: Epic soft prism, Legendary celestial gold starfield */
.rarity-epic .rarity-glow{opacity:.36;background:linear-gradient(115deg,transparent 0 34%,rgba(204,162,255,.18),rgba(255,255,255,.62),rgba(148,225,255,.18),transparent 62%);animation:cleanShine 5.8s ease-in-out infinite}.rarity-epic .face,.rarity-epic.collection-card,.rarity-epic.fav-spot{box-shadow:0 0 0 2px rgba(170,130,255,.42),0 10px 26px rgba(126,86,217,.13)}.rarity-legendary .rarity-glow{opacity:.92;background:linear-gradient(108deg,transparent 0 22%,rgba(255,255,255,.96),rgba(255,225,86,.92),rgba(255,255,255,.62),transparent 64%);animation:cleanShine 3.4s ease-in-out infinite}.rarity-legendary .face,.rarity-legendary.collection-card,.rarity-legendary.fav-spot{box-shadow:0 0 0 2px rgba(255,218,77,.98),0 0 12px rgba(255,223,96,.72),0 0 28px rgba(255,164,212,.25),0 16px 34px rgba(211,143,0,.22)}.rarity-legendary .legendary-aura{opacity:.95;background:radial-gradient(circle at 13% 23%,#fff 0 1.5px,transparent 2.8px),radial-gradient(circle at 30% 78%,#ffe26d 0 1.6px,transparent 3px),radial-gradient(circle at 82% 30%,#fff 0 1.4px,transparent 2.8px),radial-gradient(circle at 66% 68%,#fff4ac 0 1.5px,transparent 3px),linear-gradient(140deg,rgba(255,225,87,.10),rgba(255,132,204,.055),rgba(114,207,255,.07));animation:legendaryConstellation 7s linear infinite, legendaryPulse 3.1s ease-in-out infinite}.full-card-wrap.holo-enabled.rarity-legendary:before{background:conic-gradient(from 0deg,transparent,rgba(255,232,99,.58),rgba(255,255,255,.68),rgba(255,168,217,.23),rgba(255,232,99,.46),transparent);filter:blur(17px);animation:spin 8s linear infinite}.full-card-wrap.holo-enabled.rarity-epic:before{background:linear-gradient(120deg,rgba(174,121,255,.20),rgba(255,255,255,.28),rgba(112,220,255,.20));filter:blur(13px)}

/* Longer reveal stage */
#revealOverlay{position:fixed;inset:0;z-index:10000;display:none;place-items:center;background:radial-gradient(circle at 50% 50%,rgba(255,246,255,.10),rgba(16,20,80,.72));backdrop-filter:blur(12px)}#revealOverlay.open{display:grid}.epic-reveal{position:relative;display:grid;place-items:center;text-align:center;isolation:isolate;color:#fff}.reveal-card-wrap{width:min(385px,62vw);perspective:1200px;filter:drop-shadow(0 28px 38px rgba(0,0,0,.34));transition:transform .55s ease}.reveal-card{position:relative;aspect-ratio:2.5/3.5;transform-style:preserve-3d;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.reveal-card .face{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden}.reveal-card .back{transform:rotateY(0deg)}.reveal-card .front{transform:rotateY(180deg)}.reveal-card-wrap.flip-now .reveal-card{transform:rotateY(180deg)}.reveal-card-wrap.charging{transform:scale(1.05)}.reveal-card-wrap.super-charged{transform:scale(1.12);animation:revealShake .5s ease-in-out 2}.reveal-orbit{position:absolute;width:min(560px,82vw);aspect-ratio:1;border-radius:50%;border:2px dashed rgba(255,255,255,.35);animation:spin 8s linear infinite;z-index:-1}.reveal-orbit i,.reveal-bg-stars i{position:absolute;width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 22px #fff,0 0 36px #ff89c8}.reveal-orbit i:nth-child(1){left:50%;top:-5px}.reveal-orbit i:nth-child(2){right:8%;bottom:18%}.reveal-orbit i:nth-child(3){left:12%;bottom:22%}.reveal-bg-stars{position:absolute;inset:-160px;z-index:-2;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 65%);animation:twinkle 2.6s ease-in-out infinite}.reveal-bg-stars i:nth-child(1){left:5%;top:20%;animation:floatStar 3s ease-in-out infinite}.reveal-bg-stars i:nth-child(2){left:82%;top:18%;animation:floatStar 3.4s ease-in-out infinite}.reveal-bg-stars i:nth-child(3){left:72%;top:76%;animation:floatStar 2.9s ease-in-out infinite}.reveal-bg-stars i:nth-child(4){left:20%;top:82%;animation:floatStar 3.6s ease-in-out infinite}.reveal-title{font-size:clamp(1.55rem,4vw,3rem);margin:18px 0 0;text-shadow:0 3px 18px rgba(0,0,0,.32)}.reveal-sub{font-weight:900;color:#ffe2f1}.reveal-skip{position:fixed;top:22px;right:22px;border:0;border-radius:999px;background:linear-gradient(180deg,#ff8bca,#ff4fa7);color:#fff;font-weight:900;padding:13px 22px;box-shadow:0 15px 30px rgba(255,79,167,.28);cursor:pointer}@keyframes revealShake{25%{transform:scale(1.12) rotate(-1.2deg)}75%{transform:scale(1.12) rotate(1.2deg)}}@keyframes floatStar{50%{transform:translateY(-16px) scale(1.25);opacity:.7}}

/* Collection favorites: horizontal only */
.hidden-favorite-grid{display:none!important}.favorite-showcase{overflow:hidden;padding:20px}.favorite-carousel-head{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:14px}.favorite-carousel-head h2{margin:0;font-size:clamp(1.35rem,2.5vw,2.1rem)}.favorite-carousel-head p{margin:0;color:#4a63aa;font-weight:800}.favorite-carousel{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 4px 18px}.fav-spot{flex:0 0 170px;scroll-snap-align:start;position:relative;border:0;border-radius:22px;background:linear-gradient(145deg,#fff,#eaf8ff 65%,#ffe4f2);padding:12px;color:#14348f;font-weight:900;box-shadow:0 14px 32px rgba(34,86,190,.13);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.fav-spot:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(34,86,190,.22)}.fav-spot img{width:100%;border-radius:14px;display:block;margin-bottom:8px}.fav-spot span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grid-page.empty-grid{display:block}.empty-state{max-width:none;width:100%;text-align:center;padding:26px;border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.82),rgba(234,248,255,.72));border:1px solid rgba(255,255,255,.8)}

/* make page fit a little tighter on desktop */
@media(min-width:1100px){.workarea{grid-template-columns:minmax(0,1fr) 320px}.binder-book{min-height:min(52vh,450px)}.detail{max-height:calc(100dvh - 86px)}.preview-card{width:min(100%,232px)}.series-hero{min-height:54px;padding:9px 15px}.series-hero h1{font-size:clamp(1.25rem,2vw,1.65rem)}.series-hero p{font-size:.82rem}.sidebar{width:100%}.side-card{padding:10px}.filters{font-size:.88rem}.logo{width:min(205px,100%)}}
@media(max-width:900px){body.series-select .workarea{display:none!important}.series-pack-card{grid-template-columns:95px 1fr}.series-pack-card img{width:92px}.series-pack-card b{font-size:1.2rem}}

/* V9 clean-up: simpler, stable, prettier card motion and reveal flow */
.card-tile,
.card-tile:hover,
.card-tile:focus-visible {
  transform: none !important;
}
.card-inner,
.card-tile:hover .card-inner,
.card-tile.tap-tilt .card-inner {
  transform: none !important;
  transition: filter .22s ease, box-shadow .22s ease !important;
}
.card-tile:hover .card-inner {
  filter: brightness(1.045) saturate(1.06) drop-shadow(0 12px 18px rgba(21, 91, 216, .18)) !important;
}
.card-tile:hover .face {
  box-shadow: 0 0 0 2px rgba(255,255,255,.92), 0 0 16px rgba(255,120,189,.22), 0 8px 20px rgba(21,91,216,.16) !important;
}
.card-tile:hover:after {
  content: '' !important;
  position: absolute;
  inset: -5px;
  border-radius: 18px;
  background: linear-gradient(115deg, transparent 0 28%, rgba(255,255,255,.44), transparent 58%);
  pointer-events: none;
  transform: translateX(-120%);
  animation: v9CardSweep 1.05s ease both;
  z-index: 3;
}
@keyframes v9CardSweep { to { transform: translateX(120%); } }

/* Keep reveal buttons anchored. They glow instead of jumping away. */
.tiny-reveal,
.tiny-reveal:hover {
  bottom: 9px !important;
  transform: translateX(-50%) !important;
}
.tiny-reveal {
  min-width: 92px;
  padding: 10px 16px !important;
  border: 2px solid rgba(255,255,255,.72) !important;
  background: linear-gradient(180deg,#ff9bd1,#ff43a5) !important;
  box-shadow: 0 8px 18px rgba(255,79,167,.25), 0 0 0 0 rgba(255,120,189,.0) !important;
}
.tiny-reveal:hover,
.tiny-reveal:focus-visible {
  box-shadow: 0 0 0 6px rgba(255,120,189,.18), 0 10px 24px rgba(255,79,167,.35), 0 0 18px rgba(255,255,255,.8) !important;
  filter: brightness(1.06) saturate(1.08);
}
.is-hidden .tiny-reveal {
  animation: v9RevealButtonPulse 2.4s ease-in-out infinite;
}
@keyframes v9RevealButtonPulse {
  50% { box-shadow: 0 0 0 7px rgba(255,120,189,.14), 0 10px 25px rgba(255,79,167,.30), 0 0 24px rgba(255,255,255,.58); }
}

/* Binder card faces: front face is always the visible image/back image chosen by JS. */
.card-tile .front { transform: none !important; z-index: 1; }
.card-tile .back { display: none !important; }

/* Cleaner holo effects */
.rarity-epic .rarity-glow {
  opacity: .34 !important;
  background: linear-gradient(112deg, transparent 0 34%, rgba(171,121,255,.18), rgba(255,255,255,.62), rgba(114,207,255,.18), transparent 66%) !important;
  animation: cleanShine 6.2s ease-in-out infinite !important;
}
.rarity-epic .face,
.rarity-epic.collection-card,
.rarity-epic.fav-spot {
  box-shadow: 0 0 0 2px rgba(171,121,255,.40), 0 10px 24px rgba(125,96,220,.12) !important;
}
.rarity-legendary .rarity-glow {
  opacity: .78 !important;
  background: linear-gradient(112deg, transparent 0 22%, rgba(255,255,255,.92), rgba(255,232,102,.78), rgba(255,255,255,.44), transparent 68%) !important;
  animation: cleanShine 3.6s ease-in-out infinite !important;
}
.rarity-legendary .face,
.rarity-legendary.collection-card,
.rarity-legendary.fav-spot {
  box-shadow: 0 0 0 2px rgba(255,218,77,.96), 0 0 14px rgba(255,223,96,.62), 0 0 32px rgba(255,171,215,.20), 0 15px 30px rgba(206,138,0,.20) !important;
}
.rarity-legendary .legendary-aura {
  opacity: .82 !important;
  background:
    radial-gradient(circle at 18% 25%, #fff 0 1.4px, transparent 2.6px),
    radial-gradient(circle at 80% 18%, #fff5a9 0 1.7px, transparent 3px),
    radial-gradient(circle at 70% 72%, #fff 0 1.4px, transparent 2.8px),
    radial-gradient(circle at 27% 78%, #ffd44f 0 1.5px, transparent 2.8px),
    linear-gradient(135deg, rgba(255,220,86,.08), rgba(255,127,201,.045), rgba(114,207,255,.055)) !important;
  animation: legendaryConstellation 8s linear infinite, legendaryPulse 3.4s ease-in-out infinite !important;
}

/* V9 clean reveal overlay */
#revealOverlay.open.clean-open {
  display: grid !important;
  place-items: center;
  background:
    radial-gradient(circle at 50% 48%, rgba(255,246,255,.22), transparent 30%),
    radial-gradient(circle at 50% 65%, rgba(255,120,189,.18), transparent 36%),
    rgba(8, 20, 72, .72) !important;
  backdrop-filter: blur(10px);
}
.reveal-clean {
  position: relative;
  width: min(560px, 92vw);
  min-height: min(720px, 90vh);
  display: grid;
  place-items: center;
  align-content: center;
  gap: 18px;
  text-align: center;
  color: white;
  border-radius: 34px;
  overflow: hidden;
  padding: 28px 24px;
  background:
    radial-gradient(circle at 50% 50%, rgba(255,255,255,.22), transparent 28%),
    linear-gradient(145deg, rgba(75,151,255,.92), rgba(106,74,184,.92) 54%, rgba(255,126,196,.78));
  border: 2px solid rgba(255,255,255,.62);
  box-shadow: 0 28px 90px rgba(5, 20, 72, .42), inset 0 0 80px rgba(255,255,255,.15);
  isolation: isolate;
}
.reveal-clean:before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, rgba(255,255,255,.82) 0 1.4px, transparent 2.5px);
  background-size: 54px 54px;
  opacity: .32;
  animation: twinkle 5.5s ease-in-out infinite;
  z-index: -2;
}
.reveal-clean:after {
  content: '';
  position: absolute;
  width: 420px;
  height: 420px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.26), rgba(255,207,241,.18) 36%, transparent 68%);
  filter: blur(6px);
  z-index: -1;
  transform: scale(.75);
  opacity: .55;
  transition: transform .55s ease, opacity .55s ease;
}
.reveal-clean.phase-charge:after { transform: scale(1); opacity: .82; }
.reveal-clean.phase-burst:after { transform: scale(1.18); opacity: 1; }
.reveal-clean-skip {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 4;
  border: 0;
  border-radius: 999px;
  padding: 11px 18px;
  background: linear-gradient(180deg, #ff9bd1, #ff43a5);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 12px 26px rgba(255,79,167,.26);
}
.reveal-clean-card {
  position: relative;
  width: min(330px, 62vw);
  aspect-ratio: 2.5 / 3.5;
  perspective: 1100px;
  filter: drop-shadow(0 25px 34px rgba(0,0,0,.34));
  animation: v9RevealFloat 2.8s ease-in-out infinite;
}
.reveal-clean-card.charge { animation: v9RevealFloat 2.8s ease-in-out infinite, v9CardCharge .85s ease-in-out infinite; }
.reveal-clean-card.burst { animation: v9RevealFloat 2.8s ease-in-out infinite, v9CleanBurst .7s ease both; }
.reveal-clean-inner {
  position: absolute;
  inset: 0;
  transform-style: preserve-3d;
  transition: transform 1s cubic-bezier(.2,.75,.18,1);
}
.reveal-clean-card.flipped .reveal-clean-inner { transform: rotateY(180deg); }
.reveal-clean-face {
  position: absolute;
  inset: 0;
  border-radius: 24px;
  overflow: hidden;
  backface-visibility: hidden;
  box-shadow: 0 0 0 4px rgba(255,255,255,.42), 0 0 28px rgba(255,255,255,.24);
}
.reveal-clean-face img { width: 100%; height: 100%; object-fit: cover; display: block; }
.reveal-clean-front { transform: rotateY(180deg); }
.reveal-clean-copy { position: relative; z-index: 2; }
.reveal-clean-title {
  margin: 0;
  font-size: clamp(1.5rem, 4vw, 2.5rem);
  line-height: 1.02;
  text-shadow: 0 3px 18px rgba(0,0,0,.26);
}
.reveal-clean-sub {
  margin: 8px 0 0;
  color: #ffe7f4;
  font-weight: 900;
  text-shadow: 0 2px 10px rgba(0,0,0,.18);
}
.reveal-clean-stars span {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 18px #fff, 0 0 30px #ff8ac8;
  opacity: .85;
  animation: v9StarDrift 3.2s ease-in-out infinite;
}
.reveal-clean-stars span:nth-child(1){left:12%;top:22%;animation-delay:.1s}
.reveal-clean-stars span:nth-child(2){right:15%;top:18%;animation-delay:.4s;background:#ffe983}
.reveal-clean-stars span:nth-child(3){left:18%;bottom:25%;animation-delay:.8s;background:#8ee5ff}
.reveal-clean-stars span:nth-child(4){right:18%;bottom:28%;animation-delay:1.1s;background:#ff9bd1}
.reveal-clean-stars span:nth-child(5){left:50%;top:12%;animation-delay:1.4s;background:#fff6b9}
.reveal-clean.rarity-legendary .reveal-clean-card:before {
  content: '';
  position: absolute;
  inset: -28px;
  border-radius: 34px;
  background: conic-gradient(from 0deg, transparent, rgba(255,232,99,.56), rgba(255,255,255,.72), rgba(255,169,215,.24), rgba(255,232,99,.48), transparent);
  filter: blur(18px);
  animation: spin 7.5s linear infinite;
  z-index: -1;
}
.reveal-clean.rarity-epic .reveal-clean-card:before {
  content: '';
  position: absolute;
  inset: -18px;
  border-radius: 30px;
  background: linear-gradient(120deg, rgba(174,121,255,.22), rgba(255,255,255,.32), rgba(112,220,255,.22));
  filter: blur(14px);
  animation: cleanShine 5.8s ease-in-out infinite;
  z-index: -1;
}
@keyframes v9RevealFloat { 50% { transform: translateY(-9px); } }
@keyframes v9CardCharge { 50% { filter: drop-shadow(0 0 28px rgba(255,255,255,.82)); transform: scale(1.025); } }
@keyframes v9CleanBurst { 0%{transform:scale(1)} 48%{transform:scale(1.08); filter:drop-shadow(0 0 34px rgba(255,225,117,.95))} 100%{transform:scale(1)} }
@keyframes v9StarDrift { 50% { transform: translateY(-14px) scale(1.24); opacity: .55; } }

@media (max-height: 820px) and (min-width: 1000px) {
  .reveal-clean { min-height: min(620px, 90vh); padding: 22px; }
  .reveal-clean-card { width: min(290px, 56vw); }
}

/* V10 reveal refinements: slower, cleaner, click-to-skip, X-to-close */
#revealOverlay.open.clean-open {
  display: grid !important;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.28), transparent 24%),
    radial-gradient(circle at 50% 64%, rgba(255,120,189,.20), transparent 34%),
    radial-gradient(circle at 18% 20%, rgba(114,207,255,.24), transparent 30%),
    linear-gradient(135deg, rgba(17,48,140,.70), rgba(96,64,184,.62) 55%, rgba(255,129,198,.40)) !important;
  backdrop-filter: blur(13px) saturate(1.16);
}
.reveal-clean {
  width: min(660px, 94vw) !important;
  min-height: min(790px, 94vh) !important;
  gap: 22px !important;
  padding: 42px 28px 34px !important;
  border-radius: 38px !important;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.28), transparent 28%),
    radial-gradient(circle at 50% 62%, rgba(255,228,126,.16), transparent 34%),
    linear-gradient(145deg, rgba(72,168,255,.56), rgba(109,78,194,.62) 50%, rgba(255,118,190,.50)) !important;
  border: 2px solid rgba(255,255,255,.72) !important;
  box-shadow: 0 30px 95px rgba(5,20,72,.38), inset 0 0 92px rgba(255,255,255,.16) !important;
}
.reveal-clean:before {
  background-image:
    radial-gradient(circle, rgba(255,255,255,.95) 0 1.5px, transparent 2.8px),
    radial-gradient(circle, rgba(255,222,108,.8) 0 1px, transparent 2.5px) !important;
  background-size: 62px 62px, 96px 96px !important;
  opacity: .42 !important;
  animation: revealStarPan 9s linear infinite !important;
}
.reveal-clean:after {
  width: 500px !important;
  height: 500px !important;
  background: radial-gradient(circle, rgba(255,255,255,.50), rgba(255,231,246,.24) 34%, rgba(255,209,91,.10), transparent 70%) !important;
  filter: blur(10px) !important;
}
.reveal-clean-close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 6;
  width: 50px;
  height: 50px;
  border: 0;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(180deg,#ff9bd1,#ff43a5);
  color: #fff;
  font-size: 2rem;
  line-height: 1;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(255,79,167,.30), inset 0 1px 0 rgba(255,255,255,.48);
}
.reveal-clean-close:hover { transform: scale(1.06); filter: brightness(1.08); }
.reveal-clean-skip { display: none !important; }
.reveal-clean-card {
  width: min(355px, 64vw) !important;
  animation: v10CardFloat 3.8s ease-in-out infinite !important;
  filter: drop-shadow(0 30px 42px rgba(13,24,92,.36)) !important;
}
.reveal-clean-card.charge {
  animation: v10CardFloat 3.8s ease-in-out infinite, v10ChargePulse 1.15s ease-in-out infinite !important;
}
.reveal-clean-card.burst {
  animation: v10CardFloat 3.8s ease-in-out infinite, v10MagicBurst 1.25s ease both !important;
}
.reveal-clean-card.revealed {
  animation: v10CardFloat 3.8s ease-in-out infinite !important;
}
.reveal-clean-inner { transition: transform 1.25s cubic-bezier(.18,.82,.16,1) !important; }
.reveal-clean-face {
  border-radius: 26px !important;
  box-shadow: 0 0 0 4px rgba(255,255,255,.52), 0 0 34px rgba(255,255,255,.24), 0 28px 60px rgba(0,0,0,.26) !important;
}
.reveal-clean-title {
  max-width: 620px;
  margin: 0 auto !important;
  color: #fff;
  font-size: clamp(1.85rem, 5.2vw, 3.45rem) !important;
  letter-spacing: .02em;
  text-shadow: 0 3px 14px rgba(5,20,72,.34), 0 0 28px rgba(255,120,189,.42) !important;
}
.reveal-clean-copy .eyebrow,
.reveal-clean-sub { display: none !important; }
.reveal-magic-bg span {
  position: absolute;
  inset: auto;
  width: 210px;
  height: 210px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.28), rgba(255,120,189,.13), transparent 70%);
  filter: blur(10px);
  animation: revealOrb 5s ease-in-out infinite;
  pointer-events: none;
}
.reveal-magic-bg span:nth-child(1){left:3%;top:18%;animation-delay:.1s}
.reveal-magic-bg span:nth-child(2){right:4%;top:24%;background:radial-gradient(circle,rgba(255,232,105,.24),rgba(114,207,255,.14),transparent 70%);animation-delay:1s}
.reveal-magic-bg span:nth-child(3){left:34%;bottom:3%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,120,189,.17),transparent 72%);animation-delay:2s}
.reveal-clean-stars span {
  width: 9px !important;
  height: 9px !important;
  box-shadow: 0 0 16px #fff, 0 0 34px #ff8ac8 !important;
  animation: v10StarRise 4.8s ease-in-out infinite !important;
}
.reveal-clean-stars span:nth-child(6){left:72%;top:56%;animation-delay:1.7s;background:#fff6b9}
.reveal-clean-stars span:nth-child(7){left:30%;top:52%;animation-delay:2.1s;background:#9eeeff}
.reveal-clean.phase-charge .reveal-clean-title { animation: v10TitleGlow 1.15s ease-in-out infinite; }
.reveal-clean.phase-burst .reveal-clean-title { animation: v10ReleasePop 1.2s ease both; }
.reveal-clean.phase-revealed .reveal-clean-title { animation: v10TitleGlow 2.6s ease-in-out infinite; }
.reveal-clean.rarity-legendary .reveal-clean-card:before {
  inset: -36px !important;
  border-radius: 42px !important;
  background: conic-gradient(from 0deg, transparent, rgba(255,232,99,.66), rgba(255,255,255,.90), rgba(114,207,255,.34), rgba(255,120,189,.30), rgba(255,232,99,.66), transparent) !important;
  filter: blur(22px) !important;
  animation: spin 8.5s linear infinite !important;
}
.reveal-clean.rarity-epic .reveal-clean-card:before {
  inset: -24px !important;
  border-radius: 36px !important;
  background: linear-gradient(120deg, rgba(174,121,255,.34), rgba(255,255,255,.34), rgba(112,220,255,.28), rgba(255,149,210,.24)) !important;
  filter: blur(18px) !important;
  animation: cleanShine 5.8s ease-in-out infinite !important;
}
#revealOverlay.is-finished .reveal-clean { cursor: default; }
#revealOverlay.is-animating .reveal-clean { cursor: pointer; }
@keyframes revealStarPan { from{background-position:0 0, 0 0} to{background-position:0 -124px, 96px -96px} }
@keyframes v10CardFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-12px)} }
@keyframes v10ChargePulse { 50%{filter:drop-shadow(0 0 36px rgba(255,255,255,.95)) drop-shadow(0 0 26px rgba(255,120,189,.55)); transform:scale(1.025)} }
@keyframes v10MagicBurst { 0%{transform:scale(1)} 40%{transform:scale(1.075); filter:drop-shadow(0 0 48px rgba(255,236,122,.96))} 100%{transform:scale(1)} }
@keyframes v10StarRise { 0%,100%{transform:translateY(0) scale(1);opacity:.78} 50%{transform:translateY(-22px) scale(1.25);opacity:.42} }
@keyframes revealOrb { 50%{transform:translateY(-18px) scale(1.12);opacity:.65} }
@keyframes v10TitleGlow { 50%{filter:drop-shadow(0 0 18px rgba(255,255,255,.72))} }
@keyframes v10ReleasePop { 0%{transform:scale(.96);opacity:.9} 42%{transform:scale(1.065);filter:drop-shadow(0 0 18px rgba(255,255,255,.85))} 100%{transform:scale(1);opacity:1} }
@media (max-height: 820px) and (min-width: 1000px) {
  .reveal-clean { min-height: min(680px, 92vh) !important; padding: 34px 22px 26px !important; }
  .reveal-clean-card { width: min(310px, 56vw) !important; }
}

/* V11 polish: navigation labels, reveal presentation, binder spacing */
.binder-meta{
  display:flex!important;
  align-items:center;
  gap:18px!important;
  flex-wrap:wrap;
  padding:0 2px 8px!important;
}

/* Magical-girl reveal: fade/transform instead of hard flip */
.reveal-clean{
  width:min(690px,94vw)!important;
  min-height:min(820px,94vh)!important;
}
.reveal-clean-title{
  white-space:nowrap!important;
  font-size:clamp(1rem,3.4vw,1.7rem)!important;
  letter-spacing:.01em!important;
  margin-top:2px!important;
  text-align:center!important;
}
.reveal-clean-inner{
  transform:none!important;
  transition:none!important;
}
.reveal-clean-face{
  transition:opacity 1.25s ease, transform 1.25s cubic-bezier(.2,.9,.15,1), filter 1.25s ease!important;
}
.reveal-clean-back{
  opacity:1;
  transform:scale(1) rotate(0deg)!important;
}
.reveal-clean-front{
  transform:scale(.88) rotate(-2deg)!important;
  opacity:0;
  filter:blur(12px) brightness(1.45) saturate(1.2);
}
.reveal-clean-card.flipped .reveal-clean-back{
  opacity:0;
  transform:scale(1.12) rotate(2deg)!important;
  filter:blur(10px) brightness(1.6);
}
.reveal-clean-card.flipped .reveal-clean-front{
  opacity:1;
  transform:scale(1) rotate(0deg)!important;
  filter:none;
}
.reveal-clean.phase-burst .reveal-clean-card::after{
  content:'';
  position:absolute;
  inset:-46px;
  border-radius:42px;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 50%,rgba(255,255,255,.95),rgba(255,236,148,.55) 18%,rgba(255,121,198,.28) 36%,transparent 62%),
    conic-gradient(from 180deg,transparent,rgba(255,255,255,.9),rgba(134,221,255,.55),rgba(255,158,214,.58),transparent);
  mix-blend-mode:screen;
  animation:v11MagicBloom 1.45s ease both;
  z-index:4;
}
.reveal-card-info{
  display:none;
  width:min(560px,90vw);
  margin:12px auto 0;
  padding:15px 18px;
  border-radius:22px;
  color:#14348f;
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(234,248,255,.78),rgba(255,228,242,.72));
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 18px 44px rgba(10,35,110,.20);
  text-align:left;
}
.reveal-card-info h3{
  margin:0 0 8px;
  font-size:clamp(1.25rem,3vw,1.85rem);
  color:#0b3193;
}
.reveal-card-info p{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin:5px 0;
  color:#3158a4;
  font-weight:800;
}
.reveal-card-info .description{
  display:block;
  margin-top:10px;
  line-height:1.35;
}
#revealOverlay.is-finished .reveal-card-info{
  display:block;
  animation:v11InfoIn .45s ease both;
}
#revealOverlay.is-finished .reveal-clean-title{
  opacity:.9;
  font-size:clamp(.92rem,2.4vw,1.22rem)!important;
}
@keyframes v11MagicBloom{
  0%{opacity:0;transform:scale(.45) rotate(0deg);filter:blur(14px)}
  45%{opacity:1;transform:scale(1.08) rotate(45deg);filter:blur(2px)}
  100%{opacity:0;transform:scale(1.35) rotate(90deg);filter:blur(20px)}
}
@keyframes v11InfoIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

@media(max-height:820px) and (min-width:1000px){
  .reveal-clean{min-height:min(730px,94vh)!important;padding:30px 22px 24px!important;gap:14px!important}
  .reveal-clean-card{width:min(300px,52vw)!important}
  .reveal-card-info{font-size:.88rem;padding:12px 15px}
}

/* V12 clean reveal + holographic column support */
.reveal-clean-title{
  font-size:clamp(1rem,2.2vw,1.55rem)!important;
  white-space:nowrap!important;
  letter-spacing:.04em!important;
  margin-top:8px!important;
}
.reveal-card-info{
  margin-top:8px!important;
  display:grid!important;
  place-items:center!important;
  gap:2px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .55s ease, transform .55s ease;
}
.reveal-card-info h3{margin:0!important;font-size:clamp(1.25rem,3vw,2rem)!important;color:#fff!important;text-shadow:0 3px 18px rgba(235,84,174,.55),0 0 10px rgba(255,255,255,.75)}
.reveal-card-info p{margin:0!important;font-weight:900!important;color:#fff7ff!important;text-shadow:0 2px 10px rgba(34,67,152,.45)}
#revealOverlay.is-finished .reveal-card-info{opacity:1;transform:translateY(0)}

/* Magical girl reveal: crossfade bloom instead of mechanical flip */
.reveal-clean-inner{transform:none!important;transition:none!important;}
.reveal-clean-face{backface-visibility:visible!important;transform:none!important;transition:opacity .85s ease, filter .85s ease, transform .85s cubic-bezier(.18,.82,.16,1)!important;}
.reveal-clean-back{opacity:1;filter:brightness(.9) saturate(1.05);}
.reveal-clean-front{opacity:0;transform:scale(.96)!important;filter:brightness(1.55) blur(8px) saturate(1.25);}
.reveal-clean-card.flipped .reveal-clean-back{opacity:0;transform:scale(1.04)!important;filter:brightness(2.3) blur(16px);}
.reveal-clean-card.flipped .reveal-clean-front{opacity:1;transform:scale(1)!important;filter:brightness(1) blur(0) saturate(1.05);}
.reveal-clean.phase-burst .reveal-clean-card{animation:v12RevealBloom .95s ease both!important;}
@keyframes v12RevealBloom{0%{transform:scale(1)}35%{transform:scale(1.08);filter:brightness(1.45) saturate(1.3)}100%{transform:scale(1);filter:brightness(1)}}

/* Distinct rarity reveal flavors */
.reveal-clean.rarity-common:before{background:radial-gradient(circle,rgba(150,219,255,.42),transparent 58%)!important;}
.reveal-clean.rarity-uncommon:before{background:radial-gradient(circle,rgba(128,255,205,.42),transparent 58%)!important;}
.reveal-clean.rarity-rare:before{background:radial-gradient(circle,rgba(120,174,255,.52),transparent 58%)!important;}
.reveal-clean.rarity-epic:before{background:radial-gradient(circle,rgba(198,135,255,.54),transparent 58%)!important;}
.reveal-clean.rarity-legendary:before{background:radial-gradient(circle,rgba(255,224,87,.72),rgba(255,142,211,.28),transparent 64%)!important;}
.reveal-clean.rarity-common .reveal-clean-stars span{background:#8ee5ff!important;box-shadow:0 0 16px #8ee5ff!important;}
.reveal-clean.rarity-uncommon .reveal-clean-stars span{background:#8effcf!important;box-shadow:0 0 16px #8effcf!important;}
.reveal-clean.rarity-rare .reveal-clean-stars span{background:#80adff!important;box-shadow:0 0 18px #80adff!important;}
.reveal-clean.rarity-epic .reveal-clean-stars span{background:#d9a2ff!important;box-shadow:0 0 20px #d9a2ff!important;}
.reveal-clean.rarity-legendary .reveal-clean-stars span{background:#ffe16b!important;box-shadow:0 0 24px #ffe16b!important;}

/* Holographic column: default holo clean, Legendary intense rainbow */
.is-holographic .rarity-glow,
.full-card-wrap.holo-enabled.is-holographic .rarity-glow,
.preview-card.is-holographic .rarity-glow,
.card-tile .front .rarity-glow{
  opacity:.5;
  background:linear-gradient(115deg,transparent 0 30%,rgba(255,255,255,.6),rgba(128,225,255,.25),rgba(255,157,213,.25),transparent 68%);
  animation:cleanShine 4.6s ease-in-out infinite;
}
.rarity-legendary.is-holographic .rarity-glow,
.full-card-wrap.holo-enabled.rarity-legendary .rarity-glow,
.preview-card.rarity-legendary .rarity-glow{
  opacity:.95!important;
  background:linear-gradient(112deg,transparent 0 18%,rgba(255,59,190,.75),rgba(255,245,110,.95),rgba(102,232,255,.9),rgba(178,111,255,.8),rgba(255,255,255,.92),transparent 78%)!important;
  animation:legendaryRainbowSweep 2.4s linear infinite!important;
}
.rarity-legendary.is-holographic .legendary-aura,
.full-card-wrap.holo-enabled.rarity-legendary .legendary-aura,
.preview-card.rarity-legendary .legendary-aura{
  opacity:.9!important;
  background:radial-gradient(circle at 15% 20%,#fff 0 1.5px,transparent 3px),radial-gradient(circle at 72% 34%,#fff8a9 0 1.8px,transparent 3.4px),radial-gradient(circle at 35% 78%,#ff8de5 0 1.6px,transparent 3px),radial-gradient(circle at 86% 72%,#8feaff 0 1.5px,transparent 3px),conic-gradient(from 0deg,rgba(255,81,195,.12),rgba(255,230,91,.16),rgba(100,227,255,.12),rgba(181,103,255,.13),rgba(255,81,195,.12))!important;
  animation:spin 7s linear infinite, legendaryPulse 2.8s ease-in-out infinite!important;
}
@keyframes legendaryRainbowSweep{0%{transform:translateX(-90%) skewX(-12deg)}100%{transform:translateX(90%) skewX(-12deg)}}

body:not(.starlight-mode-on) [data-reveal],
body:not(.starlight-mode-on) .reveal-big{display:none!important;}
.soft-note{font-weight:900;color:#6681bf;font-size:.82rem;}
#packOverlay{display:none!important;}
.binder-book.pack-open{animation:v12PackSelect .9s cubic-bezier(.2,.8,.2,1) both!important;}
@keyframes v12PackSelect{0%{transform:scale(.985);filter:brightness(1)}45%{transform:scale(1.01);filter:brightness(1.14) saturate(1.12);box-shadow:0 0 0 4px rgba(255,150,211,.28),0 0 42px rgba(126,214,255,.32)}100%{transform:scale(1);filter:brightness(1)}}
.slot:not(.is-holographic) .rarity-glow,
.preview-card:not(.is-holographic) .rarity-glow,
.collection-card:not(.is-holographic) .rarity-glow,
.fav-spot:not(.is-holographic) .rarity-glow,
.full-card-wrap:not(.is-holographic) .rarity-glow{opacity:0!important;animation:none!important;}

/* V13: cleaner hover, real-card holo behavior, stable reveal, and correct back faces */
.slot,
.card-inner,
.face,
.preview-card,
.preview-inner,
.full-card-wrap,
.full-inner,
.collection-card,
.fav-spot { overflow: hidden; }

/* Hover should only affect the hovered card, not sweep across neighbors */
.card-tile:hover .card-inner {
  transform: translateY(-5px) scale(1.025) !important;
  filter: drop-shadow(0 16px 22px rgba(8,39,125,.22)) brightness(1.04) !important;
}
.card-tile:hover .face.front,
.card-tile:hover .face.back {
  box-shadow: 0 0 0 2px rgba(255,255,255,.75), 0 0 18px rgba(255,120,189,.28), 0 10px 24px rgba(21,91,216,.18) !important;
}
.card-tile:hover .rarity-glow { pointer-events:none; }

/* Explicit 3D face directions so Flip always shows the actual card back, never a mirrored front */
.preview-card .face.front,
.full-card-wrap .face.front,
.card-inner .face.front { transform: rotateY(0deg) !important; }
.preview-card .face.back,
.full-card-wrap .face.back,
.card-inner .face.back { transform: rotateY(180deg) !important; }
.preview-card.flipped .preview-inner { transform: rotateY(180deg) !important; }
.preview-card.flipped:hover .preview-inner { transform: rotateY(180deg) scale(1.01) !important; }
.full-card-wrap.flipped .full-inner { transform: rotateY(180deg) !important; }

/* New holographic treatment: subtle vertical reflective light, not a side-to-side stripe */
.rarity-glow,
.is-holographic .rarity-glow,
.preview-card.is-holographic .rarity-glow,
.full-card-wrap.holo-enabled.is-holographic .rarity-glow,
.card-tile .front .rarity-glow {
  position:absolute !important;
  inset:0 !important;
  border-radius:inherit !important;
  pointer-events:none !important;
  mix-blend-mode:screen !important;
  opacity:0 !important;
  transform:none !important;
  background:none !important;
  animation:none !important;
}
.is-holographic .rarity-glow,
.preview-card.is-holographic .rarity-glow,
.full-card-wrap.holo-enabled.is-holographic .rarity-glow {
  opacity:.34 !important;
  background:
    linear-gradient(180deg,
      transparent 0%,
      rgba(255,255,255,.18) 18%,
      rgba(150,225,255,.22) 34%,
      rgba(255,175,220,.20) 50%,
      rgba(255,255,255,.28) 64%,
      transparent 82%),
    radial-gradient(circle at 30% 28%,rgba(255,255,255,.35),transparent 15%),
    radial-gradient(circle at 72% 70%,rgba(140,225,255,.22),transparent 18%) !important;
  background-size:100% 160%, 100% 100%, 100% 100% !important;
  animation:holoVerticalReflection 5.8s ease-in-out infinite, holoSoftGlow 3.6s ease-in-out infinite !important;
}
.rarity-legendary.is-holographic .rarity-glow,
.preview-card.rarity-legendary.is-holographic .rarity-glow,
.full-card-wrap.holo-enabled.rarity-legendary.is-holographic .rarity-glow {
  opacity:.72 !important;
  background:
    linear-gradient(180deg,
      rgba(255,80,190,.18) 0%,
      rgba(255,238,92,.50) 18%,
      rgba(100,232,255,.42) 34%,
      rgba(180,112,255,.40) 50%,
      rgba(255,120,205,.44) 66%,
      rgba(255,255,255,.62) 78%,
      rgba(255,226,90,.24) 100%),
    radial-gradient(circle at 18% 20%,rgba(255,255,255,.95) 0 1.5px,transparent 3px),
    radial-gradient(circle at 80% 28%,rgba(255,245,130,.9) 0 1.7px,transparent 3.5px),
    radial-gradient(circle at 35% 76%,rgba(255,140,225,.85) 0 1.5px,transparent 3px),
    radial-gradient(circle at 76% 82%,rgba(120,235,255,.8) 0 1.6px,transparent 3.2px) !important;
  background-size:100% 190%, 100% 100%, 100% 100%, 100% 100%, 100% 100% !important;
  animation:legendaryVerticalRainbow 3.4s ease-in-out infinite, legendaryPulse 2.4s ease-in-out infinite !important;
}
.rarity-legendary.is-holographic .face,
.preview-card.rarity-legendary.is-holographic .face,
.full-card-wrap.holo-enabled.rarity-legendary.is-holographic .face {
  box-shadow:0 0 0 2px rgba(255,219,75,.9),0 0 24px rgba(255,206,55,.48),0 0 42px rgba(255,113,205,.25),0 16px 30px rgba(16,62,155,.22) !important;
}
@keyframes holoVerticalReflection {
  0%,100% { background-position: 0 115%, 0 0, 0 0; filter: brightness(1) saturate(1.02); }
  50% { background-position: 0 -25%, 0 0, 0 0; filter: brightness(1.10) saturate(1.08); }
}
@keyframes holoSoftGlow {
  50% { opacity:.46; }
}
@keyframes legendaryVerticalRainbow {
  0%,100% { background-position:0 125%,0 0,0 0,0 0,0 0; filter:hue-rotate(0deg) brightness(1.08) saturate(1.15); }
  50% { background-position:0 -35%,0 0,0 0,0 0,0 0; filter:hue-rotate(18deg) brightness(1.22) saturate(1.35); }
}

/* Stable reveal typography: no sudden font resizing or layout jumps */
.reveal-clean-copy { min-height: 86px; display:grid; place-items:center; gap:4px; }
.reveal-clean-title {
  font-size:clamp(1rem,2.2vw,1.55rem) !important;
  line-height:1.15 !important;
  min-height:1.25em !important;
  margin:8px 0 0 !important;
  opacity:1;
  transition:opacity .55s ease, transform .55s ease !important;
}
#revealOverlay.is-finished .reveal-clean-title {
  opacity:0 !important;
  transform:translateY(-6px) scale(.98) !important;
  font-size:clamp(1rem,2.2vw,1.55rem) !important;
}
.reveal-card-info {
  min-height:54px !important;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .55s ease, transform .55s ease !important;
}
#revealOverlay.is-finished .reveal-card-info { opacity:1 !important; transform:translateY(-8px) !important; }
.reveal-card-info h3 { font-size:clamp(1.25rem,3vw,2rem) !important; line-height:1.05 !important; }
.reveal-card-info p { display:block !important; font-size:clamp(.9rem,1.8vw,1.1rem) !important; }

/* V14 refinements */
body.series-select #globalSearch { display: none !important; }
body.series-select .top-actions { justify-content: flex-end; }

.collection-tools {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 16px;
}
.collection-tools .btn { min-width: 150px; }

/* Hover: only the card itself lights up, no sweeping light onto nearby cards. */
.card-tile:hover:after,
.card-tile:focus-visible:after { display: none !important; content: none !important; animation: none !important; }
.card-tile:hover .face,
.card-tile:focus-visible .face {
  box-shadow: 0 0 0 2px rgba(255,255,255,.95), 0 0 18px rgba(255,126,196,.34), 0 12px 22px rgba(37,86,190,.16) !important;
}
.card-tile:hover .card-inner,
.card-tile:focus-visible .card-inner {
  filter: brightness(1.055) saturate(1.065) drop-shadow(0 10px 18px rgba(37,86,190,.18)) !important;
}

/* Hide holo layers unless the revealed/visible card is explicitly holographic. */
.rarity-glow,
.legendary-aura {
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Normal holo: subtle glitter/foil layer that lives inside the card image. */
.is-holographic:not(.is-legendary-holo) .rarity-glow {
  opacity: .34 !important;
  position: absolute;
  inset: 0;
  mix-blend-mode: screen;
  background:
    radial-gradient(circle at 22% 18%, rgba(255,255,255,.70) 0 1px, transparent 2.3px),
    radial-gradient(circle at 62% 32%, rgba(123,222,255,.35) 0 1.2px, transparent 2.6px),
    radial-gradient(circle at 80% 72%, rgba(255,157,220,.36) 0 1.1px, transparent 2.8px),
    linear-gradient(180deg, transparent 0%, rgba(255,255,255,.34) 38%, rgba(131,221,255,.14) 50%, rgba(255,156,218,.16) 62%, transparent 100%);
  background-size: 72px 72px, 92px 92px, 110px 110px, 100% 230%;
  background-position: 0 0, 20px 18px, 10px 42px, 50% 100%;
  animation: holoVerticalSoft 6.8s ease-in-out infinite, holoTwinkle 3.8s ease-in-out infinite !important;
}

/* Legendary holo: rainbow glitter like a real textured full-art foil, contained inside the card. */
.is-legendary-holo .rarity-glow {
  opacity: .56 !important;
  position: absolute;
  inset: 0;
  mix-blend-mode: screen;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.95) 0 1px, transparent 2.2px),
    radial-gradient(circle at 35% 74%, rgba(255,255,255,.86) 0 1.1px, transparent 2.4px),
    radial-gradient(circle at 76% 28%, rgba(255,255,255,.92) 0 1px, transparent 2.2px),
    radial-gradient(circle at 88% 82%, rgba(255,245,150,.92) 0 1px, transparent 2.5px),
    linear-gradient(115deg, rgba(255,60,170,.30), rgba(255,211,63,.30), rgba(94,236,255,.30), rgba(154,115,255,.30), rgba(255,96,176,.28)),
    linear-gradient(180deg, transparent 0%, rgba(255,255,255,.30) 42%, rgba(255,243,145,.22) 50%, rgba(125,222,255,.18) 58%, transparent 100%);
  background-size: 35px 35px, 47px 47px, 59px 59px, 73px 73px, 210% 210%, 100% 240%;
  background-position: 0 0, 12px 16px, 7px 21px, 20px 4px, 50% 50%, 50% 100%;
  animation: holoGlitterShift 7.5s ease-in-out infinite, holoVerticalSoft 5.4s ease-in-out infinite !important;
  filter: saturate(1.18) contrast(1.08);
}
.is-legendary-holo .legendary-aura {
  opacity: .38 !important;
  position: absolute;
  inset: 0;
  mix-blend-mode: color-dodge;
  background:
    repeating-linear-gradient(25deg, rgba(255,255,255,.16) 0 1px, transparent 1px 7px),
    repeating-linear-gradient(115deg, rgba(125,222,255,.11) 0 1px, transparent 1px 8px);
  animation: holoTextureBreath 4.6s ease-in-out infinite !important;
}

@keyframes holoVerticalSoft {
  0%, 100% { background-position: 0 0, 20px 18px, 10px 42px, 50% 108%; }
  50% { background-position: 4px 6px, 16px 12px, 13px 36px, 50% -8%; }
}
@keyframes holoTwinkle {
  0%, 100% { filter: brightness(1) saturate(1); }
  50% { filter: brightness(1.13) saturate(1.18); }
}
@keyframes holoGlitterShift {
  0%, 100% { background-position: 0 0, 12px 16px, 7px 21px, 20px 4px, 0% 50%, 50% 112%; }
  50% { background-position: 10px 8px, 2px 26px, 15px 10px, 8px 17px, 100% 50%, 50% -12%; }
}
@keyframes holoTextureBreath {
  0%, 100% { opacity: .25; transform: scale(1); }
  50% { opacity: .44; transform: scale(1.01); }
}

/* Keep hidden cards from giving away holo status. */
.is-hidden .rarity-glow,
.is-hidden .legendary-aura,
.obscured ~ .rarity-glow,
.obscured ~ .legendary-aura {
  opacity: 0 !important;
  animation: none !important;
}

.slot.is-hidden .face,
.collection-card:not(.is-holographic) img,
.preview-card:not(.is-holographic) .face,
.full-card-wrap:not(.is-holographic) .face {
  box-shadow: 0 0 0 1px rgba(255,255,255,.62), 0 8px 20px rgba(40,70,160,.10) !important;
}
.slot.is-hidden.rarity-legendary .face,
.slot.is-hidden.rarity-epic .face,
.slot.is-hidden.rarity-rare .face,
.slot.is-hidden.rarity-uncommon .face {
  box-shadow: 0 0 0 1px rgba(255,255,255,.62), 0 8px 20px rgba(40,70,160,.10) !important;
}

/* V15: restore controlled 3D hover without lighting adjacent cards */
.card-tile {
  --tilt-x: 0deg;
  --tilt-y: 0deg;
  --glow-x: 50%;
  --glow-y: 22%;
}
.card-tile .card-inner {
  transition: transform .18s ease, filter .18s ease !important;
  will-change: transform, filter;
}
.card-tile:hover .card-inner,
.card-tile:focus-visible .card-inner {
  transform: translateY(-8px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) scale(1.045) !important;
  filter: brightness(1.06) saturate(1.08) drop-shadow(0 18px 24px rgba(12,52,150,.24)) !important;
}
.card-tile:hover .face::after,
.card-tile:focus-visible .face::after {
  content: '' !important;
  display: block !important;
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: radial-gradient(circle at var(--glow-x) var(--glow-y), rgba(255,255,255,.42), rgba(255,255,255,.12) 22%, transparent 48%);
  mix-blend-mode: screen;
  animation: none !important;
}
.card-tile:hover::after,
.card-tile:focus-visible::after {
  content: none !important;
  display: none !important;
}

/* V15: Holographic logic is controlled only by the Google Sheet column holographic=yes/no. */
.rarity-glow,
.legendary-aura {
  opacity: 0 !important;
  animation: none !important;
  pointer-events: none !important;
}
.rarity-epic .rarity-glow,
.rarity-legendary .rarity-glow,
.rarity-legendary .legendary-aura {
  opacity: 0 !important;
  animation: none !important;
}
.rarity-epic:not(.is-holographic) .face,
.rarity-legendary:not(.is-holographic) .face,
.rarity-rare:not(.is-holographic) .face {
  box-shadow: 0 8px 16px rgba(13,60,148,.18) !important;
}

/* Standard holo: subtle real-card foil shimmer, contained inside the card art. */
.is-holographic:not(.is-legendary-holo) .rarity-glow,
.preview-card.is-holographic:not(.is-legendary-holo) .rarity-glow,
.full-card-wrap.holo-enabled.is-holographic:not(.is-legendary-holo) .rarity-glow,
.reveal-clean.phase-revealed.is-holographic:not(.is-legendary-holo) .rarity-glow {
  opacity: .36 !important;
  position: absolute;
  inset: 0;
  mix-blend-mode: screen;
  background:
    radial-gradient(circle at 18% 20%, rgba(255,255,255,.62) 0 1px, transparent 2.4px),
    radial-gradient(circle at 58% 38%, rgba(147,224,255,.34) 0 1.1px, transparent 2.6px),
    radial-gradient(circle at 84% 72%, rgba(255,165,224,.34) 0 1.1px, transparent 2.8px),
    repeating-linear-gradient(105deg, rgba(255,255,255,.11) 0 1px, transparent 1px 6px),
    linear-gradient(180deg, transparent 0%, rgba(255,255,255,.30) 36%, rgba(130,222,255,.13) 49%, rgba(255,155,220,.14) 61%, transparent 100%);
  background-size: 72px 72px, 96px 96px, 124px 124px, 100% 100%, 100% 240%;
  background-position: 0 0, 16px 18px, 10px 42px, 0 0, 50% 105%;
  animation: starlightStandardHolo 6.8s ease-in-out infinite, starlightHoloBreath 3.8s ease-in-out infinite !important;
}

/* Legendary holo: stronger rainbow glitter foil, also contained inside the card art only. */
.is-legendary-holo .rarity-glow,
.preview-card.is-legendary-holo .rarity-glow,
.full-card-wrap.holo-enabled.is-legendary-holo .rarity-glow,
.reveal-clean.phase-revealed.is-legendary-holo .rarity-glow {
  opacity: .62 !important;
  position: absolute;
  inset: 0;
  mix-blend-mode: screen;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.95) 0 1px, transparent 2.1px),
    radial-gradient(circle at 34% 76%, rgba(255,255,255,.88) 0 1.1px, transparent 2.4px),
    radial-gradient(circle at 74% 28%, rgba(255,255,255,.92) 0 1px, transparent 2.2px),
    radial-gradient(circle at 90% 82%, rgba(255,245,150,.94) 0 1px, transparent 2.6px),
    repeating-linear-gradient(26deg, rgba(255,255,255,.12) 0 1px, transparent 1px 5px),
    linear-gradient(115deg, rgba(255,48,174,.28), rgba(255,218,58,.30), rgba(91,237,255,.30), rgba(164,118,255,.30), rgba(255,88,176,.24)),
    linear-gradient(180deg, transparent 0%, rgba(255,255,255,.28) 40%, rgba(255,245,130,.24) 50%, rgba(125,222,255,.18) 60%, transparent 100%);
  background-size: 34px 34px, 46px 46px, 58px 58px, 72px 72px, 100% 100%, 220% 220%, 100% 250%;
  background-position: 0 0, 12px 16px, 7px 21px, 20px 4px, 0 0, 0% 50%, 50% 110%;
  animation: starlightLegendaryFoil 7s ease-in-out infinite, starlightHoloBreath 3.1s ease-in-out infinite !important;
  filter: saturate(1.22) contrast(1.08);
}
.is-legendary-holo .legendary-aura,
.preview-card.is-legendary-holo .legendary-aura,
.full-card-wrap.holo-enabled.is-legendary-holo .legendary-aura,
.reveal-clean.phase-revealed.is-legendary-holo .legendary-aura {
  opacity: .34 !important;
  position: absolute;
  inset: 0;
  mix-blend-mode: color-dodge;
  background:
    repeating-linear-gradient(28deg, rgba(255,255,255,.13) 0 1px, transparent 1px 7px),
    repeating-linear-gradient(118deg, rgba(130,224,255,.10) 0 1px, transparent 1px 8px);
  animation: starlightHoloTexture 4.8s ease-in-out infinite !important;
}

.full-card-wrap.holo-disabled .rarity-glow,
.full-card-wrap.holo-disabled .legendary-aura {
  display: none !important;
}
.is-hidden .rarity-glow,
.is-hidden .legendary-aura,
.obscured ~ .rarity-glow,
.obscured ~ .legendary-aura,
.reveal-clean:not(.phase-revealed) .rarity-glow,
.reveal-clean:not(.phase-revealed) .legendary-aura {
  opacity: 0 !important;
  animation: none !important;
}

@keyframes starlightStandardHolo {
  0%, 100% { background-position: 0 0, 16px 18px, 10px 42px, 0 0, 50% 108%; }
  50% { background-position: 5px 7px, 10px 10px, 16px 34px, 0 0, 50% -8%; }
}
@keyframes starlightLegendaryFoil {
  0%, 100% { background-position: 0 0, 12px 16px, 7px 21px, 20px 4px, 0 0, 0% 50%, 50% 112%; }
  50% { background-position: 10px 8px, 2px 26px, 15px 10px, 8px 17px, 0 0, 100% 50%, 50% -12%; }
}
@keyframes starlightHoloBreath {
  0%, 100% { filter: brightness(1) saturate(1); }
  50% { filter: brightness(1.16) saturate(1.18); }
}
@keyframes starlightHoloTexture {
  0%, 100% { opacity: .22; transform: scale(1); }
  50% { opacity: .42; transform: scale(1.012); }
}

/* V15: reveal end card info: name, series, then rarity on its own line. */
.reveal-card-info { min-height: 78px !important; }
.reveal-card-info h3 { margin: 0 0 2px !important; }
.reveal-info-series,
.reveal-info-rarity {
  margin: 2px 0 0 !important;
  display: block !important;
  line-height: 1.18 !important;
}
.reveal-info-rarity {
  width: fit-content;
  margin-inline: auto !important;
  padding: 4px 12px;
  border-radius: 999px;
  color: #8a5500;
  background: linear-gradient(180deg,#fff2bf,#ffd76f);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}

/* V16: enforce Google Sheets holographic column logic + cleaner card interaction */
/* Hover: keep the interactive 3D tilt, remove all zoom and mouse-follow glow. */
.card-tile:hover .card-inner,
.card-tile:focus-visible .card-inner {
  transform: translateY(-6px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) scale(1) !important;
  filter: brightness(1.065) saturate(1.075) drop-shadow(0 16px 22px rgba(12,52,150,.24)) !important;
}
.card-tile:hover .face::after,
.card-tile:focus-visible .face::after {
  content: none !important;
  display: none !important;
  background: none !important;
}
.card-tile:hover .face,
.card-tile:focus-visible .face {
  box-shadow:
    0 0 0 2px rgba(255,255,255,.96),
    0 0 18px rgba(255,126,196,.34),
    0 0 28px rgba(126,214,255,.22),
    0 14px 24px rgba(37,86,190,.18) !important;
}

/* Flip behavior: show the actual card back image, never a mirrored front. */
.preview-inner,
.full-inner,
.card-inner {
  transform-style: preserve-3d !important;
}
.preview-card .face,
.full-card-wrap .face,
.card-inner .face {
  backface-visibility: hidden !important;
  -webkit-backface-visibility: hidden !important;
}
.preview-card .face.front,
.full-card-wrap .face.front,
.card-inner .face.front {
  transform: rotateY(0deg) !important;
  opacity: 1 !important;
  z-index: 2 !important;
}
.preview-card .face.back,
.full-card-wrap .face.back,
.card-inner .face.back {
  transform: rotateY(180deg) !important;
  opacity: 1 !important;
  z-index: 1 !important;
}
.preview-card.flipped .preview-inner,
.preview-card.flipped:hover .preview-inner,
.full-card-wrap.flipped .full-inner,
.card-inner.flipped {
  transform: rotateY(180deg) !important;
}
.preview-card.flipped .face.back,
.full-card-wrap.flipped .face.back,
.card-inner.flipped .face.back {
  z-index: 3 !important;
}
.preview-card .face.back img,
.full-card-wrap .face.back img,
.card-inner .face.back img {
  transform: none !important;
}

/* Absolute holo reset: rarity alone must never create a holo effect. */
.rarity-glow,
.legendary-aura {
  opacity: 0 !important;
  animation: none !important;
  background: none !important;
  filter: none !important;
  pointer-events: none !important;
}
.slot:not(.is-holographic) .rarity-glow,
.slot:not(.is-holographic) .legendary-aura,
.preview-card:not(.is-holographic) .rarity-glow,
.preview-card:not(.is-holographic) .legendary-aura,
.full-card-wrap:not(.is-holographic) .rarity-glow,
.full-card-wrap:not(.is-holographic) .legendary-aura,
.collection-card:not(.is-holographic) .rarity-glow,
.collection-card:not(.is-holographic) .legendary-aura,
.fav-spot:not(.is-holographic) .rarity-glow,
.fav-spot:not(.is-holographic) .legendary-aura,
.reveal-clean:not(.is-holographic) .rarity-glow,
.reveal-clean:not(.is-holographic) .legendary-aura {
  opacity: 0 !important;
  animation: none !important;
  background: none !important;
  filter: none !important;
}
.slot.rarity-legendary:not(.is-holographic) .face,
.slot.rarity-epic:not(.is-holographic) .face,
.preview-card.rarity-legendary:not(.is-holographic),
.preview-card.rarity-epic:not(.is-holographic),
.full-card-wrap.rarity-legendary:not(.is-holographic),
.full-card-wrap.rarity-epic:not(.is-holographic),
.collection-card.rarity-legendary:not(.is-holographic),
.collection-card.rarity-epic:not(.is-holographic),
.fav-spot.rarity-legendary:not(.is-holographic),
.fav-spot.rarity-epic:not(.is-holographic) {
  box-shadow: 0 8px 16px rgba(13,60,148,.14) !important;
}

/* Normal holographic: only when holographic=yes, contained within the card image. No rotation. */
.is-holographic:not(.is-legendary-holo) .rarity-glow,
.preview-card.is-holographic:not(.is-legendary-holo) .rarity-glow,
.full-card-wrap.holo-enabled.is-holographic:not(.is-legendary-holo) .rarity-glow,
.collection-card.is-holographic:not(.is-legendary-holo) .rarity-glow,
.fav-spot.is-holographic:not(.is-legendary-holo) .rarity-glow,
.reveal-clean.phase-revealed.is-holographic:not(.is-legendary-holo) .rarity-glow {
  position: absolute !important;
  inset: 0 !important;
  opacity: .24 !important;
  mix-blend-mode: screen !important;
  background:
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.58) 0 1px, transparent 2.2px),
    radial-gradient(circle at 68% 38%, rgba(138,225,255,.30) 0 1px, transparent 2.6px),
    radial-gradient(circle at 82% 74%, rgba(255,160,222,.28) 0 1px, transparent 2.6px),
    linear-gradient(180deg, transparent 0%, rgba(255,255,255,.22) 42%, rgba(148,224,255,.12) 53%, rgba(255,168,222,.12) 64%, transparent 100%) !important;
  background-size: 78px 78px, 104px 104px, 126px 126px, 100% 240% !important;
  background-position: 0 0, 18px 16px, 12px 40px, 50% 112% !important;
  animation: v16HoloFloat 7.2s ease-in-out infinite, v16HoloBreath 4.2s ease-in-out infinite !important;
  filter: saturate(1.05) brightness(1.03) !important;
}

/* Legendary holographic: only holographic=yes AND rarity=Legendary. Rainbow/glitter spread through the card, contained and subtle. */
.is-legendary-holo .rarity-glow,
.preview-card.is-legendary-holo .rarity-glow,
.full-card-wrap.holo-enabled.is-legendary-holo .rarity-glow,
.collection-card.is-legendary-holo .rarity-glow,
.fav-spot.is-legendary-holo .rarity-glow,
.reveal-clean.phase-revealed.is-legendary-holo .rarity-glow {
  position: absolute !important;
  inset: 0 !important;
  opacity: .42 !important;
  mix-blend-mode: screen !important;
  background:
    radial-gradient(circle at 11% 16%, rgba(255,255,255,.82) 0 1px, transparent 2.2px),
    radial-gradient(circle at 34% 72%, rgba(255,255,255,.68) 0 1px, transparent 2.4px),
    radial-gradient(circle at 72% 28%, rgba(255,255,255,.74) 0 1px, transparent 2.2px),
    radial-gradient(circle at 88% 82%, rgba(255,245,155,.72) 0 1px, transparent 2.6px),
    linear-gradient(115deg, rgba(255,70,178,.22), rgba(255,224,80,.24), rgba(94,234,255,.23), rgba(160,125,255,.22), rgba(255,95,185,.20)),
    linear-gradient(180deg, transparent 0%, rgba(255,255,255,.21) 40%, rgba(255,245,135,.18) 50%, rgba(125,222,255,.14) 60%, transparent 100%) !important;
  background-size: 34px 34px, 47px 47px, 61px 61px, 75px 75px, 220% 220%, 100% 255% !important;
  background-position: 0 0, 12px 16px, 7px 21px, 20px 4px, 0% 45%, 50% 112% !important;
  animation: v16LegendaryFoilShift 8.5s ease-in-out infinite, v16LegendaryBreath 4.8s ease-in-out infinite !important;
  filter: saturate(1.12) brightness(1.02) !important;
}
.is-legendary-holo .legendary-aura,
.preview-card.is-legendary-holo .legendary-aura,
.full-card-wrap.holo-enabled.is-legendary-holo .legendary-aura,
.collection-card.is-legendary-holo .legendary-aura,
.fav-spot.is-legendary-holo .legendary-aura,
.reveal-clean.phase-revealed.is-legendary-holo .legendary-aura {
  position: absolute !important;
  inset: 0 !important;
  opacity: .20 !important;
  mix-blend-mode: soft-light !important;
  background:
    repeating-linear-gradient(26deg, rgba(255,255,255,.13) 0 1px, transparent 1px 7px),
    repeating-linear-gradient(116deg, rgba(125,222,255,.10) 0 1px, transparent 1px 9px) !important;
  animation: v16FoilTextureDrift 9s ease-in-out infinite !important;
  transform: none !important;
}

.full-card-wrap.holo-disabled .rarity-glow,
.full-card-wrap.holo-disabled .legendary-aura {
  opacity: 0 !important;
  animation: none !important;
  background: none !important;
}
.is-hidden .rarity-glow,
.is-hidden .legendary-aura,
.obscured ~ .rarity-glow,
.obscured ~ .legendary-aura,
.reveal-clean:not(.phase-revealed) .rarity-glow,
.reveal-clean:not(.phase-revealed) .legendary-aura {
  opacity: 0 !important;
  animation: none !important;
  background: none !important;
}

@keyframes v16HoloFloat {
  0%, 100% { background-position: 0 0, 18px 16px, 12px 40px, 50% 112%; }
  50% { background-position: 7px 8px, 10px 8px, 18px 32px, 50% -10%; }
}
@keyframes v16HoloBreath {
  0%, 100% { opacity: .20; }
  50% { opacity: .30; }
}
@keyframes v16LegendaryFoilShift {
  0%, 100% { background-position: 0 0, 12px 16px, 7px 21px, 20px 4px, 0% 45%, 50% 114%; }
  50% { background-position: 12px 9px, 3px 28px, 18px 12px, 7px 18px, 100% 55%, 50% -16%; }
}
@keyframes v16LegendaryBreath {
  0%, 100% { opacity: .34; }
  50% { opacity: .48; }
}
@keyframes v16FoilTextureDrift {
  0%, 100% { background-position: 0 0, 0 0; opacity: .16; }
  50% { background-position: 12px 8px, -10px 14px; opacity: .24; }
}
