/* Pyramid Solitaire — Styles */

/* Pyramid layout */
.pyramid-grid {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 16px 8px 10px;
    gap: 0;
}

.pyramid-row {
    display: flex;
    justify-content: center;
    margin-top: -30px; /* overlap rows */
    gap: 4px;
}

.pyramid-row:first-child {
    margin-top: 0;
}

/* Card sizing for pyramid */
#pyramid-game {
    --syv-card-w: 70px;
    --syv-card-h: 100px;
}

#pyramid-game .syvkabale-card,
#pyramid-game .syvkabale-slot {
    width: var(--syv-card-w);
    height: var(--syv-card-h);
}

#pyramid-game .syvkabale-card-center {
    font-size: 22px;
}

#pyramid-game .syvkabale-card-rank {
    font-size: 12px;
}

/* Empty space for removed cards */
.pyramid-card-space {
    width: var(--syv-card-w, 70px);
    height: var(--syv-card-h, 100px);
    visibility: hidden;
}

/* Blocked/dimmed cards */
.pyramid-blocked {
    opacity: 0.5;
    pointer-events: none;
}

.pyramid-dimmed {
    opacity: 0.55;
    pointer-events: none;
}

/* Bottom area: stock + waste */
.pyramid-bottom {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 12px;
    margin-top: 8px;
}

.pyramid-stock-area,
.pyramid-waste-area {
    position: relative;
}

/* No moves overlay */
.pyramid-no-moves {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(0,0,0,0.85);
    color: #ffd700;
    padding: 16px 28px;
    border-radius: 14px;
    text-align: center;
    z-index: 1500;
    animation: pyr-fade-in 0.3s ease-out;
}

.pyramid-no-moves p {
    margin: 0 0 12px;
    font-size: 16px;
    font-weight: 600;
}

@keyframes pyr-fade-in {
    from { opacity: 0; transform: translateX(-50%) translateY(10px); }
    to { opacity: 1; transform: translateX(-50%) translateY(0); }
}

/* Responsive */
@media (max-width: 600px) {
    #pyramid-game {
        --syv-card-w: 46px;
        --syv-card-h: 68px;
    }

    .pyramid-row {
        margin-top: -20px;
        gap: 2px;
    }

    #pyramid-game .syvkabale-card-center { font-size: 16px; }
    #pyramid-game .syvkabale-card-rank { font-size: 10px; }
    #pyramid-game .syvkabale-card-suit-small { font-size: 7px; }

    .pyramid-bottom { gap: 12px; padding: 8px; }
    .pyramid-card-space { width: 46px; height: 68px; }
}
