/*
 * 全项目静态页面的 G3 展示层。
 * 依据技能随附的 G3 3.5.12 主题、按钮、输入框、表格与弹窗样式。
 * 沿用 HTML 与业务脚本；仅调整视觉和响应式布局。
 * 保留由业务状态控制的显隐规则、disabled 属性和状态类。
 */
body.g3-static-page {
  --cscec-primary-color: #008ee0;
  --cscec-primary-color-hover: #2e9eff;
  --cscec-primary-color-click: #00a2ff;
  --cscec-success-color: #00cf61;
  --cscec-warn-color: #ffb82e;
  --cscec-danger-color: #ff3b3b;
  --cscec-help-color: #ff7723;
  --cscec-bg-base-color: #f0f4f7;
  --cscec-bg-content-color: #fff;
  --cscec-bg-window-color: #fff;
  --cscec-bg-window-title-color: #f4f7f9;
  --cscec-bg-table-th-color: #fafafa;
  --cscec-bg-table-tr-color: #fff;
  --cscec-bg-table-hover-color: #eaf7ff;
  --cscec-line-color: #f0f0f0;
  --cscec-border-color: #dee1e3;
  --cscec-font-base-color: #212529;
  --cscec-font-secondary-color: #737687;
  --cscec-font-help-color: #b7c4cc;
  --cscec-font-white-color: #fff;
  --cscec-content-font-size: 14px;
  --cscec-help-font-size: 12px;
  --cscec-button-default-height: 32px;
  --cscec-button-default-border-radius: 3px;
  --cscec-input-normal-padding: 4px 11px;
  --bg: var(--cscec-bg-base-color);
  --bg-soft: var(--cscec-bg-table-th-color);
  --panel: var(--cscec-bg-content-color);
  --line: var(--cscec-line-color);
  --line-strong: var(--cscec-border-color);
  --text: var(--cscec-font-base-color);
  --text-strong: var(--cscec-font-base-color);
  --muted: var(--cscec-font-secondary-color);
  --primary: var(--cscec-primary-color);
  --primary-strong: var(--cscec-primary-color-hover);
  --primary-soft: var(--cscec-bg-table-hover-color);
  --success: var(--cscec-success-color);
  --warning: var(--cscec-warn-color);
  --danger: var(--cscec-danger-color);
  --radius-sm: 3px;
  --radius-md: 3px;
  --shadow: none;
  --g3-focus-shadow: 0 0 0 2px rgb(0 128 255 / 12%);
  /* 取自用户提供的现网系统截图。 */
  --g3-sidebar-bg: #008ee0;
  --g3-sidebar-active: #0071ba;
  --g3-sidebar-width: 250px;
  --g3-org-tree-width: 330px;
  --g3-icon-work: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='4' width='14' height='17' rx='2'/%3E%3Cpath d='M9 4V2h6v2M9 9h6M9 13h6M9 17h4'/%3E%3C/svg%3E");
  --g3-icon-star: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Cpath d='m12 3 2.8 5.7 6.2.9-4.5 4.4 1.1 6.2-5.6-3-5.6 3 1.1-6.2L3 9.6l6.2-.9L12 3Z'/%3E%3C/svg%3E");
  --g3-icon-chart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round'%3E%3Cpath d='M4 3v17h17M9 16v-5M14 16V6M19 16v-8'/%3E%3C/svg%3E");
  --g3-icon-settings: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linejoin='round'%3E%3Cpath d='m10 3-.8 3-2.7.7L4 6l-2 3 2 2v3l-2 2 2 3 2.5-.7 2.7.7.8 3h4l.8-3 2.7-.7L20 19l2-3-2-2v-3l2-2-2-3-2.5.7-2.7-.7-.8-3h-4Z'/%3E%3Ccircle cx='12' cy='12.5' r='3'/%3E%3C/svg%3E");
  --g3-icon-notice: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10v5h4l11 4V6L8 10H4ZM8 15l2 6H6l-2-6M19 10h2v5h-2M8 10v5'/%3E%3C/svg%3E");
  height: 100vh;
  height: 100dvh;
  min-height: 0;
  overflow: hidden;
  color: var(--cscec-font-base-color);
  background: var(--cscec-bg-base-color);
  font-size: var(--cscec-content-font-size);
  line-height: 1.5715;
}

/* 应用外壳 */
.g3-static-page .topbar {
  height: auto;
  min-height: 56px;
  flex-shrink: 0;
  padding: 10px 20px;
  flex-wrap: wrap;
  gap: 20px;
  border-color: var(--cscec-line-color);
  background: var(--cscec-bg-content-color);
  box-shadow: none;
}
.g3-static-page .topbar-left { min-width: 0; flex-wrap: wrap; gap: 8px 24px; }
.g3-static-page .topbar-brand { flex-shrink: 0; gap: 10px; }
.g3-static-page .brand-logo { width: 36px; height: 36px; background: var(--cscec-primary-color); border-radius: 3px; letter-spacing: 0; }
.g3-static-page .brand-copy { gap: 3px; }
.g3-static-page .brand-copy strong { font-size: 14px; white-space: nowrap; }
.g3-static-page .brand-copy span { font-size: 8px; letter-spacing: 0; }
.g3-static-page .brand-sys-title { font-size: 14px; font-weight: 400; white-space: nowrap; }
.g3-static-page .topbar-nav { flex-shrink: 0; align-items: center; }
.g3-static-page .topbar-nav-item { height: 36px; padding: 0 16px; font-size: 14px; white-space: nowrap; border-radius: 3px; }
.g3-static-page .topbar-nav-item.active { color: var(--cscec-primary-color); background: var(--cscec-bg-table-hover-color); }
.g3-static-page .topbar-user { min-width: 0; flex-shrink: 0; gap: 16px; }
.g3-static-page .topbar-company { min-width: 0; max-width: 260px; padding: 0; border: 0; background: transparent; font-size: 12px; }
.g3-static-page .topbar-company > span:first-child { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g3-static-page .topbar-avatar { flex-shrink: 0; background: var(--cscec-primary-color); }
.g3-static-page .topbar-avatar-group { flex-shrink: 0; }
.g3-static-page .topbar-icons { flex-shrink: 0; gap: 14px; }
.g3-static-page .topbar-user-switch-wrap { min-width: 0; padding: 4px 6px; border-radius: 3px; }
.g3-static-page .topbar-user-switch-wrap:hover { background: var(--cscec-bg-table-hover-color); }
.g3-static-page .topbar-user-info-col { min-width: 0; }
.g3-static-page .user-role-badge { border-radius: 3px; font-size: 11px; line-height: 18px; }
.g3-static-page :is(.role-switch-dropdown-menu, .role-switch-dropdown, .more-dropdown-menu) { max-width: calc(100vw - 32px); border: 1px solid var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-content-color); box-shadow: 0 4px 16px rgb(0 0 0 / 12%); }
.g3-static-page .role-switch-dropdown-menu { width: min(380px, calc(100vw - 32px)); max-height: calc(100dvh - 100px); overflow-y: auto; }
.g3-static-page :is(.role-dropdown-header, .role-section-title) { background: var(--cscec-bg-table-th-color); border-color: var(--cscec-line-color); }
.g3-static-page :is(.role-dropdown-item, .role-switch-item) { font-size: 14px; border-color: var(--cscec-line-color); }
.g3-static-page :is(.role-dropdown-item:hover, .role-dropdown-item.is-selected, .role-switch-item:hover, .role-switch-item.active) { background: var(--cscec-bg-table-hover-color); color: var(--cscec-primary-color); }
.g3-static-page .app-shell { height: auto; flex: 1; min-height: 0; }
.g3-static-page .sidebar { width: var(--g3-sidebar-width); min-height: 0; overflow-y: auto; color: #fff; background: var(--g3-sidebar-bg); border-right: 0; box-shadow: none; }
.g3-static-page .sidebar-search-wrap { padding: 20px 16px 12px; }
.g3-static-page .sidebar-search-input { height: 32px; padding: var(--cscec-input-normal-padding); color: #fff; background: rgb(255 255 255 / 12%); border: 1px solid rgb(255 255 255 / 30%); border-radius: 3px; }
.g3-static-page .sidebar-search-input::placeholder { color: rgb(255 255 255 / 75%); }
.g3-static-page .sidebar-search-input:focus { border-color: #fff; box-shadow: 0 0 0 2px rgb(255 255 255 / 16%); }
.g3-static-page .sidebar-group { padding: 8px 0; }
/* 兼容旧页面分组标题写在 HTML style 属性中的文字颜色。 */
.g3-static-page .sidebar-section-title { padding: 8px 20px; color: rgb(255 255 255 / 85%) !important; font-size: 12px; }
.g3-static-page .sidebar-section-title > span:last-child { font-size: 8px; }
.g3-static-page .sidebar-menu-item { min-height: 44px; padding: 10px 20px; gap: 10px; border-left: 3px solid transparent; color: rgb(255 255 255 / 88%); font-size: 14px; }
.g3-static-page .sidebar-menu-item:hover { color: #fff; background: rgb(0 0 0 / 8%); }
.g3-static-page .sidebar-menu-item.active { color: #fff; background: var(--g3-sidebar-active); border-left-color: transparent; font-weight: 500; }
.g3-static-page .sidebar-menu-item > span:first-child:not(.notice-ui-icon) { width: 16px; height: 16px; flex-shrink: 0; font-size: 0; background: currentColor; mask: var(--g3-menu-icon, var(--g3-icon-work)) center / contain no-repeat; }
.g3-static-page .sidebar-menu-item[href="evaluation.html"], .g3-page-evaluation .sidebar-menu-item.active { --g3-menu-icon: var(--g3-icon-star); }
.g3-static-page .sidebar-menu-item[href="credit.html"], .g3-page-credit .sidebar-menu-item.active, .g3-page-credit-entry .sidebar-menu-item.active { --g3-menu-icon: var(--g3-icon-chart); }
.g3-static-page .sidebar-menu-item[href="deepening_config.html"], .g3-page-deepening-config .sidebar-menu-item.active { --g3-menu-icon: var(--g3-icon-settings); }
.g3-static-page .sidebar-menu-item[href="notice.html"], .g3-page-notice-list .sidebar-menu-item.active { --g3-menu-icon: var(--g3-icon-notice); }
.g3-static-page .main-shell { min-width: 0; min-height: 0; overflow-y: auto; background: var(--cscec-bg-base-color); }
.g3-static-page .page-tab-bar { position: sticky; top: 0; min-height: 40px; height: 40px; flex-shrink: 0; padding: 0 20px; gap: 0; overflow-x: auto; border-color: var(--cscec-line-color); }
.g3-static-page .page-tab { flex-shrink: 0; height: 40px; padding: 6px 16px; border: 0; border-bottom: 2px solid transparent; border-radius: 0; color: var(--cscec-font-secondary-color); background: transparent; font-size: 12px; white-space: nowrap; }
.g3-static-page .page-tab.active { color: var(--cscec-primary-color); background: transparent; border: 0; border-bottom: 2px solid var(--cscec-primary-color); }

/* 页面与卡片 */
.g3-static-page :is(.page-container, .ebs-page, .notice-portal-container) { min-width: 0; padding: 10px; gap: 16px; background: var(--cscec-bg-base-color); }
.g3-static-page .page-container > * { min-width: 0; }
.g3-static-page :is(.ebs-card, .ebs-tree-card, .ebs-query-card, .ebs-table-card, .filter-card, .form-card, .list-card-wrapper, .config-layout-card, .kpi-card) { min-width: 0; border: 1px solid var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-content-color); box-shadow: none; }
.g3-static-page :is(.ebs-card, .ebs-query-card, .ebs-table-card, .filter-card, .form-card) { flex-shrink: 0; padding: 20px; }
.g3-static-page :is(.page-header-bar, .portal-header-bar) { min-width: 0; flex-wrap: wrap; gap: 16px; padding: 12px 16px; border: 1px solid var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-content-color); box-shadow: none; }
.g3-static-page :is(.page-header-actions, .portal-header-right, .portal-header-left, .ebs-query-actions, .filter-actions, .toolbar-left, .toolbar-right, .config-header-right) { min-width: 0; flex-wrap: wrap; gap: 8px; }
.g3-static-page :is(.page-breadcrumb, .portal-breadcrumb-text) { min-width: 0; flex-wrap: wrap; font-size: 14px; line-height: 24px; color: var(--cscec-font-secondary-color); }
.g3-static-page :is(.page-breadcrumb .current, .portal-breadcrumb-active) { color: var(--cscec-font-base-color); font-weight: 500; }
.g3-static-page :is(.ebs-card-title, .filter-title, .form-section-title, .modal-section-title, .report-title-text, .region-sidebar-title) { font-size: 16px; font-weight: 600; color: var(--cscec-font-base-color); }
.g3-static-page :is(.ebs-card-title, .filter-title) { margin-bottom: 16px; }
.g3-static-page :is(.ebs-card-title, .filter-title, .form-section-title, .modal-section-title)::before { width: 3px; height: 16px; border-radius: 1px; background: var(--cscec-primary-color); }
.g3-static-page :is(.ebs-query-header, .filter-header, .table-toolbar) { min-width: 0; flex-wrap: wrap; gap: 12px; border-color: var(--cscec-line-color); }
.g3-static-page .filter-header { margin-bottom: 20px; padding-bottom: 0; border-bottom: 0; }
.g3-static-page .filter-title { margin-bottom: 0; }
/* 现网参考：卡片标题与操作同一行，分隔线下排列查询字段。 */
.g3-static-page :is(.ebs-card, .ebs-query-card, .filter-card):has(> :is(.query-grid, .query-grid-3, .filter-row-single)) { position: relative; padding: 0; }
.g3-static-page :is(.ebs-query-header, .filter-header) { min-height: 44px; padding: 6px 10px; margin: 0; border-bottom: 1px solid var(--cscec-line-color); }
.g3-static-page :is(.ebs-query-header .ebs-card-title, .filter-title) { margin: 0; font-size: 14px; line-height: 22px; }
.g3-static-page :is(.query-grid, .query-grid-3, .filter-row-single) { padding: 16px 20px 20px; }
.g3-static-page .ebs-card:has(> .query-grid-3) > .ebs-query-header,
.g3-static-page .filter-card:has(> .filter-row-single) > .filter-header { padding-right: 160px; }
.g3-static-page .query-grid-3 > .query-actions,
.g3-static-page .filter-row-single > .filter-actions { position: absolute; top: 6px; right: 10px; display: flex; gap: 8px; }
.g3-static-page .form-section-title { padding-bottom: 12px; border-bottom: 1px solid var(--cscec-line-color); margin: 24px 0 20px; }
.g3-static-page .form-section-title:first-child { margin-top: 0; }
.g3-static-page :is(.page-footer-bar, .form-bottom-bar) { min-width: 0; flex-wrap: wrap; gap: 8px; padding: 16px 20px; background: var(--cscec-bg-content-color); border-color: var(--cscec-line-color); border-radius: 3px; box-shadow: none; }
.g3-static-page :is(.meta-info-strip, .info-badge-box) { border-color: var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-table-th-color); color: var(--cscec-font-secondary-color); box-shadow: none; }

/* 查询与表单栅格 */
.g3-static-page :is(.form-grid, .form-grid-3, .detail-grid, .info-badge-grid-3) { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px 24px; }
.g3-static-page .form-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 24px; }
.g3-static-page .query-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; }
.g3-page-index .query-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.g3-page-index .query-grid.is-collapsed > .query-item:nth-child(n+4) { display: none; }
.g3-static-page .query-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 24px; max-width: none; }
.g3-static-page :is(.form-group, .form-item, .form-row, .form-group-item, .detail-item, .query-item, .filter-item, .filter-input-wrap, .form-row-full) { min-width: 0; }
.g3-static-page :is(.form-group label, .form-item label, .form-row label, .form-group-item label, .form-row-full > label, .query-label, .filter-label, .report-field-label) { color: var(--cscec-font-base-color); font-size: 14px; font-weight: 400; line-height: 22px; }
.g3-static-page :is(.query-label, .filter-label) { white-space: nowrap; }
.g3-static-page :is(.form-group label.required, .form-item label.required, .form-row label.required)::before { color: var(--cscec-danger-color); }
.g3-static-page .filter-row-single { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 24px; }
.g3-static-page .filter-item, .g3-static-page .filter-item.region-item { min-width: 0; flex: 1 1 220px; }
.g3-static-page :is(.form-ctrl, .query-input, .query-select, .filter-text-input, .filter-select, .form-control, .form-ctrl-input, .form-ctrl-select, .form-ctrl-textarea, .inline-edit-input, .inline-edit-select, .bp-input-ctrl, .region-search-input, .report-detail-textarea, .search-input-wrapper input) { min-width: 0; max-width: 100%; border: 1px solid var(--cscec-border-color); border-radius: 3px; background-color: var(--cscec-bg-content-color); color: var(--cscec-font-base-color); font-size: 14px; line-height: 22px; box-shadow: none; }
.g3-static-page :is(input, select):is(.form-ctrl, .query-input, .query-select, .filter-text-input, .filter-select, .form-control, .form-ctrl-input, .form-ctrl-select, .inline-edit-input, .inline-edit-select, .bp-input-ctrl) { height: 32px; padding: var(--cscec-input-normal-padding); }
.g3-static-page .filter-text-input { padding-right: 30px; }
.g3-static-page .region-search-input { height: 32px; padding: 4px 26px; }
.g3-static-page .search-input-wrapper input { height: 32px; padding: 4px 32px 4px 11px; }
.g3-static-page :is(textarea.form-ctrl, textarea.form-control, .form-ctrl-textarea, .report-detail-textarea, .form-row-full > textarea) { min-height: 96px; padding: 8px 11px; font-size: 14px; line-height: 22px; }
.g3-static-page :is(.form-ctrl, .query-input, .query-select, .filter-text-input, .filter-select, .form-control, .form-ctrl-input, .form-ctrl-select, .form-ctrl-textarea, .bp-input-ctrl, .region-search-input, .search-input-wrapper input):hover:not(:disabled):not([readonly]) { border-color: var(--cscec-primary-color-hover); }
.g3-static-page :is(.form-ctrl, .query-input, .query-select, .filter-text-input, .filter-select, .form-control, .form-ctrl-input, .form-ctrl-select, .form-ctrl-textarea, .bp-input-ctrl, .region-search-input, .report-detail-textarea, .search-input-wrapper input):focus { outline: 0; border-color: var(--cscec-primary-color); box-shadow: var(--g3-focus-shadow); }
.g3-static-page :is(.form-ctrl, .query-input, .query-select, .filter-text-input, .filter-select, .form-control, .form-ctrl-input, .form-ctrl-select):disabled { border-color: var(--cscec-line-color); background: var(--cscec-bg-table-th-color); color: var(--cscec-font-secondary-color); }
.g3-static-page .form-ctrl[readonly] { border-color: var(--cscec-line-color); background: var(--cscec-bg-table-th-color); color: var(--cscec-font-base-color); }
.g3-static-page :is(input, textarea)::placeholder { color: var(--cscec-font-secondary-color); }
.g3-static-page :is(input[type="checkbox"], input[type="radio"]) { accent-color: var(--cscec-primary-color); }
.g3-static-page .tree-select-trigger { min-width: 0; min-height: 32px; padding: 4px 11px; border-color: var(--cscec-border-color); border-radius: 3px; font-size: 14px; }
.g3-static-page .tree-select-text { min-width: 0; font-size: 14px; }
.g3-static-page .tree-select-trigger.is-open { border-color: var(--cscec-primary-color); box-shadow: var(--g3-focus-shadow); }
.g3-static-page :is(.tree-select-dropdown, .year-picker-panel) { max-width: 100%; border-color: var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-content-color); box-shadow: 0 4px 16px rgb(0 0 0 / 12%); }
.g3-static-page :is(.tree-checkbox-item, .tree-node-parent) { color: var(--cscec-font-base-color); font-size: 14px; }
.g3-static-page :is(.tree-checkbox-item:hover, .tree-node-parent:hover, .year-cell:hover:not(.is-disabled)) { background: var(--cscec-bg-table-hover-color); }
.g3-static-page .year-cell.is-selected { color: var(--cscec-font-white-color); background: var(--cscec-primary-color); }
.g3-static-page .year-cell.is-current::after { border-color: var(--cscec-primary-color); }
.g3-static-page .radio-pill-group { flex-wrap: wrap; }
.g3-static-page .radio-pill span { border-radius: 3px; font-size: 14px; }
.g3-static-page .radio-pill input[type="radio"]:checked + span { color: var(--cscec-primary-color); background: var(--cscec-bg-table-hover-color); border-color: var(--cscec-primary-color); }
.g3-static-page .radio-pill input[type="radio"]:disabled + span { color: var(--cscec-font-help-color); background: var(--cscec-bg-table-th-color); border-color: var(--cscec-line-color); }
.g3-static-page .star-rating .star.is-selected { color: var(--cscec-warn-color); }
.g3-static-page .bp-stepper-wrap { height: 32px; border-color: var(--cscec-border-color); border-radius: 3px; }
.g3-static-page .bp-stepper-wrap:focus-within { border-color: var(--cscec-primary-color); box-shadow: var(--g3-focus-shadow); }

/* G3 默认/主按钮；保持原事件、权限和 disabled 状态。 */
.g3-static-page :is(.ebs-btn-primary, .ebs-btn-default, .toolbar-btn-add, .toolbar-btn-ghost, .btn-action-primary, .btn-action-secondary, .btn-portal-primary, .btn-portal-subtle, .btn-back-portal, .btn-report-edit, .btn-report-save, .btn-report-cancel, .btn-attach-upload, .empty-btn) { min-height: 32px; height: 32px; padding: 4px 12px; border: 1px solid var(--cscec-border-color); border-radius: 3px; background: var(--cscec-bg-content-color); color: var(--cscec-font-base-color); font-size: 14px; font-weight: 400; line-height: 22px; box-shadow: none; white-space: nowrap; transition: background-color .15s, border-color .15s, color .15s; }
.g3-static-page :is(.ebs-btn-primary, .toolbar-btn-add, .btn-action-primary, .btn-portal-primary, .btn-report-save) { color: var(--cscec-font-white-color); background: var(--cscec-primary-color); border-color: var(--cscec-primary-color); }
.g3-static-page :is(.ebs-btn-primary, .toolbar-btn-add, .btn-action-primary, .btn-portal-primary, .btn-report-save):hover:not(:disabled) { color: var(--cscec-font-white-color); background: var(--cscec-primary-color-hover); border-color: var(--cscec-primary-color-hover); box-shadow: none; }
.g3-static-page :is(.ebs-btn-primary, .toolbar-btn-add, .btn-action-primary, .btn-portal-primary, .btn-report-save):active:not(:disabled) { background: var(--cscec-primary-color-click); border-color: var(--cscec-primary-color-click); }
.g3-static-page :is(.ebs-btn-default, .toolbar-btn-ghost, .btn-action-secondary, .btn-portal-subtle, .btn-back-portal, .btn-report-edit, .btn-report-cancel, .btn-attach-upload, .empty-btn):hover:not(:disabled) { color: var(--cscec-primary-color-hover); background: var(--cscec-bg-content-color); border-color: var(--cscec-primary-color-hover); box-shadow: none; }
.g3-static-page :is(.ebs-btn-text, .table-action-btn, .btn-row-action, .op-btn, .bp-action-btn, .attach-action-btn) { padding: 0 4px; min-height: 24px; border: 0; border-radius: 3px; background: transparent; color: var(--cscec-primary-color); font-size: 12px; line-height: 24px; box-shadow: none; white-space: nowrap; }
.g3-static-page :is(.ebs-btn-text, .table-action-btn, .btn-row-action, .op-btn, .bp-action-btn, .attach-action-btn):hover:not(:disabled):not(.disabled) { color: var(--cscec-primary-color-hover); background: transparent; }
.g3-static-page :is(.table-action-btn.danger, .btn-row-action.btn-delete, .op-btn-delete, .bp-action-btn.danger, .attach-delete-btn) { color: var(--cscec-danger-color); }
.g3-static-page :is(.table-action-btn.danger, .btn-row-action.btn-delete, .op-btn-delete, .bp-action-btn.danger, .attach-delete-btn):hover { color: #d9363e; background: transparent; }
.g3-static-page :is(.table-action-btn.warn, .op-btn-cancel) { color: #ad6800; }
.g3-static-page :is(.ebs-btn-primary, .ebs-btn-default, .toolbar-btn-add, .toolbar-btn-ghost, .btn-action-primary, .btn-action-secondary, .table-action-btn):disabled,
.g3-static-page .table-action-btn.disabled { color: var(--cscec-font-help-color); border-color: var(--cscec-line-color); background: var(--cscec-bg-table-th-color); box-shadow: none; cursor: not-allowed; }
.g3-static-page :is(button, a, input[type="checkbox"], input[type="radio"]):focus-visible { outline: 2px solid var(--cscec-primary-color); outline-offset: 2px; }

/* 表格：保留列宽、合并单元格、固定操作列、行内编辑和横向滚动。 */
.g3-static-page :is(.data-table-wrap, .table-responsive-box, .bp-table-wrap, .relation-table-box) { min-width: 0; max-width: 100%; overflow-x: auto; border-color: var(--cscec-line-color); border-radius: 3px; }
.g3-static-page :is(.cscec-table, .custom-grid-table, .bp-table, .marketing-table, .edit-table) { font-size: 14px; border-color: var(--cscec-line-color); }
.g3-static-page table.cscec-table { min-width: 960px; }
.g3-static-page :is(.cscec-table, .custom-grid-table, .bp-table, .marketing-table, .edit-table) th { padding: 8px 12px; color: var(--cscec-font-base-color); background: var(--cscec-bg-table-th-color); border-color: var(--cscec-line-color); font-weight: 600; font-size: 14px; line-height: 22px; }
.g3-static-page :is(.cscec-table, .custom-grid-table, .bp-table, .marketing-table, .edit-table) td { padding: 8px 12px; color: var(--cscec-font-base-color); border-color: var(--cscec-line-color); font-size: 14px; line-height: 22px; }
.g3-static-page .main-shell a:not(.disabled) { color: var(--cscec-primary-color); }
.g3-static-page .main-shell a:hover:not(.disabled) { color: var(--cscec-primary-color-hover); }
.g3-static-page :is(.cscec-table, .custom-grid-table, .bp-table, .marketing-table, .edit-table) tbody tr:nth-child(even):not(.row-editing):not(.is-inline-editing):not(.is-new-row):not(.is-selected) > td { background-color: var(--cscec-bg-table-tr-color); }
.g3-static-page :is(.cscec-table, .custom-grid-table, .bp-table, .marketing-table, .edit-table) tbody tr:hover > td { background-color: var(--cscec-bg-table-hover-color); }
.g3-static-page .cscec-table th.group-header { background: var(--cscec-bg-table-th-color); color: var(--cscec-font-base-color); }
.g3-static-page th.col-sticky-action { background: var(--cscec-bg-table-th-color); }
.g3-static-page td.col-sticky-action { background: var(--cscec-bg-content-color); border-color: var(--cscec-line-color); }
.g3-static-page :is(.cscec-table, .edit-table) .form-ctrl { font-size: 14px; }
.g3-static-page :is(.status-tag, .importance-tag, .redblack-tag, .market-category-tag, .overdue-pill, .notice-status-badge, .notice-top-tag) { border-radius: 3px; font-size: 12px; font-weight: 400; line-height: 20px; white-space: nowrap; }
.g3-static-page :is(.pagination-bar, .panel-footer-pagination) { min-width: 0; flex-wrap: wrap; justify-content: flex-end; gap: 12px; padding: 12px 10px; color: var(--cscec-font-base-color); background: var(--cscec-bg-content-color); border: 0; border-radius: 0; font-size: 12px; }
.g3-static-page :is(.pagination-info, .pagination-controls, .pg-pages, .pg-jumper, .jump-page-wrapper) { min-width: 0; flex-wrap: wrap; gap: 8px; }
.g3-static-page .pagination-info strong { color: var(--cscec-primary-color); font-weight: 500; }
.g3-static-page :is(.pg-btn, .pg-page-num, .page-btn, .btn-page, .pg-btn-jump, .btn-jump-go) { min-width: 32px; height: 32px; padding: 0 10px; border: 1px solid var(--cscec-border-color); border-radius: 3px; background: var(--cscec-bg-content-color); color: var(--cscec-font-base-color); font-size: 14px; font-weight: 400; line-height: 30px; box-shadow: none; }
.g3-static-page .page-btn { width: 32px; padding: 0; }
.g3-static-page :is(.pg-btn, .pg-page-num, .page-btn, .btn-page, .pg-btn-jump, .btn-jump-go):hover:not(:disabled):not(.disabled),
.g3-static-page :is(.pg-page-num.active, .page-btn.active, .btn-page.active) { background: var(--cscec-bg-content-color); color: var(--cscec-primary-color); border-color: var(--cscec-primary-color); box-shadow: none; }
.g3-static-page :is(.pg-btn, .page-btn, .btn-page):disabled, .g3-static-page .page-btn.disabled { color: var(--cscec-font-help-color); border-color: var(--cscec-line-color); background: var(--cscec-bg-table-th-color); cursor: not-allowed; }
.g3-static-page :is(.pagination-size-select, .page-size-selector, .pg-jump-input, .jump-input) { min-width: 0; height: 32px; padding: 4px 8px; color: var(--cscec-font-base-color); border-color: var(--cscec-border-color); border-radius: 3px; background: var(--cscec-bg-content-color); font-size: 12px; }

/* 全部 HTML 弹窗采用统一 G3 外观，原有开关类与宽度保持有效。 */
.g3-static-page .modal-backdrop { background: rgb(0 0 0 / 45%); backdrop-filter: none; padding: 24px; }
.g3-static-page :is(.modal-window, .modal-dialog, .modal-dialog-box) { min-width: 0; min-height: 0; max-height: calc(100dvh - 48px); background: var(--cscec-bg-window-color); border-radius: 3px; box-shadow: 0 4px 24px rgb(0 0 0 / 16%); }
.g3-static-page :is(.modal-header, .modal-header-bar) { min-height: 40px; padding: 0 20px; gap: 12px; flex-shrink: 0; border-color: var(--cscec-line-color); background: var(--cscec-bg-window-title-color); border-radius: 3px 3px 0 0; }
.g3-static-page :is(.modal-title, .modal-dialog-title) { min-width: 0; color: var(--cscec-font-base-color); font-size: 16px; font-weight: 600; line-height: 24px; }
.g3-static-page .modal-dialog-title::before { background: var(--cscec-primary-color); }
.g3-static-page :is(.modal-close, .modal-close-btn, .modal-btn-close) { flex-shrink: 0; min-width: 28px; min-height: 28px; padding: 0; border: 0; border-radius: 3px; color: var(--cscec-font-secondary-color); background: transparent; font-size: 16px; line-height: 28px; }
.g3-static-page :is(.modal-close, .modal-close-btn, .modal-btn-close):hover { color: var(--cscec-font-base-color); background: var(--cscec-line-color); }
.g3-static-page :is(.modal-body, .modal-body-content) { min-width: 0; min-height: 0; padding: 24px; overflow-y: auto; overscroll-behavior: contain; }
.g3-static-page :is(.modal-footer, .modal-footer-bar) { flex-shrink: 0; min-width: 0; flex-wrap: wrap; justify-content: center; gap: 8px; padding: 0 20px 20px; border-top: 0; background: var(--cscec-bg-window-color); border-radius: 0 0 3px 3px; }
.g3-static-page :is(.att-tag, .file-tag, .report-attach-item, .file-item, .badge-file-btn) { min-width: 0; max-width: 100%; border-color: var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-table-th-color); font-size: 12px; overflow-wrap: anywhere; }
.g3-static-page :is(.upload-trigger, .report-attach-upload-box, .file-upload-box) { border-color: var(--cscec-border-color); border-radius: 3px; background: var(--cscec-bg-table-th-color); }
.g3-static-page :is(.upload-trigger, .report-attach-upload-box, .file-upload-box):hover { border-color: var(--cscec-primary-color); }
.g3-static-page :is(.form-tip-alert, .quick-pill-btn) { border-radius: 3px; font-size: 12px; }
.g3-static-page .quick-pill-options { flex-wrap: wrap; gap: 8px; }

/* 督办台账：组织树、统计、查询与表格。 */
.g3-static-page .ebs-layout { min-width: 0; min-height: 0; gap: 16px; }
.g3-static-page .ebs-sidebar { width: var(--g3-org-tree-width); min-width: var(--g3-org-tree-width); flex-shrink: 0; }
.g3-static-page .ebs-tree-card { padding: 20px 16px; }
.g3-static-page .ebs-tree-search-wrap { height: 32px; border-color: var(--cscec-border-color); border-radius: 3px; }
.g3-static-page .ebs-tree-search-input { min-width: 0; font-size: 12px; background: transparent; }
.g3-static-page .ebs-tree-container { max-height: calc(100dvh - 250px); }
.g3-static-page .tree-node { min-height: 32px; padding: 6px 8px; border-radius: 3px; color: var(--cscec-font-base-color); font-size: 14px; }
.g3-static-page .tree-node:hover, .g3-static-page .tree-node.is-selected { color: var(--cscec-primary-color); background: var(--cscec-bg-table-hover-color); }
.g3-static-page .ebs-splitter-toggle { left: calc(var(--g3-org-tree-width) - 6px); width: 14px; border-radius: 3px; background: var(--g3-sidebar-bg); box-shadow: none; }
.g3-static-page .ebs-main { min-width: 0; gap: 16px; }
.g3-static-page .kpi-row { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; }
.g3-static-page .kpi-card.kpi-unprocessed::after { background: #fa8c16; }
.g3-static-page .kpi-card { padding: 16px; gap: 4px; }
.g3-static-page .kpi-card::after { width: 2px; }
.g3-static-page .kpi-title { color: var(--cscec-font-secondary-color); font-size: 12px; }
.g3-static-page .kpi-value { color: var(--cscec-font-base-color); font-size: 24px; font-weight: 500; font-variant-numeric: tabular-nums; line-height: 32px; }
.g3-static-page .kpi-desc { color: var(--cscec-font-secondary-color); font-size: 12px; }

/* 详情与流转轨迹 */
.g3-static-page .detail-label { color: var(--cscec-font-secondary-color); font-size: 14px; }
.g3-static-page .detail-value { color: var(--cscec-font-base-color); font-size: 14px; line-height: 24px; overflow-wrap: anywhere; }
.g3-static-page .detail-box { padding: 12px 16px; border-color: var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-table-th-color); color: var(--cscec-font-base-color); font-size: 14px; line-height: 24px; overflow-wrap: anywhere; }
.g3-static-page .process-timeline-wrap { padding: 16px 12px; }
.g3-static-page .timeline-content-card { min-width: 0; border-color: var(--cscec-line-color); border-radius: 3px; background: var(--cscec-bg-content-color); box-shadow: none; }
.g3-static-page .timeline-content-card:hover { box-shadow: none; border-color: var(--cscec-border-color); }
.g3-static-page :is(.timeline-header, .timeline-header-left, .timeline-meta-row) { min-width: 0; flex-wrap: wrap; gap: 8px; }
.g3-static-page .timeline-step-title { font-size: 16px; font-weight: 500; }
.g3-static-page :is(.timeline-meta-row, .timeline-opinion-box) { font-size: 14px; line-height: 24px; }
.g3-static-page :is(.timeline-time-badge, .timeline-stay-badge, .timeline-action-tag, .timeline-submit-time-pill) { border-radius: 3px; font-size: 12px; }
.g3-static-page .timeline-opinion-box { background: var(--cscec-bg-table-th-color); border-color: var(--cscec-line-color); border-radius: 3px; overflow-wrap: anywhere; }

/* 深耕方案配置：保持各页签的 hidden/is-active 状态。 */
.g3-page-deepening-config .page-container { height: auto; min-height: 0; }
.g3-static-page .config-main-panel { min-width: 0; min-height: 0; }
.g3-static-page .region-sidebar { width: 240px; min-width: 240px; border-color: var(--cscec-line-color); }
.g3-static-page .region-sidebar-header { padding: 16px; background: var(--cscec-bg-content-color); border-color: var(--cscec-line-color); }
.g3-static-page :is(.badge-count, .region-item-badge, .tab-badge) { border-radius: 3px; border-color: var(--cscec-line-color); font-size: 12px; }
.g3-static-page .region-item-row { min-height: 36px; padding: 8px 16px; font-size: 14px; }
.g3-static-page .region-item-row:hover, .g3-static-page .region-item-row.active { color: var(--cscec-primary-color); background: var(--cscec-bg-table-hover-color); }
.g3-static-page .region-item-row.active { border-left-color: var(--cscec-primary-color); }
.g3-static-page .config-panel-header { padding: 16px 20px; flex-wrap: wrap; background: var(--cscec-bg-content-color); border-color: var(--cscec-line-color); }
.g3-static-page .current-region-flag { font-size: 18px; font-weight: 600; }
.g3-static-page .current-region-flag::before { width: 3px; background: var(--cscec-primary-color); }
.g3-static-page .config-tabs-bar { flex-shrink: 0; flex-wrap: wrap; gap: 16px; min-width: 0; overflow: visible; border-color: var(--cscec-line-color); }
.g3-static-page .config-tab-btn { flex-shrink: 0; padding: 12px 8px; font-size: 14px; font-weight: 400; white-space: nowrap; }
.g3-static-page .config-tab-btn.active { color: var(--cscec-primary-color); }
.g3-static-page .config-tab-btn.active::after { background: var(--cscec-primary-color); }
.g3-static-page :is(.report-card-header, .relation-table-header-bar) { min-width: 0; flex-wrap: wrap; gap: 12px; padding: 10px 12px; border-color: var(--cscec-line-color); background: var(--cscec-bg-content-color); }
.g3-static-page :is(.report-header-left, .report-header-right, .report-title-wrap) { min-width: 0; flex-wrap: wrap; gap: 8px; }
.g3-static-page .report-card-body { padding: 20px; }
.g3-static-page .report-title-bar { background: var(--cscec-primary-color); }
.g3-static-page .report-detail-view { border-color: var(--cscec-line-color); border-radius: 3px; color: var(--cscec-font-base-color); background: var(--cscec-bg-table-th-color); font-size: 14px; line-height: 24px; }
.g3-static-page .panel-footer-pagination { padding: 16px 20px; }
.g3-static-page .op-action-wrap { flex-wrap: wrap; gap: 8px; }

/* 通知列表与已完成的看板保持同一套主题。 */
.g3-page-notice-list .portal-header-bar { margin-bottom: 16px; }
.g3-static-page .category-tabs-bar { min-width: 0; background: var(--cscec-bg-content-color); border-color: var(--cscec-line-color); }
.g3-static-page .cat-tab-item { padding: 12px 16px; font-size: 14px; border-bottom-width: 2px; }
.g3-static-page .cat-tab-item.active { color: var(--cscec-primary-color); border-bottom-color: var(--cscec-primary-color); background: var(--cscec-bg-content-color); font-weight: 500; }
.g3-static-page .tab-count-badge { border-radius: 3px; font-size: 12px; color: var(--cscec-font-secondary-color); background: var(--cscec-bg-table-th-color); }
.g3-static-page .list-toolbar { min-width: 0; padding: 10px 12px; border-color: var(--cscec-line-color); }
.g3-static-page .search-input-wrapper { min-width: 0; max-width: 100%; }
.g3-static-page .notice-table-row { min-width: 0; min-height: 42px; padding: 8px 12px; gap: 12px; border-color: var(--cscec-line-color); }
.g3-static-page .notice-table-row:hover { background: var(--cscec-bg-table-hover-color); }
.g3-static-page .row-left { min-width: 0; margin-right: 0; }
.g3-static-page .row-title { min-width: 0; color: var(--cscec-primary-color); font-size: 14px; }
.g3-static-page .row-right { flex-shrink: 0; flex-wrap: wrap; gap: 12px; }
.g3-static-page .row-date { color: var(--cscec-font-secondary-color); font-size: 12px; font-variant-numeric: tabular-nums; }
.g3-static-page .row-actions-group { gap: 8px; }
.g3-page-notice-list .pagination-bar { padding: 12px; }
.g3-page-notice-list .form-group { margin-bottom: 20px; }
.g3-page-notice-list .form-label { font-size: 14px; font-weight: 400; }
.g3-page-notice-list .top-switch-wrap { flex-wrap: wrap; gap: 16px; padding: 0; border: 0; background: transparent; }
.g3-page-notice-list .top-radio-label { font-size: 14px; }

/* 看板沿用原双列栏目与操作权限，文字及间距对齐右侧参考。 */
.notice-g3-page .portal-header-bar { min-height: 56px; margin-bottom: 16px; }
.notice-g3-page .portal-page-title h1 { font-size: 18px; }
.notice-g3-page .org-scope-field > label { color: var(--cscec-font-base-color); }
.notice-g3-page .notice-grid { gap: 16px; }
.notice-g3-page .notice-card-header { min-height: 44px; padding: 0 12px; }
.notice-g3-page .notice-card-title { font-size: 14px; }
.notice-g3-page .notice-item { min-height: 42px; padding: 8px 12px; }
.notice-g3-page .notice-title-text,
.notice-g3-page .notice-more-link { color: var(--cscec-primary-color); }

/* 响应式断点为本项目布局选择，不改变字段或业务状态。 */
@media (max-width: 1360px) {
  .g3-static-page .topbar { height: auto; min-height: 56px; flex-wrap: wrap; padding: 10px 20px; gap: 8px 20px; }
  .g3-static-page .topbar-left { flex-wrap: wrap; gap: 8px 20px; }
  .g3-static-page .topbar-user { margin-left: auto; }
  .g3-static-page .topbar-company { max-width: 220px; }
}
@media (max-width: 1100px) {
  .g3-static-page .sidebar { width: 184px; }
  .g3-static-page :is(.form-grid, .form-grid-3, .detail-grid, .info-badge-grid-3) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .g3-static-page .query-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .g3-static-page .query-item.query-actions { grid-column: 1 / -1; justify-self: end; }
  .g3-static-page .ebs-layout { flex-direction: column; padding-top: 40px; }
  .g3-static-page .ebs-sidebar { width: 100%; min-width: 0; }
  .g3-static-page .ebs-tree-container { max-height: 200px; }
  .g3-static-page .ebs-splitter-toggle,
  .g3-static-page .ebs-layout.is-collapsed .ebs-splitter-toggle { top: 0; left: auto; right: 0; width: 24px; height: 32px; transform: none; }
  .g3-static-page .ebs-layout.is-collapsed .ebs-sidebar { height: 0; max-height: 0; min-height: 0; flex-basis: 0; }
  .g3-static-page .kpi-row { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .g3-page-deepening-config .page-container { flex: 1 0 auto; overflow: visible; }
  .g3-static-page .config-layout-card { flex-direction: column; overflow: visible; }
  .g3-static-page .region-sidebar { width: 100%; min-width: 0; max-height: 240px; flex: 0 0 auto; border-right: 0; border-bottom: 1px solid var(--cscec-line-color); }
  .g3-static-page .region-list-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); max-height: 136px; overflow: auto; }
  .g3-static-page .config-main-panel { flex: 1 0 auto; overflow: visible; }
  .g3-static-page .config-panel-header { position: static; }
  .g3-page-notice-list .notice-table-row:has(.row-actions-group) { flex-wrap: wrap; gap: 6px 12px; }
  .g3-page-notice-list .notice-table-row:has(.row-actions-group) .row-left { flex-basis: 100%; }
  .g3-page-notice-list .notice-table-row:has(.row-actions-group) .row-right { margin-left: auto; }
}
@media (max-width: 760px) {
  .g3-static-page .topbar { padding: 10px 16px; gap: 8px; }
  .g3-static-page .topbar-left { width: 100%; gap: 8px 16px; }
  .g3-static-page .topbar-brand { flex-wrap: wrap; flex-shrink: 1; gap: 8px; }
  .g3-static-page .brand-copy strong { font-size: 12px; }
  .g3-static-page .brand-copy span { font-size: 7px; }
  .g3-static-page .brand-sys-title { font-size: 12px; }
  .g3-static-page .topbar-nav-item { height: 30px; padding: 0 12px; }
  .g3-static-page .topbar-user { width: 100%; justify-content: space-between; gap: 10px; }
  .g3-static-page .topbar-company { max-width: min(40vw, 240px); }
  .g3-static-page .topbar-icons { gap: 10px; }
  .g3-static-page .sidebar { width: 160px; }
  .g3-static-page .sidebar-search-wrap { padding: 16px 12px 8px; }
  .g3-static-page .sidebar-section-title { padding: 8px 14px; }
  .g3-static-page .sidebar-menu-item { padding: 10px 12px; gap: 8px; font-size: 13px; }
  .g3-static-page .page-tab-bar { padding: 0 12px; }
  .g3-static-page :is(.page-container, .ebs-page, .notice-portal-container) { padding: 16px; gap: 16px; }
  .g3-static-page :is(.ebs-card, .ebs-query-card, .ebs-table-card, .filter-card, .form-card) { padding: 16px; }
  .g3-static-page :is(.page-header-bar, .portal-header-bar) { padding: 16px; }
  .g3-static-page :is(.form-grid, .form-grid-2, .form-grid-3, .detail-grid, .query-grid, .query-grid-3, .info-badge-grid-3) { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .g3-static-page .filter-row-single { grid-template-columns: minmax(0, 1fr); }
  .g3-static-page .query-grid-3 > .query-actions,
  .g3-static-page .filter-row-single > .filter-actions { position: static; justify-content: flex-end; grid-column: 1 / -1; }
  .g3-static-page .ebs-card:has(> .query-grid-3) > .ebs-query-header,
  .g3-static-page .filter-card:has(> .filter-row-single) > .filter-header { padding-right: 10px; }
  .g3-page-index .query-grid.is-collapsed > .query-item:nth-child(n+2) { display: none; }
  .g3-static-page .query-item:not(.query-actions) { flex-direction: column; align-items: stretch; gap: 6px; }
  .g3-static-page .query-label { width: auto; text-align: left; }
  .g3-static-page .kpi-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .g3-static-page .form-row { flex-wrap: wrap; gap: 8px; }
  .g3-static-page .form-row > label { width: 100%; text-align: left; }
  .g3-page-notice-list .portal-header-right { width: 100%; }
  .g3-page-notice-list .portal-header-right > div { min-width: 0; flex-wrap: wrap; }
  .g3-page-notice-list .search-input-wrapper input { width: 100%; }
  .g3-page-notice-list .notice-table-row { flex-wrap: wrap; }
  .g3-page-notice-list .row-left { flex-basis: 100%; }
  .g3-page-notice-list .row-right { max-width: 100%; margin-left: auto; }
}
@media (max-width: 520px) {
  .g3-static-page .sidebar { width: 132px; }
  .g3-static-page .sidebar-section-title { padding-left: 12px; }
  .g3-static-page .sidebar-menu-item { padding-right: 6px; gap: 6px; font-size: 12px; }
  .g3-static-page .brand-logo { width: 32px; height: 32px; }
  .g3-static-page .brand-copy strong { white-space: normal; }
  .g3-static-page .topbar-company { max-width: 32vw; font-size: 11px; }
  .g3-static-page .topbar-user-info-col { max-width: 104px; }
  .g3-static-page :is(.page-container, .ebs-page, .notice-portal-container) { padding: 12px; gap: 12px; }
  .g3-static-page :is(.ebs-card, .ebs-query-card, .ebs-table-card, .filter-card, .form-card) { padding: 12px; }
  .g3-static-page :is(.page-header-bar, .portal-header-bar) { padding: 12px; }
  .g3-static-page .kpi-row { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .g3-static-page :is(.ebs-query-header, .table-toolbar, .page-header-actions) { align-items: flex-start; }
  .g3-static-page .ebs-query-actions { flex-wrap: wrap; }
  .g3-static-page .modal-backdrop { padding: 12px; }
  .g3-static-page :is(.modal-window, .modal-dialog, .modal-dialog-box) { width: 100%; max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); }
  .g3-static-page :is(.modal-header, .modal-header-bar) { padding: 0 16px; }
  .g3-static-page :is(.modal-body, .modal-body-content) { padding: 20px 16px; }
  .g3-static-page :is(.modal-footer, .modal-footer-bar) { padding: 0 16px 16px; }
  .g3-static-page .timeline-content-card { padding: 12px; }
  .g3-static-page .timeline-meta-item { min-width: 0; flex-wrap: wrap; }
  .g3-static-page :is(.report-card-header, .report-card-body, .config-panel-header) { padding: 12px; }
  .g3-static-page .config-tabs-bar { padding: 0 12px; }
  .g3-static-page :is(.pagination-bar, .panel-footer-pagination) { padding: 12px 0 0; }
  .g3-page-notice-list .pagination-bar { padding: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .g3-static-page :is(.modal-window, .modal-dialog, .modal-dialog-box) { animation: none; }
  .g3-static-page :is(.ebs-sidebar, button, .form-ctrl, .tree-node, .sidebar-menu-item) { transition: none; }
}
@media print {
  body.g3-static-page { height: auto; min-height: 0; overflow: visible; background: #fff; }
  .g3-static-page :is(.app-shell, .main-shell) { height: auto; min-height: 0; overflow: visible; }
}

.g3-static-page .date-range-group { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; }
.g3-static-page .date-range-sep { flex: 0 0 auto; color: var(--cscec-font-secondary-color); font-size: 12px; user-select: none; }
