@use 'sass:math'; @function px2rpx($px) { @return $px * 1rpx; } :root { --color-red-400: oklch(70.4% .191 22.216); --color-orange-600: oklch(64.6% .222 41.116); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-400: oklch(82.8% .189 84.429); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-400: oklch(74.6% .16 232.661); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-600: oklch(51.1% .262 276.966); --color-violet-400: oklch(70.2% .183 293.541); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-500: oklch(0.59 0.22 25.62); --color-pink-600: oklch(0.67 0.21 36.35); --color-rose-500: oklch(64.5% .246 16.439); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-gray-200: oklch(92.8% .006 264.531); --color-zinc-100: oklch(96.7% .001 286.375); --color-black: #000; --color-gray: #F2F2F2; --color-gray-second: #6B7188; --color-white: #fff; --font-size-10: px2rpx(10); --font-size-12: px2rpx(12); --font-size-13: px2rpx(13); --font-size-14: px2rpx(14); --font-size-15: px2rpx(15); --font-size-16: px2rpx(16); --font-size-18: px2rpx(18); --font-size-20: px2rpx(20); --font-size-22: px2rpx(22); --font-size-24: px2rpx(24); --font-size-26: px2rpx(26); --font-size-28: px2rpx(28); --font-size-32: px2rpx(32); --font-size-36: px2rpx(36); --font-size-40: px2rpx(40); --el-component-size: px2rpx(40); --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --blur-sm: 8px; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: var(--font-sans); --default-mono-font-family: var(--font-mono); --font-inter: Inter, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --color-navy-50: #e7e9ef; --color-navy-100: #fff; --color-navy-200: #a3adc2; --color-navy-300: #697a9b; --color-navy-400: #5c6b8a; --color-navy-450: #465675; --color-navy-500: #3a3c43; --color-navy-600: #313e59; --color-navy-700: #242726; --color-navy-750: #222e45; --color-navy-800: #202b40; --color-navy-900: #141a18; --color-slate-150: #e9eef5; --color-primary: #4f46e5; --color-primary-focus: #4338ca; --color-secondary-light: #ff57d8; --color-secondary: #141a18; --color-secondary-focus: #242726; --color-accent-light: #242726; --color-accent: #5f5af6; --color-accent-focus: #4d47f5; --color-info: #0ea5e9; --color-info-focus: #0284c7; --color-success: #1ac23a; --color-success-focus: #17a732; --color-warning: #ff9800; --color-warning-focus: #e68200; --color-error: #e32326; --color-error-focus: #f03000; --color-bg-main: #f8f9f9; --text-tiny: .625rem; --text-tiny--line-height: .8125rem; --text-tiny-plus: .6875rem; --text-tiny-plus--line-height: .875rem; --text-xs-plus: .8125rem; --text-xs-plus--line-height: 1.125rem; --text-sm-plus: .9375rem; --text-sm-plus--line-height: 1.375rem; --animate-shimmer: shimmer 2s linear infinite; // 状态背景色 --status-warning-bg: var(--color-amber-50); --status-success-bg: var(--color-green-300); --status-processing-bg: var(--color-sky-100); --status-danger-bg: var(--color-pink-100); --status-expired-bg: var(--color-slate-200); --status-cancelled-bg: var(--color-slate-100); // 状态文字颜色 --status-warning-text: var(--color-orange-600); --status-success-text: var(--color-green-400); --status-processing-text: var(--color-blue-600); --status-danger-text: var(--color-rose-500); --status-expired-text: var(--color-slate-600); --status-cancelled-text: var(--color-slate-500); // 状态边框颜色 --status-warning-border: var(--color-amber-400); --status-success-border: var(--color-green-400); --status-processing-border: var(--color-sky-400); --status-danger-border: var(--color-pink-300); --status-expired-border: var(--color-slate-400); --status-cancelled-border: var(--color-slate-300); } .dark { --color-red-400: oklch(70.4% .191 22.216); --color-orange-600: oklch(64.6% .222 41.116); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-400: oklch(82.8% .189 84.429); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-400: oklch(74.6% .16 232.661); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-600: oklch(51.1% .262 276.966); --color-violet-400: oklch(70.2% .183 293.541); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-500: oklch(0.59 0.22 25.62); --color-pink-600: oklch(0.67 0.21 36.35); --color-rose-500: oklch(64.5% .246 16.439); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-gray-200: oklch(92.8% .006 264.531); --color-zinc-100: oklch(96.7% .001 286.375); --color-black: #000; --color-white: #fff; --color-navy-900: #11224d; --font-size-10: px2rpx(10); --font-size-12: px2rpx(12); --font-size-13: px2rpx(13); --font-size-14: px2rpx(14); --font-size-15: px2rpx(15); --font-size-16: px2rpx(16); --font-size-18: px2rpx(18); --font-size-20: px2rpx(20); --font-size-22: px2rpx(22); --font-size-24: px2rpx(24); --font-size-26: px2rpx(26); --font-size-28: px2rpx(28); --font-size-32: px2rpx(32); --font-size-36: px2rpx(36); --font-size-40: px2rpx(40); --el-component-size: px2rpx(40); --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --blur-sm: 8px; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: var(--font-sans); --default-mono-font-family: var(--font-mono); --font-inter: Inter, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --color-navy-50: #e7e9ef; --color-navy-100: #fff; --color-navy-200: #a3adc2; --color-navy-300: #697a9b; --color-navy-400: #5c6b8a; --color-navy-450: #465675; --color-navy-500: #3a3c43; --color-navy-600: #313e59; --color-navy-700: #242726; --color-navy-750: #222e45; --color-navy-800: #202b40; --color-navy-900: #141a18; --color-slate-150: #e9eef5; --color-primary: #4f46e5; --color-primary-focus: #4338ca; --color-secondary-light: #ff57d8; --color-secondary: #141a18; --color-secondary-focus: #242726; --color-accent-light: #242726; --color-accent: #5f5af6; --color-accent-focus: #4d47f5; --color-info: #0ea5e9; --color-info-focus: #0284c7; --color-success: #1ac23a; --color-success-focus: #17a732; --color-warning: #ff9800; --color-warning-focus: #e68200; --color-error: #e32326; --color-error-focus: #f03000; --color-gray-second: #6B7188; --color-bg-main: #f8f9f9; --text-tiny: .625rem; --text-tiny--line-height: .8125rem; --text-tiny-plus: .6875rem; --text-tiny-plus--line-height: .875rem; --text-xs-plus: .8125rem; --text-xs-plus--line-height: 1.125rem; --text-sm-plus: .9375rem; --text-sm-plus--line-height: 1.375rem; --animate-shimmer: shimmer 2s linear infinite; } .uni-select__input-box { height: px2rpx(35); } .cwg-cursor { cursor: pointer; } body { min-height: 100vh; margin: 0 auto !important; font-size: px2rpx(12); line-height: 1; color: #000; } .uni-top-window { overflow: visible; } uni-left-window { position: fixed; top: px2rpx(56); left: 0; background-color: #fff; z-index: 101; transition: width 281ms cubic-bezier(0.4, 0, 0.2, 1); } uni-button[type='primary'] { background-color: #cf1322 !important; } uni-content { padding-left: px2rpx(280) !important; } uni-left-window.collapsed { width: px2rpx(64) !important; white-space: nowrap; overflow: hidden; } uni-left-window.collapsed:hover { width: px2rpx(280) !important; white-space: nowrap; overflow: hidden; } uni-content.collapsed { padding-left: px2rpx(64) !important; } @media screen and (max-width: 1100px) { uni-left-window { width: px2rpx(64) !important; white-space: nowrap; overflow: hidden; } uni-left-window:hover { width: px2rpx(280) !important; } uni-content { padding-left: px2rpx(64) !important; } } @media screen and (max-width: 991px) { uni-left-window { width: px2rpx(0) !important; overflow: hidden; transition: width 281ms cubic-bezier(0.4, 0, 0.2, 1); white-space: nowrap; } uni-content { padding-left: px2rpx(0) !important; } uni-left-window:hover { width: px2rpx(280) !important; } } .search-btn { background-color: #cf1322 !important; } .body { position: absolute; box-sizing: border-box; width: 100%; // height: 100vh; // padding-bottom: var(--tabbar-height); height: 100vh; overflow-y: scroll; transition: all 0.4s; -webkit-overflow-scrolling: touch; &.is-tab { // height: calc(100vh - var(--tabbar-height)); } } .wrap { position: relative; width: 100%; height: 100vh; overflow: hidden; } .global-loading { position: fixed; top: 0; left: 0; z-index: 999; display: flex; align-items: center; justify-content: center; width: 100vw; height: 100vh; background: var(--main-bg); } .router-loading { position: fixed; top: 0; left: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; width: 100vw; height: 100vh; background: var(--main-bg); } .full-screen-loading { position: fixed; top: 0; left: 0; z-index: 1001; display: flex; align-items: center; justify-content: center; width: 100vw; height: 100vh; background: var(--main-bg); } .request-loading, .full-screen-loading { position: fixed; top: 50%; left: 50%; z-index: 1001; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: px2rpx(16) px2rpx(24); background: rgb(0, 0, 0, 0.88); backdrop-filter: blur(4px); box-shadow: 0 4px 12px rgb(0, 0, 0, 0.15); transform: translate(-50%, -50%); animation: fadeIn 0.2s ease-in-out; .van-loading { margin-bottom: px2rpx(8); } .loading-text { font-size: px2rpx(14); font-weight: 500; color: #fff; text-shadow: 0 px2rpx(1) px2rpx(2) rgb(0, 0, 0, 0.1); letter-spacing: px2rpx(0.5); } &::after { position: absolute; inset: px2rpx(-1); z-index: -1; content: ''; background: linear-gradient(45deg, rgb(255, 255, 255, 0.1), rgb(255, 255, 255, 0.05)); border-radius: px2rpx(12); } } .full-screen-loading { width: 100vw; height: 100vh; } @keyframes fadeIn { from { opacity: 0; transform: translate(-50%, -48%); } to { opacity: 1; transform: translate(-50%, -50%); } } .load-more { margin: px2rpx(10) 0; } /* 通用样式 */ .slide-left-enter, .slide-right-leave-active { opacity: 0; transform: translate(100%, 0); } .slide-left-leave-active, .slide-right-enter { opacity: 0; transform: translate(-100%, 0); } /* .fade-leave-active below version 2.1.8 */ .fade-enter-active, .fade-leave-active { transition: opacity 0.5s; } .fade-enter, .fade-leave-to { opacity: 0; } /* start--文本行数限制--start */ .u-line-1 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .u-line-2 { -webkit-line-clamp: 2; } .u-line-3 { -webkit-line-clamp: 3; } .u-line-4 { -webkit-line-clamp: 4; } .u-line-5 { -webkit-line-clamp: 5; } .u-line-2, .u-line-3, .u-line-4, .u-line-5 { display: flex; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; // 设置伸缩盒子元素排列方式 } /* end--文本行数限制--end */ /* start--Retina 屏幕下的 1px 边框--start */ .u-border, .u-border-bottom, .u-border-left, .u-border-right, .u-border-top, .u-border-top-bottom { position: relative; } .u-border-bottom::after, .u-border-left::after, .u-border-right::after, .u-border-top-bottom::after, .u-border-top::after, .u-border::after { position: absolute; top: 0; left: 0; z-index: 2; box-sizing: border-box; // 多加0.1%,能解决有时候边框缺失的问题 width: 199.8%; height: 199.7%; pointer-events: none; content: ' '; border: 0 solid #e4e7ed; transform: scale(0.5, 0.5); transform-origin: 0 0; } .u-border-top::after { border-top-width: 1PX; } .u-border-left::after { border-left-width: 1PX; } .u-border-right::after { border-right-width: 1PX; } .u-border-bottom::after { border-bottom-width: 1PX; } .u-border-top-bottom::after { border-width: 1PX 0; } .u-border::after { border-width: 1PX; } .cwg-button { width: 100%; .u-button { height: px2rpx(44) !important; font-size: var(--font-size-16); font-weight: bold; color: var(--black); background-color: #cf1322 !important; border: none !important; border-radius: px2rpx(100) !important; &:active { opacity: 0.9; } } } .fixed-btn { position: fixed; bottom: 0; left: 0; z-index: 1100; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: px2rpx(90); padding: px2rpx(21) px2rpx(30); color: var(--black); background-color: var(--black); box-shadow: 0 -1px 2px rgb(134, 134, 133, 0.25); box-sizing: border-box; } .cwg-upload { box-sizing: border-box; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 100%; height: px2rpx(160); padding: px2rpx(16); border: 1px dashed #beb6b6; border-radius: px2rpx(4); .name { display: flex; align-items: center; font-size: px2rpx(16); font-weight: 600; line-height: px2rpx(44); color: #1a1a1a; text-align: center; } .back { display: flex; align-items: center; font-size: px2rpx(16); line-height: px2rpx(24); color: #474747; text-align: center; letter-spacing: 0.005em; } } .g { display: flex; img { height: px2rpx(50); } .g-l { flex: 1; margin-left: px2rpx(16); .g-item { display: flex; justify-content: space-between; margin-bottom: px2rpx(16); } .label { font-family: Roboto; font-size: px2rpx(14); font-style: normal; font-weight: 600; line-height: px2rpx(20); color: #1a1a1a; text-align: left; } .v { font-family: Roboto; font-size: px2rpx(14); font-style: normal; font-weight: 600; line-height: px2rpx(20); color: #1a1a1a; text-align: center; } } } .fixed-right { position: fixed; top: px2rpx(4); right: px2rpx(10); z-index: 100; display: flex; align-items: center; justify-content: center; width: px2rpx(40); height: px2rpx(40); color: var(--main-yellow); cursor: pointer; i { display: flex; align-items: center; justify-content: center; width: px2rpx(20); height: px2rpx(20); font-size: px2rpx(14); color: var(--main-yellow); } &:hover { opacity: 0.8; } } .status-default { display: flex; gap: px2rpx(10); align-items: center; justify-content: center; padding: px2rpx(4) px2rpx(8); font-family: Roboto; font-size: px2rpx(12); font-style: normal; font-weight: 600; line-height: px2rpx(16); color: #009deb; letter-spacing: px2rpx(0.06); background: rgb(0, 157, 235, 0.2); border: 0 solid #f4f4f4; border-radius: px2rpx(9999); } .status-success { color: #4caf50; background: rgb(76, 175, 80, 0.2); } .status-error { color: #d32f2f; background: rgb(211, 47, 47, 0.21); } .status-views { display: flex; align-items: center; justify-content: center; width: px2rpx(65.063); // height: 36px; padding: px2rpx(8) px2rpx(16); font-family: Roboto; font-size: px2rpx(14); font-style: normal; font-weight: 600; line-height: px2rpx(20); color: #fff; text-align: center; letter-spacing: px2rpx(0.07); background: #ea002a; border-radius: px2rpx(10); } .ellipsis { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .custom-toast { top: 40%; display: flex; flex-direction: column; gap: px2rpx(16); align-items: center; width: px2rpx(348); padding: px2rpx(32) px2rpx(24); background: #fff; border-radius: px2rpx(20); box-shadow: 0 4px 12px rgb(0, 0, 0, 0.1); .van-icon__image { width: px2rpx(88); height: px2rpx(88); } .van-toast__text { font-family: Roboto; font-size: px2rpx(14); font-style: normal; font-weight: 400; line-height: px2rpx(20); color: #474747; text-align: center; letter-spacing: px2rpx(0.07); } } .page-header { position: fixed; top: calc(var(--secure-height, 0px) + env(safe-area-inset-top)); left: 0; z-index: 13; display: flex; align-items: center; width: 100%; height: px2rpx(60); font-size: var(--font-size-22); font-weight: 700; color: var(--white); text-align: left; background: #fff; } .u-form-item__body { padding: 0 !important; } .u-form-item__body__right__message { margin-left: 10px !important; } .filter-picker { background-color: var(--color-white); border: 1px solid #e5e7eb; border-radius: px2rpx(8); padding: px2rpx(6); display: flex; align-items: center; min-width: px2rpx(60); max-width: px2rpx(120); flex-shrink: 1; overflow: hidden; div { width: 100% !important; } } .picker-value { display: flex; align-items: center; gap: px2rpx(4); width: 100%; } .picker-text { min-width: px2rpx(60); max-width: px2rpx(100); font-size: px2rpx(12); color: #111827; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .picker-icon { flex-shrink: 0; width: px2rpx(14); height: px2rpx(14); } .status-badge { display: flex; align-items: center; gap: px2rpx(4); padding: px2rpx(3) px2rpx(8) px2rpx(3) px2rpx(3); border-radius: px2rpx(12); } .filter-select { background-color: var(--color-white); border: 1px solid #e5e7eb; border-radius: px2rpx(8); padding: px2rpx(6); display: flex; align-items: center; min-width: px2rpx(90); max-width: px2rpx(120); flex-shrink: 1; // overflow: hidden; div { // width: 100% !important; } .uni-select { width: 100% !important; padding: 0 !important; border: none !important; min-height: px2rpx(14) !important; } .uni-select__selector { min-width: 100px !important; max-width: 300px !important; width: max-content !important; } .uni-select__selector-item { white-space: nowrap !important; padding: 0 12px !important; } .uni-select__input-text { color: #6a6a6a; font-size: 12px; margin: 1px 0; padding: 0 !important; } .padding-top-bottom { padding: 0 !important; } } // 公共title样式 .content-title { width: 100%; min-height: px2rpx(40); line-height: px2rpx(40); box-sizing: border-box; color: var(--color-navy-900); // color: var(--color-white); // background-color: var(--color-navy-900); font-size: px2rpx(20); font-weight: bold; } .s-btn { &.reselect { background-color: var(--color-zinc-100); color: var(--color-navy-700); border: none; font-size: px2rpx(14); padding: px2rpx(8) px2rpx(20); border-radius: px2rpx(8); &:active { background-color: var(--color-zinc-200); } } &[type="primary"] { width: 100%; height: px2rpx(48); background-color: #cf1322; color: #fff; border-radius: px2rpx(12); font-size: px2rpx(16); font-weight: 600; display: flex; align-items: center; justify-content: center; border: none; margin-top: px2rpx(30); transition: all 0.2s; &:active { transform: scale(0.98); background-color: #cf1322; } } } .search-bar { display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: px2rpx(16); // margin: px2rpx(16) 0; .cwg-combox, .uni-easyinput, .uni-date { width: px2rpx(224) !important; flex: none !important; } .s-btn { width: px2rpx(224); background-color: var(--color-error); color: var(--color-white); padding: px2rpx(10) px2rpx(20); border: none; font-size: px2rpx(15); text-align: center; cursor: pointer; box-sizing: border-box; } } :deep(.uni-row1) { width: 100%; // margin: 0 px2rpx(-10) !important; box-sizing: border-box; .uni-col { padding: 0 px2rpx(10) !important; box-sizing: border-box; } .base-info-form>span { display: contents; } .uni-forms-item { min-height: px2rpx(79); margin-bottom: px2rpx(10); } .uni-select, .uni-combox, .uni-easyinput__content, .uni-date-editor--x { border: none !important; background-color: var(--color-zinc-100) !important; } .uni-date-x { border: none !important; background-color: rgba(195, 195, 195, 0) !important; } .uni-easyinput__content { padding: 0 !important; } .checklist-text { color: #666 !important; } .checklist-box.is--default.is-checked .checkbox__inner { border-color: var(--color-error) !important; background-color: var(--color-error) !important; } } :deep(.uni-row2) { .uni-select, .uni-combox, .uni-easyinput__content, .uni-date-editor--x { border: 1px solid var(--color-slate-300) !important; background-color: rgba(195, 195, 195, 0) !important; } .uni-date-x { background-color: rgba(195, 195, 195, 0) !important; } } .bg-secondary { background-color: var(--color-secondary) !important; border: 1px solid #333333; color: var(--color-white); } .underline { text-decoration: underline; text-decoration-color: currentColor; text-underline-offset: px2rpx(2); cursor: pointer; } .info-card { // margin-top: px2rpx(4); // border-radius: px2rpx(8); // background-color: white; // padding: px2rpx(8); // box-shadow: 0 0 px2rpx(8) rgba(0, 0, 0, 0.1); // box-shadow: // 0 0 px2rpx(4) rgba(0, 0, 0, 0.06), // 0 px2rpx(6) px2rpx(12) rgba(0, 0, 0, 0.08); box-sizing: border-box; // padding: px2rpx(20); // border: 1px solid rgba(108, 133, 149, 0.12); border-radius: px2rpx(8); } .crm-title-box { background-color: var(--color-gray-second); color: var(--color-white); height: 40px; display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; border-radius: 2px; padding: 0 20px; .tit { font-size: 14px; font-weight: bold; color: var(--color-white); } } .status-box { display: flex; align-items: center; gap: px2rpx(4); } @media screen and (max-width: 991px) { .info-card { box-sizing: border-box; // padding: px2rpx(20); border: 0 !important; border-radius: 0 !important; } .status-box { display: flex; flex-direction: column; gap: px2rpx(4); } } // 状态标签基础样式 .status-badge { display: inline-flex; align-items: center; padding: 4rpx 12rpx; border-radius: 4rpx; font-size: var(--font-size-24); font-weight: 500; line-height: 1.5; white-space: nowrap; transition: all var(--default-transition-duration) var(--default-transition-timing-function); // 当有取消按钮时调整右边距 &.has-cancel { margin-right: 8rpx; } } // 状态标签基础样式 .status-tag { display: inline-block; padding: px2rpx(4) px2rpx(8); border-radius: px2rpx(2); font-size: px2rpx(15); text-align: center; min-width: px2rpx(80); box-sizing: border-box; } // 待处理 .status-pending { background-color: #fef3c7; color: #d97706; } // 处理中 .status-processing { background-color: #a9d3ee; color: #0284c7; } // 成功 .status-success { background-color: #a3f7c0; color: #16a34a; } // 失败 .status-failed { background-color: #f39c9c; color: #dc2626; } // 取消 / 已取消 .status-cancelled { background-color: #a4bef2; color: #4b5563; } // 已过期 .status-expired, .status-canceled { background-color: #f5efb1; color: #a16207; } // 已完成 .status-completed { background-color: #d1fae5; color: #059669; } // // 待处理 // .status-warning { // background-color: var(--status-warning-bg); // color: var(--status-warning-text); // } // // 已完成 // .status-success { // background-color: var(--status-success-bg); // color: var(--status-success-text); // } // // 进行中 // .status-processing { // background-color: var(--status-processing-bg); // color: var(--status-processing-text); // } // // 已拒绝 // .status-danger { // background-color: var(--status-danger-bg); // color: var(--status-danger-text); // } // // 已过期 // .status-expired { // background-color: var(--status-expired-bg); // color: var(--status-expired-text); // } // // 已取消 // .status-cancelled { // background-color: var(--status-cancelled-bg); // color: var(--status-cancelled-text); // } // 取消按钮容器 .cancel-btn-wrapper { display: inline-flex; align-items: center; } // 取消按钮样式 .cancel-btn { display: inline-flex; align-items: center; padding: 4rpx 12rpx; border-radius: 4rpx; font-size: var(--font-size-24); font-weight: 500; line-height: 1.5; color: var(--color-rose-500); background-color: var(--color-white); border: 1px solid var(--color-rose-500); cursor: pointer; transition: all var(--default-transition-duration) var(--default-transition-timing-function); white-space: nowrap; &:hover { color: var(--color-white); background-color: var(--color-rose-500); border-color: var(--color-rose-500); } // 添加点击效果 &:active { transform: scale(0.95); } } .pc-header-btn { width: px2rpx(40); height: px2rpx(40); border-radius: px2rpx(4); border: 1px solid rgba(108, 133, 149, 0); display: flex; align-items: center; font-size: px2rpx(14); cursor: pointer; display: flex; justify-content: center; align-items: center; &:hover { background: rgba(108, 133, 149, 0.12); border-color: rgb(145, 163, 176); } } .popup-content { // padding: px2rpx(30) px2rpx(20); text-align: center; min-width: px2rpx(250); @media screen and (max-width: 991px) { // min-width: 80%; // max-width: 90%; // margin: 0 px2rpx(10); } position: relative; .icon { .iconfont { font-size: px2rpx(60); display: block; margin: 0 auto; } .icon-chenggong { color: #67c23a; } .icon-jingshi { color: #f56c6c; } .icon-dengdai { color: #e6a23c; } } .des1 { font-weight: 600; font-size: px2rpx(16); margin: px2rpx(20) 0 px2rpx(15); color: #303133; line-height: 1.4; padding: 0 px2rpx(10); } .des2 { font-size: px2rpx(14); margin: px2rpx(15) 0 px2rpx(15); color: #303133; line-height: 1.4; padding: 0 px2rpx(10); } } .dialog-footer { padding: px2rpx(20) px2rpx(30) px2rpx(30); border-top: 1px solid #f0f0f0; .btn-content { // 双按钮模式 &:not(:has(button:only-child)):has(button) { display: flex; justify-content: center; gap: px2rpx(20); } // 单按钮模式 &:has(button:only-child) { display: flex; justify-content: center; } } .footer-line { height: 1px; background-color: #f0f0f0; margin: px2rpx(-20) 0 0; } button { min-width: px2rpx(120); height: px2rpx(40); border-radius: px2rpx(4); font-size: px2rpx(16); display: flex; align-items: center; justify-content: center; border: none; cursor: pointer; transition: all 0.3s ease; margin: 0; &:active { opacity: 0.8; transform: scale(0.98); } &:disabled { opacity: 0.5; cursor: not-allowed; } } .cancel-btn { background-color: #f5f5f5; color: #666; &:active { background-color: #e8e8e8; } } .confirm-btn { &.primary { background-color: #cf1322; color: #fff; &:active { background-color: #0056b3; } } &.danger { background-color: #ff6b6b; color: #fff; &:active { background-color: #ff5252; } } } .single-btn { min-width: px2rpx(200); &.primary { background-color: #cf1322; color: #fff; } &.danger { background-color: #ff6b6b; color: #fff; } &.default { background-color: #f5f5f5; color: #666; } } } .wait-popup { .des1 { margin-top: px2rpx(10); } .icon { .iconfont { animation: spin 1s linear infinite; } } } // 适配不同屏幕尺寸(媒体查询中的 750rpx 保持不变) @media (max-width: 750rpx) { .popup-content { .icon { .iconfont { font-size: px2rpx(50); } } .des1 { font-size: px2rpx(14); margin: px2rpx(15) 0 px2rpx(10); } .des2 { font-size: px2rpx(13); margin: px2rpx(15) 0 px2rpx(10); } .dialog-footer { button { min-width: px2rpx(80); font-size: px2rpx(13); } } } } .clause-content { max-height: px2rpx(500); overflow-y: auto; text-align: left; line-height: 1.6; .h4 { font-size: px2rpx(16); font-weight: bold; margin: px2rpx(16) 0; } .list { .list-item { margin-bottom: px2rpx(12); } } .table-container { width: 100%; overflow-x: auto; margin: px2rpx(16) 0; .table { display: table; width: 100%; table-layout: fixed; border: 1px solid #e4e7ed; box-sizing: border-box; .tr { display: table-row; } .th, .td { display: table-cell; width: calc(100% / 6); padding: px2rpx(8); text-align: center; border-right: 1px solid #e4e7ed; border-bottom: 1px solid #e4e7ed; &:last-child { border-right: none; } } .tr:last-child .td, .tr:last-child .th { border-bottom: none; } } } } .crm-cursor { cursor: pointer; }