баги
This commit is contained in:
@@ -51,15 +51,13 @@
|
||||
/* ===== Cards ===== */
|
||||
.card {
|
||||
background: var(--bg-card);
|
||||
backdrop-filter: blur(20px);
|
||||
-webkit-backdrop-filter: blur(20px);
|
||||
border: 1px solid var(--bg-card-border);
|
||||
border-radius: var(--radius-md);
|
||||
padding: 1.75rem;
|
||||
position: relative;
|
||||
overflow: visible;
|
||||
transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
|
||||
animation: slideUpCard 0.5s cubic-bezier(0.25, 0.8, 0.25, 1) both;
|
||||
/* Непрозрачная поверхность не требует фильтрации и трансформации фонового слоя. */
|
||||
transition: background-color var(--transition), border-color var(--transition), box-shadow var(--transition);
|
||||
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
|
||||
}
|
||||
|
||||
@@ -2870,6 +2868,51 @@ input[type="number"] {
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
/* React-селекты не создают соседние DOM-узлы через MutationObserver. */
|
||||
.react-custom-select {
|
||||
position: relative;
|
||||
min-width: 0;
|
||||
}
|
||||
|
||||
.react-custom-select select[hidden] {
|
||||
display: none !important;
|
||||
}
|
||||
|
||||
.card:has(.react-custom-select.select-layer-active),
|
||||
.settings-card:has(.react-custom-select.select-layer-active) {
|
||||
position: relative;
|
||||
z-index: 10001;
|
||||
}
|
||||
|
||||
.react-custom-select .custom-select-trigger {
|
||||
font-family: inherit;
|
||||
text-align: left;
|
||||
transform: none;
|
||||
}
|
||||
|
||||
.react-custom-select .custom-select-item {
|
||||
display: block;
|
||||
width: 100%;
|
||||
border: 0;
|
||||
background: transparent;
|
||||
font-family: inherit;
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.react-custom-select .custom-select-item.selected {
|
||||
background: var(--accent-glow);
|
||||
}
|
||||
|
||||
[data-theme="light"] .react-custom-select .custom-select-item.selected {
|
||||
background: rgba(99, 102, 241, 0.15);
|
||||
}
|
||||
|
||||
.react-select-options {
|
||||
list-style: none;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.custom-select-icon {
|
||||
margin-left: 0.75rem;
|
||||
display: flex;
|
||||
@@ -3941,8 +3984,6 @@ tbody tr:hover {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
backdrop-filter: blur(12px);
|
||||
-webkit-backdrop-filter: blur(12px);
|
||||
padding: 0;
|
||||
transition: background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition), transform var(--transition);
|
||||
z-index: 100;
|
||||
@@ -4187,9 +4228,9 @@ tbody tr:hover {
|
||||
.project-dialog-field textarea { width: 100%; resize: vertical; }
|
||||
.project-dialog-error { min-height: 1.3rem; margin-top: 0.35rem; color: var(--danger, #dc2626); font-size: 0.85rem; }
|
||||
|
||||
/* ===== Êëàññû ýòàïà 5 (âîëíà 1): çàìåíà inline-ñòèëåé ïåðåíåñ¸ííûõ âêëàäîê ===== */
|
||||
/* ===== Классы этапа 5 (волна 1): замена inline-стилей перенесённых вкладок ===== */
|
||||
|
||||
/* Çàãîëîâîê êàðòî÷êè ñ äåéñòâèåì ñïðàâà (àóäèòîðèè) */
|
||||
/* Заголовок карточки с действием справа (аудитории) */
|
||||
.card-toolbar {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
@@ -4203,7 +4244,7 @@ tbody tr:hover {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/* Ñòðîêè è ãðóïïû ôîðì */
|
||||
/* Строки и группы форм */
|
||||
.form-row--spacing {
|
||||
margin-top: 1rem;
|
||||
}
|
||||
@@ -4234,7 +4275,7 @@ tbody tr:hover {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
/* ß÷åéêè òàáëèö */
|
||||
/* Ячейки таблиц */
|
||||
.th-actions {
|
||||
text-align: right;
|
||||
}
|
||||
@@ -4258,7 +4299,7 @@ tbody tr:hover {
|
||||
font-size: 0.75rem;
|
||||
}
|
||||
|
||||
/* Ìîäàëüíûå îêíà ïåðåíåñ¸ííûõ âêëàäîê */
|
||||
/* Модальные окна перенесённых вкладок */
|
||||
.modal-content--medium {
|
||||
max-width: 600px;
|
||||
width: 90%;
|
||||
@@ -4287,7 +4328,7 @@ tbody tr:hover {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
/* Ñîñòîÿíèå çàãðóçêè lazy-âêëàäêè */
|
||||
/* Состояние загрузки lazy-вкладки */
|
||||
.tab-loading {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@@ -4297,7 +4338,7 @@ tbody tr:hover {
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
/* Äàøáîðä: ìåòðèêè è ìîíèòîðèíã */
|
||||
/* Дашборд: метрики и мониторинг */
|
||||
.dashboard-metric-label {
|
||||
font-size: 0.85rem;
|
||||
color: var(--text-secondary);
|
||||
@@ -4350,7 +4391,7 @@ tbody tr:hover {
|
||||
border: 1px solid rgba(16, 185, 129, 0.2);
|
||||
}
|
||||
|
||||
/* Äàøáîðä: öåíòð ïðåäóïðåæäåíèé (Red Zone) */
|
||||
/* Дашборд: центр предупреждений (Red Zone) */
|
||||
.red-zone-card {
|
||||
border-top: 4px solid var(--error, #ef4444);
|
||||
}
|
||||
@@ -4390,9 +4431,9 @@ tbody tr:hover {
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
/* ===== Ýòàï 5 (âîëíà 2): êëàññû inline-ñòèëåé ïåðåíåñ¸ííûõ âêëàäîê ===== */
|
||||
/* ===== Этап 5 (волна 2): классы inline-стилей перенесённых вкладок ===== */
|
||||
|
||||
/* Øèðîêèå ìîäàëüíûå îêíà (ïîäãðóïïû, ïðîôèëè, êàëåíäàðíûå ãðàôèêè) */
|
||||
/* Широкие модальные окна (подгруппы, профили, календарные графики) */
|
||||
.modal-content--wide {
|
||||
max-width: 700px;
|
||||
width: 90%;
|
||||
@@ -4408,7 +4449,7 @@ tbody tr:hover {
|
||||
width: 90%;
|
||||
}
|
||||
|
||||
/* Ôîðìà ïðîôèëÿ íà âêëàäêå ñòðóêòóðû âóçà */
|
||||
/* Форма профиля на вкладке структуры вуза */
|
||||
.profile-form-spec {
|
||||
flex: 1;
|
||||
min-width: 200px;
|
||||
@@ -4424,13 +4465,13 @@ tbody tr:hover {
|
||||
min-width: 250px;
|
||||
}
|
||||
|
||||
/* Ðÿä êíîïîê ôîðìû, âûðîâíåííûõ ïî íèæíåé êðîìêå */
|
||||
/* Ряд кнопок формы, выровненных по нижней кромке */
|
||||
.form-actions-row {
|
||||
display: flex;
|
||||
gap: 0.5rem;
|
||||
align-items: flex-end;
|
||||
}
|
||||
/* Âîëíà 3 (ýòàï 5): çàìåíà inline-ñòèëÿ èç legacy department-workspace.html */
|
||||
/* Волна 3 (этап 5): замена inline-стиля из legacy department-workspace.html */
|
||||
.schedule-section-label--flush {
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
/* ===== Sidebar ===== */
|
||||
.sidebar {
|
||||
width: 260px;
|
||||
min-height: 100vh;
|
||||
min-height: 0;
|
||||
background: var(--bg-sidebar);
|
||||
backdrop-filter: blur(20px);
|
||||
-webkit-backdrop-filter: blur(20px);
|
||||
border-right: 1px solid var(--bg-card-border);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@@ -12,7 +10,7 @@
|
||||
left: 0;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
z-index: 1000;
|
||||
z-index: 11001;
|
||||
transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background 0.4s ease, border-color 0.4s ease, transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
|
||||
}
|
||||
|
||||
@@ -45,9 +43,19 @@
|
||||
|
||||
.sidebar-nav {
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
padding: 0.75rem;
|
||||
}
|
||||
|
||||
.sidebar:not(.collapsed) .sidebar-nav {
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.sidebar-header,
|
||||
.sidebar-footer {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.nav-item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@@ -90,7 +98,6 @@
|
||||
.nav-item:hover {
|
||||
background: var(--bg-hover);
|
||||
color: var(--text-primary);
|
||||
transform: translateX(4px);
|
||||
}
|
||||
|
||||
.nav-item.active {
|
||||
@@ -335,7 +342,7 @@
|
||||
transform: translateY(-50%) translateX(0);
|
||||
}
|
||||
|
||||
.sidebar.collapsed .sidebar-close-btn {
|
||||
.sidebar.collapsed .sidebar-close-btn svg {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
@@ -375,7 +382,7 @@
|
||||
margin-left: 74px;
|
||||
}
|
||||
|
||||
.main.sidebar-collapsed .menu-toggle {
|
||||
.main.sidebar-collapsed .menu-toggle.btn {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@@ -441,7 +448,7 @@
|
||||
}
|
||||
|
||||
/* ===== Mobile Menu Toggle ===== */
|
||||
.menu-toggle {
|
||||
.menu-toggle.btn {
|
||||
display: none;
|
||||
color: var(--text-primary);
|
||||
transition: background var(--transition);
|
||||
@@ -460,7 +467,7 @@
|
||||
bottom: 0;
|
||||
background: rgba(0, 0, 0, 0.5);
|
||||
backdrop-filter: blur(2px);
|
||||
z-index: 9;
|
||||
z-index: 11000;
|
||||
opacity: 0;
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
@@ -489,7 +496,10 @@
|
||||
padding: 1.25rem;
|
||||
}
|
||||
|
||||
.menu-toggle,
|
||||
.menu-toggle.btn {
|
||||
display: inline-flex;
|
||||
}
|
||||
|
||||
.sidebar-overlay {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@@ -10,8 +10,8 @@
|
||||
:root {
|
||||
/* Deep dark premium background */
|
||||
--bg-primary: #0a0a0f;
|
||||
--bg-sidebar: rgba(255, 255, 255, 0.02);
|
||||
--bg-card: rgba(255, 255, 255, 0.03);
|
||||
--bg-sidebar: #0f0f14;
|
||||
--bg-card: #111116;
|
||||
--bg-card-border: rgba(255, 255, 255, 0.05);
|
||||
--bg-input: rgba(255, 255, 255, 0.04);
|
||||
--bg-input-focus: rgba(255, 255, 255, 0.08);
|
||||
@@ -42,8 +42,8 @@
|
||||
/* ===== Light Theme ===== */
|
||||
[data-theme="light"] {
|
||||
--bg-primary: #f8fafc;
|
||||
--bg-sidebar: rgba(255, 255, 255, 0.7);
|
||||
--bg-card: rgba(255, 255, 255, 0.75);
|
||||
--bg-sidebar: #fdfefe;
|
||||
--bg-card: #fdfefe;
|
||||
--bg-card-border: rgba(0, 0, 0, 0.08);
|
||||
--bg-input: rgba(0, 0, 0, 0.03);
|
||||
--bg-input-focus: rgba(0, 0, 0, 0.06);
|
||||
|
||||
@@ -11,10 +11,8 @@
|
||||
/* ===== Sidebar ===== */
|
||||
.sidebar {
|
||||
width: 260px;
|
||||
min-height: 100vh;
|
||||
min-height: 0;
|
||||
background: var(--bg-sidebar);
|
||||
backdrop-filter: blur(20px);
|
||||
-webkit-backdrop-filter: blur(20px);
|
||||
border-right: 1px solid var(--bg-card-border);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
@@ -22,7 +20,7 @@
|
||||
left: 0;
|
||||
top: 0;
|
||||
bottom: 0;
|
||||
z-index: 1000;
|
||||
z-index: 11001;
|
||||
transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), background 0.4s ease, border-color 0.4s ease, transform 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
|
||||
}
|
||||
|
||||
@@ -58,6 +56,20 @@
|
||||
padding: 0.75rem;
|
||||
}
|
||||
|
||||
.sidebar-nav-container {
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
.sidebar:not(.collapsed) .sidebar-nav-container {
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
.sidebar-header,
|
||||
.sidebar-footer {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.nav-item {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
@@ -95,7 +107,6 @@
|
||||
.nav-item:hover {
|
||||
background: var(--bg-hover);
|
||||
color: var(--text-primary);
|
||||
transform: translateX(4px);
|
||||
}
|
||||
|
||||
.nav-item.active {
|
||||
@@ -204,7 +215,7 @@
|
||||
transform: translateY(-50%) translateX(0);
|
||||
}
|
||||
|
||||
.sidebar.collapsed .sidebar-close-btn {
|
||||
.sidebar.collapsed .sidebar-close-btn svg {
|
||||
transform: rotate(180deg);
|
||||
}
|
||||
|
||||
@@ -234,7 +245,7 @@
|
||||
margin-left: 74px;
|
||||
}
|
||||
|
||||
.main.sidebar-collapsed .menu-toggle {
|
||||
.main.sidebar-collapsed .menu-toggle.btn {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
@@ -265,7 +276,7 @@
|
||||
}
|
||||
|
||||
/* ===== Mobile Menu Toggle ===== */
|
||||
.menu-toggle {
|
||||
.menu-toggle.btn {
|
||||
display: none;
|
||||
color: var(--text-primary);
|
||||
transition: background var(--transition);
|
||||
@@ -284,7 +295,7 @@
|
||||
bottom: 0;
|
||||
background: rgba(0, 0, 0, 0.5);
|
||||
backdrop-filter: blur(2px);
|
||||
z-index: 9;
|
||||
z-index: 11000;
|
||||
opacity: 0;
|
||||
visibility: hidden;
|
||||
pointer-events: none;
|
||||
@@ -313,7 +324,10 @@
|
||||
padding: 1.25rem;
|
||||
}
|
||||
|
||||
.menu-toggle,
|
||||
.menu-toggle.btn {
|
||||
display: inline-flex;
|
||||
}
|
||||
|
||||
.sidebar-overlay {
|
||||
display: block;
|
||||
}
|
||||
|
||||
@@ -9,8 +9,8 @@
|
||||
|
||||
:root {
|
||||
--bg-primary: #0a0a0f;
|
||||
--bg-sidebar: rgba(255, 255, 255, 0.02);
|
||||
--bg-card: rgba(255, 255, 255, 0.03);
|
||||
--bg-sidebar: #0f0f14;
|
||||
--bg-card: #111116;
|
||||
--bg-card-border: rgba(255, 255, 255, 0.05);
|
||||
--bg-input: rgba(255, 255, 255, 0.04);
|
||||
--bg-input-focus: rgba(255, 255, 255, 0.08);
|
||||
@@ -37,8 +37,8 @@
|
||||
/* ===== Светлая тема ===== */
|
||||
[data-theme="light"] {
|
||||
--bg-primary: #f8fafc;
|
||||
--bg-sidebar: rgba(255, 255, 255, 0.7);
|
||||
--bg-card: rgba(255, 255, 255, 0.75);
|
||||
--bg-sidebar: #fdfefe;
|
||||
--bg-card: #fdfefe;
|
||||
--bg-card-border: rgba(0, 0, 0, 0.08);
|
||||
--bg-input: rgba(0, 0, 0, 0.03);
|
||||
--bg-input-focus: rgba(0, 0, 0, 0.06);
|
||||
@@ -86,8 +86,6 @@ body {
|
||||
display: inline-flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
backdrop-filter: blur(12px);
|
||||
-webkit-backdrop-filter: blur(12px);
|
||||
padding: 0;
|
||||
transition: background var(--transition), border-color var(--transition), color var(--transition), box-shadow var(--transition), transform var(--transition);
|
||||
z-index: 100;
|
||||
@@ -206,8 +204,6 @@ body {
|
||||
border-radius: var(--radius-sm);
|
||||
background: var(--bg-card);
|
||||
padding: 1rem;
|
||||
backdrop-filter: blur(16px);
|
||||
-webkit-backdrop-filter: blur(16px);
|
||||
}
|
||||
|
||||
.settings-card-compact {
|
||||
|
||||
Reference in New Issue
Block a user