.demo-container { padding: 2rem; max-width: 1200px; margin: 0 auto; } .demo-section { margin-bottom: 3rem; h3 { font-size: 1.5rem; color: #1f2937; margin-bottom: 1rem; border-bottom: 1px solid #d1d5db; padding-bottom: 0.5rem; } } .demo-subsection { margin-bottom: 1.5rem; h4 { font-size: 1.125rem; color: #4b5563; margin-bottom: 0.75rem; } } .demo-row { display: flex; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; } .demo-column { display: flex; flex-direction: column; gap: 0.75rem; margin-bottom: 1rem; } .demo-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 1.5rem; margin-bottom: 1rem; } .demo-item { display: flex; flex-direction: column; gap: 0.5rem; padding: 1rem; background: #f9fafb; border-radius: 0.5rem; border: 1px solid #e5e7eb; label { font-size: 0.75rem; font-weight: 600; color: #6b7280; text-transform: uppercase; letter-spacing: 0.5px; } } .demo-interactive { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 0.75rem; padding: 1.5rem; .demo-controls { display: flex; gap: 1rem; align-items: center; margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid #e5e7eb; .toggle-button { background: #3b82f6; color: white; border: none; border-radius: 0.5rem; padding: 0.5rem 1rem; font-size: 0.875rem; font-weight: 600; cursor: pointer; transition: all 0.2s ease; &:hover { background: #2563eb; transform: translateY(-2px); box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1); } &:active { transform: translateY(0); } } label { display: flex; align-items: center; gap: 0.5rem; font-size: 0.875rem; color: #6b7280; select { background: #ffffff; border: 1px solid #d1d5db; border-radius: 0.25rem; padding: 0.25rem; font-size: 0.875rem; color: #1f2937; &:focus { outline: 2px solid #3b82f6; outline-offset: 2px; } } } } .demo-content { min-height: 400px; .real-content { h3 { font-size: 1.5rem; color: #1f2937; margin-bottom: 0.5rem; } .meta { font-size: 0.875rem; color: #9ca3af; margin-bottom: 1rem; } img { width: 100%; max-width: 400px; height: auto; border-radius: 0.5rem; margin-bottom: 1rem; } p { font-size: 1rem; line-height: 1.5; color: #1f2937; margin-bottom: 0.75rem; } } } } .best-practices { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 0.5rem; padding: 1.5rem; ul { list-style: none; padding: 0; margin: 0; li { font-size: 1rem; color: #1f2937; margin-bottom: 0.75rem; padding-left: 1rem; position: relative; &::before { content: '✓'; position: absolute; left: 0; color: #10b981; font-weight: bold; } strong { color: #1f2937; font-weight: 600; } } } } .code-examples { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1rem; .code-example { background: #f9fafb; border: 1px solid #e5e7eb; border-radius: 0.5rem; padding: 1rem; h4 { font-size: 0.875rem; color: #6b7280; margin-bottom: 0.5rem; text-transform: uppercase; letter-spacing: 0.5px; } pre { background: #ffffff; border-radius: 0.25rem; padding: 0.5rem; margin: 0; overflow-x: auto; code { font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace; font-size: 0.875rem; color: #1f2937; white-space: pre; line-height: 1.4; } } } } // Responsive adjustments @media (max-width: 768px) { .demo-container { padding: 1rem; } .demo-row { flex-direction: column; } .demo-grid { grid-template-columns: 1fr; } .demo-interactive .demo-controls { flex-direction: column; align-items: flex-start; gap: 0.5rem; } .code-examples { grid-template-columns: 1fr; } } // Dark mode adjustments (if needed in the future) @media (prefers-color-scheme: dark) { .demo-item { background: #374151; border-color: #4b5563; label { color: #9ca3af; } } .demo-interactive { background: #374151; border-color: #4b5563; .demo-controls label select { background: #4b5563; border-color: #6b7280; color: #f3f4f6; } } .best-practices { background: #374151; border-color: #4b5563; ul li { color: #f3f4f6; strong { color: #f3f4f6; } } } .code-examples .code-example { background: #374151; border-color: #4b5563; h4 { color: #9ca3af; } pre { background: #4b5563; code { color: #f3f4f6; } } } .demo-section h3 { color: #f3f4f6; border-color: #6b7280; } .demo-subsection h4 { color: #d1d5db; } }