/* Atmosphere lives in the art window, below names/marks, never on the face. */
.card{--life-tint:var(--rc,#b9d7fb);--life-power:.72;--life-pointer-x:calc(var(--mx,.5)*100%);--life-pointer-y:calc(var(--my,.4)*100%)}
.card.r-C,.card.r-U{--life-power:.4}.card.fin-gold{--life-tint:#ffe9a5}.card.fin-sakura{--life-tint:#ffc1d7}.card.fin-star{--life-tint:#c8ecff}.card.fin-ice,.card.fin-etch{--life-tint:#dcf7ff}.card.fin-prism{--life-tint:#dddcff}.card.holo-card{--life-pointer-x:var(--light-x,50%);--life-pointer-y:var(--light-y,40%)}
.card>.card-life{position:absolute;inset:var(--F) var(--F) calc(var(--F) + var(--P) - var(--S));z-index:5;border-radius:var(--Ri);overflow:hidden;pointer-events:none;opacity:0;contain:paint;transition:opacity .35s;isolation:isolate}
.card.life-idle>.card-life{opacity:var(--life-power)}.card.life-active{--life-power:1}
.card-life__light{position:absolute;inset:-3%;pointer-events:none;border-radius:inherit;background:radial-gradient(ellipse at var(--life-pointer-x) var(--life-pointer-y),color-mix(in srgb,var(--life-tint) 38%,transparent),transparent 44%),linear-gradient(115deg,transparent 38%,#ffffff38 49%,transparent 59%);mask-image:radial-gradient(ellipse at 50% 38%,transparent 35%,#000 85%);opacity:.18;animation:card-life-breathe 5.6s ease-in-out infinite;animation-play-state:paused}
.card-life__particle{position:absolute;left:var(--px);top:var(--py);width:clamp(2px,calc(var(--u)*2.1),7px);height:clamp(2px,calc(var(--u)*2.1),7px);color:var(--life-tint);background:currentColor;clip-path:polygon(50% 0,60% 39%,100% 50%,60% 61%,50% 100%,40% 61%,0 50%,40% 39%);opacity:0;animation:card-life-rise var(--duration) ease-in-out infinite;animation-delay:var(--delay);animation-play-state:paused}
.card.life-idle>.card-life :is(.card-life__light,.card-life__particle){animation-play-state:running}
.card.life-active>.card-life .card-life__light{opacity:.48;background:radial-gradient(ellipse at var(--life-pointer-x) var(--life-pointer-y),color-mix(in srgb,var(--life-tint) 58%,transparent),transparent 48%),linear-gradient(115deg,transparent 35%,#ffffff66 49%,transparent 62%)}
.card.fin-gold .card-life__particle{width:clamp(2px,calc(var(--u)*1.3),4px);height:clamp(2px,calc(var(--u)*1.3),4px);clip-path:none;border-radius:50%;box-shadow:0 0 3px #fff0b466}
.card.fin-sakura .card-life__particle{width:clamp(3px,calc(var(--u)*3.2),10px);height:clamp(4px,calc(var(--u)*4.1),13px);clip-path:polygon(50% 18%,68% 0,95% 24%,100% 50%,75% 85%,50% 100%,17% 78%,0 43%,12% 12%,32% 0);--dy:24px!important}
.card.fin-ice .card-life__particle{clip-path:polygon(50% 0,100% 30%,70% 100%,0 70%);height:clamp(4px,calc(var(--u)*3.3),12px)}
.card.fin-etch .card-life__particle{clip-path:none;width:1px;height:clamp(4px,calc(var(--u)*3.8),12px);rotate:30deg}
.card.fin-star .card-life__particle:nth-child(odd){width:clamp(2px,calc(var(--u)*1.1),4px);height:clamp(2px,calc(var(--u)*1.1),4px);clip-path:none;border-radius:50%}
.card.fin-prism .card-life__particle:nth-child(3n){color:#c3ffe8}.card.fin-prism .card-life__particle:nth-child(3n + 1){color:#ffd3ef}
.card-life__particle:nth-child(odd){translate:calc(var(--life-px,var(--relief-x,var(--tx,0)))*var(--u)*2) calc(var(--life-py,var(--relief-y,var(--ty,0)))*var(--u)*1.5)}
.card-life__particle:nth-child(even){translate:calc(var(--life-px,var(--relief-x,var(--tx,0)))*var(--u)*-1.4) calc(var(--life-py,var(--relief-y,var(--ty,0)))*var(--u)*-1)}
@keyframes card-life-rise{0%,100%{opacity:0;transform:translate3d(0,0,0) rotate(0) scale(.3)}22%{opacity:.8}68%{opacity:.65}90%{opacity:0;transform:translate3d(var(--dx),var(--dy),0) rotate(var(--spin)) scale(.8)}}
@keyframes card-life-breathe{0%,100%{transform:translate3d(-1%,0,0);opacity:.12}50%{transform:translate3d(1%,0,0);opacity:.3}}
@media(hover:none),(pointer:coarse){.card>.card-life{--life-power:.5}.card-life__particle:nth-child(n+5){display:none}.card-life__light{display:none}}
@media(prefers-reduced-motion:reduce){.card>.card-life{display:none;transition:none}.card>.card-life *{animation:none!important}}
html.lite .card>.card-life{display:none}html.lite .card>.card-life *{animation:none!important}
