:root { font-family: Inter, "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #1f2937; background: #f5f7fb; font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } * { box-sizing: border-box; } body { margin: 0; min-width: 320px; background: #f5f7fb; } button, input { font: inherit; } #app { min-height: 100vh; } .admin-shell { display: flex; flex-direction: column; min-height: 100vh; background: #f5f7fb; } .admin-body { display: flex; flex: 1 1 auto; min-height: 0; } .admin-aside { width: 220px; flex: 0 0 220px; min-height: 0; height: auto; overflow-y: auto; color: #1f2937; background: #ffffff; border-right: 1px solid #e5e7eb; } .brand { display: flex; align-items: center; flex: 1 1 auto; gap: 8px; min-width: 0; height: 100%; padding: 0; } .brand-logo { position: relative; display: inline-block; width: 22px; height: 18px; flex: 0 0 22px; } .brand-logo i { position: absolute; display: block; width: 11px; height: 7px; border-radius: 3px; transform: rotate(42deg); } .brand-logo i:nth-child(1) { top: 1px; left: 2px; background: #287cf5; } .brand-logo i:nth-child(2) { top: 7px; left: 1px; background: #1fc4dd; } .brand-logo i:nth-child(3) { top: 5px; right: 0; background: #28c879; } .brand-text { color: #111827; font-size: 13px; font-weight: 700; white-space: nowrap; } .admin-menu { border-right: 0; background: transparent; } .admin-menu.el-menu { --el-menu-bg-color: transparent; --el-menu-text-color: #1f2937; --el-menu-hover-bg-color: #f4f8ff; --el-menu-active-color: #1677ff; } .admin-menu .el-menu-item { height: 40px; margin: 0; border-radius: 0; } .admin-menu .el-sub-menu__title { height: 42px; margin: 0; border-radius: 0; color: #1f2937; background: #ffffff; } .admin-menu .el-sub-menu .el-menu-item { height: 36px; margin: 0; padding-left: 46px !important; border-radius: 0; background: #f7f7f8; font-size: 13px; } .admin-menu .el-menu-item.is-active { color: #1677ff; background: #e9f6ff; } .admin-menu .el-sub-menu .el-menu-item.is-active { color: #1677ff; background: #dff3ff; } .admin-menu .nested-admin-menu .el-sub-menu__title { height: 36px; padding-left: 46px !important; background: #ffffff; font-size: 13px; } .admin-menu .nested-admin-menu .el-menu-item { height: 34px; padding-left: 68px !important; background: #ffffff; font-size: 13px; } .admin-header { display: flex; align-items: center; justify-content: space-between; flex: 0 0 50px; height: 50px; padding: 0 24px; background: #ffffff; border-bottom: 1px solid #e5e7eb; } .header-left, .header-right, .toolbar, .toolbar-actions { display: flex; align-items: center; } .header-left { min-width: 0; gap: 12px; } .header-left h1, .toolbar h2, .panel-header h3 { margin: 0; color: #111827; letter-spacing: 0; } .header-left h1 { font-size: 18px; line-height: 1.3; } .header-left p, .toolbar p { margin: 4px 0 0; color: #6b7280; font-size: 13px; line-height: 1.5; } .header-right { gap: 12px; } .notice-badge { display: inline-flex; } .notice-badge .el-badge__content.is-dot { top: 3px; right: 5px; } .notice-popover.el-popover { padding: 0; overflow: hidden; border-radius: 4px; } .notice-panel { background: #fff; } .notice-panel-header { display: flex; align-items: center; justify-content: space-between; height: 46px; padding: 0 14px; border-bottom: 1px solid #edf0f4; } .notice-panel-header strong { color: #303133; font-size: 14px; } .notice-panel-header button { padding: 4px 0; border: 0; color: #409eff; background: transparent; cursor: pointer; font-size: 13px; } .notice-panel-header button:disabled { color: #a8abb2; cursor: default; } .notice-list { max-height: 320px; overflow-y: auto; } .notice-item { position: relative; display: grid; width: 100%; min-height: 82px; padding: 12px 64px 10px 14px; border: 0; border-bottom: 1px solid #f0f2f5; color: #606266; background: #fff; cursor: pointer; text-align: left; } .notice-item:hover { background: #f7faff; } .notice-content { font-size: 13px; line-height: 1.6; } .notice-unread { position: absolute; top: 12px; right: 14px; padding: 2px 8px; border-radius: 2px; color: #f56c6c; background: #fef0f0; font-size: 12px; } .notice-item time { align-self: end; margin-top: 5px; color: #a8abb2; font-size: 12px; } .notice-empty { padding: 42px 16px; color: #909399; font-size: 13px; text-align: center; } .admin-avatar { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; flex: 0 0 32px; border-radius: 50%; color: #fff; background: #409eff; font-size: 16px; font-weight: 700; line-height: 1; } .admin-main { min-width: 0; flex: 1 1 auto; padding: 24px; } .admin-main > :not(.main-breadcrumb), .admin-main .page-stack, .admin-main .panel { box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; } .main-breadcrumb { display: flex; align-items: center; min-height: 18px; margin-bottom: 14px; color: #8a93a3; font-size: 12px; } .breadcrumb-separator { margin: 0 4px; color: #c0c4cc; } .page-stack { display: grid; gap: 18px; } .toolbar { justify-content: space-between; gap: 16px; } .toolbar h2 { font-size: 22px; line-height: 1.3; } .toolbar-actions { justify-content: flex-end; gap: 10px; } .toolbar-actions .el-input { width: 220px; } .panel, .stat-card { border: 1px solid #e5e7eb; border-radius: 8px; background: #ffffff; box-shadow: 0 8px 24px rgba(15, 23, 42, 0.04); } .panel { padding: 16px; } .panel-header { margin-bottom: 12px; } .panel-header h3 { font-size: 16px; } .empty-business-panel { min-height: 320px; } .filter-form { display: grid; grid-template-columns: repeat(4, minmax(180px, 1fr)) auto; gap: 12px 16px; align-items: start; } .filter-form .el-form-item { margin-bottom: 0; } .filter-form .el-select, .drawer-form .el-select { width: 100%; } .filter-actions { display: flex; gap: 10px; justify-content: flex-end; } /* Filter action groups use gap for spacing; Element Plus adds a left margin to adjacent buttons. */ [class$="-filter-actions"] > .el-button + .el-button, .filter-actions > .el-button + .el-button, .filter-form > .toolbar-actions > .el-button + .el-button, .query-actions .el-button + .el-button { margin-left: 0; } .pagination-row { display: flex; justify-content: flex-end; padding-top: 16px; } .drawer-form { padding-right: 12px; } .merchant-prototype-page .panel, .prototype-page .panel { padding: 18px 24px 20px; } .merchant-filter-form { display: grid; grid-template-columns: minmax(210px, 1fr) minmax(230px, 1.08fr) minmax(260px, 1.15fr) auto; gap: 14px 36px; align-items: start; padding-bottom: 16px; border-bottom: 1px solid #d9dee8; } .merchant-filter-form .el-form-item { margin-bottom: 0; } .merchant-filter-form .el-input, .merchant-filter-form .el-select, .merchant-filter-form .el-date-editor { width: 100%; } .merchant-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .merchant-management-table { color: #111827; font-size: 12px; } .merchant-management-table .el-table__cell { padding: 5px 0; } .merchant-management-table .el-table__header th { color: #111827; background: #f3f4f6; font-weight: 700; } .merchant-management-table .el-button { padding: 0 1px; font-size: 12px; } .merchant-create-page { display: grid; gap: 14px; } .merchant-create-page > *, .merchant-create-page .parking-address-table-wrapper, .merchant-create-page .coupon-product-select-table, .merchant-create-page .health-check-table-row > div { box-sizing: border-box; min-width: 0; max-width: 100%; } .merchant-create-tabs { align-self: start; } .merchant-create-tabs .el-radio-button__inner { height: 28px; padding: 0 12px; color: #1677ff; border-color: #1677ff; border-radius: 0; line-height: 26px; font-size: 13px; } .merchant-create-tabs .el-radio-button:first-child .el-radio-button__inner, .merchant-create-tabs .el-radio-button:last-child .el-radio-button__inner { border-radius: 0; } .merchant-create-tabs .el-radio-button__original-radio:checked + .el-radio-button__inner { color: #ffffff; background: #1f7cff; border-color: #1f7cff; box-shadow: -1px 0 0 0 #1f7cff; } .merchant-create-panel, .merchant-account-panel { background: #ffffff; } .merchant-create-panel { min-height: 346px; padding: 18px 20px 24px; } .merchant-account-panel { min-height: 170px; padding: 18px 20px; } .merchant-create-panel h3, .merchant-account-panel h3 { margin: 0 0 18px; color: #111827; font-size: 15px; font-weight: 700; } .merchant-create-content { display: grid; grid-template-columns: minmax(470px, 1.15fr) minmax(260px, 0.72fr) minmax(320px, 0.88fr); gap: 34px; align-items: start; } .merchant-create-content.service-merchant-content { grid-template-columns: minmax(470px, 1.15fr) minmax(320px, 0.88fr); justify-content: start; } .service-merchant-content .merchant-hours-block { margin-top: 18px; } .merchant-form-row, .merchant-cover-row, .merchant-hours-block { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 10px; align-items: center; margin-bottom: 14px; color: #111827; font-size: 13px; } .merchant-form-row label, .merchant-cover-row label, .merchant-hours-block > label { color: #334155; font-size: 13px; white-space: nowrap; } .merchant-settings-form .el-form-item__label { justify-content: flex-start; position: relative; box-sizing: border-box; padding-left: 12px; } .merchant-settings-form .el-form-item.is-required:not(.is-no-asterisk) > .el-form-item__label::before { position: absolute; left: 0; margin-right: 0; } .merchant-form-row .el-input, .merchant-account-form .el-input { width: 210px; } .merchant-form-row.address-row { grid-template-columns: 68px minmax(0, 1fr) 88px; align-items: start; } .merchant-form-row.address-row > .el-form-item__label { line-height: 32px; } .merchant-form-row.three-columns { grid-template-columns: 68px minmax(0, 1fr); } .merchant-form-row.address-row .el-input { width: 100%; min-width: 0; } .merchant-form-row.address-row .el-form-item__content { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; margin-left: 0 !important; } .merchant-form-row.address-row .el-button, .merchant-cover-row .el-button { width: 88px; height: 32px; padding: 0 12px; box-sizing: border-box; } .merchant-cover-row .el-button { margin-left: 0; } .merchant-cover-row .el-form-item__content { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; margin-left: 0 !important; } .merchant-form-row.address-row .el-button { flex: 0 0 auto; white-space: nowrap; } .merchant-cover-row { grid-template-columns: 68px 268px 92px; align-items: end; margin-top: 6px; } .merchant-cover-row .el-form-item__label { width: 68px !important; padding-right: 0; white-space: nowrap; line-height: 28px; } .merchant-cover-preview { display: grid; place-items: center; width: 268px; height: 138px; overflow: hidden; color: #94a3b8; background: #e5e7eb; } .merchant-cover-preview img { display: block; width: 100%; height: 100%; object-fit: cover; } .merchant-hours-block { grid-template-columns: 58px minmax(0, 1fr); align-items: center; margin: 84px 0 18px; } .merchant-create-right .merchant-form-row, .merchant-create-right .merchant-hours-block { column-gap: 18px; } .merchant-hours-list { display: grid; gap: 12px; } .merchant-hour-row { display: grid; grid-template-columns: 278px 20px 20px; gap: 10px; align-items: center; } .merchant-hour-row .merchant-time-range-picker { width: 278px; } .merchant-hour-action { display: grid; place-items: center; width: 18px; height: 18px; padding: 0; color: #111827; background: #ffffff; border: 1px solid #111827; border-radius: 50%; cursor: pointer; } .merchant-hour-action .el-icon { font-size: 12px; } .merchant-form-row.recommend-row { margin-bottom: 12px; } .merchant-settings-form .merchant-form-row.recommend-row > label { padding-left: 12px; } .merchant-settings-form .created-time-row > label { box-sizing: border-box; padding-left: 12px; } .merchant-settings-form .merchant-form-row > label, .merchant-settings-form .merchant-hours-block > label { box-sizing: border-box; padding-left: 12px; } .merchant-form-row.recommend-row .el-switch { justify-self: start; } .merchant-account-form { width: 310px; } .merchant-account-form .el-form-item { margin-bottom: 18px; } .merchant-account-form .merchant-account-login-toggle > .el-form-item__label, .merchant-account-form .merchant-account-field > .el-form-item__label { position: relative; box-sizing: border-box; padding-left: 12px; text-align: left; justify-content: flex-start; } .merchant-account-form .merchant-account-field { display: flex; align-items: center; } .merchant-account-form .merchant-account-field > .el-form-item__label { flex: 0 0 92px; width: 92px !important; padding-right: 12px; white-space: nowrap !important; line-height: 32px; } .merchant-account-form .merchant-account-field > .el-form-item__content { min-width: 0; margin-left: 0 !important; } .merchant-account-form .merchant-account-field.is-required:not(.is-no-asterisk) .el-form-item__label::before { position: absolute; left: 0; margin-right: 0; } .merchant-account-form .el-form-item__label { width: 92px !important; color: #334155; font-size: 13px; white-space: nowrap; } .merchant-create-save { width: 72px; } .merchant-rights-panel { /* min-height: 1260px; */ padding: 24px 0 10px; background: #ffffff; } .merchant-school-address-panel { margin-top: 12px; } .merchant-school-address-panel, .merchant-parking-address-panel { padding: 20px 28px 18px; background: #ffffff; } .merchant-school-address-title, .merchant-parking-address-title { margin: 0 0 16px; color: #111827; font-size: 14px; font-weight: 700; text-align: left; } .merchant-school-address-actions, .merchant-parking-address-actions { display: flex; justify-content: flex-end; margin-top: 16px; } .merchant-rights-section-title { margin: 0 0 18px 28px; color: #111827; font-size: 14px; font-weight: 700; } .movie-merchant-rights-panel { overflow-x: hidden; padding: 0 0 8px; } .movie-merchant-rights-panel .merchant-rights-section-title { margin: 0; padding: 22px 0 16px 28px; } .movie-merchant-rights-panel .movie-rights-card { display: grid; grid-template-columns: 92px minmax(0, 520px) 136px; column-gap: 20px; align-items: start; min-width: 0; padding: 18px 28px 22px; border-top: 8px solid #f6f7f9; } .movie-merchant-rights-panel .movie-rights-card:first-of-type { border-top: 0; } .movie-merchant-rights-panel .merchant-rights-level-row { grid-column: 1 / 3; grid-template-columns: 82px 38px 32px 160px; gap: 10px; min-width: 0; padding-left: 0; } .movie-merchant-rights-panel .merchant-rights-level-row > .el-switch { justify-self: start; margin-left: 0; } .movie-merchant-rights-panel .merchant-rights-level-row .el-input { width: 160px; } .movie-merchant-rights-panel .merchant-rights-detail-row { grid-column: 2 / 4; grid-template-columns: minmax(0, 520px) 136px; gap: 8px 20px; min-width: 0; padding: 12px 0 0; } .movie-merchant-rights-panel .merchant-rights-level-row + .merchant-rights-detail-row { padding-left: 0; } .movie-merchant-rights-panel .merchant-rights-detail-row label, .movie-merchant-rights-panel .merchant-rights-detail-content, .movie-merchant-rights-panel .merchant-rights-detail-row .el-textarea { grid-column: 1; width: 100%; min-width: 0; } .movie-merchant-rights-panel .merchant-rights-detail-row .el-textarea__inner { min-height: 116px !important; } .movie-merchant-rights-panel .merchant-rights-example { grid-column: 2; grid-row: 1 / span 2; display: flex; gap: 8px; align-items: flex-start; min-width: 0; color: #111827; } .movie-merchant-rights-panel .merchant-rights-example > span { flex: 0 0 auto; margin-top: 58px; } .movie-merchant-rights-panel .merchant-rights-phone-preview { width: 82px; height: 152px; min-height: 152px; border-color: #f2aaa3; } .movie-merchant-rights-panel .phone-preview-hero { height: 42px; } .movie-merchant-rights-panel .phone-preview-back { top: 4px; left: 4px; width: 10px; height: 10px; font-size: 11px; line-height: 10px; } .movie-merchant-rights-panel .phone-preview-more { top: 4px; right: 4px; width: 16px; height: 9px; font-size: 5px; } .movie-merchant-rights-panel .phone-preview-body { margin-top: -4px; padding: 6px 4px 7px; border-radius: 5px 5px 0 0; } .movie-merchant-rights-panel .phone-preview-title-row { gap: 3px; } .movie-merchant-rights-panel .phone-preview-title-row strong { max-width: 56px; font-size: 6px; line-height: 9px; } .movie-merchant-rights-panel .phone-preview-coupon { gap: 1px; font-size: 5px; } .movie-merchant-rights-panel .phone-preview-coupon span { width: 10px; height: 10px; font-size: 6px; } .movie-merchant-rights-panel .phone-preview-tag { height: 10px; max-width: 58px; margin-top: 2px; padding: 0 2px; overflow: hidden; font-size: 5px; line-height: 8px; white-space: nowrap; } .movie-merchant-rights-panel .phone-preview-address { grid-template-columns: 6px 1fr 8px 8px; gap: 2px; margin-top: 4px; font-size: 5px; line-height: 7px; } .movie-merchant-rights-panel .phone-preview-address i { width: 7px; height: 7px; font-size: 4px; } .movie-merchant-rights-panel .phone-preview-tabs { gap: 8px; margin-top: 5px; font-size: 6px; } .movie-merchant-rights-panel .phone-preview-tabs strong { font-size: 6px; } .movie-merchant-rights-panel .phone-preview-tabs strong::after { bottom: -3px; width: 12px; height: 1px; } .movie-merchant-rights-panel .phone-preview-detail { min-height: 50px; margin-top: 8px; padding: 4px; border-width: 1px; font-size: 5px; line-height: 8px; } .movie-merchant-rights-panel .phone-preview-detail p { display: -webkit-box; margin-bottom: 4px; overflow: hidden; -webkit-line-clamp: 6; -webkit-box-orient: vertical; } .merchant-rights-top-row { display: flex; align-items: center; gap: 34px; padding: 8px 0 14px 28px; color: #111827; font-size: 13px; } .merchant-rights-card { padding: 10px 0 26px; border-top: 10px solid #f6f7f9; } .merchant-rights-card:first-of-type { border-top: 0; } .merchant-rights-level-row { display: grid; grid-template-columns: 88px 42px 40px 180px; gap: 14px; align-items: center; padding-left: 28px; color: #111827; font-size: 13px; } .merchant-rights-level-row strong, .merchant-consume-row strong { color: #111827; font-size: 13px; font-weight: 700; } .merchant-rights-level-row .el-input { width: 180px; } .merchant-rights-required { margin-right: 3px; color: #f56c6c; font-style: normal; } .merchant-rights-level-row > .el-switch { justify-self: start; margin-left: -17px; } .merchant-rights-detail-row { display: grid; grid-template-columns: 96px minmax(360px, 520px) 270px; gap: 6px 24px; align-items: start; padding: 14px 0 0; } .merchant-rights-detail-content { grid-column: 1 / 3; display: flex; flex-direction: column; } .merchant-rights-parking-radio .el-radio-group { display: flex; align-items: center; gap: 24px; } .merchant-rights-parking-radio .el-radio { margin-right: 0; } .merchant-rights-detail-row label { grid-column: 1 / 3; margin: 0; color: #334155; font-size: 13px; line-height: 20px; } .merchant-rights-level-row + .merchant-rights-detail-row { padding-left: 186px; } .merchant-rights-detail-row .el-textarea { grid-column: 1 / 3; width: 520px; } .carwash-miniprogram-row { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; } .carwash-jump-radio { display: flex; gap: 24px; } .carwash-jump-input-row { display: flex; align-items: center; gap: 40px; margin-bottom: 8px; } .carwash-jump-input-row span { font-size: 14px; color: #111827; font-weight: bold; } .carwash-jump-input-row .el-input { width: 240px; } .merchant-rights-detail-row .el-textarea__inner { min-height: 96px !important; border-radius: 0; } .merchant-rights-example { grid-column: 3; grid-row: 1 / span 2; display: grid; grid-template-columns: 44px 190px; gap: 8px; align-items: start; color: #111827; font-size: 13px; } /* 商家权益仅保留后台配置表单,不展示小程序示例预览。 */ .merchant-rights-panel .merchant-rights-example { display: none !important; } .merchant-rights-phone-preview { position: relative; width: 190px; height: 200px; min-height: 200px; overflow: hidden; background: #f7f8fa; border: 1px solid #edf0f5; border-radius: 2px; } .phone-preview-hero { position: relative; height: 70px; overflow: hidden; } .phone-preview-hero img { display: block; width: 100%; height: 100%; object-fit: cover; } .phone-preview-back, .phone-preview-more { position: absolute; top: 6px; display: grid; place-items: center; color: #ffffff; background: rgb(17 24 39 / 45%); } .phone-preview-back { left: 7px; width: 17px; height: 17px; border-radius: 50%; font-size: 18px; line-height: 17px; } .phone-preview-more { right: 7px; width: 26px; height: 16px; border-radius: 8px; font-size: 8px; letter-spacing: 1px; } .phone-preview-body { position: relative; margin-top: -8px; padding: 12px 8px 12px; background: #ffffff; border-radius: 8px 8px 0 0; } .phone-preview-title-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; } .phone-preview-title-row strong { max-width: 130px; color: #222222; font-size: 12px; line-height: 18px; } .phone-preview-coupon { display: flex; align-items: center; gap: 4px; color: #ff8b3d; font-size: 10px; white-space: nowrap; } .phone-preview-coupon span { display: grid; place-items: center; width: 16px; height: 16px; color: #ff6b35; background: #fff3ed; border-radius: 2px; } .phone-preview-coupon b { font-weight: 700; } .phone-preview-tag { display: inline-flex; align-items: center; height: 18px; margin-top: 4px; padding: 0 5px; color: #cc7244; background: #fff6ef; border: 1px solid #ffd6bf; border-radius: 2px; font-size: 10px; font-weight: 700; } .phone-preview-address { display: grid; grid-template-columns: 12px 1fr 16px 16px; gap: 4px; align-items: center; margin-top: 10px; color: #8a93a2; font-size: 9px; line-height: 13px; } .phone-preview-address p { margin: 0; } .phone-preview-address i { display: grid; place-items: center; width: 14px; height: 14px; color: #6b7280; background: #f1f4f8; border-radius: 50%; font-style: normal; font-size: 8px; } .phone-preview-tabs { display: flex; align-items: center; gap: 20px; margin-top: 12px; color: #949aa5; font-size: 12px; } .phone-preview-tabs strong { position: relative; color: #111827; font-size: 12px; font-weight: 700; } .phone-preview-tabs strong::after { position: absolute; left: 50%; bottom: -6px; width: 24px; height: 2px; content: ''; background: #ff7a1a; border-radius: 2px; transform: translateX(-50%); } .phone-preview-detail { margin-top: 16px; padding: 8px; min-height: 72px; color: #9aa0aa; background: #ffffff; border: 2px solid #ff4438; border-radius: 1px; font-size: 9px; font-weight: 700; line-height: 15px; } .phone-preview-detail p { margin: 0 0 12px; } .phone-preview-detail p:last-child { margin-bottom: 0; } .merchant-consume-row { display: grid; grid-template-columns: 76px 42px 36px 104px 24px 96px 42px; gap: 12px; align-items: center; padding: 20px 0 0 186px; color: #111827; font-size: 13px; } .merchant-consume-row .el-input { width: 104px; } .merchant-consume-row .merchant-discount-input { position: relative; width: 104px; } .merchant-consume-row .merchant-discount-input .el-input { width: 104px; } .merchant-consume-row .merchant-discount-input .field-error { position: absolute; top: calc(100% + 4px); left: 0; width: max-content; color: #f56c6c; font-size: 12px; line-height: 16px; white-space: nowrap; } .hotel-voucher-row { grid-template-columns: 76px 42px 104px 24px 72px 104px 96px 42px; } .hotel-reset-label { white-space: nowrap; } .hotel-consume-row { display: grid; grid-template-columns: 76px 42px max-content; align-items: stretch; padding-left: 186px; padding-top: 20px; gap: 12px; color: #111827; font-size: 13px; } .hotel-consume-row > strong { grid-column: 1; align-self: center; } .hotel-consume-row > .el-switch { grid-column: 2; align-self: center; } .hotel-consume-options { grid-column: 3; display: flex; flex-direction: column; gap: 12px; } .hotel-consume-option { display: flex; align-items: center; gap: 12px; } .hotel-consume-option .el-radio { margin-right: 0; width: 50px; } .hotel-margin-left { margin-left: 16px; } .consume-desc-row { padding-left: 186px; padding-top: 10px; } .merchant-products-panel, .merchant-coupons-panel { min-height: 488px; padding: 18px 14px 24px; background: #ffffff; } .merchant-products-panel h3, .merchant-coupons-panel h3 { margin: 0 0 18px; color: #111827; font-size: 13px; font-weight: 700; } .merchant-products-filter, .merchant-coupons-filter { display: grid; grid-template-columns: 56px 200px 40px 200px 64px 200px 66px; gap: 0 14px; align-items: start; margin-bottom: 42px; color: #334155; font-size: 12px; } .merchant-coupons-filter { grid-template-columns: 56px 200px 40px 200px 64px 320px minmax(66px, 1fr); } .merchant-products-filter { grid-template-columns: 56px 200px 40px 200px 64px 320px 66px; } .merchant-products-filter > label, .merchant-coupons-filter > label { height: 28px; line-height: 28px; white-space: nowrap; } .merchant-products-filter .el-input, .merchant-products-filter .el-select, .merchant-coupons-filter .el-input, .merchant-coupons-filter .el-select { width: 200px; } .merchant-products-filter .el-input__wrapper, .merchant-products-filter .el-select__wrapper, .merchant-coupons-filter .el-input__wrapper, .merchant-coupons-filter .el-select__wrapper { min-height: 28px; border-radius: 0; background: #ffffff; box-shadow: 0 0 0 1px #d9dee8 inset; } .merchant-products-filter .el-date-editor.el-input__wrapper, .merchant-coupons-filter .el-date-editor.el-input__wrapper { background: #ffffff; box-shadow: 0 0 0 1px #d9dee8 inset; } .merchant-products-filter .el-date-editor.el-input__wrapper, .merchant-coupons-filter .el-date-editor.el-input__wrapper { width: 200px; } .merchant-products-filter .el-date-editor .el-range-input, .merchant-coupons-filter .el-date-editor .el-range-input { font-size: 12px; } .merchant-products-filter .el-date-editor .el-range-separator, .merchant-coupons-filter .el-date-editor .el-range-separator { flex: 0 0 20px; color: #111827; font-size: 12px; } .merchant-products-actions, .merchant-coupons-actions { display: grid; gap: 8px; justify-items: stretch; } .merchant-coupons-actions { justify-self: end; } .merchant-products-actions .el-button, .merchant-coupons-actions .el-button { width: 66px; height: 28px; margin: 0; border-radius: 2px; font-size: 12px; } .merchant-products-toolbar, .merchant-coupons-toolbar { display: flex; justify-content: flex-start; margin: -28px 14px 12px; } .merchant-products-toolbar .el-button, .merchant-coupons-toolbar .el-button { height: 28px; margin: 0; border-radius: 2px; font-size: 12px; } .merchant-products-table, .merchant-coupons-table { width: calc(100% - 28px); margin: 0 14px; font-size: 12px; } .merchant-products-table.el-table, .merchant-coupons-table.el-table { --el-table-border-color: #d9d9d9; --el-table-header-bg-color: #ffffff; --el-table-row-hover-bg-color: #ffffff; } .merchant-products-table .el-table__cell, .merchant-coupons-table .el-table__cell { height: 54px; padding: 0; color: #111827; } .merchant-products-table thead .el-table__cell, .merchant-coupons-table thead .el-table__cell { height: 26px; font-weight: 400; } .merchant-products-table .cell, .merchant-coupons-table .cell { padding: 0 4px; line-height: 26px; } .merchant-products-operation, .merchant-coupons-operation { display: flex; align-items: center; justify-content: center; gap: 12px; } .merchant-products-operation .el-button, .merchant-coupons-operation .el-button { height: auto; margin: 0; padding: 0; color: #111827; font-size: 12px; } .merchant-products-operation-item { display: inline-flex; align-items: center; } .merchant-products-operation .el-button.is-disabled { color: #9ca3af; } .merchant-products-pagination, .merchant-coupons-pagination { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin: 46px 34px 0 0; color: #6b7280; font-size: 12px; } .merchant-products-pagination button, .merchant-coupons-pagination button { min-width: 18px; height: 26px; padding: 0 4px; color: #6b7280; background: transparent; border: 0; border-radius: 2px; cursor: pointer; font: inherit; } .merchant-products-pagination button.active, .merchant-coupons-pagination button.active { min-width: 28px; color: #1677ff; background: #e8f3ff; } .merchant-products-real-pagination, .merchant-coupons-real-pagination { display: flex; justify-content: flex-end; margin: 46px 34px 0 0; } .merchant-coupons-filter .el-input__wrapper, .merchant-coupons-filter .el-select__wrapper, .merchant-coupons-filter .el-range-editor.el-input__wrapper, .merchant-coupon-edit-form .el-input__wrapper, .merchant-coupon-edit-form .el-select__wrapper, .merchant-coupon-edit-form .el-range-editor.el-input__wrapper { background: #ffffff; box-shadow: 0 0 0 1px #d9dee8 inset; } .merchant-coupons-filter .el-input__wrapper:hover, .merchant-coupons-filter .el-input__wrapper.is-focus, .merchant-coupons-filter .el-select__wrapper:hover, .merchant-coupons-filter .el-select__wrapper.is-focused, .merchant-coupon-edit-form .el-input__wrapper:hover, .merchant-coupon-edit-form .el-input__wrapper.is-focus, .merchant-coupon-edit-form .el-select__wrapper:hover, .merchant-coupon-edit-form .el-select__wrapper.is-focused, .merchant-coupon-edit-form .el-date-editor.el-input__wrapper:hover, .merchant-coupon-edit-form .el-date-editor.el-input__wrapper.is-focus { box-shadow: 0 0 0 1px #b8c2d1 inset; } .merchant-coupons-filter .coupon-created-time-picker { width: 320px !important; } .merchant-products-filter .product-created-time-picker { width: 320px; } .merchant-products-filter .el-date-editor.product-created-time-picker { width: 320px; } .merchant-product-form-panel { margin-bottom: 18px; padding: 20px 18px 26px; background: #ffffff; color: #334155; font-size: 12px; } .merchant-product-form-panel h3 { margin: 0 0 18px; color: #111827; font-size: 13px; font-weight: 700; } .product-form-grid { display: flex; gap: 34px; align-items: start; } .product-info-left { width: 430px; flex-shrink: 0; } .product-info-middle { flex-shrink: 0; width: 270px; } .product-info-right { flex-shrink: 0; width: 270px; } .merchant-product-form-panel .el-input__wrapper, .merchant-product-form-panel .el-select__wrapper, .merchant-product-form-panel .el-date-editor.el-input__wrapper, .merchant-product-form-panel .el-textarea__inner { background: #ffffff; } .product-form-row, .product-static-row { display: grid; grid-template-columns: 68px minmax(0, 1fr); align-items: center; gap: 16px; margin-bottom: 18px; } .product-form-row.amount { grid-template-columns: 68px minmax(0, 1fr); gap: 16px; } .product-form-row.amount .el-form-item__content { display: flex; flex-wrap: nowrap; align-items: center; gap: 8px; min-width: 0; margin-left: 0 !important; } .product-form-row.amount .el-form-item__content > span { flex: 0 0 auto; white-space: nowrap; } .product-form-row.amount.hotel-amount { display: flex; align-items: center; gap: 10px; } .product-form-row.amount.hotel-amount .el-input-number { width: 76px; } .product-form-row.amount .el-input-number { width: 134px; } .product-form-row label, .product-static-row label, .product-image-row label, .product-detail-row label, .product-notice-field label { color: #334155; font-size: 12px; line-height: 28px; white-space: nowrap; } .merchant-product-edit-form .el-form-item__label { width: 68px !important; white-space: nowrap; } .product-static-row span { color: #475569; font-weight: 600; } .product-image-row { display: grid; grid-template-columns: 68px 256px 78px; column-gap: 16px; align-items: center; margin-bottom: 20px; } .product-image-row.compact { grid-template-columns: 68px minmax(172px, 1fr) 78px; column-gap: 16px; align-items: center; } .product-image-list { display: flex; flex-wrap: wrap; gap: 10px; min-height: 86px; } .product-image-row > label { align-self: center; } .product-image-row > .el-button { align-self: center; justify-self: start; } .product-image-row .el-form-item__content { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; min-width: 0; margin-left: 0 !important; } .product-cover-preview, .product-thumb-preview { position: relative; display: flex; align-items: center; justify-content: center; background: #f4f6f9; border: 1px solid #d9dee8; } .product-cover-preview { overflow: hidden; width: 256px; height: 128px; } .product-thumb-preview { overflow: visible; width: 172px; height: 86px; } .product-cover-preview img, .product-thumb-preview img { width: 100%; height: 100%; object-fit: cover; } .product-cover-preview .el-icon, .product-thumb-preview .el-icon { color: #94a3b8; font-size: 28px; } .product-image-zoom { position: absolute; right: 4px; bottom: 4px; display: grid; place-items: center; width: 18px; height: 18px; color: #ffffff; background: rgb(15 23 42 / 45%); border: 1px solid #ffffff; border-radius: 50%; font-size: 12px; } .product-image-remove { position: absolute; top: -8px; right: -8px; display: grid; place-items: center; width: 18px; height: 18px; padding: 0; color: #ffffff; background: #ff1f1f; border: 0; border-radius: 50%; cursor: pointer; font-size: 15px; line-height: 18px; } .product-detail-row { display: grid; grid-template-columns: 68px minmax(0, 1fr); gap: 16px; margin-top: 4px; } .product-detail-row label { align-self: center; } .product-detail-row .el-textarea { max-width: 950px; } .product-notice-grid { display: grid; grid-template-columns: 278px 278px; gap: 22px 42px; padding-left: 12px; } .product-notice-field { display: grid; gap: 8px; } .product-notice-field .el-date-editor, .product-notice-field .el-time-editor, .product-notice-field .el-input { width: 100%; } .product-notice-field .merchant-time-range-picker { width: 100%; } .product-rights-list { display: grid; gap: 28px; padding-top: 2px; } .product-right-row { display: grid; gap: 8px; } .product-right-main { /* * 三种权益状态使用同一套列:避免免费、超过次数、打折三行因为 * 内容宽度或 margin 不同而把“是否政府补贴”挤到不同的位置。 */ display: grid; grid-template-columns: 86px 42px 58px 64px 42px 40px 88px 8px 22px 24px 58px 100px 12px 88px 42px; align-items: center; min-height: 30px; } .product-right-sub { display: grid; /* 与主行共用列定义,输入框和补贴开关逐列对齐。 */ grid-template-columns: 86px 42px 58px 64px 42px 40px 88px 8px 22px 24px 58px 100px 12px 88px 42px; align-items: center; min-height: 28px; } .product-right-main .right-level { grid-column: 1; } .product-right-main .right-enabled { grid-column: 2; margin: 0; } .product-right-main .right-free-label { grid-column: 4; } .product-right-main .right-free-switch { grid-column: 5; margin: 0; } .product-right-main.free .right-limit-field { grid-column: 7; margin: 0; } .product-right-main.free .right-unit { grid-column: 9; margin: 0; } .product-right-main.free .right-reset-label { grid-column: 11; margin: 0; } .product-right-main.free .right-reset-select { grid-column: 12; margin: 0; } /* 打折行使用一个独立的紧凑控件组,补贴列仍固定在第 14 列。 */ .product-right-main:not(.free) .right-discount-control { grid-column: 7 / span 6; display: flex; align-items: center; gap: 8px; } .product-right-main:not(.free) .right-discount-label { flex: 0 0 38px; } .product-right-main:not(.free) .right-discount-input { flex: 0 0 100px; width: 100px; margin: 0; } .product-right-main:not(.free) .right-unit { flex: 0 0 22px; } .product-right-main .right-subsidy-label { grid-column: 14; margin: 0 !important; white-space: nowrap; } .product-right-main .right-subsidy-switch { grid-column: 15; margin: 0; } .product-right-sub .right-exceed-label { grid-column: 4 / span 3; } .product-right-sub .right-exceed-discount-field { grid-column: 7; } .product-right-sub .right-exceed-unit { grid-column: 9; } .product-right-sub .right-exceed-subsidy-label { grid-column: 14; white-space: nowrap; } .product-right-sub .right-exceed-subsidy-switch { grid-column: 15; } .product-right-row .right-level { color: #111827; font-size: 12px; } .product-right-row .right-enabled { } .product-right-row .right-free-label { } .product-right-row .right-free-switch { } .product-right-row .right-limit-field { position: relative; width: 88px; } .product-right-row .right-limit-field .el-input-number { width: 100%; } .product-right-row .right-unit { } .product-right-row .right-reset-label { } .product-right-row .right-reset-select { width: 100px; } .product-right-row .right-discount-label { } .product-right-row .right-discount-input { } .product-right-row .right-subsidy-label { } .product-right-row .right-subsidy-switch { } .merchant-product-form-panel .product-right-row .el-input { width: 88px; } .merchant-product-form-panel .product-right-sub .el-input { width: 100px; } .merchant-product-form-panel .product-right-sub .right-exceed-discount-input { width: 88px; } .product-right-sub .right-exceed-discount-field { position: relative; width: 88px; } .product-right-sub .field-error { position: absolute; top: calc(100% + 4px); left: 0; width: max-content; color: #f56c6c; font-size: 12px; line-height: 16px; white-space: nowrap; } .merchant-product-form-panel .product-right-row .right-discount-input { width: 100px; } .merchant-product-form-panel .product-right-row .el-select { width: 64px; } /* 团单免费次数的重置周期需完整展示“每天/每周/每月/每年”。 */ .merchant-product-form-panel .product-right-row .right-reset-select { flex-basis: 100px; width: 100px; } .product-right-tip { position: absolute; top: -18px; left: -8px; color: #ff4d4f; font-size: 12px; white-space: nowrap; } .product-form-actions { display: flex; gap: 12px; padding: 10px 0 30px 14px; } .merchant-product-form-panel .el-input, .merchant-product-form-panel .el-select { width: 100%; } .merchant-product-form-panel .el-input__wrapper, .merchant-product-form-panel .el-select__wrapper, .merchant-product-form-panel .el-textarea__inner { min-height: 28px; border-radius: 0; background: #ffffff; box-shadow: 0 0 0 1px #d9dee8 inset; } /* Element Plus 会为禁用/只读控件注入灰底;团单编辑页仍需和其他表单控件保持同一白底与边框。 */ .merchant-product-form-panel .el-input.is-disabled .el-input__wrapper, .merchant-product-form-panel .el-input.is-readonly .el-input__wrapper, .merchant-product-form-panel .el-input-number.is-disabled .el-input__wrapper, .merchant-product-form-panel .el-select.is-disabled .el-select__wrapper, .merchant-product-form-panel .el-date-editor.is-disabled .el-input__wrapper, .merchant-product-form-panel .el-textarea.is-disabled .el-textarea__inner { background: #ffffff !important; box-shadow: 0 0 0 1px #d9dee8 inset !important; } /* Keep every editable product control visually consistent with the merchant form. */ .merchant-product-form-panel { --el-fill-color-blank: #ffffff; --el-fill-color-light: #ffffff; --el-disabled-bg-color: #ffffff; --el-disabled-text-color: #334155; } .merchant-product-form-panel .el-input__wrapper, .merchant-product-form-panel .el-input-number .el-input__wrapper, .merchant-product-form-panel .el-select__wrapper, .merchant-product-form-panel .el-date-editor.el-input__wrapper, .merchant-product-form-panel .el-time-editor.el-input__wrapper { background: #ffffff !important; box-shadow: 0 0 0 1px #d9dee8 inset !important; } .merchant-product-form-panel .el-input__wrapper:hover, .merchant-product-form-panel .el-input__wrapper.is-focus, .merchant-product-form-panel .el-select__wrapper:hover, .merchant-product-form-panel .el-select__wrapper.is-focused, .merchant-product-form-panel .el-date-editor.el-input__wrapper:hover, .merchant-product-form-panel .el-date-editor.el-input__wrapper.is-focus, .merchant-product-form-panel .el-time-editor.el-input__wrapper:hover, .merchant-product-form-panel .el-time-editor.el-input__wrapper.is-focus { box-shadow: 0 0 0 1px #b8c2d1 inset !important; } .merchant-product-form-panel .el-button, .product-form-actions .el-button { height: 28px; min-width: 68px; border-radius: 2px; font-size: 12px; } .merchant-coupon-edit-form { min-height: 560px; padding: 20px 0 16px 10px; color: #334155; font-size: 12px; } .coupon-edit-row { display: grid; grid-template-columns: 82px minmax(0, 1fr); gap: 6px; align-items: start; margin-bottom: 18px; } .coupon-edit-row > label { height: 30px; box-sizing: border-box; padding: 0 0 0 12px; line-height: 30px; justify-content: flex-end; white-space: nowrap; } .merchant-coupon-edit-form .coupon-edit-row .el-form-item__label { width: 82px !important; max-width: none; height: 30px; box-sizing: border-box; padding: 0 !important; overflow: visible; flex: 0 0 82px; line-height: 30px; white-space: nowrap !important; word-break: keep-all; overflow-wrap: normal; } .coupon-edit-row .el-form-item__content { min-width: 0; min-height: 30px; margin-left: 0 !important; } .merchant-coupon-edit-form .el-input { width: 200px; } .coupon-amount-control { display: flex; align-items: center; gap: 12px; } .coupon-amount-control .el-input { width: 200px; } .merchant-coupon-edit-form .coupon-amount-control .el-input__wrapper { min-height: 28px; padding: 1px 11px; background: #ffffff; box-shadow: 0 0 0 1px #d9dee8 inset; } .coupon-amount-control > span { color: #334155; line-height: 30px; white-space: nowrap; } .merchant-coupon-edit-form .coupon-valid-time-picker { flex: 0 1 280px; width: 280px; max-width: 100%; } .merchant-coupon-edit-form .el-input__wrapper, .merchant-coupon-edit-form .el-date-editor.el-input__wrapper { min-height: 28px; border-radius: 0; background: #ffffff; box-shadow: 0 0 0 1px #d9dee8 inset; } .merchant-coupon-edit-form .el-date-editor .el-range-input, .merchant-coupon-edit-form .el-date-editor .el-range-separator { font-size: 12px; } .coupon-requirement-row .el-radio-group { display: flex; align-items: center; flex-wrap: nowrap; gap: 0; height: 28px; white-space: nowrap; } .coupon-requirement-row .el-radio { height: 28px; margin-right: 0; } .coupon-requirement-row .el-radio__label { padding-left: 6px; } .coupon-requirement-row .coupon-full-radio { width: 42px; } .coupon-requirement-row .coupon-full-amount-control { display: flex; width: 168px; margin: 0 50px 0 10px; align-items: center; gap: 8px; white-space: nowrap; } .coupon-requirement-row .coupon-full-amount-control .coupon-full-amount { width: 108px; } .coupon-requirement-row .coupon-full-amount-control > span { color: #334155; font-size: 14px; line-height: 28px; white-space: nowrap; } .coupon-requirement-row .coupon-full-amount .el-input__wrapper { border-radius: var(--el-border-radius-base); } .coupon-requirement-row .coupon-none-radio { width: 60px; margin-right: 0; } .coupon-requirement-row span { color: #334155; } .coupon-talent-checkboxes { display: flex; align-items: center; gap: 54px; } .coupon-talent-checkboxes .el-checkbox { margin-right: 0; } .coupon-product-scope-row { margin-bottom: 6px; } .coupon-product-scope-row .el-radio-group { display: flex; align-items: center; gap: 20px; } .coupon-product-scope-row strong { color: #111827; font-size: 12px; font-weight: 700; } .coupon-product-select-table { width: calc(100% - 115px); margin: 0 55px 16px 60px; padding: 14px; border: 1px solid #d9d9d9; } .coupon-edit-product-table { width: 100%; font-size: 12px; } .coupon-edit-product-table.el-table { --el-table-border-color: #d9d9d9; --el-table-header-bg-color: #ffffff; --el-table-row-hover-bg-color: #ffffff; } .coupon-edit-product-table .el-table__cell { height: 42px; padding: 0; color: #111827; } .coupon-edit-product-table thead .el-table__cell { height: 26px; font-weight: 400; } .coupon-edit-product-table .cell { padding: 0 4px; line-height: 26px; } .coupon-switch-row { grid-template-columns: 130px 44px; gap: 6px; margin-bottom: 18px; } .coupon-switch-row > label { width: 130px; box-sizing: border-box; padding: 0 0 0 20px; line-height: 30px; justify-content: flex-start; white-space: nowrap; word-break: keep-all; } .coupon-switch-row .el-switch { justify-self: start; } .coupon-edit-actions { display: flex; gap: 12px; margin: 10px 0 0 55px; } .coupon-edit-actions .el-button { min-width: 68px; height: 28px; border-radius: 3px; font-size: 12px; } .merchant-create-empty-panel { min-height: 500px; } .product-audit-page .panel { min-height: 640px; padding: 18px 22px 20px; } .product-audit-filter-form { display: grid; grid-template-columns: minmax(210px, 1fr) minmax(230px, 1fr) minmax(240px, 1fr) auto; gap: 14px 36px; align-items: start; padding-bottom: 16px; margin-bottom: 42px; border-bottom: 1px solid #d9dee8; } .product-audit-filter-form .el-form-item { margin-bottom: 0; } .product-audit-filter-form .el-input, .product-audit-filter-form .el-select, .product-audit-filter-form .el-date-editor { width: 100%; } .product-audit-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .product-audit-table { color: #111827; font-size: 12px; } .product-audit-table .el-table__cell { padding: 8px 0; } .product-audit-table .el-table__header th { color: #111827; background: #f3f4f6; font-weight: 700; } .product-audit-table .el-button { padding: 0 2px; font-size: 12px; } .product-audit-detail-page { display: grid; gap: 22px; } .audit-detail-panel { position: relative; padding: 18px 14px 28px; background: #ffffff; } .audit-detail-panel h3 { margin: 0 0 18px; color: #111827; font-size: 15px; font-weight: 700; } .product-basic-grid { display: grid; grid-template-columns: 300px 300px minmax(300px, 1fr); gap: 23px; align-items: center; margin-bottom: 16px; } .detail-field, .audit-image-row, .audit-gallery-row, .audit-textarea-row { display: grid; gap: 12px; align-items: start; } .detail-field { grid-template-columns: 56px minmax(0, 1fr); gap: 14px; align-items: center; } .detail-money-field { grid-template-columns: 56px 160px auto; } .detail-period-field { grid-template-columns: 84px minmax(0, 1fr); } .detail-period-field label { white-space: nowrap; } .detail-field label, .detail-time-pair label, .audit-image-row > label, .audit-gallery-row > label, .audit-textarea-row > label, .purchase-notice-grid label { color: #374151; font-size: 13px; line-height: 32px; } .detail-time-pair { display: grid; grid-template-columns: 90px minmax(180px, 1fr); gap: 18px; align-items: center; transform: translateY(24px); color: #111827; font-size: 13px; } .detail-time-pair strong { font-weight: 600; line-height: 32px; } .audit-image-row { grid-template-columns: 256px 82px; align-items: end; margin-bottom: 12px; } .audit-image-row > label { grid-column: 1 / 3; } .audit-cover-box { grid-column: 1; width: 256px; height: 128px; overflow: hidden; background: #eef1f5; } .audit-image-row .el-button { grid-column: 2; width: 68px; height: 28px; padding: 0; border-radius: 3px; font-size: 12px; } .audit-cover-box img, .audit-thumb-box img { width: 100%; height: 100%; object-fit: cover; display: block; } .audit-gallery-row { grid-template-columns: 170px 82px; align-items: end; margin-bottom: 12px; } .audit-gallery-row > label { grid-column: 1 / 3; } .audit-thumb-list { grid-column: 1; } .audit-thumb-box { position: relative; width: 170px; height: 86px; overflow: hidden; background: #eef1f5; } .audit-gallery-row .el-button { grid-column: 2; width: 68px; height: 28px; padding: 0; border-radius: 3px; font-size: 12px; } .thumb-remove, .thumb-preview { position: absolute; display: grid; place-items: center; border: 0; padding: 0; cursor: pointer; } .thumb-remove { top: -1px; right: -1px; width: 18px; height: 18px; color: #ffffff; background: #ff1f1f; border-radius: 50%; font-size: 14px; line-height: 18px; } .thumb-preview { right: 1px; bottom: 1px; width: 18px; height: 18px; color: #ffffff; background: rgba(17, 24, 39, 0.55); border-radius: 50%; font-size: 13px; } .audit-textarea-row { grid-template-columns: minmax(0, 1fr); align-items: start; margin-bottom: 26px; } .audit-textarea-row .el-textarea { width: calc(100% - 28px); margin-left: 14px; } .audit-textarea-row .el-textarea__inner { min-height: 220px !important; border-radius: 0; } .audit-rich-text-preview { min-height: 220px; margin-left: 14px; padding: 12px 14px; overflow: auto; color: #1f2937; background: #ffffff; border: 1px solid #dcdfe6; font-size: 14px; line-height: 1.7; } .audit-rich-text-preview img, .audit-rich-text-preview video { max-width: 100%; height: auto; } .health-check-audit-table { width: calc(100% - 14px); margin-left: 14px; } .merchant-product-rich-editor { flex: 1; width: 100%; } .purchase-notice-block { padding: 4px 0 8px 4px; } .purchase-notice-block p { margin: 0 0 18px; color: #111827; font-size: 13px; font-weight: 700; } .purchase-notice-grid { display: grid; grid-template-columns: 276px 276px; gap: 20px 42px; padding-left: 12px; } .purchase-notice-grid > div { display: grid; gap: 6px; } .purchase-notice-grid label { color: #111827; font-size: 12px; font-weight: 700; line-height: 1.4; } .purchase-notice-grid .el-input__wrapper { min-height: 28px; border-radius: 0; } .talent-benefit-panel { min-height: 202px; overflow: visible; } .benefit-config-grid { display: grid; gap: 18px; width: min(1120px, 100%); padding-top: 2px; } .benefit-config-row { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 12px; min-height: 30px; color: #111827; font-size: 13px; } .benefit-config-row strong { flex: 0 0 76px; font-weight: 700; } .benefit-config-row .el-input { width: 86px; } .benefit-config-row .el-input__wrapper { min-height: 28px; border-radius: 0; background: #aaaaaa; box-shadow: none; } .benefit-config-row .el-input.is-disabled .el-input__wrapper { background: #aaaaaa; box-shadow: none; } .benefit-config-row .el-input.is-disabled .el-input__inner { color: #6b7280; -webkit-text-fill-color: #6b7280; } .audit-action-row { display: flex; gap: 64px; padding: 12px 0 120px 14px; } .audit-action-row .el-button { width: 76px; height: 28px; padding: 0; border-radius: 3px; font-size: 12px; } .audit-result-row { display: flex; gap: 24px; padding: 12px 0 120px 14px; color: #334155; font-size: 13px; } .order-list-page { gap: 14px; } .order-type-tabs { width: 240px; } .order-type-tabs.el-segmented { --el-segmented-item-selected-color: #ffffff; --el-segmented-item-selected-bg-color: #1f7cff; --el-segmented-bg-color: #ffffff; border: 1px solid #1f7cff; border-radius: 3px; } .order-list-page .panel { min-height: 640px; padding: 18px 22px 20px; } .order-filter-form { display: grid; grid-template-columns: minmax(190px, 1.15fr) minmax(180px, 1fr) minmax(170px, 0.9fr) 74px; gap: 12px 18px; align-items: start; padding-bottom: 12px; border-bottom: 1px solid #d9dee8; } .order-filter-form .el-form-item { margin-bottom: 0; } .order-filter-form .family-order-filter .el-form-item__label { white-space: nowrap; } .order-filter-form .el-input, .order-filter-form .el-select, .order-filter-form .el-date-editor { width: 100%; } .order-filter-actions { grid-row: 1 / span 3; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .order-table-tools { display: flex; justify-content: flex-end; padding: 18px 0 16px; } .order-list-table { color: #111827; font-size: 12px; } .order-list-table .el-table__cell { padding: 6px 0; } .order-list-table .el-table__header th { color: #111827; background: #f3f4f6; font-weight: 700; } .order-list-table .el-button { padding: 0 2px; font-size: 12px; } .refund-record-page .panel { min-height: 640px; } .refund-record-table .el-table__cell { padding: 7px 0; } .hotel-verification-page .panel { min-height: 640px; padding: 18px 22px 20px; } .hotel-verification-filter-form { display: grid; grid-template-columns: minmax(240px, 1.1fr) minmax(240px, 1fr) minmax(220px, 0.9fr) auto; gap: 12px 34px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .hotel-verification-filter-form .el-form-item { margin-bottom: 0; } .hotel-verification-filter-form .el-input, .hotel-verification-filter-form .el-select, .hotel-verification-filter-form .el-date-editor { width: 100%; } .hotel-verification-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .hotel-verification-table { color: #111827; font-size: 12px; } .hotel-verification-table .el-table__cell { padding: 7px 0; } .hotel-verification-table .el-table__header th { color: #111827; background: #f3f4f6; font-weight: 700; } .medical-reservation-page .panel, .medical-application-page .panel { min-height: 640px; padding: 18px 22px 20px; } .medical-reservation-filter-form { display: grid; grid-template-columns: minmax(250px, 1.05fr) minmax(250px, 1.05fr) minmax(240px, 1fr) auto; gap: 14px 36px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .medical-reservation-filter-form .el-form-item { margin-bottom: 0; } .medical-reservation-filter-form .el-input, .medical-reservation-filter-form .el-select, .medical-reservation-filter-form .el-date-editor { width: 100%; } .medical-reservation-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .medical-reservation-table-tools { display: flex; justify-content: flex-end; padding: 18px 0 16px; } .medical-reservation-table { color: #111827; font-size: 12px; } .medical-reservation-table.el-table { border-radius: 0; } .medical-reservation-table .el-table__cell { padding: 5px 0; } .medical-reservation-table .el-table__header th { height: 34px; color: #111827; background: #f3f4f6; font-weight: 700; } .medical-reservation-table .el-button { padding: 0 2px; font-size: 12px; } .parking-plate-page .panel { min-height: 640px; padding: 18px 22px 20px; } .parking-plate-filter-form { display: grid; grid-template-columns: repeat(3, minmax(180px, 360px)) minmax(74px, 1fr); gap: 14px 24px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .parking-plate-filter-form .el-form-item { margin-bottom: 0; } .parking-plate-filter-form .el-input, .parking-plate-filter-form .el-select, .parking-plate-filter-form .el-date-editor { width: 100%; } .parking-plate-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; justify-content: end; gap: 10px; align-content: start; min-width: 74px; } .parking-plate-table-tools { display: flex; justify-content: flex-end; padding: 18px 0 16px; } .parking-plate-table { color: #111827; font-size: 12px; } .parking-plate-table.el-table { border-radius: 0; } .parking-plate-table .el-table__cell { padding: 5px 0; } .parking-plate-table .el-table__header th { height: 34px; color: #111827; background: #f3f4f6; font-weight: 700; } .parking-plate-table .el-button { padding: 0 2px; font-size: 12px; } .fuel-service-page .panel { min-height: 640px; padding: 18px 22px 20px; } .fuel-service-filter-form { display: grid; grid-template-columns: minmax(250px, 1fr) minmax(250px, 1fr) minmax(250px, 1fr) auto; gap: 14px 36px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .fuel-service-filter-form .el-form-item { margin-bottom: 0; } .fuel-service-filter-form .el-input, .fuel-service-filter-form .el-select, .fuel-service-filter-form .el-date-editor { width: 100%; } .fuel-service-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .fuel-service-table-tools { display: flex; justify-content: flex-end; padding: 18px 0 16px; } .fuel-service-table { color: #111827; font-size: 12px; } .fuel-service-table.el-table { border-radius: 0; } .fuel-service-table .el-table__cell { padding: 5px 0; } .fuel-service-table .el-table__header th { height: 34px; color: #111827; background: #f3f4f6; font-weight: 700; } .fuel-service-table .el-button { padding: 0 2px; font-size: 12px; } .spouse-employment-page .panel { min-height: 640px; padding: 18px 22px 20px; } .spouse-employment-filter-form { display: grid; grid-template-columns: minmax(250px, 1fr) minmax(250px, 1fr) minmax(250px, 1fr) auto; gap: 14px 36px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .spouse-employment-filter-form .el-form-item { margin-bottom: 0; } .spouse-employment-filter-form .el-input, .spouse-employment-filter-form .el-select, .spouse-employment-filter-form .el-date-editor { width: 100%; } .spouse-employment-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .spouse-employment-table-tools { display: flex; justify-content: flex-end; padding: 18px 0 16px; } .spouse-employment-table { color: #111827; font-size: 12px; } .spouse-employment-table.el-table { border-radius: 0; } .spouse-employment-table .el-table__cell { padding: 5px 0; } .spouse-employment-table .el-table__header th { height: 34px; color: #111827; background: #f3f4f6; font-weight: 700; } .spouse-employment-table .el-button { padding: 0 2px; font-size: 12px; } .hotel-reservation-page .panel { min-height: 640px; padding: 18px 22px 20px; } .hotel-reservation-filter-form { display: grid; grid-template-columns: minmax(250px, 1fr) minmax(250px, 1fr) minmax(250px, 1fr) auto; gap: 14px 36px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .hotel-reservation-filter-form .el-form-item { margin-bottom: 0; } .hotel-reservation-filter-form .el-input, .hotel-reservation-filter-form .el-select, .hotel-reservation-filter-form .el-date-editor { width: 100%; } .hotel-reservation-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .hotel-reservation-table-tools { display: flex; justify-content: flex-end; padding: 18px 0 16px; } .hotel-reservation-table { color: #111827; font-size: 12px; } .hotel-reservation-table.el-table { border-radius: 0; } .hotel-reservation-table .el-table__cell { padding: 5px 0; } .hotel-reservation-table .el-table__header th { height: 34px; color: #111827; background: #f3f4f6; font-weight: 700; } .hotel-reservation-table .el-button { padding: 0 2px; font-size: 12px; } .hotel-reservation-detail-page { display: grid; gap: 36px; } .spouse-employment-detail-page { display: grid; gap: 12px; } .fuel-service-detail-page { display: grid; gap: 24px; } .parking-plate-detail-page { display: grid; gap: 24px; } .medical-application-detail-page { display: grid; gap: 24px; } .family-card-detail-page { display: grid; gap: 20px; } .family-card-detail-panel { min-height: 430px; padding: 20px 18px 26px; background: #ffffff; } .reservation-detail-grid.family-card-owner-grid { min-height: 140px; align-content: start; } .reservation-detail-grid.family-card-member-grid { min-height: 112px; align-content: start; } .family-card-detail-actions { display: flex; align-items: center; } .family-card-unbound-tip { color: #909399; font-size: 13px; } .medical-reservation-detail-page { display: grid; gap: 24px; } .hotel-reservation-detail-panel { min-height: 490px; padding: 20px 18px 26px; background: #ffffff; } .medical-reservation-detail-panel { min-height: 534px; padding: 20px 18px 26px; background: #ffffff; } .medical-application-detail-panel { min-height: 490px; padding: 20px 18px 26px; background: #ffffff; } .parking-plate-detail-panel { min-height: 454px; padding: 20px 18px 26px; background: #ffffff; } .fuel-service-detail-panel { min-height: 454px; padding: 20px 18px 26px; background: #ffffff; } .spouse-employment-detail-panel { min-height: 584px; padding: 20px 18px 28px; background: #ffffff; } .reservation-detail-section { margin-bottom: 24px; } .reservation-detail-section h3 { margin: 0 0 16px; color: #111827; font-size: 15px; font-weight: 700; } .reservation-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px 70px; min-height: 74px; padding: 22px 16px; background: #f1f3f5; } .reservation-detail-grid.reservation-grid { min-height: 152px; align-content: start; } .reservation-detail-grid.spouse-employment-info-grid { min-height: 228px; align-content: start; } .reservation-detail-grid.fuel-service-submit-grid { min-height: 92px; align-content: start; } .reservation-detail-grid.parking-plate-submit-grid { min-height: 92px; align-content: start; } .parking-plate-submit-time { grid-column: 1 / 2; } .reservation-detail-grid.medical-application-info-grid { min-height: 154px; align-content: start; } .reservation-detail-grid.medical-reservation-cardholder-grid { min-height: 112px; align-content: start; } .reservation-detail-grid.medical-reservation-info-grid { min-height: 154px; align-content: start; } .reservation-detail-item { display: flex; align-items: flex-start; gap: 8px; min-width: 0; color: #475569; font-size: 13px; line-height: 1.6; } .reservation-detail-item span { flex: 0 0 auto; color: #64748b; white-space: nowrap; } .reservation-detail-item strong { color: #475569; font-weight: 500; white-space: pre-line; } .reservation-detail-item.wide { grid-column: 1 / -1; max-width: 620px; } .reservation-detail-action { width: 72px; } .business-fill-page .panel { min-height: 640px; padding: 18px 22px 20px; } .business-fill-filter-form { display: grid; grid-template-columns: minmax(250px, 1.15fr) minmax(240px, 1fr) minmax(220px, 0.9fr) minmax(260px, 1.1fr) auto; gap: 12px 28px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .business-fill-filter-form .el-form-item { margin-bottom: 0; } /* 角色管理筛选项与标题左边缘对齐。 */ .role-management-filter-form .el-form-item__label { flex: 0 0 86px; width: 86px !important; justify-content: flex-start; } .role-management-filter-form .business-fill-filter-actions { grid-column: -2 / -1; grid-row: 1; justify-self: end; } .upgrade-management-filter-form .el-form-item__label { justify-content: flex-end; } .upgrade-management-filter-form { grid-template-columns: minmax(220px, 1fr) minmax(280px, 1.15fr) minmax(220px, 0.9fr) auto; gap: 14px 34px; } .upgrade-management-filter-form .upgrade-management-filter-date { grid-column: 1; } .upgrade-management-filter-form .business-fill-filter-actions { grid-row: 1 / span 2; grid-column: 4; align-content: start; } .upgrade-management-filter-form .el-date-editor { width: 100% !important; } .business-fill-filter-form .el-input, .business-fill-filter-form .el-select, .business-fill-filter-form .el-date-editor { width: 100%; } .business-fill-filter-actions { display: grid; gap: 10px; align-content: start; min-width: 74px; } .business-fill-filter-actions .el-button { width: 74px; margin: 0; } .business-fill-tools { display: flex; gap: 10px; justify-content: flex-start; padding: 18px 0 16px; } .business-fill-table { color: #111827; font-size: 12px; } .business-fill-table .el-table__cell { padding: 7px 0; } .business-fill-table .el-table__header th { color: #111827; background: #f3f4f6; font-weight: 700; } .business-fill-table .el-button { padding: 0 2px; font-size: 12px; } .equity-image-page { display: grid; gap: 22px; } .equity-image-tabs { align-self: start; } .equity-image-tabs .el-radio-button__inner { height: 30px; padding: 0 14px; color: #1677ff; border-color: #1677ff; border-radius: 0; line-height: 28px; font-size: 13px; } .equity-image-tabs .el-radio-button:first-child .el-radio-button__inner, .equity-image-tabs .el-radio-button:last-child .el-radio-button__inner { border-radius: 0; } .equity-image-tabs .el-radio-button__original-radio:checked + .el-radio-button__inner { color: #ffffff; background: #1f7cff; border-color: #1f7cff; box-shadow: -1px 0 0 0 #1f7cff; } .equity-image-panel { min-height: 420px; padding: 22px 28px 34px; background: #ffffff; } .equity-intro-block { display: grid; gap: 12px; width: min(900px, 100%); } .equity-intro-block label, .equity-name-row label, .equity-upload-row label { color: #111827; font-size: 14px; } .equity-image-block { margin-top: 22px; } .equity-image-block h3 { margin: 0 0 8px; color: #111827; font-size: 15px; font-weight: 700; } .equity-image-block .equity-name-row:has(.el-switch) { display: none; } .equity-name-row { display: grid; grid-template-columns: 42px 180px; gap: 12px; align-items: center; margin-left: 18px; } .equity-upload-row { display: grid; grid-template-columns: 42px 180px repeat(2, 72px); gap: 12px 24px; align-items: center; margin: 24px 0 0 18px; } .equity-upload-row .el-button { width: 72px; } .equity-upload-preview { display: grid; place-items: center; width: 180px; height: 88px; color: #9ca3af; background: #e5e5e5; overflow: hidden; } .equity-upload-preview img { width: 100%; height: 100%; display: block; object-fit: cover; } .equity-add-button { width: 72px; margin: 20px 0 0 0; } .equity-save-button { width: 72px; margin-left: 20px; } .movie-ticket-config-page { display: grid; gap: 16px; } .movie-ticket-config-panel { min-height: 210px; padding: 20px 24px 34px; background: #ffffff; } .movie-ticket-config-panel h3 { margin: 0 0 18px; color: #111827; font-size: 15px; font-weight: 700; } .movie-ticket-rule-list { display: grid; gap: 20px; } .movie-ticket-rule-row { display: grid; grid-template-columns: 86px 48px 56px 104px 24px 68px 68px; gap: 12px; align-items: center; width: max-content; color: #111827; font-size: 13px; } .movie-ticket-rule-row strong { font-weight: 700; } .movie-ticket-rule-row .el-input { width: 104px; } .movie-ticket-rule-row .el-select { width: 68px; } .movie-ticket-save-button { width: 72px; margin-left: 14px; } .movie-ticket-record-page .panel { min-height: 640px; padding: 18px 22px 20px; } .movie-ticket-record-filter-form { display: grid; grid-template-columns: minmax(250px, 1fr) minmax(250px, 1fr) minmax(250px, 1fr) auto; gap: 14px 36px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .movie-ticket-record-filter-form .el-form-item { margin-bottom: 0; } .movie-ticket-record-filter-form .el-input, .movie-ticket-record-filter-form .el-select, .movie-ticket-record-filter-form .el-date-editor { width: 100%; } .movie-ticket-record-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .movie-ticket-record-tools { display: flex; justify-content: space-between; padding: 18px 0 16px; } .movie-ticket-record-table { color: #111827; font-size: 12px; } .movie-ticket-record-table.el-table { border-radius: 0; } .movie-ticket-record-table .el-table__cell { padding: 5px 0; } .movie-ticket-record-table .el-table__header th { height: 34px; color: #111827; background: #f3f4f6; font-weight: 700; } .movie-ticket-record-table .el-button { padding: 0 2px; font-size: 12px; } .movie-ticket-package-page .panel { min-height: 640px; padding: 18px 14px 20px; } .movie-ticket-package-filter-form { display: grid; grid-template-columns: minmax(320px, 1fr) minmax(240px, 1fr) minmax(320px, 1fr) minmax(240px, 1fr) auto; gap: 14px 28px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #d9dee8; } .movie-ticket-list-filter-form { grid-template-columns: minmax(260px, 1fr) minmax(260px, 1fr) minmax(220px, 1fr) auto; } .movie-ticket-package-filter-form .el-form-item { margin-bottom: 0; } .movie-ticket-package-filter-form .el-input, .movie-ticket-package-filter-form .el-select, .movie-ticket-package-filter-form .el-date-editor { width: 100%; } .movie-ticket-package-filter-actions { grid-row: 1 / span 2; grid-column: 5; display: grid; gap: 10px; align-content: start; min-width: 80px; } .movie-ticket-list-filter-form .movie-ticket-package-filter-actions { grid-row: auto; grid-column: 4; } .movie-ticket-package-tools { display: flex; justify-content: space-between; padding: 18px 0 16px; } .movie-ticket-code-pool-tools { justify-content: flex-start; gap: 12px; } .movie-ticket-package-table { color: #111827; font-size: 12px; } .movie-ticket-package-table.el-table { border-radius: 0; } .movie-ticket-package-table .el-table__cell { padding: 5px 0; } .movie-ticket-package-table .el-table__header th { height: 34px; color: #111827; background: #f3f4f6; font-weight: 700; } .movie-ticket-package-table .el-button { padding: 0 2px; font-size: 12px; } .movie-ticket-create-page { display: grid; gap: 12px; } .movie-ticket-create-panel { min-height: 286px; padding: 18px 16px 28px; background: #ffffff; } .movie-ticket-create-panel h3 { margin: 0 0 18px; color: #111827; font-size: 15px; font-weight: 700; } .movie-ticket-create-form { margin-bottom: 28px; } .movie-ticket-create-row { display: grid; grid-template-columns: 58px 544px 36px 180px 86px; gap: 12px; align-items: center; color: #111827; font-size: 13px; } .movie-ticket-create-row .el-input { width: 100%; } .movie-ticket-benefit-list { display: grid; gap: 18px; } .movie-ticket-benefit-row { display: grid; grid-template-columns: 86px 40px 56px 180px 14px 56px 108px; gap: 12px; align-items: center; color: #111827; font-size: 13px; } .movie-ticket-benefit-row strong { font-weight: 700; } .movie-ticket-benefit-row .el-input-number, .movie-ticket-benefit-row .el-select { width: 100%; min-width: 0; } .movie-ticket-benefit-row > span { white-space: nowrap; } .movie-ticket-panel-header { display: flex; justify-content: space-between; align-items: center; } .movie-ticket-merchant-row, .movie-ticket-valid-row { display: grid; align-items: center; gap: 12px; margin-top: 18px; color: #111827; font-size: 13px; } .movie-ticket-selected-merchants { margin-top: 12px; color: #4b5563; font-size: 13px; } .movie-ticket-merchant-select { width: 100%; } .movie-ticket-merchant-row { grid-template-columns: 58px minmax(260px, 520px); } .movie-ticket-valid-row { grid-template-columns: 58px 180px 20px 180px 36px 80px; } .movie-ticket-cover-row { display: grid; grid-template-columns: 58px 160px; align-items: start; gap: 12px; margin-top: 18px; color: #111827; font-size: 13px; } .movie-ticket-cover-upload { display: block; width: 160px; height: 90px; } .movie-ticket-cover-upload .el-upload { display: block; width: 160px; height: 90px; } .movie-ticket-cover-preview, .movie-ticket-cover-placeholder { display: flex; width: 160px; height: 90px; overflow: hidden; border: 1px dashed #cbd5e1; border-radius: 4px; background: #f8fafc; box-sizing: border-box; } .movie-ticket-cover-preview { border-style: solid; object-fit: cover; } .movie-ticket-cover-placeholder { flex-direction: column; align-items: center; justify-content: center; color: #94a3b8; } .movie-ticket-cover-placeholder > span { font-size: 26px; line-height: 28px; } .movie-ticket-cover-placeholder small { margin-top: 3px; font-size: 12px; } .movie-ticket-merchant-row .el-select, .movie-ticket-valid-row .el-input, .movie-ticket-valid-row .el-select { width: 100%; } .movie-ticket-form-actions { padding: 14px 0 0 0; } .news-publish-page { min-height: calc(100vh - 126px); background: #ffffff; } .news-edit-page { display: grid; gap: 12px; } .news-meta-panel { min-height: 124px; padding: 18px 22px 20px; background: #ffffff; } .news-meta-panel h3 { margin: 0 0 18px; color: #111827; font-size: 15px; font-weight: 700; line-height: 1.4; } .news-meta-grid { display: grid; grid-template-columns: 260px 340px; gap: 16px 56px; width: min(660px, 100%); color: #334155; font-size: 13px; } .news-meta-grid div { display: flex; align-items: center; gap: 10px; min-width: 0; } .news-meta-grid span { color: #334155; white-space: nowrap; } .news-meta-grid strong { color: #334155; font-weight: 600; white-space: nowrap; } .news-publish-panel { min-height: 690px; padding: 18px 22px 34px; background: #ffffff; } .news-publish-panel h3 { margin: 0 0 20px; color: #111827; font-size: 15px; font-weight: 700; line-height: 1.4; } .news-publish-form { width: min(980px, 100%); } .news-publish-form .el-form-item { margin-bottom: 18px; } .news-publish-form .el-form-item__label { color: #334155; font-size: 13px; line-height: 32px; white-space: nowrap; } .news-publish-form .el-input { width: 220px; } .news-publish-form .el-input__wrapper { background: #f6f7f9; box-shadow: none; border-radius: 0; } .news-editor-form-item { align-items: flex-start; } .admin-rich-editor { width: min(930px, 100%); overflow: hidden; border: 1px solid #dfe3e8; background: #ffffff; } .admin-rich-editor-toolbar { border-bottom: 1px solid #e5e7eb !important; background: #eeeeee !important; } .admin-rich-editor-toolbar .w-e-bar { min-height: 36px; padding: 0 16px; background: #eeeeee; } .admin-rich-editor-toolbar .w-e-bar-item { min-width: 24px; height: 28px; padding: 0 2px; } .admin-rich-editor-toolbar .w-e-bar-item button { color: #9aa0a6; } .admin-rich-editor-toolbar .w-e-bar-item button:hover { color: #2563eb; background: transparent; } .admin-rich-editor-body { color: #111827; font-size: 14px; line-height: 1.7; } .admin-rich-editor-body .w-e-text-container { background: #ffffff; } .admin-rich-editor-body .w-e-text-placeholder { color: #9ca3af; } .news-cover-form-item { margin-top: -2px; } .news-cover-row { display: flex; align-items: flex-end; gap: 14px; min-height: 74px; } .news-cover-uploader { display: grid; place-items: center; width: 58px; height: 58px; padding: 0; color: #c6cbd3; background: #ffffff; border: 1px dashed #d8dde5; cursor: pointer; } .news-cover-uploader img { width: 100%; height: 100%; display: block; object-fit: cover; } .news-cover-name { max-width: 360px; padding-bottom: 6px; overflow: hidden; color: #64748b; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; } .news-cover-input { display: none; } .policy-publish-page { min-height: calc(100vh - 126px); background: #ffffff; } .policy-edit-page { display: grid; gap: 12px; } .policy-publish-panel { min-height: 690px; padding: 18px 22px 34px; background: #ffffff; } .policy-publish-panel h3 { margin: 0 0 20px; color: #111827; font-size: 15px; font-weight: 700; line-height: 1.4; } .policy-publish-form { width: min(930px, 100%); } .policy-publish-form .el-form-item { margin-bottom: 18px; } .policy-publish-form .el-form-item__label { color: #334155; font-size: 13px; line-height: 32px; } .policy-publish-form .el-input { width: 220px; } .policy-publish-form .el-input__wrapper { background: #f6f7f9; box-shadow: none; border-radius: 0; } .policy-publish-form .admin-rich-editor { width: min(930px, 100%); } .article-management-page { min-height: calc(100vh - 126px); } .article-management-panel { min-height: 660px; padding: 18px 22px 20px; background: #ffffff; } .article-management-panel h3 { margin: 0 0 18px; color: #111827; font-size: 15px; font-weight: 700; line-height: 1.4; } .article-management-filter-form { display: grid; grid-template-columns: minmax(230px, 1fr) minmax(340px, 1.35fr) minmax(220px, 0.9fr) minmax(210px, 0.85fr) auto; gap: 12px 34px; align-items: start; padding-bottom: 10px; border-bottom: 1px solid #d9dee8; } .article-management-filter-form .el-form-item { margin-bottom: 0; } .article-management-filter-form .el-input, .article-management-filter-form .el-select, .article-management-filter-form .el-date-editor { width: 100%; } .article-management-filter-actions { grid-row: 1 / span 2; grid-column: 5; display: grid; gap: 10px; align-content: start; min-width: 74px; } .order-filter-actions .el-button { width: 74px; margin: 0; } .article-management-filter-actions .el-button { width: 100%; margin-left: 0; } .article-management-tools { display: flex; justify-content: flex-start; padding: 16px 0 10px; } .article-cover-upload .el-upload { display: block; } .article-cover-upload-card, .article-cover-preview { width: 76px; height: 76px; box-sizing: border-box; border: 1px dashed #d7dce4; } .article-cover-upload-card { display: flex; flex-direction: column; align-items: center; justify-content: center; color: #a8b0bb; background: #ffffff; } .article-cover-upload-card span { height: 30px; font-size: 31px; font-weight: 200; line-height: 26px; } .article-cover-upload-card small { margin-top: 5px; font-size: 12px; line-height: 16px; } .article-cover-preview { display: block; border-style: solid; object-fit: cover; } .news-editor-file-input { display: none; } .article-management-table { color: #111827; font-size: 12px; } .article-management-table .el-table__cell { padding: 7px 0; } .article-management-table .el-table__header th { color: #111827; background: #f3f4f6; font-weight: 700; } .article-management-table .el-button { padding: 0 2px; font-size: 12px; } .article-management-pagination { display: flex; justify-content: flex-end; padding-top: 16px; } .platform-settings-page { min-height: calc(100vh - 126px); padding: 22px 0 0 0; } .platform-settings-form { width: 420px; } .platform-settings-form .el-form-item { margin-bottom: 18px; } .platform-settings-form .el-form-item__label { color: #111827; font-size: 13px; font-weight: 700; line-height: 32px; } .platform-settings-form .platform-mini-program-link .el-form-item__label { font-size: 12px; white-space: nowrap; } .platform-settings-form .el-input { width: 178px; } .platform-settings-form .el-input__wrapper { border-radius: 0; } .platform-setting-unit { margin-left: 14px; color: #111827; font-size: 13px; font-weight: 700; line-height: 32px; white-space: nowrap; } .platform-setting-file { margin-left: 12px; color: #64748b; font-size: 13px; } .platform-settings-save { margin-top: 58px; } .platform-settings-save .el-button, .platform-settings-form .el-button { width: 72px; } .prototype-filter-form { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(260px, 1.2fr) auto; gap: 14px 22px; align-items: start; padding-bottom: 14px; border-bottom: 1px solid #e5e7eb; } .prototype-filter-form .el-form-item { margin-bottom: 0; } .prototype-filter-form .el-select { width: 100%; } .prototype-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: flex; flex-direction: column; gap: 10px; align-items: stretch; } .family-card-page { width: 100%; min-width: 0; max-width: 100%; } .family-card-page .panel { box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; overflow: hidden; padding: 18px 22px 16px; } .family-card-filter-form { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(280px, 1.15fr) minmax(220px, 0.9fr) auto; gap: 14px 34px; align-items: start; padding-bottom: 18px; border-bottom: 1px solid #e5e7eb; } .family-card-management-page .family-card-filter-form { grid-template-columns: minmax(250px, 1fr) minmax(280px, 1.1fr) minmax(220px, 0.9fr) 74px; gap: 12px 28px; } .family-card-filter-talent { grid-column: 2; } .family-card-filter-date { grid-column: 2; } .family-card-filter-form .el-form-item { margin-bottom: 0; } .family-card-filter-form .el-input, .family-card-filter-form .el-select, .family-card-filter-form .el-date-editor { width: 100%; } .family-card-filter-actions { grid-row: 1 / span 2; grid-column: 4; display: grid; gap: 10px; align-content: start; min-width: 74px; } .family-card-table-tools { display: flex; justify-content: flex-end; padding: 18px 0 16px; } .family-card-management-page .family-card-table-tools { padding: 14px 0 12px; } .family-card-table { color: #111827; font-size: 12px; } .family-card-table.el-table { width: 100%; max-width: 100%; border-radius: 0; } .family-card-application-table .el-table__body-wrapper { overflow-x: auto; } .family-card-table .el-table__header th { height: 42px; color: #111827; background: #f3f4f6; font-weight: 700; } .family-card-table .el-table__cell { padding: 7px 0; } .family-card-management-page .family-card-table .el-table__header th { height: 40px; } .family-card-management-page .family-card-table .el-table__cell { padding: 6px 0; } .talent-register-range.el-date-editor { width: 100%; } /* 管理后台的日期/时间选择控件统一为 320px,保证范围内容完整且各页面一致。 */ .page-stack .el-date-editor, .prototype-page .el-date-editor, .merchant-prototype-page .el-date-editor { width: 320px !important; } .prototype-table-tools { display: flex; align-items: center; justify-content: space-between; padding: 14px 0 10px; } .prototype-table-tools-left { display: flex; align-items: center; } .talent-import-dialog { display: grid; gap: 18px; } .talent-import-guide { display: grid; grid-template-columns: 1fr auto; gap: 6px 16px; padding: 14px 16px; color: #606266; background: #f5f7fa; border-radius: 4px; font-size: 13px; } .talent-import-guide strong { color: #303133; font-size: 14px; } .talent-import-guide span { grid-column: 1; line-height: 1.6; } .talent-import-guide .el-button { grid-column: 2; grid-row: 1 / span 2; align-self: center; } .talent-import-picker { display: grid; justify-items: center; gap: 8px; min-height: 128px; padding: 20px; border: 1px dashed #a8abb2; border-radius: 4px; color: #606266; background: #fff; cursor: pointer; } .talent-import-picker:hover { border-color: #409eff; color: #409eff; } .talent-import-picker .el-icon { font-size: 30px; } .talent-import-picker span { color: #909399; font-size: 12px; } .talent-import-result { display: grid; gap: 10px; } .talent-import-summary { display: flex; gap: 24px; font-size: 13px; } .talent-import-summary strong { color: #67c23a; } .talent-import-summary .is-error { color: #f56c6c; } .prototype-table { font-size: 12px; } .prototype-table .el-table__cell { padding: 6px 0; } .prototype-table .el-button { padding: 0 2px; font-size: 12px; } .merchant-type-dialog .el-dialog__header { padding: 18px 20px 10px; text-align: center; } .merchant-type-dialog .el-dialog__title { color: #111827; font-size: 13px; font-weight: 700; } .merchant-type-dialog .el-dialog__body { display: grid; gap: 30px; justify-items: center; padding: 18px 32px 32px; } .merchant-type-dialog .el-dialog__headerbtn { top: 12px; right: 14px; } .merchant-type-select, .next-step-button { width: 116px; } .talent-detail-page { display: grid; gap: 16px; color: #111827; } .detail-block { padding: 18px 20px; background: #ffffff; border-radius: 2px; } .detail-block h3 { margin: 0 0 14px; color: #111827; font-size: 15px; font-weight: 700; line-height: 1.4; } .user-summary { display: flex; align-items: center; min-height: 70px; gap: 10px 22px; flex-wrap: wrap; padding: 22px 24px; font-size: 13px; } .user-summary > span, .identity-card span { color: #4b5563; } .user-summary strong, .identity-card strong { color: #111827; font-weight: 500; } .detail-section-title { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 12px; } .detail-section-title h3 { margin-bottom: 0; } .identity-card { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 52px; min-height: 82px; padding: 18px; background: transparent; font-size: 13px; } .identity-card div { min-width: 0; white-space: nowrap; } .card-manage-panel { display: flex; align-items: center; gap: 34px; min-height: 136px; padding: 8px 24px 18px; background: transparent; } .talent-card-stack { display: grid; justify-items: center; gap: 10px; } .talent-card-preview { display: grid; place-items: center; width: 220px; height: 86px; color: #2367ff; background: #ffffff; border: 1px solid #2367ff; border-radius: 4px; font-size: 12px; font-weight: 600; } .card-number { color: #111827; font-size: 13px; font-weight: 700; } .service-staff-panel { min-height: 54px; padding: 14px 18px; background: transparent; } .service-staff-panel .el-select { width: 170px; } .detail-save-button { width: 72px; margin-top: 16px; } .talent-mobile-dialog { display: grid; gap: 8px; } .talent-mobile-dialog label { color: #303133; font-size: 14px; } .talent-mobile-dialog p { margin: 0; color: #f04444; font-size: 12px; } .talent-mobile-dialog .el-input.is-error .el-input__wrapper { box-shadow: 0 0 0 1px #f04444 inset; } .talent-certification-dialog { display: grid; gap: 10px; } .talent-certification-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } .talent-certification-grid label { display: grid; gap: 7px; color: #303133; font-size: 14px; } .talent-certification-grid .el-select { width: 100%; } .talent-certification-grid .el-input.is-error .el-input__wrapper { box-shadow: 0 0 0 1px #f04444 inset; } .talent-certification-error { margin: 0; color: #f04444; font-size: 12px; } .merchant-location-dialog { display: grid; gap: 14px; } .merchant-location-dialog p { margin: 0; color: #606266; font-size: 13px; line-height: 1.6; } .merchant-location-picker { display: grid; gap: 12px; } .merchant-map-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; } .merchant-location-map { height: 480px; overflow: hidden; border: 1px solid #dcdfe6; border-radius: 4px; background: #edf1f5; } .merchant-map-results { display: grid; max-height: 132px; overflow-y: auto; border: 1px solid #e4e7ed; border-radius: 4px; } .merchant-map-results button { padding: 9px 12px; border: 0; border-bottom: 1px solid #f0f2f5; background: #fff; color: #303133; cursor: pointer; font: inherit; text-align: left; } .merchant-map-results button:hover { background: #ecf5ff; color: #409eff; } .merchant-location-coordinates { display: flex; justify-content: space-between; color: #606266; font-size: 13px; } .merchant-location-coordinates span { color: #909399; } .product-audit-preview-image { display: block; max-width: 100%; max-height: 70vh; margin: 0 auto; object-fit: contain; } .talent-create-page .detail-block { padding: 18px 20px; } .create-mobile-summary { min-height: 66px; } .create-mobile-summary .el-form-item { margin-bottom: 0; } .create-mobile-summary .el-form-item__label, .identity-edit-card .el-form-item__label { white-space: nowrap; } .create-mobile-summary .el-input { width: 180px; } .identity-edit-card { min-height: 92px; padding: 16px 14px; background: transparent; } .identity-edit-form { display: grid; grid-template-columns: repeat(3, minmax(220px, 1fr)); gap: 12px 50px; } .identity-edit-card .el-form-item { margin-bottom: 0; } .identity-edit-card .el-input, .identity-edit-card .el-select { width: 180px; } /* 新增页与详情页采用同样的整行信息面板,避免被表单标签列压缩。 */ .talent-create-page .create-card-form-item, .talent-create-page .service-staff-form-item { margin: 0; } .talent-create-page .create-card-form-item > .el-form-item__content, .talent-create-page .service-staff-form-item > .el-form-item__content { display: block; margin-left: 0 !important; } .talent-create-page .create-card-form-item .card-manage-panel, .talent-create-page .service-staff-form-item .service-staff-panel { width: 100%; box-sizing: border-box; } .talent-create-page .service-staff-form-item .service-staff-panel { min-height: 54px; } .create-card-preview { appearance: none; cursor: pointer; } .talent-level-dialog .el-dialog__header { text-align: center; } .talent-level-dialog .el-dialog__body { display: grid; justify-items: center; gap: 24px; padding: 20px 36px 30px; } .talent-level-options { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; width: 100%; } .talent-level-options button { position: relative; display: grid; place-items: center; min-height: 92px; padding: 16px 8px; border: 1px solid #dcdfe6; border-radius: 4px; color: #303133; background: #fff; cursor: pointer; } .talent-level-options button.selected { border-color: #409eff; color: #1677ff; background: #f2f8ff; } .talent-level-radio { position: absolute; top: 10px; right: 10px; width: 14px; height: 14px; border: 1px solid #c0c4cc; border-radius: 50%; } .talent-level-options button.selected .talent-level-radio { border: 4px solid #409eff; } .talent-area-options { display: flex; justify-content: center; gap: 54px; } .talent-card-number-field { display: flex; align-items: center; gap: 12px; } .talent-card-number-field label { color: #303133; font-size: 13px; } .talent-card-number-field .el-input { width: 210px; } .talent-level-confirm { width: 120px; } @media (max-width: 760px) { .talent-level-options { grid-template-columns: repeat(2, minmax(0, 1fr)); } } .stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; } .stat-card { min-height: 112px; padding: 18px; border-top: 4px solid #d1d5db; } .stat-card span { display: block; color: #6b7280; font-size: 14px; } .stat-card strong { display: block; margin-top: 14px; color: #111827; font-size: 30px; line-height: 1; } .stat-card.green { border-top-color: #22c55e; } .stat-card.blue { border-top-color: #3b82f6; } .stat-card.gold { border-top-color: #f59e0b; } .stat-card.red { border-top-color: #ef4444; } .login-page { position: relative; display: flex; min-height: 100vh; overflow: hidden; background: #ffffff; } .login-city { position: absolute; inset: 0 auto 0 0; width: 63%; } .login-city::after { position: absolute; inset: 0; content: ''; background: linear-gradient(90deg, rgba(255, 255, 255, 0) 56%, rgba(255, 255, 255, 0.72) 78%, #ffffff 100%); } .login-city img { width: 100%; height: 100%; object-fit: cover; object-position: 42% center; } .login-content { position: relative; z-index: 1; width: min(420px, 36vw); margin: 9.5vh 8.5vw 0 auto; } .login-content h1 { margin: 0 0 12vh; color: #1677ff; font-size: 28px; font-weight: 700; line-height: 1.35; text-align: center; letter-spacing: 0; } .login-form { width: 100%; padding: 24px 42px 28px; border: 1px solid #e8eaed; border-radius: 6px; background: rgba(255, 255, 255, 0.98); box-shadow: 0 3px 14px rgba(31, 42, 61, 0.12); } .login-form h2 { margin: 0 0 22px; color: #1677ff; font-size: 17px; font-weight: 700; text-align: center; } .login-field { display: block; margin-bottom: 20px; } .login-field > span { display: block; margin-bottom: 10px; color: #315982; font-size: 13px; font-weight: 600; } .login-field > span em { margin-left: 6px; color: #f04444; font-size: 12px; font-style: normal; font-weight: 600; } .login-field .el-input__wrapper { min-height: 34px; border-radius: 2px; box-shadow: 0 0 0 1px #bfc7d1 inset; } .login-field .el-input__wrapper.is-focus { box-shadow: 0 0 0 1px #1677ff inset; } .login-field .el-input.is-error .el-input__wrapper, .login-field .el-input.is-error .el-input__wrapper.is-focus { box-shadow: 0 0 0 1px #f04444 inset; } .remember-check { display: flex; width: fit-content; height: 24px; margin: -2px 0 12px; } .remember-check .el-checkbox__label { padding-left: 7px; color: #303133; font-size: 13px; } .login-button { display: block; width: 168px; height: 40px; margin: 0 auto; border-radius: 3px; font-weight: 600; } .el-button { border-radius: 8px; } .el-table { --el-table-header-bg-color: #f8fafc; --el-table-header-text-color: #374151; width: 100%; max-width: 100%; border-radius: 8px; } @media (max-width: 960px) { .admin-main { padding: 16px; } .toolbar { align-items: flex-start; flex-direction: column; } .toolbar-actions { width: 100%; justify-content: flex-start; flex-wrap: wrap; } .toolbar-actions .el-input { width: min(100%, 320px); } .filter-form { grid-template-columns: repeat(2, minmax(180px, 1fr)); } .filter-actions { justify-content: flex-start; } .prototype-filter-form { grid-template-columns: repeat(2, minmax(180px, 1fr)); } .prototype-filter-actions { grid-row: auto; grid-column: auto; flex-direction: row; } .merchant-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .merchant-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .product-audit-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .product-audit-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .order-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .order-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .family-card-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .family-card-management-page .family-card-filter-form { grid-template-columns: minmax(0, 1fr); } .family-card-filter-talent, .family-card-filter-date { grid-column: auto; } .family-card-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .family-card-page .panel { min-width: 0; } .product-basic-grid, .purchase-notice-grid { grid-template-columns: 1fr; } .audit-note-card { position: relative; right: auto; bottom: auto; margin-top: 24px; } .audit-note-card::before, .audit-note-card::after { display: none; } .hotel-verification-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .hotel-verification-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .medical-reservation-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .medical-reservation-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .parking-plate-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .parking-plate-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .fuel-service-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .fuel-service-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .fuel-filter-spacer { display: none; } .spouse-employment-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .spouse-employment-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .spouse-filter-spacer { display: none; } .hotel-reservation-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .hotel-reservation-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .business-fill-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .business-fill-filter-actions { display: flex; } .equity-upload-row { grid-template-columns: 42px 180px; } .movie-ticket-record-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .movie-ticket-list-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .movie-ticket-list-filter-form .movie-ticket-package-filter-actions { grid-column: auto; display: flex; } .movie-ticket-record-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .movie-ticket-record-spacer { display: none; } .article-management-filter-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .article-management-filter-actions { grid-row: auto; grid-column: auto; display: flex; } .news-publish-form .el-input, .policy-publish-form .el-input, .admin-rich-editor { width: 100%; } .news-meta-grid { grid-template-columns: 1fr; } .identity-card { grid-template-columns: repeat(2, minmax(0, 1fr)); } .identity-edit-form { grid-template-columns: repeat(2, minmax(220px, 1fr)); } .stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .login-city { width: 58%; } .login-content { width: min(390px, 44vw); margin-right: 4vw; } .login-content h1 { font-size: 24px; } .login-form { padding: 24px 32px 28px; } } @media (max-width: 560px) { .login-page { align-items: center; padding: 24px; } .login-city { width: 100%; opacity: 0.2; } .login-city::after { background: rgba(255, 255, 255, 0.58); } .login-content { width: 100%; margin: 0; } .login-content h1 { margin-bottom: 36px; font-size: 22px; } .login-form { padding: 24px; } .header-left p { display: none; } .stat-grid { grid-template-columns: 1fr; } .filter-form { grid-template-columns: 1fr; } .prototype-filter-form { grid-template-columns: 1fr; } .merchant-filter-form { grid-template-columns: 1fr; } .product-audit-filter-form { grid-template-columns: 1fr; } .order-filter-form { grid-template-columns: 1fr; } .family-card-filter-form { grid-template-columns: 1fr; } .detail-field, .detail-money-field, .audit-image-row, .audit-gallery-row, .audit-textarea-row, .benefit-config-row { grid-template-columns: 1fr; } .hotel-verification-filter-form { grid-template-columns: 1fr; } .medical-reservation-filter-form { grid-template-columns: 1fr; } .parking-plate-filter-form { grid-template-columns: 1fr; } .fuel-service-filter-form { grid-template-columns: 1fr; } .spouse-employment-filter-form { grid-template-columns: 1fr; } .hotel-reservation-filter-form { grid-template-columns: 1fr; } .business-fill-filter-form { grid-template-columns: 1fr; } .equity-name-row, .equity-upload-row { grid-template-columns: 1fr; margin-left: 0; } .movie-ticket-rule-row { grid-template-columns: 1fr; width: 100%; } .movie-ticket-record-filter-form { grid-template-columns: 1fr; } .movie-ticket-list-filter-form { grid-template-columns: 1fr; } .article-management-filter-form { grid-template-columns: 1fr; } .identity-card, .card-manage-panel { grid-template-columns: 1fr; } .identity-card { display: grid; } .card-manage-panel { align-items: flex-start; flex-direction: column; padding: 16px; } .talent-card-preview { width: min(100%, 220px); } .identity-edit-form { grid-template-columns: 1fr; } }