/* V27.1 collection: finite, cosmetic rewards; responsive without horizontal scrolling. */
.collection-heading{padding:26px 0 18px}.collection-heading h1{font-size:clamp(2rem,6vw,3.4rem);margin:8px 0;color:#fff}.collection-heading p{max-width:670px;color:#c0cceb;line-height:1.65}.collection-summary{padding:18px;border:1px solid #44618b;background:linear-gradient(110deg,#142847,#201b3b);border-radius:12px;margin-bottom:18px;color:#91f3ff!important}
.collection-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.collection-tabs button{min-height:46px;flex:1;padding:10px 8px;border:1px solid #57729d;border-radius:9px;background:#111c33;color:#e8f0ff;font:inherit;cursor:pointer}.collection-tabs [aria-pressed=true]{color:#051324;background:#75f0ff;border-color:#75f0ff;font-weight:800}
.collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.collection-card{min-width:0;overflow:hidden;position:relative;border:1px solid #526382;border-radius:14px;background:linear-gradient(160deg,#15253e,#0c1128);box-shadow:0 12px 26px #0003}.collection-card h2{font-size:1.2rem;margin:8px 0}.collection-card p{line-height:1.55;font-size:.9rem;color:#d1dbf1;margin:8px 0}.collection-card-body{padding:18px}.collection-card.is-locked{border-style:dashed}.collection-card.is-locked .collection-portrait,.collection-card.is-locked .collection-art{filter:saturate(.35);opacity:.65}.collection-portrait{width:100%;height:260px;object-fit:cover;object-position:50% 25%;display:block;background:#101e36}.collection-art{display:block;width:100%;height:190px;object-fit:cover}.collection-state{font-size:.65rem;letter-spacing:.13em;color:#7defff}.is-locked .collection-state{color:#ffbe88}.collection-condition{font-size:.8rem!important;color:#bac5df!important}.collection-card progress{width:100%;height:8px;accent-color:#74e6ff;margin-top:10px}.collection-count{display:block;color:#c0cceb;margin:5px 0 13px}.collection-card .btn{width:100%;min-height:46px;margin-top:14px;font-size:.85rem}.collection-card .btn:disabled{cursor:default;opacity:.75}.collection-art-credit{display:block;color:#a9badb;line-height:1.5;font-size:.72rem}.collection-placeholder{height:190px;display:grid;place-items:center;font-size:5rem;color:#8c7bbd;background:repeating-linear-gradient(135deg,#1a1d39,#1a1d39 15px,#14172e 15px,#14172e 16px)}
.collection-trophy{display:grid;place-items:center;height:150px;background:radial-gradient(ellipse at center,#1e4160,#0a162c 70%)}.collection-trophy span{display:grid;place-items:center;width:88px;height:88px;color:#7aefff;font-size:3rem;border:2px solid currentColor;transform:rotate(-8deg);border-radius:22% 40%;box-shadow:inset 0 0 22px #59e3ff30,0 0 22px #59e3ff20}.collection-trophy[data-icon=growth] span{color:#b1f2a7;border-radius:50% 50% 10% 10%;transform:none}.collection-trophy[data-icon=stars] span{color:#ffb0da;border-radius:50%;transform:none}.collection-trophy[data-icon=compass] span{color:#ffc685;border-radius:0;transform:rotate(8deg)}.collection-trophy[data-icon=relay] span{color:#afadff;border-radius:15%;transform:none}.collection-trophy[data-icon=prism] span{color:#f2dd91;clip-path:polygon(50% 0,100% 100%,0 100%);border-radius:0;transform:none;background:#39314b}
.collection-trophy+.neo-kicker{display:block;padding:15px 18px 0;line-height:1.5;white-space:normal}.collection-avatar{background:#1a2542;border:1px solid #61dbf1;padding:0;width:46px;height:46px;flex-shrink:0;border-radius:50%;overflow:hidden;cursor:pointer}.collection-avatar-img{width:100%;height:100%;object-fit:cover;object-position:50% 25%;display:block}
.collection-note{font-size:.85rem;color:#bfcae3;line-height:1.6;margin:20px 0}.collection-viewer{width:min(1100px,calc(100vw - 20px));max-height:calc(100dvh - 20px);padding:16px;overflow-y:auto;background:#080e20;color:#fff;border:1px solid #82e9ff;border-radius:12px}.collection-viewer::backdrop{background:#020614ed}.collection-viewer h2{font-size:1.15rem;overflow-wrap:anywhere}.collection-viewer img{width:100%;height:auto;max-height:65dvh;object-fit:contain;display:block}.collection-viewer .row{gap:8px;flex-wrap:wrap}.collection-viewer button{min-height:44px}.collection-viewer p{font-size:.85rem;line-height:1.5}.collection-viewer-controls{display:flex;justify-content:space-between;gap:10px}.collection-notice{position:fixed;right:20px;bottom:90px;max-width:min(380px,calc(100vw - 32px));z-index:45;pointer-events:none;padding:18px 22px;border:1px solid #72eaff;border-radius:12px;background:#12223ef5;box-shadow:0 0 25px #50d8ff25;animation:collection-reveal .32s ease-out}.collection-notice strong,.collection-notice span{display:block}.collection-notice strong{color:#7fefff;margin-bottom:5px}.collection-notice span{font-size:.9rem;line-height:1.5}@keyframes collection-reveal{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:1000px){.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.collection-grid{grid-template-columns:1fr;gap:16px}.collection-portrait{height:280px}.collection-heading{padding-top:15px}.collection-heading h1{font-size:2rem}.collection-tabs{gap:5px}.collection-tabs button{font-size:.78rem}.collection-viewer{padding:12px}.collection-viewer .btn{padding:10px}.bottom button{min-width:0;flex:1}.bottom button span:last-child{font-size:.64rem}.collection-notice{right:16px;bottom:90px}.collection-card-body{padding:16px}}
@media(prefers-reduced-motion:reduce){.collection-notice{animation:none}}html.neo-reduced .collection-notice{animation:none}
@media(min-width:761px){.app{width:calc(100% - 180px)}}
/* V27.2: official portraits retain the whole face; collector looks stay separate. */
.collection-portrait{object-position:50% 20%}.collection-edition{display:block;padding:9px 18px;color:#ffd49e;background:#30213f;font-size:.66rem;font-weight:800;letter-spacing:.14em}.collection-official-trophy{display:block;width:132px;height:132px;object-fit:contain}.collection-card[data-appearance]{border-color:#b38ce0;background:linear-gradient(155deg,#28203e,#11182d)}
/* V27.3 mystery: locked artwork is absent from the card, including accessible names. */
.collection-mystery{height:190px;position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#253251,#0a1023 75%);border-bottom:1px solid #56739955}
.collection-mystery::after{content:'';position:absolute;inset:12px;border:1px solid #7498cb35;border-radius:10px;pointer-events:none}
.collection-mystery-symbol{font-size:4rem;color:#91c7dc;line-height:1;text-shadow:0 0 24px #3de8ff33}
.collection-mystery-characters{height:260px}
.collection-mystery-characters .collection-mystery-symbol{position:relative;width:140px;height:125px;margin-top:100px;border-radius:65% 65% 0 0;background:#080e1c;box-shadow:0 0 30px #78a3ff16}
.collection-mystery-characters .collection-mystery-symbol::before{content:'';position:absolute;width:74px;height:90px;border-radius:50% 50% 45% 45%;background:#080e1c;left:33px;top:-78px}
.collection-mystery-trophies{height:150px}
.collection-mystery-trophies .collection-mystery-symbol{border:1px solid #6d8cab;border-radius:20%;width:76px;height:86px;display:grid;place-items:center;font-size:2.6rem;background:#0b1527}
.collection-card .collection-mystery-caption{color:#b8c6e1;font-size:.85rem}
@media(max-width:520px){.collection-mystery-characters{height:280px}}

.collection-objective{margin:.55rem 0}.collection-objective small{display:block;overflow-wrap:anywhere}.collection-objective progress{width:100%;max-width:100%}.collection-rarity{display:inline-block;border:1px solid currentColor;border-radius:1rem;padding:.2rem .6rem;color:#a8efff}.collection-card[data-rarity="Rare"]{border-color:#54cadc}.collection-card[data-rarity="Épique"]{border-color:#bc87ff}.collection-card[data-rarity="Légendaire"]{border-color:#ffbc6c}.collection-card[data-rarity="Légendaire"] .collection-rarity{color:#ffbc6c}
