* { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #root { width: 100%; min-height: 100vh; } /* ============================================ MainLayout responsive styles ============================================ */ /* Tablet: collapse sidebar by default */ @media (max-width: 768px) { .ant-layout-sider { position: fixed !important; z-index: 1000; height: 100vh; } .ant-layout-sider-collapsed { width: 0 !important; min-width: 0 !important; max-width: 0 !important; flex: 0 0 0 !important; overflow: hidden; } .ant-layout-header { padding: 0 12px !important; } .ant-layout-content { margin: 8px !important; padding: 12px !important; } } /* ============================================ Dark mode support ============================================ */ [data-theme='dark'] body { background: #141414; color: rgba(255, 255, 255, 0.85); } [data-theme='dark'] .ant-layout-content { background: #1f1f1f !important; } [data-theme='dark'] .ant-card { background: #1f1f1f; border-color: #303030; } [data-theme='dark'] .ant-table { background: #1f1f1f; } /* BigScreen pages are already dark themed, no overrides needed */ /* Mobile: tighter spacing */ @media (max-width: 375px) { .ant-layout-header { padding: 0 8px !important; height: 48px !important; line-height: 48px !important; } .ant-layout-content { margin: 4px !important; padding: 8px !important; } }