/* Rifts to World 2 (js/rift.js). */
body.lsx-in-world2 { box-shadow: inset 0 0 120px 30px rgba(168, 85, 247, 0.55); }
body.lsx-in-world2 #game-container { outline: 3px solid #a855f7; outline-offset: 4px; border-radius: 18px; }
.lsx-rift-banner { position: fixed; z-index: 1070; top: 12px; left: 50%; display: flex; flex-wrap: wrap; gap: 0.6rem; align-items: center; justify-content: center; max-width: calc(100vw - 32px); padding: 0.55rem 1.1rem; border: 2px solid #c084fc; border-radius: 999px; background: linear-gradient(90deg, #2e1065, #6b21a8, #2e1065); color: #fff; font-weight: 700; box-shadow: 0 0 24px rgba(168, 85, 247, 0.7); transform: translateX(-50%); }
.lsx-rift-banner strong { color: #f0abfc; text-transform: uppercase; letter-spacing: 0.05em; }
.lsx-rift-banner span:last-child { font-size: 0.85rem; opacity: 0.9; }
.lsx-rift-banner__swirl { width: 1.4rem; height: 1.4rem; border-radius: 50%; background: conic-gradient(#f0abfc, #6366f1, #22d3ee, #f0abfc); animation: lsx-rift-spin 1.2s linear infinite; }
.lsx-rift-flash { position: fixed; z-index: 1080; inset: 0; pointer-events: none; background: radial-gradient(circle, rgba(240, 171, 252, 0.9), rgba(107, 33, 168, 0.6) 35%, transparent 70%); animation: lsx-rift-open 1.4s ease-out forwards; }
@keyframes lsx-rift-spin { to { transform: rotate(360deg); } }
@keyframes lsx-rift-open { from { transform: scale(0.1) rotate(0deg); opacity: 1; } to { transform: scale(2.5) rotate(270deg); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .lsx-rift-banner__swirl { animation: none; } }
