@use '../../../../../shared-ui/src/styles/semantic' as tokens; .demo-container { padding: tokens.$semantic-spacing-layout-md; max-width: 1200px; margin: 0 auto; } .demo-section { margin-bottom: tokens.$semantic-spacing-layout-lg; h3 { margin-bottom: tokens.$semantic-spacing-component-md; color: tokens.$semantic-color-text-primary; font-size: 1.25rem; font-weight: 600; } h4 { margin-bottom: tokens.$semantic-spacing-component-sm; color: tokens.$semantic-color-text-secondary; font-size: 1.125rem; font-weight: 500; } p { color: tokens.$semantic-color-text-secondary; margin-bottom: tokens.$semantic-spacing-component-md; } } .demo-row { display: flex; flex-wrap: wrap; gap: tokens.$semantic-spacing-layout-md; } .demo-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: tokens.$semantic-spacing-layout-md; } .demo-spacer-container { display: flex; flex-direction: column; align-items: center; min-width: 200px; margin-bottom: tokens.$semantic-spacing-component-lg; } .demo-direction-container { padding: tokens.$semantic-spacing-component-md; border: 1px solid tokens.$semantic-color-border-subtle; border-radius: tokens.$semantic-border-radius-md; } .demo-horizontal-container { display: flex; align-items: center; border: 2px dashed tokens.$semantic-color-border-subtle; border-radius: tokens.$semantic-border-radius-sm; padding: tokens.$semantic-spacing-component-sm; min-height: 60px; } .demo-vertical-container { display: flex; flex-direction: column; align-items: center; border: 2px dashed tokens.$semantic-color-border-subtle; border-radius: tokens.$semantic-border-radius-sm; padding: tokens.$semantic-spacing-component-sm; min-height: 160px; } .demo-flex-container { margin-bottom: tokens.$semantic-spacing-component-lg; } .demo-flex-row { display: flex; align-items: center; border: 2px dashed tokens.$semantic-color-border-subtle; border-radius: tokens.$semantic-border-radius-sm; padding: tokens.$semantic-spacing-component-sm; min-height: 60px; width: 100%; } .demo-flex-column { display: flex; flex-direction: column; align-items: center; border: 2px dashed tokens.$semantic-color-border-subtle; border-radius: tokens.$semantic-border-radius-sm; padding: tokens.$semantic-spacing-component-sm; height: 200px; width: 100%; } .demo-box { background: tokens.$semantic-color-container-primary; color: tokens.$semantic-color-on-container-primary; padding: tokens.$semantic-spacing-component-sm; border-radius: tokens.$semantic-border-radius-sm; font-weight: 500; min-width: 60px; text-align: center; } .demo-label { font-size: 0.875rem; color: tokens.$semantic-color-text-secondary; margin-bottom: tokens.$semantic-spacing-component-xs; text-align: center; font-weight: 500; } .demo-card { background: tokens.$semantic-color-surface-primary; border: 1px solid tokens.$semantic-color-border-subtle; border-radius: tokens.$semantic-border-radius-md; padding: tokens.$semantic-spacing-component-lg; max-width: 400px; .demo-card-header { font-weight: 600; color: tokens.$semantic-color-text-primary; font-size: 1.125rem; } .demo-card-content { color: tokens.$semantic-color-text-secondary; line-height: 1.5; } .demo-card-actions { display: flex; align-items: center; } } .demo-button { background: tokens.$semantic-color-surface-secondary; color: tokens.$semantic-color-text-primary; border: 1px solid tokens.$semantic-color-border-subtle; border-radius: tokens.$semantic-border-radius-sm; padding: tokens.$semantic-spacing-component-sm tokens.$semantic-spacing-component-md; font-size: 0.875rem; cursor: pointer; &--primary { background: tokens.$semantic-color-container-primary; color: tokens.$semantic-color-on-container-primary; border-color: tokens.$semantic-color-container-primary; } &:hover { opacity: 0.9; } } @media (max-width: 768px) { .demo-row { flex-direction: column; } .demo-grid { grid-template-columns: 1fr; } .demo-spacer-container { min-width: auto; } }