/* school_mgmt 插件样式 */

/* ── 页面布局 ─────────────────────────────────────────── */
.school-settings-page {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
}

.school-page-header {
    flex-shrink: 0;
}

/* ── dmc.Tabs 撑高 ────────────────────────────────────── */
/* dmc.Tabs 根元素及 TabsPanel 容器需要 flex 撑开 */
.school-settings-page [data-tabs-root],
.school-settings-page .mantine-Tabs-root {
    display: flex;
    flex-direction: column;
    flex: 1 1 0%;
    min-height: 0;
}

.school-settings-page [data-tabs-panel][data-active],
.school-settings-page .mantine-Tabs-panel[data-active] {
    display: flex;
    flex-direction: column;
    flex: 1 1 0%;
    min-height: 0;
}

/* ── Tab 内容区 ────────────────────────────────────────── */
.school-tab-body {
    display: flex;
    flex-direction: column;
    flex: 1 1 0%;
    min-height: 0;
    padding-top: 4px;
}

/* ── Grid 容器 ─────────────────────────────────────────── */
.school-grid-host {
    flex: 1 1 0%;
    min-height: 0;
    width: 100%;
}

.school-ag-grid-fill {
    height: 100%;
    width: 100%;
}

/* ── 空状态 overlay ────────────────────────────────────── */
.school-grid-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 48px 0;
    color: var(--mantine-color-dimmed);
}

.school-grid-empty-icon {
    font-size: 36px;
    margin-bottom: 12px;
    opacity: 0.4;
}

.school-grid-empty-text {
    font-size: 14px;
    opacity: 0.6;
}

/* ── 表单错误提示 ──────────────────────────────────────── */
.school-form-error {
    color: var(--mantine-color-red-6);
    font-size: 13px;
    min-height: 18px;
}

/* ── AG Grid 行操作按钮 ────────────────────────────────── */
.school-action-container {
    display: flex;
    align-items: center;
    gap: 6px;
    height: 100%;
}

.school-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    background: transparent;
    transition: background 0.15s, opacity 0.15s;
    font-size: 13px;
}

.school-action-btn:hover {
    background: var(--mantine-color-gray-1);
}

.school-action-btn--edit {
    color: var(--mantine-color-blue-6);
}

.school-action-btn--edit:hover {
    background: var(--mantine-color-blue-0);
}

.school-action-btn--delete {
    color: var(--mantine-color-red-6);
}

.school-action-btn--delete:hover {
    background: var(--mantine-color-red-0);
}
