.sidePicker{grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 18px;display:grid}.difficultyScreen>p{color:#f5dfae;letter-spacing:.08em;font-weight:900}.difficultyChoices{gap:14px;margin-top:28px;display:grid}.difficultyChoices button{background:linear-gradient(105deg,#32104e,#7b218d);border:2px solid #ffd24a;border-radius:15px;align-content:center;gap:7px;min-height:112px;padding:18px;display:grid;box-shadow:0 0 18px #8b2cff66}.difficultyChoices strong{color:#ffd64a;font-size:24px}.difficultyChoices small{color:#fff;font-size:15px}.sidePicker button,.primaryFight{background:#26103b;border:2px solid #ac5cff;border-radius:12px;padding:13px 8px;font-weight:900}.sidePicker .on{background:linear-gradient(100deg,#6d1a82,#ad2fcb);border-color:#ffd24a;box-shadow:0 0 18px #8b2cff88}.teamBlock{text-align:left;background:#160624e8;border:2px solid #7830a3;border-radius:16px;margin:14px 0;padding:14px}.teamBlock>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.teamBlock h3{color:#ffd443;margin:0}.teamBlock strong{white-space:nowrap;color:#ffcc4d}.teamBlock strong.ready{color:#54ec8e}.teamBlock p{color:#eadcf5;margin:7px 0 12px}.lockedTeam{background:linear-gradient(145deg,#311044,#13051f);border-color:#d59a24}.miniCards{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.miniCards button{background:#10051e;border:1px solid #ffc83b;border-radius:6px;padding:0;position:relative;overflow:hidden}.miniCards img{width:100%;display:block}.miniCards b{color:#fff;background:#18a767;border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;display:grid;position:absolute;bottom:2px;right:2px}.knightChoice,.aiCardChoice{grid-template-columns:repeat(3,1fr)}.knightChoice .card i,.aiCardChoice .card i{color:#fff;background:#18a867;border-radius:50%;place-items:center;width:28px;height:28px;font-size:16px;font-style:normal;display:grid;inset:6px 6px auto auto}.aiCardChoice .card.locked{filter:grayscale(.8)brightness(.45)}.aiCardChoice .card.locked:hover{filter:grayscale(.45)brightness(.65)}.cardLock{z-index:2;filter:drop-shadow(0 2px 4px #000);font-size:28px;position:absolute;inset:42% 0 auto}.primaryFight{background:linear-gradient(100deg,#5b177e,#9c2ec1);border-color:#ffd43b;width:100%;font-size:19px;box-shadow:0 0 20px #8b2cff88}.primaryFight:disabled{opacity:.4;box-shadow:none}.teamActions{grid-template-columns:1fr auto;gap:8px;margin:10px 0 14px;display:grid}.teamActions button{color:#fff;background:linear-gradient(100deg,#5b177e,#9229ac);border:2px solid #ffd43b;border-radius:10px;min-height:46px;padding:10px 12px;font-weight:900;box-shadow:0 0 12px #8b2cff66}.teamActions button:last-child{box-shadow:none;background:#26103b;border-color:#9e75bc}.battleLabel{color:#f5dfae;letter-spacing:.04em;margin:-7px 0 16px;font-weight:900}.teamSetup .playerTeam{border-color:#d9a42e;box-shadow:0 0 22px #8b2cff3d}.teamSetup>.primaryFight{z-index:3;min-height:58px;position:sticky;bottom:10px}.fixedCard{background:#12663e;border:2px solid #3de991;border-radius:10px;margin:4px;padding:11px;font-weight:900}.lockedMessage{color:#ffe28a;background:#3b2447;border-color:#d9a543}.board button{position:relative}.board span{place-items:center;width:100%;height:100%;display:inline-grid;position:relative}.board span em{color:#fff;min-width:18px;height:18px;text-shadow:none;background:#23202a;border:1px solid #fff8;border-radius:5px;place-items:center;padding:0 3px;font:900 10px/1 Arial,sans-serif;display:grid;position:absolute;bottom:2px;right:2px}.board span[data-rarity=R] em{background:#087ec9}.board span[data-rarity=SR] em{background:#8725ca}.board span[data-rarity=SCR] em{color:#180a00;background:#d99400}.board .picked{box-shadow:inset 0 0 0 5px #51bdff}.piecePower{text-align:left;background:#160624;border:2px solid #777;border-radius:12px;align-items:center;gap:10px;width:min(94vw,590px);margin:8px auto;padding:8px 10px;display:flex}.piecePower.R{border-color:#36a8ff}.piecePower.SR{border-color:#b14eff}.piecePower.SCR{border-color:#ffd12f;box-shadow:0 0 12px #ffb00066}.piecePower img{object-fit:cover;border-radius:6px;width:55px;height:76px}.piecePower strong{color:#ffd96c}.piecePower p{margin:4px 0 0}.battleScreen>p:first-of-type{color:#f4dfaa;font-weight:800}@media (width<=420px){.miniCards{gap:3px}.teamBlock{padding:10px}.sidePicker button{font-size:13px}.knightChoice{gap:6px}.teamActions{grid-template-columns:1fr}}*{box-sizing:border-box}html,body{color:#fff;background:#090016;margin:0;font-family:Arial,sans-serif}button{font:inherit;color:inherit}.app{background:radial-gradient(circle at 50% 15%,#32114f,#090016 62%);min-height:100svh;padding-bottom:30px}header{z-index:4;background:#10051edb;border-bottom:2px solid #f5be35;justify-content:space-between;align-items:center;height:64px;padding:8px 16px;display:flex;position:sticky;top:0}header button,.stack button,.tabs button,.pack>button,.battleBtns button{background:#26103b;border:2px solid #ac5cff;border-radius:10px;padding:10px 14px}.brand{color:#ffcf37;background:0 0;border:0;font-size:28px;font-weight:900}section{text-align:center;width:min(680px,100%);margin:auto;padding:22px 14px}h2{color:#ffd443;text-shadow:0 0 14px #f70}.home{background:linear-gradient(#0003,#090016dd),url(/assets/menu-main-pac.webp) top/cover no-repeat;flex-direction:column;justify-content:flex-end;min-height:calc(100svh - 64px);display:flex}.hero{margin:auto 0}.hero h1{text-shadow:0 4px #000;font-size:clamp(35px,11vw,68px);line-height:.92}.hero b{color:#ffbd2e}.menuButtons,.stack{gap:12px;display:grid}.menuButtons button,.choices button{background:linear-gradient(100deg,#37105c,#6d1a82);border:2px solid #ffd24a;border-radius:14px;padding:18px;font-size:19px;font-weight:900;box-shadow:0 0 18px #8b2cff88}.choices{gap:18px;margin-top:40px;display:grid}.choices button{align-content:center;gap:12px;min-height:160px;display:grid}.choices strong{font-size:23px}.choices small{font-weight:400}.levelGrid{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.levelGrid button{aspect-ratio:1;background:#5f1b8e;border:2px solid #ffc928;border-radius:50%}.levelGrid button:disabled{opacity:.35}.tabs{justify-content:center;gap:10px;display:flex}.tabs .on{background:#c32dff}.cards{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;display:grid}.card{background:#12051d;border:3px solid #777;border-radius:10px;padding:0;position:relative;overflow:hidden}.card img{width:100%;display:block}.card:disabled{filter:grayscale();opacity:.45}.card.R{border-color:#36a8ff}.card.SR{border-color:#b14eff}.card.SCR{border-color:#ffd12f;box-shadow:0 0 14px #ffb000}.card.equipped:after{content:"✓ ÉQUIPÉE";background:#19a867e8;padding:5px;font-weight:700;position:absolute;bottom:0;left:0;right:0}.card i{font-size:30px;position:absolute;inset:45% 0 auto}.pack{background:url(/assets/menu-packs.webp) 50%/cover no-repeat;min-height:calc(100svh - 64px)}.packVisual{background:linear-gradient(145deg,#8a2fff,#170126);border:7px solid #ffce36;border-radius:20px;justify-content:space-around;align-items:center;width:230px;height:330px;margin:40px auto;font-size:35px;display:flex;box-shadow:0 0 35px #c23cff}.packVisual span{color:#ffcf3a;font-size:54px;font-weight:900}.pack>button{border-color:#ffd43b;font-size:20px;font-weight:900}.notice{color:#ffdc65;min-height:44px;font-weight:700}.board{aspect-ratio:1;border:4px solid #ff9f2c;grid-template-columns:repeat(8,1fr);width:min(94vw,590px);margin:10px auto;display:grid}.board button{border:0;padding:0;font-size:clamp(28px,9vw,58px)}.light{background:#ffebc6}.dark{background:#50155f}.board .legal{box-shadow:inset 0 0 0 6px #41e26d}.pion{color:#ff445d;text-shadow:0 2px 1px #111}.cavalier{color:#fff;text-shadow:0 2px 2px #111}.battleBtns{justify-content:center;gap:8px;display:flex}.modal{z-index:10;background:#030007ef;place-items:center;padding:8px;display:grid;position:fixed;inset:0}.modal article{text-align:center;flex-direction:column;align-items:center;max-width:520px;height:96svh;display:flex}.modal img{object-fit:contain;border-radius:18px;max-width:96vw;height:min(70svh,720px)}.modal h2{margin:6px}.modal p{margin:4px}.modal button{background:#60228c;border:2px solid #ffd43b;border-radius:9px;margin:4px;padding:10px 20px}@media (width>=650px){.cards{grid-template-columns:repeat(4,1fr)}}.home{background:#090016 url(/assets/menu-main-pac-v2.webp) top/100% no-repeat;min-height:100svh;padding:0 14px 22px;position:relative}.home .menuButtons{background:linear-gradient(#090016e8,#090016 18%,#090016);margin:0 -14px -22px;padding:18px 26px 22px}.homeCoins{color:#ffe08a;text-shadow:0 2px 4px #000;place-items:center;width:27vw;max-width:270px;height:clamp(38px,6.4vw,64px);padding-left:clamp(28px,5vw,52px);font-size:clamp(20px,3.8vw,34px);font-weight:900;line-height:1;display:grid;position:absolute;top:clamp(12px,2.4vw,24px);right:clamp(8px,2.2vw,22px);transform:translateY(-8px)}.menuButtons .downloadApp{color:#fff;background:linear-gradient(100deg,#7b3700,#d28a00);border:2px solid #ffe27a;border-radius:14px;place-items:center;padding:18px;font-size:19px;font-weight:900;text-decoration:none;display:grid;box-shadow:0 0 18px #ffad2288}.menuButtons .installStatus{color:#ffe59a;text-align:center;margin:0;padding:8px 12px;font-size:14px;font-weight:700}.board{grid-template-rows:repeat(8,minmax(0,1fr));grid-template-columns:repeat(8,minmax(0,1fr));overflow:hidden}.board button{min-width:0;min-height:0;line-height:1}@media (width<=700px){.battleScreen{padding-top:10px}.battleScreen h2{margin:0 0 5px}.battleScreen>p:first-of-type{margin:4px 0 7px}.battleScreen .board{width:min(94vw,56svh)}.battleScreen .piecePower{margin:7px auto}.battleScreen .notice{min-height:26px;margin:6px 0}}.cardName{color:#fff;text-transform:uppercase;text-shadow:0 1px 3px #000;white-space:nowrap;text-overflow:ellipsis;background:#090016dc;border-radius:5px;padding:4px 3px;font-size:clamp(9px,2.6vw,13px);font-weight:900;position:absolute;bottom:4px;left:4px;right:4px;overflow:hidden}.rarityBadge{color:#ffd33d;background:#090016e6;border-radius:5px;min-width:25px;padding:3px 5px;font-size:11px;font-style:normal;font-weight:900;position:absolute;top:5px;right:5px;box-shadow:0 0 7px #000}.card.equipped .cardName{bottom:29px}.pack{min-height:calc(100svh - 64px);overflow:hidden}.packStage{perspective:900px;place-items:center;min-height:390px;display:grid;position:relative}.packVisual{color:#ffcf3a;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;background:radial-gradient(circle at 50% 30%,#9c42ff,#3c075e 48%,#120019 100%);border:6px solid #ffce36;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:16px;width:min(62vw,250px);height:min(88vw,350px);margin:20px auto;transition:transform .18s,filter .2s;display:flex;position:relative;box-shadow:0 0 35px #c23cff,inset 0 0 35px #13001d}.packVisual:before,.packVisual:after{content:"";background:repeating-linear-gradient(90deg,#f8b82e 0 8px,#5f2377 8px 14px);border-top:2px solid #ffe27b;border-bottom:2px solid #8c4a00;height:12px;position:absolute;left:10px;right:10px}.packVisual:before{top:10px}.packVisual:after{bottom:10px}.packVisual small{letter-spacing:.25em;font-size:14px;font-weight:900}.packVisual span{text-shadow:0 4px #6a2600,0 0 24px #fff3a5;font-size:62px;font-weight:1000}.packVisual b{letter-spacing:.14em;font-size:16px}.packVisual i{opacity:.8;background:linear-gradient(90deg,#0000,#fff,#ffce36,#fff,#0000);height:4px;position:absolute;top:48%;left:-8%;right:-8%;transform:rotate(-7deg);box-shadow:0 0 16px #fff}.packVisual.dragging{cursor:grabbing;filter:brightness(1.2)}.swipeHint,.tapHint{color:#ffe47a;letter-spacing:.04em;margin:4px 0 10px;font-size:14px;font-weight:900;animation:1.2s ease-in-out infinite hintPulse}.swipeTrack{background:#1d092d;border:1px solid #8051a0;border-radius:99px;width:min(72vw,310px);height:8px;margin:0 auto;overflow:hidden}.swipeTrack span{background:linear-gradient(90deg,#a333ff,#fff4a5,#ffbd20);height:100%;transition:width 60ms linear;display:block;box-shadow:0 0 12px #ffd44a}.packPrice{color:#fff;margin:13px 0 0;font-weight:900}.pack-opening .packVisual{animation:.9s cubic-bezier(.2,.8,.2,1) forwards packTear}.packBurst{pointer-events:none;background:radial-gradient(circle,#fff 0,#ffdc56 8%,#a933ff88 30%,#0000 63%);place-items:center;animation:.9s ease-out forwards burstFlash;display:grid;position:absolute;inset:0}.packBurst span{color:#fff6a6;text-shadow:0 0 25px #fff;font-size:72px;position:absolute}.packBurst span:nth-child(2){transform:translate(-105px,-80px)scale(.45)}.packBurst span:nth-child(3){transform:translate(105px,90px)scale(.6)}.pack-revealing{flex-direction:column;justify-content:center;align-items:center;display:flex}.revealCardButton{perspective:1200px;cursor:pointer;background:0 0;border:0;padding:0}.revealedCard{filter:drop-shadow(0 0 25px #9a3cff);width:min(82vw,370px);animation:.72s cubic-bezier(.16,.9,.25,1) both cardReveal;position:relative}.revealedCard img{object-fit:contain;border-radius:18px;width:100%;max-height:67svh;display:block}.revealInfo{text-align:left;background:linear-gradient(#170020df,#08000af5);border:2px solid #ffd33d;border-radius:12px;gap:3px;padding:10px;display:grid;position:absolute;bottom:10px;left:10px;right:10px}.revealInfo em{color:#1a001f;background:#ffd22f;border-radius:6px;justify-self:start;padding:3px 7px;font-size:12px;font-style:normal;font-weight:1000}.revealInfo strong{color:#fff;font-size:18px}.revealInfo span{color:#ffeaa1;font-size:13px;line-height:1.25}.rarity-R{filter:drop-shadow(0 0 25px #2ba7ff)}.rarity-SR{filter:drop-shadow(0 0 28px #b932ff)}.rarity-SCR{filter:drop-shadow(0 0 36px #ffd000)}.packResults{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:28px auto 20px;display:grid}.resultCard{background:#12051d;border:2px solid #795695;border-radius:11px;flex-direction:column;gap:5px;padding:5px;animation:.55s both resultRise;display:flex}.resultCard:nth-child(2){animation-delay:.12s}.resultCard:nth-child(3){animation-delay:.24s}.resultCard img{border-radius:7px;width:100%}.resultCard strong{font-size:12px;line-height:1.1}.resultCard span{color:#ffd743;font-size:12px;font-weight:900}.duplicateGain{color:#ffe68a;font-weight:800}.finishPack{background:linear-gradient(100deg,#37105c,#7f2291);border:2px solid #ffd43b;border-radius:12px;margin-top:12px;padding:14px 30px;font-weight:900;box-shadow:0 0 18px #8b2cff88}@keyframes packTear{0%{filter:brightness();transform:scale(1)rotate(0)}35%{filter:brightness(1.6);transform:scale(1.08)rotate(-4deg)}70%{filter:brightness(2);transform:scale(.92)rotate(7deg)}to{filter:brightness(4);opacity:0;transform:scale(1.55)rotate(-10deg)}}@keyframes burstFlash{0%{opacity:0;transform:scale(.25)}40%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}@keyframes cardReveal{0%{opacity:0;transform:rotateY(100deg)scale(.55)translateY(45px)}65%{opacity:1;transform:rotateY(-7deg)scale(1.04)translateY(0)}to{opacity:1;transform:rotateY(0)scale(1)}}@keyframes resultRise{0%{opacity:0;transform:translateY(30px)scale(.8)}to{opacity:1;transform:none}}@keyframes hintPulse{50%{opacity:.55;transform:scale(.98)}}@media (width<=420px){.packStage{min-height:350px}.packVisual{height:min(83vw,320px)}.revealInfo strong{font-size:16px}.revealInfo span{font-size:12px}}@media (prefers-reduced-motion:reduce){.packVisual,.packBurst,.revealedCard,.resultCard,.swipeHint,.tapHint{animation-duration:.01ms!important;animation-iteration-count:1!important}}
