imeeting/frontend/src/index.css

182 lines
3.7 KiB
CSS
Raw Normal View History

2026-03-17 07:31:09 +00:00
:root {
--app-primary-color: #1677ff;
--app-bg-main: radial-gradient(circle at top, rgba(56, 154, 255, 0.08), transparent 26%), linear-gradient(180deg, #f3f7fb 0%, #eef3f8 100%);
--app-bg-card: rgba(255, 255, 255, 0.92);
--app-text-main: #1f2937;
--app-border-color: rgba(15, 93, 166, 0.06);
--app-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
}
:root[data-theme="minimal"] {
--app-bg-main: #f9fafb;
--app-bg-card: #ffffff;
--app-text-main: #111827;
--app-border-color: #e5e7eb;
--app-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
}
:root[data-theme="tech"] {
--app-bg-main: radial-gradient(circle at 50% 0%, rgba(22, 119, 255, 0.15), transparent 40%), #0d1117;
--app-bg-card: rgba(30, 41, 59, 0.7);
--app-text-main: #e2e8f0;
--app-border-color: rgba(22, 119, 255, 0.2);
--app-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}
body {
margin: 0;
padding: 0;
2026-03-17 07:31:09 +00:00
background: var(--app-bg-main);
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,
2026-03-17 07:31:09 +00:00
'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',
'Noto Color Emoji';
color: var(--app-text-main);
transition: background 0.3s ease, color 0.3s ease;
}
.ant-layout {
background: transparent !important;
}
.ant-layout-sider {
2026-03-17 07:31:09 +00:00
background: var(--app-bg-card) !important;
border-right: 1px solid var(--app-border-color);
transition: background 0.3s ease;
}
.ant-menu-light {
background: transparent !important;
2026-03-17 07:31:09 +00:00
color: var(--app-text-main) !important;
}
.ant-menu-light .ant-menu-item a {
color: var(--app-text-main) !important;
}
/* Sider animation refinement */
.app-sider .ant-layout-sider-children {
display: flex;
flex-direction: column;
}
/* Scrollbar styling */
::-webkit-scrollbar {
width: 6px;
height: 6px;
}
::-webkit-scrollbar-thumb {
background: #ccc;
border-radius: 3px;
}
::-webkit-scrollbar-track {
background: #f1f1f1;
}
2026-03-17 07:31:09 +00:00
#root {
min-height: 100vh;
}
.app-page {
height: 100%;
padding: 24px;
display: flex;
flex-direction: column;
overflow: auto;
}
.app-page--contained {
max-width: 1280px;
margin: 0 auto;
}
.app-page__filter-card,
.app-page__content-card,
.app-page__panel-card {
border: 1px solid var(--app-border-color);
border-radius: 16px !important;
box-shadow: var(--app-shadow);
background: var(--app-bg-card);
backdrop-filter: blur(10px);
transition: background 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}
.app-page__filter-card {
margin-bottom: 16px;
flex-shrink: 0;
}
.app-page__content-card {
min-height: 0;
}
.app-page__content-card .ant-card-body,
.app-page__panel-card .ant-card-body {
min-height: 0;
}
.app-page__toolbar {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}
.app-page__page-actions {
display: flex;
justify-content: flex-end;
align-items: center;
margin: -8px 0 16px;
}
.app-page__page-actions .ant-btn {
min-width: 96px;
border-radius: 10px !important;
}
.app-page__toolbar .ant-input,
.app-page__toolbar .ant-input-affix-wrapper,
.app-page__toolbar .ant-select-selector,
.app-page__toolbar .ant-picker,
.app-page__toolbar .ant-input-number,
.app-page__toolbar .ant-btn {
border-radius: 10px !important;
}
.app-page__toolbar .ant-btn {
min-width: 88px;
}
.app-page__drawer-footer {
display: flex;
justify-content: flex-end;
gap: 12px;
padding: 8px 4px 4px;
}
.app-page__split {
flex: 1;
min-height: 0;
}
.app-page__empty-state {
height: 100%;
display: flex;
align-items: center;
justify-content: center;
background: rgba(255, 255, 255, 0.78);
border-radius: 16px;
border: 1px dashed rgba(148, 163, 184, 0.5);
}
.tabular-nums {
font-variant-numeric: tabular-nums;
}
@media (max-width: 768px) {
.app-page {
padding: 16px;
}
}