#map .world-actor.soul-projection canvas{opacity:.66;filter:brightness(1.35) saturate(.45) drop-shadow(0 0 4px #adf4ff) drop-shadow(0 0 13px #56b7deaa)!important}
.world-hero.soul-projection .actor-label{color:#dcfaff;border-color:#7fcedc99;box-shadow:0 0 12px #6eddf55c;background:#102232ed}
.soul-projection .actor-label,.soul-body .actor-label{white-space:nowrap;width:max-content}
.soul-projection .actor-shadow{background:radial-gradient(ellipse,#a5eeff88,transparent 68%);box-shadow:0 0 18px #89dfff66}
.soul-body canvas{opacity:.93}.world-hero.soul-body .actor-label{color:#c9c4bd;background:#171d29ed}.soul-body{pointer-events:none}
.soul-walk-banner{position:absolute;z-index:55;left:50%;transform:translateX(-50%);bottom:calc(86px + env(safe-area-inset-bottom));width:min(370px,calc(100% - 24px));display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(135deg,#101a2bf5,#172c39f7);border:1px solid #7dc4de80;border-radius:17px;box-shadow:0 5px 24px #0009,0 0 19px #5dabc224;color:#d8f5fa}
.soul-walk-banner[hidden]{display:none}.soul-walk-banner>img{width:44px;height:52px;object-fit:contain}.soul-walk-banner>div{display:grid;grid-template-columns:1fr auto;gap:3px 8px;flex:1;min-width:0}.soul-walk-banner strong{font-size:12px}.soul-walk-banner [data-soul-clock]{font-size:15px;font-variant-numeric:tabular-nums;color:#bdeeff}.soul-walk-banner small{grid-column:1/-1;font-size:10px;line-height:1.3;color:#b3cbd4}.soul-walk-banner button{width:90px;min-height:44px;padding:6px;font-size:11px;background:#20394d;border:1px solid #82bbd05e;border-radius:10px}
.soul-walking .encounter-resume{bottom:calc(178px + env(safe-area-inset-bottom))}.soul-walking .first-world-guide{display:none}
.soul-test-item{display:flex;gap:12px;margin:16px 0;padding:14px 10px;border:1px solid #69a7c955;border-radius:14px;background:#111f2f}.soul-test-item>img{width:64px;height:82px;object-fit:contain;flex:none}.soul-test-item>div{min-width:0;flex:1}.soul-test-item p{font-size:12px;line-height:1.45;color:#b6cbd5}.soul-test-item button{font-size:12px;white-space:normal}.soul-item-showcase img{filter:drop-shadow(0 0 12px #57c6e655)}
@media(max-width:360px){.soul-walk-banner{gap:6px;padding:9px}.soul-walk-banner>img{width:32px;height:44px}.soul-walk-banner strong{font-size:11px}.soul-walk-banner button{width:78px;font-size:10px}}
.soul-test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.soul-test-grid .soul-test-item{margin:0;display:block;text-align:center}.soul-test-grid .soul-test-item>img{width:76px;height:76px}.soul-test-items h3{font-size:16px;margin:16px 0 10px}.soul-test-grid strong{font-size:13px}.soul-test-grid p{font-size:11px;min-height:30px}.soul-test-grid button{font-size:11px;padding:9px 5px}
.soul-aura-banner{position:absolute;z-index:54;bottom:calc(86px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;width:min(310px,calc(100% - 24px));padding:8px 12px;border:1px solid #9dbdf15c;border-radius:14px;background:linear-gradient(120deg,#18233bf0,#132f3cf5);box-shadow:0 3px 20px #0009;pointer-events:none;color:#def6ff}.soul-aura-banner>img{width:35px;height:35px;object-fit:contain}.soul-aura-banner>div{display:grid;gap:2px;flex:1;min-width:0}.soul-aura-banner strong{font-size:12px}.soul-aura-banner span{font-size:10px;color:#c5d8ee}.soul-aura-banner time{font-size:15px;font-variant-numeric:tabular-nums;color:#c3d9ff}.soul-walking .soul-aura-banner{bottom:calc(171px + env(safe-area-inset-bottom))}
body:has(.soul-aura-banner:not([hidden])) .encounter-resume{bottom:calc(152px + env(safe-area-inset-bottom))}body.soul-walking:has(.soul-aura-banner:not([hidden])) .encounter-resume{bottom:calc(237px + env(safe-area-inset-bottom))}
.soul-walking #map .ol-attribution{bottom:calc(170px + env(safe-area-inset-bottom))!important}body:has(.soul-aura-banner:not([hidden])) #map .ol-attribution{bottom:calc(147px + env(safe-area-inset-bottom))!important}body.soul-walking:has(.soul-aura-banner:not([hidden])) #map .ol-attribution{bottom:calc(235px + env(safe-area-inset-bottom))!important}
