/* Cozy Solitaire - Cards, Foundations, And Card Effects */

/* Original face-up card border color: #ebe8e8 */
.card{width:clamp(41.52px,13vw,70.4px);height:clamp(52.35px,17.33vw,92.06px);background-color:#fff;position:relative;border-radius:4.1px;border:2.35px solid #e5e1e1;overflow:hidden;pointer-events:auto;}
.card-face{position:absolute;inset:0;}
.card-front{display:block;}
.card-back{display:none;background-repeat:no-repeat;background-position:center;background-size:120%;}
.card.face-up .card-front{display:block;}
.card.face-up .card-back{display:none;}
.card.face-down .card-front{display:none;}
.card.face-down .card-back{display:block;}
.card-top{position:absolute;top:2.81px;left:5.92px;font-size:clamp(10.83px,2.17vw,18.05px);font-weight:bold;line-height:1;}
.mini-suit{margin-left:-.5px;}
.card-center{position:absolute;top:60%;left:50%;transform:translate(-50%,-50%);font-size:clamp(26.17px,5.42vw,52.35px);line-height:1;}
.card[data-suit="diamonds"] .big-suit,.card[data-suit="hearts"] .big-suit{color:red;}
.card[data-suit="clubs"] .big-suit,.card[data-suit="spades"] .big-suit{color:black;}
.card[data-face-up="false"]{background-repeat:no-repeat;background-position:center;background-size:120%;color:transparent !important;border:2.4px solid #000;}
#stock .card,#waste .card{position:absolute;top:0;left:0;}
#stock:not(:has(.card)):has(+ #waste .card){border:2px solid rgba(245,248,255,.38);border-radius:4px;background:rgba(42,42,42,.58);}
#stock:not(:has(.card)):has(+ #waste .card)::after{content:"\21B6";position:absolute;inset:0;display:grid;place-items:center;color:rgba(235,241,247,.46);font-size:calc(clamp(52.35px,17.33vw,92.06px) * .46);font-weight:700;line-height:1;pointer-events:none;transform:rotate(35deg);}
.card *{pointer-events:none;}
.drag-stack-preview{position:fixed;z-index:2147483647;pointer-events:none;}

.foundation{position:relative;width:clamp(41.52px,13vw,70.4px);height:clamp(52.35px,17.33vw,92.06px);background-repeat:no-repeat;background-position:center;background-size:contain;z-index:1;display:flex;align-items:center;justify-content:center;}
.foundation-bg{position:absolute;width:calc(clamp(41.52px,13vw,70.4px) - 5px);height:calc(clamp(52.35px,17.33vw,92.06px) - 5px);overflow:hidden;pointer-events:none;margin-top:2.5px;margin-left:2.5px;z-index:0;opacity:.4;}

@keyframes suit-pop{0%{transform:scale(1);opacity:0;}50%{transform:scale(2.5);opacity:1;}100%{transform:scale(1.75);opacity:0;}}
.suit-animation{font-size:24px;font-weight:bold;pointer-events:none;animation:suit-pop 1s ease-out forwards;}
/* Previous foundation text pop: .45s, peak scale 1.25 */
@keyframes card-face-pop{0%{transform:scale(1);opacity:1;}50%{transform:scale(1.175);opacity:1;}100%{transform:scale(1);opacity:1;}}
.foundation-pop-text{display:inline-block;transform-origin:center;animation:card-face-pop .45s ease-out forwards;}
