/* Universal Pact art: the seal and chain have no species or elemental emblem. */
.dl-pact-badge { position:absolute; right:-8%; top:26%; width:22%; height:22%; z-index:8; filter:drop-shadow(0 2px 4px #0009); }
.dl-pact-badge img,.dl-unit-pact img { display:block; width:100%; height:100%; object-fit:contain; }
.dl-card.dl-pact .dl-card-body small { font-size:.51em; line-height:1.12; -webkit-line-clamp:6; }
.dl-unit-pact { position:absolute; top:-8%; left:38%; width:28%; height:28%; z-index:5; pointer-events:none; filter:drop-shadow(0 2px 3px #000); }
.dl-unit.pacted .dl-unit-body { box-shadow:0 0 12px #e3c27b88,0 0 26px #e6aa4144; }
.dl-pact-scene { position:fixed; inset:0; z-index:34; pointer-events:none; background:radial-gradient(ellipse at center,#151a26aa,#070a1166); }
.dl-pact-chain { position:fixed; height:20px; transform-origin:0 50%; background:url('/duel/pact-art/chain-neutral.webp') left center/auto 100% repeat-x; filter:drop-shadow(0 2px 2px #000) drop-shadow(0 0 4px #f0dca588); z-index:38; pointer-events:none; }
.dl-pact-cuff { position:fixed; width:94px; height:38px; border:3px solid #d7dce5; border-radius:50%; box-shadow:0 0 0 3px #5a4b33,inset 0 0 8px #fff5,0 0 18px #e7d7ac77; z-index:37; pointer-events:none; }
.dl-pact-core { position:fixed; width:140px; height:140px; margin:-70px 0 0 -70px; border:2px solid #ddc77c; border-radius:50%; box-shadow:0 0 25px #e8ca8166,inset 0 0 35px #e8ca8133; background:repeating-conic-gradient(from 0deg,#e5c36f00 0deg 40deg,#e5c36f88 42deg 43deg,#e5c36f00 44deg 45deg); z-index:35; }
.dl-pact-core>img { position:absolute; inset:25%; width:50%; height:50%; object-fit:contain; }
.dl-pact-caption { position:fixed; top:8%; left:5%; right:5%; text-align:center; color:#f4e4b3; text-shadow:0 2px 10px #000; font-family:var(--font-display,Georgia,serif); z-index:39; }
.dl-pact-caption small { display:block; font:800 12px sans-serif; letter-spacing:.3em; margin-bottom:8px; }
.dl-pact-caption strong { font-size:clamp(20px,3vw,37px); }
.dl-pact-result { position:fixed; z-index:39; transform-origin:center; }
.dl-pact-result .dl-card { margin:0; }
.dl-pact-victim { z-index:37!important; pointer-events:none; }
.rv-pact-offer { position:relative; isolation:isolate; overflow:hidden; margin:18px 0 34px; min-height:660px; gap:40px; padding:48px; border:1px solid #b85c28; border-top:3px solid #ffc776; border-radius:14px; background:#160c0b; box-shadow:0 18px 45px #30100822,0 0 26px #f4792022,inset 0 0 0 1px #f5a35533; }
.rv-pact-atmosphere,.rv-pact-backdrop,.rv-pact-embers { position:absolute; inset:0; pointer-events:none; }
.rv-pact-atmosphere { z-index:0; overflow:hidden; border-radius:inherit; }
.rv-pact-backdrop { background:linear-gradient(90deg,#10090905 15%,#130b0bd9 57%,#130b0bf2 100%),linear-gradient(0deg,#170a09d9,transparent 45%),url('/duel/pact-art/azrath-shop-backdrop.webp') left center/cover no-repeat; }
.rv-pact-atmosphere::after { content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 -30px 70px #ff6b1333,inset 0 0 55px #08050688; }
.rv-pact-fire { position:absolute; bottom:-115px; left:-12%; width:80%; height:340px; border-radius:50%; background:radial-gradient(ellipse at 20% 90%,#ffad4280,transparent 38%),radial-gradient(ellipse at 75% 100%,#ff4b1880,transparent 51%),radial-gradient(ellipse at 50% 100%,#ff911f99,transparent 64%); mix-blend-mode:screen; opacity:.65; transform-origin:center bottom; animation:pact-shop-fire 7s ease-in-out infinite alternate; }
.rv-pact-fire-far { left:auto; right:-30%; width:75%; bottom:-160px; animation-delay:-4s; animation-duration:9s; opacity:.4; }
.rv-pact-embers i { position:absolute; left:var(--x); bottom:-8px; width:var(--size); height:calc(var(--size) * 1.6); border-radius:50% 25% 50% 25%; background:#ffd38d; box-shadow:0 0 5px 1px #ff771b; opacity:0; animation:pact-shop-ember var(--time) linear var(--delay) infinite; }
.rv-pact-offer .rv-evo-showcase,.rv-pact-offer .rv-evo-copy { position:relative; z-index:1; min-width:0; }
.rv-pact-offer .rv-evo-showcase { background:radial-gradient(ellipse at center,#ff901b22,transparent 65%); padding-bottom:65px; }
.rv-pact-offer .rv-evo-showcase::after { content:""; position:absolute; width:80%; max-width:320px; height:60px; bottom:60px; border-radius:50%; background:radial-gradient(ellipse,#ffb33b66,#ff4e1022 45%,transparent 70%); }
.rv-pact-offer .rv-evo-showcase>.dl-card { box-shadow:0 22px 40px #080303cc,0 0 44px #ff7c293d; animation:pact-shop-card 7s ease-in-out infinite; }
.rv-pact-offer .rv-evo-exclusive { bottom:15px; padding:9px 14px; border:1px solid #f3b56566; border-radius:30px; background:#23100de0; color:#ffe0a2; text-align:center; line-height:1.5; letter-spacing:.14em; }
.rv-pact-offer .rv-eyebrow { color:#ffc583; letter-spacing:.16em; }
.rv-pact-offer .rv-evo-copy h2 { color:#fff4db; font-size:clamp(32px,3.7vw,51px); text-shadow:0 2px 20px #ff7a2426; }
.rv-pact-offer .rv-evo-copy h2 em { color:#ffbc6c; }
.rv-pact-offer .rv-evo-copy p { color:#e9d9c9; }
.rv-pact-offer .rv-evo-copy .rv-evo-name { color:#fff0d1; }
.rv-pact-offer .rv-evo-stats span { color:#ffe0b2; }
.rv-pact-offer .rv-evo-stats { padding:12px 0; border-block:1px solid #e7964e33; }
.rv-pact-offer .rv-evo-requirement { color:#d1b5a0; }
.rv-pact-offer .rv-evo-wallet { color:#ffcf94; text-underline-offset:4px; }
.rv-pact-offer :is(button,a,[role="button"]):focus-visible { outline:3px solid #ffd7a1; outline-offset:5px; }
.rv-pact-payments { display:flex; gap:10px; flex-wrap:wrap; margin:18px 0; }
.rv-pact-payments button { flex:1; min-width:140px; margin:0; border:1px solid #ffcb84; border-radius:7px; background:linear-gradient(135deg,#ac3714,#75200e); color:#fff3d6; box-shadow:0 3px 0 #3c1008,0 0 20px #ff78152b; transition:transform .2s,box-shadow .2s; }
.rv-pact-payments button[data-evo-currency="prisms"] { background:linear-gradient(135deg,#513447,#2d182b); border-color:#d7a78e; }
.rv-pact-payments button:hover:enabled { transform:translateY(-2px); box-shadow:0 5px 0 #3c1008,0 0 25px #ff981a55; }
.rv-pact-avatar { display:flex; gap:14px; align-items:center; padding:13px; margin:20px 0; border:1px solid #e9a05c55; border-radius:10px; background:#180d0dbd; color:#ffe0a7; }
.rv-pact-avatar picture { flex:none; }
.rv-pact-avatar img { border-radius:50%; border:2px solid #ca9b58; object-fit:cover; width:72px; height:72px; }
.rv-pact-avatar small { display:block; margin-top:5px; color:#dec6b2; line-height:1.5; }
@keyframes pact-shop-fire { from { transform:translate3d(0,0,0) scale(.96,1); } to { transform:translate3d(14px,-22px,0) scale(1.1,1.16); } }
@keyframes pact-shop-ember { 0% { transform:translate3d(0,0,0) rotate(0); opacity:0; } 12% { opacity:.85; } 70% { opacity:.6; } 100% { transform:translate3d(var(--drift),calc(-1 * var(--rise)),0) rotate(150deg); opacity:0; } }
@keyframes pact-shop-card { 0%,100% { transform:translateY(0) rotate(-2deg); } 50% { transform:translateY(-9px) rotate(0); } }
body.rv-market-motion-paused .rv-pact-offer *,body.rv-market-motion-paused .rv-pact-offer *::after { animation-play-state:paused!important; }
@media(max-width:1000px) and (min-width:721px) { .rv-pact-offer { padding:30px; gap:24px; grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr); }.rv-pact-offer .rv-evo-showcase { padding-inline:0; } }
@media(max-width:720px) { .rv-pact-offer { padding:24px 20px 30px; gap:20px; min-height:0; }.rv-pact-backdrop { background:linear-gradient(0deg,#160c0b 0%,#160c0b 35%,#160c0b11 84%,#160c0b33),url('/duel/pact-art/azrath-shop-backdrop.webp') 28% top/auto 660px no-repeat; }.rv-pact-offer .rv-evo-showcase { min-height:390px; padding:20px 0 55px; }.rv-pact-offer .rv-evo-copy h2 { font-size:38px; }.rv-pact-offer .rv-evo-exclusive { bottom:0; }.rv-pact-avatar { gap:10px; padding:12px; font-size:13px; }.rv-pact-avatar img { width:60px; height:60px; }.rv-pact-fire-near { width:140%; left:-25%; bottom:auto; top:220px; height:260px; }.rv-pact-embers { max-height:630px; } }
@media(prefers-reduced-motion:reduce) { .dl-unit.pacted .dl-art img,.rv-pact-offer .rv-pact-fire,.rv-pact-offer .rv-pact-embers i,.rv-pact-offer .rv-evo-showcase>.dl-card { animation:none!important; }.rv-pact-embers i:nth-child(3n) { bottom:18%; opacity:.5; }.rv-pact-embers i:nth-child(4n) { bottom:35%; opacity:.4; }.rv-pact-payments button { transition:none; } }
