.pack-lab{--lab-blue:#49cafa;--lab-green:#a4e35b;--lab-red:#f46c65;max-width:1160px;color:#e9f7ff;border:1px solid #467a99;background:radial-gradient(circle at 50% 43%,#143442 0%,#081721 39%,#03090f 85%);box-shadow:0 0 0 5px #132b36,0 28px 90px #000e}
.pack-lab .overlay-head{border-bottom:1px solid #3c7888;padding-bottom:10px}
.pack-lab .overlay-head small{color:var(--lab-blue);letter-spacing:.25em}
.pack-lab h3{margin:3px 0;font-size:1.7rem;text-transform:uppercase;letter-spacing:.08em}
#packStatus{min-height:1.7em;text-align:center;color:#b8e3ed}
.pack-inventory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}
.pack-choice{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:80px;padding:12px;border:1px solid #386477;background:linear-gradient(130deg,#132a37,#061722);color:#e9f7ff;cursor:pointer;text-align:left;transition:transform .18s,border-color .18s,box-shadow .18s}
.pack-choice strong{flex:1;min-width:115px}.pack-choice small{width:100%;color:#9fc6d5}.pack-choice:hover,.pack-choice.selected{border-color:#74e5fa;box-shadow:0 0 18px #23c5ef66;transform:translateY(-2px)}.pack-choice:disabled{opacity:.45;cursor:not-allowed;transform:none}
.pack-choice-sigil{font-size:1.7rem;color:var(--lab-blue)}.pack-choice-sigil.parasite{color:var(--lab-green)}.pack-choice-sigil.synthetic{color:#9bc7ff}
.pack-chamber{position:relative;min-height:400px;overflow:hidden;display:grid;place-items:center;border:1px solid #1b5966;background:radial-gradient(ellipse at center,#18546450,#081e2acc 58%,#020a10 95%),repeating-linear-gradient(90deg,transparent 0 44px,#52a6b511 45px 46px);isolation:isolate}
.pack-chamber:before,.pack-chamber:after{content:"";position:absolute;inset:8px;border:1px solid #63dcdb30;pointer-events:none}.pack-chamber:after{inset:auto 10% 0;height:24%;border:0;background:repeating-linear-gradient(90deg,#55b8c944 0 8px,transparent 9px 80px);opacity:.35}
.pack-chamber-scan{position:absolute;inset:0;background:linear-gradient(transparent 40%,#70f5eb18 50%,transparent 60%);animation:lab-scan 5s linear infinite;pointer-events:none}
.pack-capsule{position:absolute;top:40%;left:50%;width:135px;height:135px;display:grid;place-items:center;transform:translate(-50%,-50%);clip-path:polygon(50% 0,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);background:radial-gradient(circle,#1886a9,#123340 70%,#72edee);border:2px solid #9aeff3;font:700 4rem Georgia;color:white;text-shadow:0 0 24px #adffff;box-shadow:0 0 44px #42e9fc;transition:opacity .5s,transform .5s}
.pack-capsule.opening{animation:pack-pulse .55s ease-in-out 2}.pack-capsule.opened{opacity:.08;transform:translate(-50%,-50%) scale(1.8)}
.pack-reveal{position:relative;display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;z-index:1;padding:20px;width:100%}
.pack-card{position:relative;width:142px;height:215px;padding:0;border:2px solid #4dc8eb;border-radius:10px;overflow:hidden;display:grid;place-items:center;background:#05151c;color:white;cursor:pointer;box-shadow:0 0 18px #1fc6eb88;animation:pack-appear .4s backwards}
.pack-card:nth-child(2){animation-delay:.08s}.pack-card:nth-child(3){animation-delay:.16s}.pack-card:nth-child(4){animation-delay:.24s}.pack-card:nth-child(5){animation-delay:.32s}
.pack-card-back{text-align:center;font:700 4rem Georgia;text-shadow:0 0 18px #9affff}.pack-card-back small{display:block;font:500 .55rem sans-serif;letter-spacing:.2em}
.pack-card.revealed{height:246px;cursor:default;animation:pack-reveal .35s both}.pack-card.revealed.rare{border-color:#64baff;box-shadow:0 0 23px #438fff99}.pack-card.revealed.epic{border-color:#b183ff;box-shadow:0 0 29px #9b52ffbb}.pack-card.revealed.legendary{border-color:#ffc56c;box-shadow:0 0 35px #ffc456aa}
.pack-card .pack-art{display:block;width:100%;height:100%;object-fit:contain}.pack-card .pack-rarity,.pack-card .pack-duplicate{position:absolute;z-index:5;left:0;right:0;padding:3px;background:#07121be6;text-align:center;font:.7rem sans-serif;letter-spacing:.12em}.pack-card .pack-rarity{top:0}.pack-card .pack-duplicate{bottom:0;color:#aef0ec}.pack-card-title{position:absolute;bottom:20px;left:0;right:0;z-index:5;padding:4px 2px;background:#020b12e8;color:#efffff;text-align:center;font:600 .72rem sans-serif;line-height:1.15}.pack-card-title small{display:block;color:#b7dfe8;font-size:.55rem;margin-top:2px}
.pack-card-missing{font-size:.7rem;overflow-wrap:anywhere}.pack-controls{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:14px}.pack-controls .hidden{display:none}
.pack-history{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-top:1px solid #2c5b65;padding-top:10px}.pack-history button{background:#102b35;border:1px solid #2f6973;color:#c9e7ed;padding:6px 10px;cursor:pointer}
@keyframes pack-pulse{50%{filter:brightness(2);transform:translate(-50%,-50%) scale(1.13)}}@keyframes lab-scan{0%{transform:translateY(-80%)}100%{transform:translateY(80%)}}@keyframes pack-appear{from{opacity:0;transform:translateY(25px) scale(.9)}}@keyframes pack-reveal{from{filter:brightness(2);transform:rotateY(80deg)}}
@media(max-width:760px){.pack-inventory{grid-template-columns:1fr}.pack-chamber{min-height:480px}.pack-card{width:28vw;max-width:130px;height:180px}.pack-card.revealed{height:210px}.pack-lab h3{font-size:1.1rem}}
@media(max-height:800px) and (min-width:761px){.pack-chamber{min-height:320px}.pack-card{height:185px}.pack-card.revealed{height:215px}.pack-choice{min-height:68px}.pack-inventory{margin:8px 0}.pack-controls{margin:8px}.pack-lab{padding:12px}}
@media(prefers-reduced-motion:reduce){.pack-chamber-scan,.pack-capsule.opening,.pack-card,.pack-card.revealed{animation:none!important;transition:none!important}}
body.visual-effects-reduced .pack-chamber-scan,body.visual-effects-reduced .pack-capsule.opening,body.visual-effects-reduced .pack-card{animation:none!important;transition:none!important}
