/* Page chrome is shared by every tab; only list-layout.css owns viewport/table sizing. */
/* Opt-in configuration workspace: shared chrome without forcing list viewport height. */
.configuration-workspace { min-width: 0; color: var(--workspace-ink); font-family: var(--workspace-font); }
.configuration-workspace .workspace-heading { margin-bottom: 16px; }
.configuration-workspace .workspace-heading h2 { margin: 4px 0 8px; color: var(--workspace-ink); font-size: 20px; font-weight: 600; }
.configuration-workspace .workspace-heading p { margin: 0; color: var(--workspace-muted); font-size: 13px; line-height: 1.7; }
.configuration-workspace .eyebrow { color: var(--workspace-muted); font-size: 10px; letter-spacing: 1.5px; }
.configuration-workspace .configuration-panel { min-width: 0; border: 1px solid var(--workspace-border); border-radius: var(--workspace-radius); background: var(--workspace-surface); }
.configuration-workspace .configuration-body { padding: 16px; }
.configuration-workspace .management-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.configuration-workspace .text-button { border: 0; border-radius: 4px; padding: 4px 0; background: transparent; color: var(--workspace-action); font: inherit; cursor: pointer; }
.configuration-workspace .text-button.danger-text { color: var(--workspace-danger); }
.configuration-workspace .form-error { border: 1px solid var(--workspace-danger); border-radius: 6px; background: var(--workspace-danger-bg); color: var(--workspace-danger); padding: 10px 12px; overflow-wrap: anywhere; }
:root { --page-title-column: minmax(240px, 0.35fr); --page-summary-columns: var(--page-title-column) minmax(0, 1fr); --page-shell-gap: 8px; --workspace-primary: #1677ff; --workspace-ink: #243248; --workspace-muted: #52637b; --workspace-border: #e4eaf2; --workspace-tint: #f7f9fc; --workspace-radius: 8px; --workspace-canvas: #f3f6fa; --workspace-surface: #fff; --workspace-action: #125fd1; --workspace-action-hover: #0f50b8; --workspace-success: #23754e; --workspace-success-bg: #edf9f3; --workspace-warning: #8b5a14; --workspace-warning-bg: #fff8e8; --workspace-danger: #b42318; --workspace-danger-bg: #fff2f0; --workspace-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif; }
/* Native Centered owns positioning; keep long dialogs inside the viewport without moving their actions off-screen. */
.ant-modal-centered .ant-modal { top: 0; max-width: calc(100vw - 24px); padding-bottom: 0; }
.ant-modal-centered .ant-modal-content { display: flex; flex-direction: column; max-height: calc(100vh - 24px); max-height: calc(100dvh - 24px); }
.ant-modal-centered :is(.ant-modal-header, .ant-modal-footer) { flex-shrink: 0; }
.ant-modal-centered .ant-modal-body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
/* Resource editors opt in explicitly: AntDesign owns overlay, focus and dismissal. */
:is(.channel-resource-dialog, .management-editor-dialog) .ant-modal-content { border-radius: var(--workspace-radius); overflow: hidden; color: var(--workspace-ink); }
:is(.channel-resource-dialog, .management-editor-dialog) .ant-modal-header { background: var(--workspace-tint); border-bottom: 1px solid var(--workspace-border); }
:is(.channel-resource-dialog, .management-editor-dialog) .ant-modal-title { color: var(--workspace-ink); font-size: 16px; font-weight: 600; padding-right: 24px; overflow-wrap: anywhere; }
:is(.channel-resource-dialog, .management-editor-dialog) .ant-modal-body { max-height: calc(100dvh - 180px); overflow-y: auto; padding: 20px 24px; overscroll-behavior: contain; }
:is(.channel-resource-dialog, .management-editor-dialog) .ant-modal-footer { border-top: 1px solid var(--workspace-border); }
.channel-resource-dialog .channel-dialog-fields { border: 0; padding: 0; margin: 0; min-width: 0; }
.channel-resource-dialog :is(.form-grid, .ljj-fields) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; }
.channel-resource-dialog :is(.form-grid, .ljj-fields, .native-edit) label { display: flex; flex-direction: column; gap: 6px; min-width: 0; color: var(--workspace-ink); font-size: 13px; line-height: 1.6; overflow-wrap: anywhere; }
.channel-resource-dialog :is(.form-grid, .ljj-fields) label:has(input[type=checkbox]) { flex-direction: row; align-items: center; }
.channel-resource-dialog :is(.form-grid, .ljj-fields) input[type=checkbox] { width: 18px; height: 18px; flex-shrink: 0; margin: 0; }
.channel-resource-dialog :is(.form-grid, .ljj-fields, .native-edit) :is(input:not([type=checkbox]), select, textarea) { width: 100%; min-width: 0; max-width: 100%; box-sizing: border-box; min-height: 32px; padding: 6px 10px; border: 1px solid var(--workspace-border); border-radius: 6px; background: var(--workspace-surface); color: var(--workspace-ink); font: inherit; }
.channel-resource-dialog :is(.form-grid, .ljj-fields, .native-edit) :is(small, .hint) { color: var(--workspace-muted); font-size: 12px; line-height: 1.7; margin: 0; }
.channel-resource-dialog :is(input, select, textarea, button):focus-visible { outline: 2px solid var(--workspace-primary); outline-offset: 2px; }
.channel-resource-dialog :is(input, select, textarea):disabled { background: var(--workspace-tint); color: var(--workspace-muted); cursor: not-allowed; }
.channel-resource-dialog .channel-dialog-error { margin-bottom: 16px; padding: 10px 12px; border: 1px solid #f0c7c0; border-radius: 6px; background: #fff2f0; color: #9a352a; font-size: 13px; overflow-wrap: anywhere; }
.channel-resource-dialog .ljj-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--workspace-border); }
.channel-resource-dialog .ljj-actions button { min-height: 32px; padding: 6px 14px; border: 1px solid var(--workspace-border); border-radius: 6px; background: var(--workspace-surface); color: var(--workspace-ink); cursor: pointer; }
.channel-resource-dialog .ljj-actions button[type=submit] { background: var(--workspace-primary); border-color: var(--workspace-primary); color: #fff; }
.channel-resource-dialog .ljj-actions button:disabled { opacity: .5; cursor: not-allowed; }
.lijianjin-admin .channel-dialog-actions { justify-content: flex-end; }
@media (max-width: 700px) {
    :is(.channel-resource-dialog, .management-editor-dialog) .ant-modal-body { max-height: calc(100dvh - 160px); padding: 16px; }
    .channel-resource-dialog :is(.form-grid, .ljj-fields) { grid-template-columns: minmax(0, 1fr); }
    .channel-resource-dialog :is(.form-grid, .ljj-fields, .native-edit) :is(input:not([type=checkbox]), select, textarea) { min-height: 40px; font-size: 16px; }
    :is(.channel-resource-dialog, .management-editor-dialog) .ant-modal-footer { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
}
body .ant-pro-page-container:has([data-page-shell]) > .ant-pro-page-container-warp { display: none; }
body .ant-pro-page-container:has([data-page-shell]) .ant-pro-page-container-children-content { margin: 12px 16px; }
/* Replace the decorative hero + large cards with a compact title and key indicators. */
body [data-page-shell].management-page .management-summary { display: grid; grid-template-columns: var(--page-summary-columns); align-items: stretch; gap: var(--page-shell-gap); margin-bottom: 10px; }
body [data-page-shell].management-page .management-header { min-width: 0; gap: 10px; margin: 0; padding: 8px 16px; border-radius: 6px; box-shadow: none; }
body [data-page-shell].management-page .management-header h2 { font-size: 18px; white-space: nowrap; }
body [data-page-shell].management-page .management-title-count { display: inline; margin-left: 10px; font-size: 11px; font-weight: 400; color: #d4e1f0; }
body [data-page-shell].management-page .management-header p { display: none; }
body [data-page-shell].management-page .management-avatar { width: 30px; height: 30px; border-radius: 7px; }
body [data-page-shell].management-page .management-avatar .anticon { font-size: 18px; }
body [data-page-shell].management-page .management-overview { display: flex; flex: 1; min-width: 0; gap: var(--page-shell-gap); margin: 0; border: 0; border-radius: 0; background: transparent; overflow-x: auto; }
body [data-page-shell].management-page .management-overview { scrollbar-width: thin; }
body [data-page-shell].management-page .management-metric { flex: 1 0 auto; gap: 0; padding: 8px 16px; border: 1px solid #e9edf3; border-radius: 6px; box-shadow: none; background: var(--workspace-surface); }
body [data-page-shell].management-page .management-metric > div { display: flex; align-items: baseline; gap: 10px; }
body [data-page-shell].management-page .management-metric strong { margin: 0; font-size: 20px; }
body [data-page-shell].management-page .management-metric :is(.metric-icon, small) { display: none; }

body [data-page-shell].management-page .management-summary-content { display: flex; align-items: stretch; gap: 8px; min-width: 0; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) { position: relative; display: grid; grid-template-columns: var(--page-summary-columns); grid-template-rows: auto auto; gap: var(--page-shell-gap); }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-workspace, .native-workspace, .pupu-workspace, .yyapk-workspace) { grid-column: 1 / -1; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page):not(:has(> :is(.channel-metrics, .native-metrics, .pupu-metrics, .yyapk-metrics))) > :is(.channel-header, .native-header, .pupu-header, .yyapk-header) { grid-column: 1 / -1; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-identity, .pupu-identity, .yyapk-identity) { gap: 10px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-payment, .pupu-payment, .yyapk-payment) { display: none; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-header, .native-header, .pupu-header, .yyapk-header) { min-width: 0; padding: 8px 16px; gap: 10px; margin: 0; border-radius: 6px; box-shadow: none; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-header, .native-header, .pupu-header, .yyapk-header) h2 { font-size: 18px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-header, .native-header, .pupu-header, .yyapk-header) p { display: none; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-avatar, .native-avatar, .pupu-avatar, .yyapk-avatar) { width: 30px; height: 30px; border-radius: 7px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-metrics, .native-metrics, .pupu-metrics, .yyapk-metrics) { display: flex; gap: 8px; margin: 0; min-width: 0; overflow-x: auto; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.metric-card, .native-metric) { display: flex; align-items: center; gap: 8px; flex: 1 0 auto; padding: 6px 12px; border-radius: 5px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) .metric-card > div { display: flex; align-items: baseline; gap: 10px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.metric-card, .native-metric) strong { display: inline; margin: 0; font-size: 18px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.metric-card, .native-metric) :is(.metric-icon, small) { display: none; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-tabs, .native-tabs, .pupu-tabs, .yyapk-tabs) { padding: 0 14px; gap: 22px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-tabs, .native-tabs, .pupu-tabs, .yyapk-tabs) > :is(a, button) { padding-top: 8px; padding-bottom: 8px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-panel, .native-panel, .pupu-panel, .yyapk-panel) { padding: 10px 14px; }
/* Keep settings and operating forms in natural flow, with the same compact spacing as list tabs. */
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.settings-layout, .operation-layout) { gap: 16px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.settings-section, .form-section, .operation-guide) { min-width: 0; padding: 16px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) .form-grid { gap: 12px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) .settings-footer { gap: 12px; margin-top: 16px; padding-top: 12px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.settings-layout, .operation-layout, .native-settings) :is(input, select, button) { min-height: 32px; padding-top: 6px; padding-bottom: 6px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) .native-settings { gap: 12px; }
body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.panel-heading, .native-heading) { gap: 8px; margin-bottom: 12px; }
/* Shared visual language: compact blue chrome, quiet surfaces and readable section hierarchy. */
body [data-page-shell] { color: var(--workspace-ink); font-family: var(--workspace-font); }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.management-header, .channel-header, .native-header, .pupu-header) { box-sizing: border-box; min-height: 48px; background: #093862; border-radius: var(--workspace-radius); }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.channel-title-row, .native-title, .pupu-title-row) { gap: 8px; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.channel-header, .native-header, .pupu-header, .management-header) h2 { line-height: 1.4; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.management-metric, .metric-card, .native-metric) { border: 1px solid var(--workspace-border); border-radius: var(--workspace-radius); box-shadow: none; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.metric-label, .native-metric > span) { color: var(--workspace-muted); }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.management-workspace, .channel-workspace, .native-workspace, .pupu-workspace) { min-width: 0; border: 1px solid var(--workspace-border); border-radius: var(--workspace-radius); box-shadow: none; background: var(--workspace-surface); }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.channel-tabs, .native-tabs, .pupu-tabs) { align-items: center; min-height: 42px; background: var(--workspace-surface); border-bottom-color: var(--workspace-border); border-radius: var(--workspace-radius) var(--workspace-radius) 0 0; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.channel-tabs, .native-tabs, .pupu-tabs) > :is(a, button) { min-height: 42px; display: inline-flex; align-items: center; gap: 6px; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.panel-heading, .native-heading, .pupu-panel-heading, .management-heading) { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; min-width: 0; margin-bottom: 12px; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.panel-heading, .native-heading, .pupu-panel-heading, .management-heading) h3 { margin: 0; font-size: 14px; line-height: 1.5; font-weight: 600; color: var(--workspace-ink); }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.panel-heading-actions, .pupu-heading-actions, .management-actions) { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; min-width: 0; margin-left: auto; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.toolbar, .native-toolbar, .pupu-toolbar, .management-toolbar):has(.list-query-layout) { border: 1px solid var(--workspace-border); border-radius: 6px; background: var(--workspace-tint); }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.result-count, .pupu-result-count) { color: var(--workspace-muted); white-space: nowrap; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.table-wrap, .native-table, .management-table, .pupu-table) :is(th, .ant-table-thead > tr > th) { color: var(--workspace-muted); background: var(--workspace-tint); font-size: 12px; font-weight: 600; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.table-wrap, .native-table, .management-table, .pupu-table) :is(td, .ant-table-tbody > tr > td) { font-size: 13px; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.panel-heading, .native-heading, .pupu-panel-heading, .management-heading, .list-query-layout, .goods-actions) :is(button, .ant-btn) { box-sizing: border-box; min-height: 32px; padding: 5px 12px; border-radius: 6px; font-size: 12px; line-height: 20px; }
body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.panel-heading, .native-heading, .pupu-panel-heading, .management-heading, .list-query-layout, .goods-actions) :is(button, a):focus-visible { outline: 2px solid var(--workspace-primary); outline-offset: 2px; }
body [data-page-shell] .goods-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
body [data-page-shell] .goods-actions button { margin: 0; }
@media (max-width: 1023px) {
    body [data-page-shell].management-page .management-metric { padding: 8px 10px; }
    body [data-page-shell].management-page .management-metric > div { display: block; }
}
@media (max-width: 767px) {
    body .ant-pro-page-container:has([data-page-shell]) { margin: 0 !important; }
    body .ant-pro-page-container:has([data-page-shell]) .ant-pro-page-container-children-content { margin: 8px; }
    body .ant-pro-basicLayout-content:has([data-page-shell]) { margin-left: 0 !important; }
    body .ant-layout:has(> main [data-page-shell]) { padding-left: 48px !important; }
    body [data-page-shell].management-page .management-summary { display: block; margin-bottom: 8px; }
    body [data-page-shell].management-page .management-header { padding: 6px 10px; margin-bottom: 6px; }
    body [data-page-shell].management-page .management-summary-content { flex-wrap: wrap; }
    body [data-page-shell].management-page .management-overview { width: 100%; flex-basis: 100%; }
    body [data-page-shell].management-page .management-metric { padding: 5px 8px; }
    body [data-page-shell].management-page .management-metric strong { font-size: 17px; }
    body [data-page-shell].management-page .management-metric .metric-label { font-size: 10px; }
    body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto; }
    body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) :is(.channel-header, .native-header, .pupu-header, .yyapk-header) { padding: 8px 10px; }
    body [data-page-shell]:is(.channel-page, .native-page, .pupu-page, .yyapk-page) .settings-footer { align-items: stretch; }
    body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.channel-metrics, .native-metrics, .pupu-metrics, .management-overview) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
    body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.metric-card, .native-metric, .management-metric) { min-width: 0; padding: 8px 10px; }
    body [data-page-shell]:is(.management-page, .channel-page, .native-page, .pupu-page) :is(.metric-card, .management-metric) > div { display: block; }
    body [data-page-shell] :is(.channel-title-row, .native-title, .pupu-title-row) { flex-wrap: wrap; }
    body [data-page-shell].management-page .management-header h2 { white-space: normal; }
}

/* Application-only chrome. Static cashier pages do not load this shell. */
body.payplatform-ui { background: var(--workspace-canvas); color: var(--workspace-ink); font-family: var(--workspace-font); }
.payplatform-ui .ant-layout { background: var(--workspace-canvas); }
.payplatform-ui .ant-layout-sider .ant-menu-item-selected { background: var(--workspace-action) !important; }
.payplatform-ui .ant-layout-sider .ant-menu:not(.ant-menu-inline-collapsed) > :is(.ant-menu-item, .ant-menu-submenu) { margin-block: 4px; }
.payplatform-ui .ant-layout-sider .ant-menu-item, .payplatform-ui .ant-layout-sider .ant-menu-submenu-title { font-size: 13px; }
.payplatform-ui .ant-btn-primary:not(.ant-btn-dangerous):not(:disabled) { background: var(--workspace-action); border-color: var(--workspace-action); }
.payplatform-ui .ant-btn-primary:not(.ant-btn-dangerous):not(:disabled):hover { background: var(--workspace-action-hover); border-color: var(--workspace-action-hover); }
.payplatform-ui [data-page-shell] button.primary:not(.danger):not(:disabled) { background: var(--workspace-action); border-color: var(--workspace-action); color: #fff; }
.payplatform-ui [data-page-shell] button.primary:not(.danger):not(:disabled):hover { background: var(--workspace-action-hover); border-color: var(--workspace-action-hover); }
body [data-page-shell] :is(a:not(.ant-btn):not(.danger), .ant-btn-link:not(.ant-btn-dangerous)) { color: var(--workspace-action); }
body [data-page-shell] :is(.table-wrap, .native-table, .management-table, .pupu-table, .ant-table) th { color: var(--workspace-muted); background: var(--workspace-tint); font-size: 12px; font-weight: 600; }
body [data-page-shell] :is(.table-wrap, .native-table, .management-table, .pupu-table, .ant-table) td { color: var(--workspace-ink); vertical-align: middle; font-size: 13px; font-variant-numeric: tabular-nums; }
body [data-page-shell] :is(.native-actions, .management-table .ant-space) button:not(.danger):not(.ant-btn-dangerous):not(.ant-btn-primary):not(:disabled) { border-color: transparent; background: transparent; }
body [data-page-shell] :is(.native-actions, .management-table .ant-space) button:not(.danger):not(.ant-btn-dangerous):not(.ant-btn-primary):hover:not(:disabled) { border-color: var(--workspace-border); background: var(--workspace-tint); }
body [data-page-shell] :is(.native-badge.green, .state.enabled) { color: var(--workspace-success); background: var(--workspace-success-bg); }
body [data-page-shell] .state.draining { color: var(--workspace-warning); background: var(--workspace-warning-bg); }
body [data-page-shell] :is(.native-error, .proxy-error, .statistics-error, .form-error, .notice.error, .plugin-manager .error) { color: var(--workspace-danger); background: var(--workspace-danger-bg); border-radius: var(--workspace-radius); overflow-wrap: anywhere; }
body [data-page-shell] :is(.native-empty, .proxy-empty, .empty-result, .ant-empty-description) { color: var(--workspace-muted); }
body [data-page-shell] :is(.pager, .native-pager, .ant-pagination) { font-variant-numeric: tabular-nums; }
body [data-page-shell].legacy-list-page { padding: 14px; border: 1px solid var(--workspace-border); border-radius: var(--workspace-radius); background: var(--workspace-surface); }
body [data-page-shell].legacy-list-page :is(.ant-table-wrapper, .ant-table-container) { min-width: 0; max-width: 100%; }
body [data-page-shell].legacy-list-page .ant-statistic-title { color: var(--workspace-muted); white-space: normal; font-size: 12px; }
body [data-page-shell].legacy-list-page .ant-statistic-content { font-size: 20px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
body [data-page-shell].legacy-list-page .ant-card { border-color: var(--workspace-border); border-radius: var(--workspace-radius); }
body [data-page-shell]:is(.account-center, .integration-document) { min-width: 0; }
body [data-page-shell]:is(.account-center, .integration-document) .ant-card { border-color: var(--workspace-border); border-radius: var(--workspace-radius); }
body [data-page-shell].account-center { display: grid; gap: 16px; }
body [data-page-shell].account-center .ant-card-grid { box-shadow: none; border-bottom: 1px solid var(--workspace-border); overflow-wrap: anywhere; }
body [data-page-shell].integration-document pre { overflow: auto; padding: 16px; border: 1px solid var(--workspace-border); border-radius: var(--workspace-radius); background: var(--workspace-tint); font-size: 12px; line-height: 1.8; }
body [data-page-shell].integration-document :is(.ant-card, .ant-card-body, pre) { min-width: 0; max-width: 100%; box-sizing: border-box; }
body [data-page-shell].integration-document .ant-card-body { overflow-wrap: anywhere; }
body [data-page-shell].integration-document .ant-divider-inner-text { white-space: normal; overflow-wrap: anywhere; }
body [data-page-shell].integration-document pre:focus-visible { outline: 2px solid var(--workspace-action); outline-offset: 2px; }
@media (max-width: 767px) {
    body [data-page-shell].legacy-list-page { padding: 10px; }
    body [data-page-shell].legacy-list-page .ant-row > .ant-col-6 { flex: 0 0 50%; max-width: 50%; margin-bottom: 8px; }
    body [data-page-shell].account-center .ant-card-body { padding: 16px; }
}

/* Login, registration and recovery share a calm, bounded surface without animated decoration. */
.auth-page { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; min-height: 100vh; min-height: 100dvh; padding: 32px 16px; background: var(--workspace-canvas); color: var(--workspace-ink); font-family: var(--workspace-font); }
.auth-card { box-sizing: border-box; max-width: 100%; padding: 32px; border: 1px solid var(--workspace-border); border-radius: var(--workspace-radius); background: var(--workspace-surface); box-shadow: 0 12px 40px #09386208; }
.auth-card :is(input, .ant-input-affix-wrapper, .ant-select, .ant-picker) { max-width: 100%; min-width: 0; }
.auth-card :is(button, a):focus-visible { outline: 2px solid var(--workspace-action); outline-offset: 3px; }
.auth-card .main__b__1 { width: 100%; min-width: 0; margin: 0; }
.auth-card .auth-heading { margin: 0 0 24px; font-size: 20px; font-weight: 600; color: var(--workspace-ink); }
.auth-card .ant-form-item { margin-bottom: 18px; }
.auth-card .ant-form-item-label > label { color: var(--workspace-ink); font-size: 13px; }
.auth-card :is(.ant-input, .ant-input-affix-wrapper) { border-radius: 6px; }
.auth-card .ant-btn-primary:not(:disabled) { background: var(--workspace-action); border-color: var(--workspace-action); }
.auth-card .submit { width: 100%; min-height: 40px; }
.auth-card .login { display: block; margin-top: 14px; color: var(--workspace-action); text-align: center; }
@media (max-width: 479px) { .auth-card { padding: 24px 20px; } }

/* The built-in lock has a viewBox; the fixed-size 403 illustration cannot scale without cropping. */
.authorization-denied .ant-result-image { width: 72px; max-width: 100%; }
.authorization-denied .ant-result-image svg { width: 100%; max-width: 100%; height: auto; fill: var(--workspace-action); }

/* Ordinary user/role/menu editors share the same shell; transfers keep their native reading order. */
.management-editor-dialog .management-transfer { max-width: 100%; min-width: 0; overflow-x: auto; padding: 2px; margin-bottom: 16px; overscroll-behavior-x: contain; }
.management-editor-dialog .management-transfer:focus-visible { outline: 2px solid var(--workspace-action); outline-offset: 2px; }
.management-editor-dialog .ant-transfer { white-space: nowrap; }
@media (max-width: 639px) {
    .management-editor-dialog .ant-form-item-row { flex-wrap: wrap; }
    .management-editor-dialog :is(.ant-form-item-label, .ant-form-item-control) { flex: 0 0 100%; max-width: 100%; min-width: 0; }
    .management-editor-dialog .ant-form-item-label { text-align: left; padding-bottom: 6px; }
    .management-editor-dialog .ant-form-item-label > label { height: auto; white-space: normal; line-height: 1.5; }
    .management-editor-dialog :is(.ant-select, .ant-input, .ant-input-affix-wrapper, .ant-input-number) { max-width: 100%; }
}
