/* AUTO-GENERATED — do not edit by hand.
 * Regenerate: python scripts/build_app_shell_bundle.py
 * Sources: assets/css/settings/layout/index.css
 */

/* === import from ./shell.css (shell.css) */
/* settings/layout/shell.css — 设置页根容器与主列 */

/* Settings Container：在 AppShell Main 内铺满槽位（依赖 main 的 min-height 与 height:100% 解析链） */
.settings-container {
    display: flex;
    flex: 1;
    min-height: 0;
    height: 100%;
    max-height: 100%;
    width: 100%;
    background: var(--bg);
    overflow: hidden;
    box-sizing: border-box;
}

#app-main-content > .settings-container,
.app-main-with-tabs-inner > .settings-container {
    flex: 1 1 0%;
    min-height: 0;
    max-height: 100%;
    align-self: stretch;
}

/* 首页 /?view=business 等列表插件：与设置中心共用 list-grid 高度链，禁止外层 ScrollArea 滚动 */
.app-main-with-tabs-inner > .home-list-grid-shell {
    flex: 1 1 0%;
    min-height: 0;
    max-height: 100%;
    height: 100%;
    width: 100%;
    align-self: stretch;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-sizing: border-box;
}

.home-list-grid-shell > .settings-main-wrap--list-grid {
    flex: 1 1 0%;
    min-height: 0;
    max-height: 100%;
    height: 100%;
    width: 100%;
}

.settings-main-wrap {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}




/* === import from ./immersive.css (immersive.css) */
/* settings/layout/immersive.css — 沉浸式插件主区 */

/* 沉浸式插件（如系统聊天）：主区不滚动，由插件内部接管滚动 */
.settings-main-wrap--immersive {
    overflow: hidden;
}

.settings-main-wrap--immersive > .settings-scroll-inner {
    flex: 1;
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

.settings-main-wrap--immersive
    > .settings-scroll-inner
    > .settings-content-container.bt-training-panel-root,
.settings-main-wrap--immersive
    > .settings-scroll-inner
    > .messenger-settings-page.tool-panel,
.settings-main-wrap--immersive
    > .settings-scroll-inner
    > .settings-content-container.messenger-settings-page {
    flex: 1 1 0%;
    min-height: 0;
    height: 100%;
    max-height: 100%;
}




/* === import from ./list-grid.css (list-grid.css) */
/* settings/layout/list-grid.css — 列表页（AG Grid）：主区不滚动，仅表格内部滚动 */

.settings-main-wrap--list-grid {
    flex: 1 1 0;
    min-height: 0;
    overflow: hidden;
}

.settings-main-wrap--list-grid > .settings-scroll-inner {
    flex: 1 1 0;
    min-height: 0;
    height: 100%;
    max-height: 100%;
    overflow: hidden;
}

.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.sa-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.org-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.su-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.lead-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.pinit-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.renewal-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.admin-reception-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.ar-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.cust-arch-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.portrait-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.arch-mgmt-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.outbound-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.messenger-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.collab-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.contracts-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.psl-settings-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.sdocs-page,
.settings-main-wrap--list-grid
    > .settings-scroll-inner
    > .settings-content-container.pdef-settings-page {
    flex: 1 1 0;
    min-height: 0;
    max-height: 100%;
    overflow: hidden;
}




/* === import from ./main-scroll.css (main-scroll.css) */
/* settings/layout/main-scroll.css — 主内容 ScrollArea */

/* Settings Main Content Area（Mantine ScrollArea 根节点：须 1 1 0 才能在 flex 列里被父级高度约束） */
.settings-main {
    flex: 1 1 0;
    min-height: 0;
    max-height: 100%;
    padding: 0;
    overflow: hidden;
}

.settings-main [data-scrollarea-viewport],
.settings-main .mantine-ScrollArea-viewport {
    max-height: 100%;
}

/* 独立路由页（/security、/profile 等）：标签栏下裸 ScrollArea 须与 .settings-main 同约束，否则内容溢出无法滚动 */
.app-main-with-tabs-inner > .settings-main,
.app-main-with-tabs-inner > [data-scrollarea],
#app-main-content.app-shell-main-region > .settings-main,
#app-main-content.app-shell-main-region > [data-scrollarea] {
    flex: 1 1 0;
    min-height: 0;
    max-height: 100%;
    height: 100%;
    overflow: hidden;
}

.app-main-with-tabs-inner > .settings-main [data-scrollarea-viewport],
.app-main-with-tabs-inner > .settings-main .mantine-ScrollArea-viewport,
.app-main-with-tabs-inner > [data-scrollarea] [data-scrollarea-viewport],
#app-main-content.app-shell-main-region > .settings-main [data-scrollarea-viewport],
#app-main-content.app-shell-main-region > [data-scrollarea] [data-scrollarea-viewport] {
    max-height: 100%;
}

.settings-scroll-inner {
    box-sizing: border-box;
}

/* 原生滚动：在 flex 列布局中比 Mantine ScrollArea 更可靠 */
.platform-page-scroll {
    flex: 1 1 0;
    min-height: 0;
    width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

.settings-main-wrap > .platform-page-scroll,
.app-main-with-tabs-inner > .platform-page-scroll,
.app-main-with-tabs-inner > .home-container,
.app-main-route-wrap > .platform-page-scroll {
    flex: 1 1 0;
    min-height: 0;
    max-height: 100%;
    height: 100%;
}

.app-main-with-tabs-inner > .home-container > .platform-page-scroll {
    flex: 1 1 0;
    min-height: 0;
    max-height: 100%;
    height: 100%;
}

/* display_page 经 attach 包一层后，滚动容器不再是 tabs-inner 的直接子元素 */
.app-main-with-tabs-inner > .app-main-route-wrap {
    flex: 1 1 0;
    min-height: 0;
    max-height: 100%;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.app-main-route-wrap > .settings-u-hidden {
    flex: 0 0 auto;
}

.app-main-route-wrap > .settings-main,
.app-main-route-wrap > [data-scrollarea] {
    flex: 1 1 0;
    min-height: 0;
    max-height: 100%;
    overflow: hidden;
}

/* 列表页（管理成员 / 组织管理）：内容区至少铺满 ScrollArea 视口，供 JS 量高贴底 */
.settings-scroll-inner:has(.sa-settings-page),
.settings-scroll-inner:has(.org-settings-page),
.settings-scroll-inner:has(.su-settings-page) {
    min-height: 100%;
}

.settings-scroll-inner:has(.sa-settings-page) > .settings-content-container,
.settings-scroll-inner:has(.org-settings-page) > .settings-content-container,
.settings-scroll-inner:has(.su-settings-page) > .settings-content-container {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}




/* === import from ./content.css (content.css) */
/* settings/layout/content.css — 通用内容区与层级管理 */

/* Settings Content (Alternative Layout) */
.settings-content {
    flex: 1;
    min-height: 0; /* required for flex child overflow-y to work */
    padding: 32px;
    overflow-y: auto;
}

/* Content Container with Max Width */
.settings-content-container {
    max-width: 1600px;
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
}

/* Standardized Immersive Content Area */
.settings-standard-content {
    animation: fadeIn 0.8s ease-out;
    padding: 20px 20px 60px 20px; /* 移动端边距: 天、地、左、右 */
    max-width: 1240px;
    margin: 0 auto;
    width: 100%;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .settings-standard-content {
        padding: 40px 40px 80px 40px; /* 桌面端边距: 留出更宽敞的"天、地、左、右"空间 */
    }
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Page Title */
.settings-page-title {
    font-size: 28px;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 32px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.settings-page-title-icon {
    color: var(--brand1);
}

/* 层级管理导图：dcc.Markdown 说明区 */
.org-layer-hint-markdown p {
    margin: 0 0 0.35em 0;
}
.org-layer-hint-markdown p:last-child {
    margin-bottom: 0;
}
.org-layer-hint-markdown code {
    font-size: 0.92em;
    padding: 0.1em 0.35em;
    border-radius: 4px;
    background: var(--mantine-color-gray-1, #f1f3f5);
}

/* 层级管理 · 空状态（原 dmc.Alert 灰底；内嵌 dcc.Markdown） */
.org-layer-empty-hint {
    padding: 12px 14px;
    border-radius: var(--mantine-radius-md, 8px);
    background: var(--mantine-color-gray-0, #f8f9fa);
    border: 1px solid var(--mantine-color-gray-3, #e9ecef);
}
.org-layer-empty-hint .org-layer-hint-markdown {
    color: var(--mantine-color-gray-7, #495057);
}



/* === import from ./compat-1280.css (compat-1280.css) */
/* settings/layout/compat-1280.css — 008 C1 窄屏/1280 走查共用规则 */

/* 设置侧栏 260px；1280 视口主内容约 980–1020px */
@media (max-width: 1320px) {
    .settings-scroll-inner--list-grid {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* AG Grid 列表：允许横向滚动，避免列被裁切 */
    .settings-main-wrap--list-grid .ag-root-wrapper {
        min-width: 0;
    }
}

/* Firefox：滚动条可见性（WebKit 规则在 webkit.css，此处补标准属性） */
@supports (scrollbar-color: auto auto) {
    .settings-menu,
    .settings-scroll-inner,
    .mantine-ScrollArea-viewport {
        scrollbar-width: thin;
        scrollbar-color: rgba(100, 116, 139, 0.45) transparent;
    }
}
