.demo {
    touch-action: none;
    border: 1px solid var(--border);
    border-radius: 2em;
    aspect-ratio: 1;
    max-width: 90%;
}

.gallery:has(.demo) {
    & {
        margin-bottom: 2em;
    }

    .demo {
        margin: 0;
        padding: 0;
        width: 100%;
        max-width: 100%;
        aspect-ratio: 1;
        border: 1px solid oklch(from var(--background) calc(l + 0.05) c h);
        background: oklch(from var(--background) calc(l - 0.025) c h);
        border-radius: 1em;
    }
}

div:has(>.demo) {
    display: flex;
    justify-content: center;
}