.slm-page {
    display: flex;
    flex-direction: column;
    gap: var(--slm-space-6);
}

.slm-surface {
    background: var(--slm-surface);
    border: 1px solid var(--slm-border);
    border-radius: var(--slm-radius-md);
}

.slm-shadow-sm { box-shadow: var(--slm-shadow-sm); }
.slm-shadow-md { box-shadow: var(--slm-shadow-md); }
.slm-shadow-lg { box-shadow: var(--slm-shadow-lg); }

.slm-gap-2 { gap: var(--slm-space-2); }
.slm-gap-3 { gap: var(--slm-space-3); }
.slm-gap-4 { gap: var(--slm-space-4); }
.slm-gap-6 { gap: var(--slm-space-6); }

.slm-p-4 { padding: var(--slm-space-4); }
.slm-p-6 { padding: var(--slm-space-6); }
.slm-px-4 { padding-inline: var(--slm-space-4); }
.slm-py-4 { padding-block: var(--slm-space-4); }

.slm-stack > * + * {
    margin-top: var(--slm-space-4);
}
