.poker-table {
    position: relative;
    flex: 1;
    min-height: 0;
    min-width: 0;
    display: flex;
    padding: clamp(0.75rem, 1.5vw, 1.25rem);
    border-radius: 28px;
    border: 1px solid var(--pico-muted-border-color);
    background: radial-gradient(120% 120% at var(--poker-cursor-x, 50%) var(--poker-cursor-y, 40%), var(--pico-card-background-color) 0%, var(--pico-background-color) 60%);
    overflow: hidden;
    margin-top: 15px;
}

.poker-table::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle at 18% 18%, color-mix(in srgb, var(--pico-primary) 18%, transparent) 0%, transparent 60%),
        radial-gradient(circle at 85% 12%, color-mix(in srgb, var(--pico-muted-border-color) 45%, transparent) 0%, transparent 60%),
        repeating-linear-gradient(135deg, color-mix(in srgb, var(--pico-muted-border-color) 50%, transparent) 0 1px, transparent 1px 6px);
    opacity: 0.5;
    pointer-events: none;
}

.poker-layout {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
        "summary"
        "play"
        "players";
    gap: 0.8rem;
}

.poker-zone {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    min-height: 0;
    min-width: 0;
}

.poker-zone--summary {
    grid-area: summary;
}

.poker-zone--play {
    grid-area: play;
}

.poker-zone--players {
    grid-area: players;
}

.poker-panel {
    padding: 0.85rem 1rem;
    border-radius: 18px;
    border: 1px solid var(--pico-muted-border-color);
    background: var(--pico-card-background-color);
    box-shadow: 0 18px 32px color-mix(in srgb, var(--pico-color) 12%, transparent);
    min-width: 0;
}

.poker-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.35rem;
    flex-wrap: wrap;
}

.poker-panel__header h3 {
    margin: 0;
}

.poker-panel__header p {
    margin: 0;
    color: var(--pico-muted-color);
    font-size: 0.85rem;
}

.poker-summary {
    position: relative;
    overflow: hidden;
    min-width: 0;
    box-shadow: none;
}

.poker-summary__meta {
    min-width: 0;
    width: min(100%, 220px);
}

.poker-summary.is-revealed.is-animated .poker-stat,
.poker-summary.is-revealed.is-animated .poker-result-card {
    animation: poker-rise 0.45s ease both;
    animation-delay: calc(var(--i, 0) * 0.08s);
}

@keyframes poker-rise {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.poker-controls-panel {
    display: grid;
    gap: 0.6rem;
}
