.chat-type-management-page { width: 100%; height: 100%; min-height: 0; display: flex; flex-direction: column; overflow: hidden; } .chat-type-management-page .ant-card, .chat-type-management-page .ant-card-body, .chat-type-management-page__card { width: 100%; height: 100%; min-height: 0; } .chat-type-management-page__card { flex: 1 1 auto; } .chat-type-management-page .ant-card, .chat-type-management-page__card { display: flex; flex-direction: column; } .chat-type-management-page .ant-card-head { min-height: 44px; padding: 0 12px; } .chat-type-management-page .ant-card-head-title, .chat-type-management-page .ant-card-extra { padding: 6px 0; } .chat-type-management-page .ant-card-body { display: flex; flex-direction: column; overflow: hidden; padding: 4px 14px 12px; } .chat-type-management-page__list, .chat-type-management-page__editor { width: 100%; min-height: 0; display: flex; flex-direction: column; gap: 6px; height: 100%; overflow: hidden; } .chat-type-management-page__list-scroll { flex: 1; min-height: 0; overflow: auto; padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px)); } .chat-type-management-page__list .ant-list { flex: 0 0 auto; min-height: auto; overflow: visible; padding-bottom: 0; } .chat-type-management-page__list-scroll > .ant-list + .ant-list, .chat-type-management-page__list-scroll > .ant-empty { margin-top: 10px; } .chat-type-management-page__editor-form { width: 100%; flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 2px; overflow: hidden; } .chat-type-management-page__editor-scroll { width: 100%; flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 4px; overflow: auto; padding: 0 0 calc(10px + env(safe-area-inset-bottom, 0px)); } .chat-type-management-page__editor-scroll:has(.chat-type-management-page__markdown-grid--maximized) { overflow: hidden; } .chat-type-management-page__editor-form .ant-form-item { margin-bottom: 6px; } .chat-type-management-page__list-header { display: flex; align-items: center; justify-content: space-between; gap: 8px; } .chat-type-management-page__list-header .ant-typography { margin: 0; } .chat-type-management-page__list-actions { width: 100%; } .chat-type-management-page__item { cursor: default; border: 1px solid #f0f0f0; border-radius: 12px; margin-bottom: 8px; padding: 12px 16px; } .chat-type-management-page__item--active { border-color: #1677ff; background: #f0f7ff; } .chat-type-management-page__item-main { width: 100%; } .chat-type-management-page__item-description.ant-typography { margin: 8px 0 10px; } .chat-type-management-page__item-description { margin: 8px 0 10px; } .chat-type-management-page__item-description .markdown-preview > :last-child { margin-bottom: 0; } .chat-type-management-page__item-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; } .chat-type-management-page__default-context-field { display: flex; flex-direction: column; flex: 0 0 auto; gap: 8px; padding: 10px 12px; border-radius: 14px; background: rgba(248, 250, 252, 0.82); border: 1px solid #e2e8f0; } .chat-type-management-page__default-context-field--hidden { display: none; } .chat-type-management-page__default-context-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; } .chat-type-management-page__default-context-options { width: 100%; max-height: min(30dvh, 272px); overflow: auto; padding-right: 2px; } .chat-type-management-page__default-context-space { width: 100%; } .chat-type-management-page__default-context-option { display: flex; flex-direction: column; gap: 4px; padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, 0.95); border: 1px solid #e5e7eb; } .chat-type-management-page__default-context-option-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; } .chat-type-management-page__default-context-link.ant-btn { padding-inline: 0; height: auto; white-space: nowrap; } .chat-type-management-page__default-context-option-copy { padding-left: 24px; } .chat-type-management-page__default-context-preview { display: flex; flex-wrap: wrap; gap: 6px; } .chat-type-management-page__markdown-field { width: 100%; flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 6px; overflow: hidden; } .chat-type-management-page__field-label { flex: 0 0 auto; line-height: 1.2; } .chat-type-management-page__markdown-editor { width: 100%; flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 6px; overflow: hidden; } .chat-type-management-page__mobile-toggle { display: none; } .chat-type-management-page__editor-toolbar { display: flex; align-items: center; justify-content: flex-end; gap: 8px; } .chat-type-management-page__header-actions { display: inline-flex; align-items: center; justify-content: flex-end; width: 100%; } .chat-type-management-page__header-actions .ant-btn { width: 36px; min-width: 36px; height: 36px; } .chat-type-management-page__markdown-grid { width: 100%; display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(320px, 1fr); gap: 12px; align-items: stretch; flex: 1; min-height: 0; overflow: hidden; } .chat-type-management-page__markdown-grid--maximized { grid-template-columns: minmax(0, 1fr); min-height: min(720px, calc(100dvh - 236px)); } .chat-type-management-page__markdown-pane { width: 100%; min-width: 0; min-height: 0; height: 100%; display: flex; flex-direction: column; gap: 6px; overflow: hidden; } .chat-type-management-page__markdown-pane .ant-form-item { flex: 1; min-height: 0; margin-bottom: 0; } .chat-type-management-page__markdown-pane .ant-form-item-control, .chat-type-management-page__markdown-pane .ant-form-item-control-input, .chat-type-management-page__markdown-pane .ant-form-item-control-input-content { min-height: 0; height: 100%; display: flex; flex-direction: column; } .chat-type-management-page__markdown-pane--desktop-hidden { display: none; } .chat-type-management-page__markdown-pane-header { display: flex; align-items: center; justify-content: space-between; gap: 6px; } .chat-type-management-page__markdown-pane .ant-input-textarea, .chat-type-management-page__markdown-pane .ant-input { height: 100%; } .chat-type-management-page__markdown-textarea { height: 100% !important; min-height: clamp(360px, calc(100dvh - 360px), 720px); resize: none; } .chat-type-management-page__markdown-textarea textarea { height: 100% !important; min-height: clamp(360px, calc(100dvh - 360px), 720px); overflow: auto !important; resize: none; } .chat-type-management-page__markdown-preview { width: 100%; height: 100%; min-height: 0; border: 1px solid #f0f0f0; border-radius: 12px; background: #fafafa; padding: 10px 12px; display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 8px; overflow: hidden; } .chat-type-management-page__markdown-preview-body { flex: 1; min-height: 0; overflow: auto; } .chat-type-management-page__markdown-preview-body .markdown-preview > :last-child { margin-bottom: 0; } .chat-type-management-page__meta-grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 14px; align-items: end; } .chat-type-management-page__meta-grid--hidden { display: none; } .chat-type-management-page__meta-item { min-width: 0; margin-bottom: 0; } .chat-type-management-page__meta-item .ant-form-item-label { padding-bottom: 2px; } .chat-type-management-page__meta-item .ant-form-item-control-input { min-height: 40px; } .chat-type-management-page__meta-item--enabled .ant-form-item-control-input { min-height: 40px; } .chat-type-management-page__meta-item--permissions .ant-checkbox-group { width: 100%; display: flex; flex-wrap: wrap; gap: 8px 14px; } .chat-type-management-page__meta-item--permissions .ant-checkbox-wrapper { margin-inline-start: 0; } .chat-type-management-page__meta-item--name { grid-column: 1 / -1; } .chat-type-management-page__meta-item--enabled { justify-self: end; } .chat-type-management-page__meta-item--enabled .ant-form-item-control-input-content { display: flex; justify-content: flex-end; } .chat-type-management-page--pane-maximized .chat-type-management-page__editor, .chat-type-management-page--pane-maximized .chat-type-management-page__editor-form, .chat-type-management-page--pane-maximized .chat-type-management-page__editor-scroll, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-field, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-editor, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-grid { flex: 1; } .chat-type-management-page--pane-maximized .chat-type-management-page__editor-scroll { overflow: hidden; } .chat-type-management-page--pane-maximized .chat-type-management-page__field-label { display: none; } .chat-type-management-page__card--pane-maximized .ant-card-body { padding-bottom: 10px; } @media (max-width: 960px) { .chat-type-management-page, .chat-type-management-page .ant-card, .chat-type-management-page .ant-card-body, .chat-type-management-page__card, .chat-type-management-page__list, .chat-type-management-page__editor, .chat-type-management-page__editor-form, .chat-type-management-page__markdown-field, .chat-type-management-page__markdown-editor, .chat-type-management-page__markdown-grid, .chat-type-management-page__markdown-pane, .chat-type-management-page__markdown-preview { min-height: 0; } .chat-type-management-page { flex: 1 1 auto; min-height: 0; } .chat-type-management-page .ant-card-body { flex: 1 1 auto; min-height: 0; overflow: hidden; } .chat-type-management-page__editor-scroll { flex: 1 1 auto; min-height: 0; overflow: auto; } .chat-type-management-page__list-header { align-items: flex-start; } .chat-type-management-page .ant-card-head { min-height: 48px; padding: 0 10px; } .chat-type-management-page .ant-card-head-title, .chat-type-management-page .ant-card-extra, .chat-type-management-page .ant-card-body { padding: 7px 10px; } .chat-type-management-page .ant-card-head-title, .chat-type-management-page .ant-card-extra { padding-top: 6px; padding-bottom: 6px; } .chat-type-management-page__editor-scroll { gap: 3px; overflow: hidden; padding: 0 0 calc(6px + env(safe-area-inset-bottom, 0px)); } .chat-type-management-page__mobile-toggle { display: flex; width: 100%; flex: 0 0 auto; } .chat-type-management-page__mobile-toggle.ant-segmented { width: 100%; } .chat-type-management-page__mobile-toggle .ant-segmented-group { width: 100%; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); } .chat-type-management-page__editor-toolbar { flex-wrap: wrap; justify-content: space-between; gap: 6px; } .chat-type-management-page__meta-grid { grid-template-columns: minmax(0, 1fr) auto; gap: 6px 12px; align-items: start; } .chat-type-management-page__meta-grid { order: 1; } .chat-type-management-page__default-context-field { order: 2; display: none; } .chat-type-management-page__markdown-editor { gap: 0; } .chat-type-management-page__markdown-field { order: 3; gap: 0; display: none; } .chat-type-management-page__default-context-field--mobile-active, .chat-type-management-page__markdown-field--mobile-active { display: flex; flex: 1 1 auto; min-height: 0; overflow: hidden; } .chat-type-management-page__default-context-header { flex-direction: column; } .chat-type-management-page__default-context-options { flex: 1 1 auto; max-height: none; overflow: auto; padding-right: 2px; } .chat-type-management-page__default-context-space { display: flex; flex-direction: column; } .chat-type-management-page__default-context-preview { flex: 0 0 auto; } .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-textarea, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-textarea textarea, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-preview, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-preview-body { flex: 1 1 auto; min-height: 0; height: 100%; } .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-preview { overflow: hidden; } .chat-type-management-page__meta-item--enabled .ant-form-item-control-input-content { justify-content: flex-end; } .chat-type-management-page__markdown-grid { grid-template-columns: minmax(0, 1fr); gap: 8px; height: 100%; min-height: 0; overflow: hidden; } .chat-type-management-page__markdown-pane:has(.chat-type-management-page__markdown-textarea), .chat-type-management-page__markdown-pane:has(.chat-type-management-page__markdown-preview) { min-height: 0; } .chat-type-management-page__markdown-pane--mobile-hidden { display: none; } .chat-type-management-page__markdown-pane, .chat-type-management-page__markdown-field, .chat-type-management-page__markdown-editor, .chat-type-management-page__markdown-preview { overflow: hidden; } .chat-type-management-page__markdown-pane .ant-form-item-control, .chat-type-management-page__markdown-pane .ant-form-item-control-input, .chat-type-management-page__markdown-pane .ant-form-item-control-input-content { flex: 1 1 auto; min-height: 0; } .chat-type-management-page__markdown-textarea, .chat-type-management-page__markdown-textarea textarea, .chat-type-management-page__markdown-preview-body { min-height: 0; } .chat-type-management-page__markdown-textarea { height: 100% !important; min-height: 0; } .chat-type-management-page__markdown-textarea textarea { height: 100% !important; min-height: 0 !important; max-height: none !important; overflow: auto !important; } .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-pane .ant-form-item, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-preview { min-height: clamp(220px, calc(100dvh - 560px), 320px); } .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-field, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-editor, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-grid, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-pane, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-preview { height: auto; overflow: visible; } .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-pane .ant-form-item, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-pane .ant-form-item-control, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-pane .ant-form-item-control-input, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-pane .ant-form-item-control-input-content { flex: none; height: auto; } .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-textarea, .chat-type-management-page:not(.chat-type-management-page--pane-maximized) .chat-type-management-page__markdown-textarea textarea { height: auto !important; min-height: clamp(320px, calc(100dvh - 430px), 520px) !important; } .chat-type-management-page--mobile-view-default-contexts .chat-type-management-page__default-context-field, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane .ant-form-item, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane .ant-form-item-control, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane .ant-form-item-control-input, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane .ant-form-item-control-input-content, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-textarea, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-textarea textarea, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-preview, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-preview-body { height: 100% !important; min-height: 0 !important; max-height: none !important; } .chat-type-management-page--mobile-view-default-contexts .chat-type-management-page__default-context-field, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-field, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-editor, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-grid, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-pane, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-preview { overflow: hidden; } .chat-type-management-page--mobile-view-default-contexts .chat-type-management-page__default-context-options, .chat-type-management-page--mobile-view-preview .chat-type-management-page__markdown-preview-body, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-textarea textarea { overflow: auto !important; } .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-textarea, .chat-type-management-page--mobile-view-edit .chat-type-management-page__markdown-textarea textarea { height: 100% !important; } .chat-type-management-page--pane-maximized { height: calc(100dvh - 52px); max-height: calc(100dvh - 52px); } .chat-type-management-page--pane-maximized .ant-card-head { min-height: 44px; } .chat-type-management-page--pane-maximized .ant-card-head-title, .chat-type-management-page--pane-maximized .ant-card-extra { padding-top: 4px; padding-bottom: 4px; } .chat-type-management-page--pane-maximized .ant-card-body { padding: 4px 8px calc(10px + env(safe-area-inset-bottom, 0px)); } .chat-type-management-page--pane-maximized .chat-type-management-page__card, .chat-type-management-page--pane-maximized .chat-type-management-page__editor, .chat-type-management-page--pane-maximized .chat-type-management-page__editor-form, .chat-type-management-page--pane-maximized .chat-type-management-page__editor-scroll, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-field, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-editor, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-grid, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-pane, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-preview, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-textarea, .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-textarea textarea { min-height: 0; } .chat-type-management-page--pane-maximized .chat-type-management-page__editor-scroll { gap: 0; padding-bottom: 2px; } .chat-type-management-page--pane-maximized .chat-type-management-page__editor-toolbar { display: none; } .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-grid { height: calc(100dvh - 124px - env(safe-area-inset-bottom, 0px)); min-height: calc(100dvh - 124px - env(safe-area-inset-bottom, 0px)); max-height: calc(100dvh - 124px - env(safe-area-inset-bottom, 0px)); } .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-pane { gap: 4px; } .chat-type-management-page--pane-maximized .chat-type-management-page__markdown-pane .ant-form-item-control-input-content { padding-bottom: 2px; } .chat-type-management-page__markdown-preview { padding: 8px 10px; } .chat-type-management-page__markdown-preview-body { max-height: none; overflow: auto; } .chat-type-management-page__header-actions { gap: 4px; } .chat-type-management-page__header-actions .ant-btn { width: 34px; min-width: 34px; height: 34px; } .chat-type-management-page__item-actions .ant-btn { flex: 1 1 calc(50% - 4px); min-width: 0; } }