1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134 |
- /* 调试样式文件 - 增强版本,确保布局正确显示 */
- @import '../../../../styles/_variables';
- /* 重置所有可能冲突的样式 - 使用最高优先级 */
- * {
- box-sizing: border-box !important;
- }
- /* 重置主内容区域样式 */
- .main-content {
- width: 100% !important;
- margin: 0 !important;
- padding: 0 !important;
- }
- /* 重置内容包装器样式 */
- .content-wrapper {
- width: 100% !important;
- margin: 0 !important;
- padding: 0 !important;
- }
- /* 重置项目详情容器 */
- .project-detail-container {
- padding: 20px !important;
- width: 100% !important;
- margin: 0 !important;
- }
- /* 重置标签页内容容器 */
- .tab-content {
- width: 100% !important;
- padding: 0 !important;
- margin: 0 !important;
-
- /* 减少标签页内容的垂直间距 */
- > * {
- margin-bottom: 12px !important; /* 统一减少子元素的底部间距 */
-
- &:last-child {
- margin-bottom: 0 !important;
- }
- }
- }
- /* 重置项目进度标签页内容 */
- .progress-tab-content {
- width: 100% !important;
- padding: 0 !important;
- margin: 0 !important;
-
- /* 减少进度标签页内容的垂直间距 */
- > * {
- margin-bottom: 12px !important; /* 统一减少子元素的底部间距 */
-
- &:last-child {
- margin-bottom: 0 !important;
- }
- }
- }
- /* 上传区域样式优化 - 确保在并排显示时内容清晰可读 */
- .upload-section {
- /* 基础样式保持不变 */
- margin-bottom: 12px !important; /* 从16px减少到12px */
-
- /* 针对四个卡片并排时的特殊优化 */
- .stage-progress-container:has(.vertical-stage-block:nth-child(4):last-child) & {
- /* 笔记本端和PC端的上传区域优化 */
- @media (min-width: 1366px) {
- margin-bottom: 12px !important;
-
- .upload-dropzone {
- min-height: 120px !important;
- padding: 12px !important;
-
- .upload-text {
- font-size: 12px !important;
- line-height: 1.4 !important;
- }
-
- .upload-hint {
- font-size: 11px !important;
- margin-top: 4px !important;
- }
- }
- }
-
- /* 24寸PC端的上传区域优化 */
- @media (min-width: 1920px) {
- margin-bottom: 16px !important;
-
- .upload-dropzone {
- min-height: 140px !important;
- padding: 16px !important;
-
- .upload-text {
- font-size: 13px !important;
- line-height: 1.4 !important;
- }
-
- .upload-hint {
- font-size: 12px !important;
- margin-top: 6px !important;
- }
- }
- }
-
- /* 较小屏幕时保持紧凑布局 */
- @media (max-width: 1365px) {
- margin-bottom: 10px !important;
-
- .upload-dropzone {
- min-height: 100px !important;
- padding: 10px !important;
-
- .upload-text {
- font-size: 11px !important;
- line-height: 1.3 !important;
- }
-
- .upload-hint {
- font-size: 10px !important;
- margin-top: 3px !important;
- }
- }
- }
- }
- }
- /* 阶段标题样式优化 */
- .vertical-stage-header {
- /* 针对四个卡片并排时的标题优化 */
- .stage-progress-container:has(.vertical-stage-block:nth-child(4):last-child) & {
- margin-bottom: 12px !important;
-
- h4 {
- font-size: 14px !important;
- line-height: 1.3 !important;
- margin: 0 !important;
-
- /* 笔记本端和PC端的标题优化 */
- @media (min-width: 1366px) {
- font-size: 15px !important;
- }
-
- /* 24寸PC端的标题优化 */
- @media (min-width: 1920px) {
- font-size: 16px !important;
- }
- }
- }
- }
- /* 强制覆盖主内容布局样式 - 使用最高优先级 */
- .progress-tab-content > .main-content-layout {
- display: flex !important;
- flex-wrap: nowrap !important;
- gap: 20px !important;
- margin-top: 20px !important;
- width: 100% !important;
- background-color: transparent !important; /* 去除调试底色 */
- padding: 20px !important;
- border-radius: 8px !important;
- }
- /* 强制覆盖左侧列样式 - 使用最高优先级 */
- .progress-tab-content > .main-content-layout > .left-column {
- width: 28% !important;
- min-width: 28% !important;
- max-width: 28% !important;
- display: flex !important;
- flex-direction: column !important;
- gap: 16px !important;
- background-color: transparent !important; // 去除左侧粉色底色
- padding: 8px !important;
- border-radius: 6px !important;
- }
- /* 强制覆盖右侧列样式 - 使用最高优先级 */
- .progress-tab-content > .main-content-layout > .right-column {
- width: 72% !important;
- min-width: 72% !important;
- max-width: 72% !important;
- display: flex !important;
- flex-direction: column !important;
- gap: 16px !important;
- background-color: transparent !important; // 去除右侧调试底色
- padding: 8px !important;
- border-radius: 6px !important;
- }
- /* 优化卡片样式 */
- .left-column .card,
- .right-column .card {
- background-color: white !important;
- border-radius: 8px !important;
- padding: 16px !important;
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
- border: 1px solid #eaeaea !important;
- }
- /* 客户信息卡片样式优化 */
- .left-column .project-info-card {
- background: white !important;
- border-radius: 8px !important;
- padding: 12px !important;
- margin-bottom: 16px !important;
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
- border: 1px solid #eaeaea !important;
- }
- /* 客户信息卡片标题栏交互效果 */
- .left-column .project-info-card .card-header {
- transition: background-color 0.2s ease, box-shadow 0.2s ease !important;
- border-radius: 6px !important;
- padding: 8px 12px !important;
- margin: -8px -8px 8px -8px !important;
- }
- .left-column .project-info-card .card-header:hover {
- background-color: #f8f9fa !important;
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
- }
- .left-column .project-info-card .card-header:active {
- background-color: #e9ecef !important;
- transform: translateY(1px) !important;
- }
- /* 箭头图标动画效果 */
- .left-column .project-info-card .toggle-icon {
- transition: transform 0.3s ease !important;
- }
- .left-column .project-info-card .toggle-icon.expanded {
- transform: rotate(180deg) !important;
- }
- /* 客户信息卡片内部元素优化 */
- .left-column .project-info-card .info-grid {
- display: grid !important;
- grid-template-columns: 1fr 1fr !important;
- gap: 6px !important; // 从8px减少到6px
- margin-bottom: 8px !important; // 从12px减少到8px
- }
- .left-column .project-info-card .info-item {
- display: flex !important;
- flex-direction: column !important;
- padding: 6px !important; // 从8px减少到6px
- background: #f8f9fa !important;
- border-radius: 6px !important;
- border: 1px solid #e9ecef !important;
- font-size: 12px !important;
- }
- .left-column .project-info-card .info-item label {
- font-weight: 500 !important;
- color: #6c757d !important;
- margin-bottom: 2px !important; // 从4px减少到2px
- font-size: 11px !important;
- }
- .left-column .project-info-card .info-item span {
- color: #212529 !important;
- font-weight: 600 !important;
- font-size: 12px !important;
- }
- .left-column .project-info-card .tags-container {
- margin-top: 6px !important; // 从8px减少到6px
- }
- .left-column .project-info-card .tag-section {
- margin-bottom: 6px !important; // 从8px减少到6px
- }
- .left-column .project-info-card .tag-section h3 {
- font-size: 12px !important;
- font-weight: 600 !important;
- color: #495057 !important;
- margin-bottom: 4px !important; // 从6px减少到4px
- }
- .left-column .project-info-card .tags .tag {
- font-size: 10px !important;
- padding: 4px 8px !important;
- margin: 2px 4px 2px 0 !important;
- background-color: rgba(24, 144, 255, 0.08) !important;
- color: #1890ff !important;
- border-radius: 4px !important;
- }
- .left-column .project-info-card .need-list {
- margin: 0 !important;
- padding-left: 12px !important;
- }
- .left-column .project-info-card .need-list li {
- font-size: 11px !important;
- color: #495057 !important;
- margin-bottom: 3px !important;
- }
- .left-column .project-info-card .requirement-sync-info {
- margin-top: 8px !important;
- padding: 8px !important;
- background: #f1f3f4 !important;
- border-radius: 6px !important;
- }
- .left-column .project-info-card .requirement-sync-info h4 {
- font-size: 11px !important;
- font-weight: 600 !important;
- color: #495057 !important;
- margin-bottom: 6px !important;
- }
- /* 确保响应式布局正常工作 */
- @media (max-width: 1024px) {
- .progress-tab-content > .main-content-layout {
- flex-direction: column !important;
- }
-
- .progress-tab-content > .main-content-layout > .left-column,
- .progress-tab-content > .main-content-layout > .right-column {
- width: 100% !important;
- min-width: 100% !important;
- max-width: 100% !important;
- }
- }
- /* ===================== 四大板块:工具条与内容样式(调试版) ===================== */
- .sections-toolbar {
- display: flex;
- gap: $ios-spacing-md;
- padding: $ios-spacing-sm;
- background: $ios-background-secondary;
- border-radius: $ios-radius-lg;
- border: 1px solid $ios-border;
- margin: $ios-spacing-md 0 $ios-spacing-lg;
- }
- .section-btn {
- appearance: none;
- border: 1px solid $ios-border;
- background: $ios-background;
- color: $ios-text-primary;
- padding: $ios-spacing-sm $ios-spacing-lg;
- border-radius: $ios-radius-md;
- font-size: $ios-font-size-sm;
- font-weight: $ios-font-weight-medium;
- cursor: pointer;
- transition: all 0.15s ease;
- }
- .section-btn:hover { transform: translateY(-1px); box-shadow: 0 2px 8px rgba(0,0,0,0.05); }
- .section-btn.completed { background: #e6f7e6; color: $ios-success; border-color: rgba(0,0,0,0.06); }
- .section-btn.active { background: #fff2f0; color: #ff4d4f; border-color: #ff4d4f; }
- .section-btn.pending { background: $ios-background; color: $ios-text-secondary; }
- .sections-content { margin-top: $ios-spacing-md; }
- .section-panel {
- background: $ios-background;
- border: 1px solid $ios-border;
- border-radius: $ios-radius-lg;
- padding: $ios-spacing-lg;
- }
- /* 交付执行:三列布局 */
- .delivery-grid {
- display: grid;
- grid-template-columns: repeat(3, 1fr);
- gap: $ios-spacing-lg;
- }
- @media (max-width: 1024px) {
- .delivery-grid { grid-template-columns: 1fr; }
- }
- .delivery-col {
- background: $ios-background-secondary;
- border: 1px solid $ios-border;
- border-radius: $ios-radius-md;
- padding: $ios-spacing-md;
- display: flex;
- flex-direction: column;
- gap: $ios-spacing-md;
- }
- .delivery-stage-header {
- display: flex;
- align-items: center;
- gap: $ios-spacing-sm;
- }
- .delivery-stage-header .dot {
- width: 10px; height: 10px; border-radius: 50%; background: $ios-border;
- }
- .delivery-stage-header .dot.completed { background: $ios-success; }
- .delivery-stage-header .dot.active { background: $ios-primary; }
- /* 优化垂直间距和内边距 - 减少空白 */
- .delivery-stage-body {
- display: flex;
- flex-direction: column;
- gap: $ios-spacing-xs; // 从 $ios-spacing-sm 减少到 $ios-spacing-xs
- }
- /* 减少垂直区域间距 */
- .section-vertical {
- display: flex;
- flex-direction: column;
- gap: $ios-spacing-sm; // 从 $ios-spacing-md 减少到 $ios-spacing-sm
- }
- /* 减少垂直阶段块的内边距 */
- .vertical-stage-block {
- border-radius: 8px; // 替换未定义的变量为固定值
- background: white; // 替换未定义的变量为固定值
- padding: 10px; // 进一步减少内边距,从 $ios-spacing-xs 减少到固定值10px
- margin-bottom: 10px; // 添加底部间距控制
- }
- .vertical-stage-header {
- display: flex;
- align-items: center;
- gap: 8px; // 从 $ios-spacing-xs 减少到固定值8px
- margin-bottom: 8px; // 从 $ios-spacing-xs 减少到固定值8px
- }
- /* 减少垂直阶段主体间距 */
- .vertical-stage-body {
- display: flex;
- flex-direction: column;
- gap: 10px; // 从 $ios-spacing-sm 减少到固定值10px
- }
- /* 缩略图列表适配到新容器 */
- .section-panel .thumb-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: $ios-spacing-md; }
- .section-panel .thumb-item { background: white; border: 1px solid $ios-border; border-radius: $ios-radius-sm; overflow: hidden; display: flex; flex-direction: column; }
- .section-panel .thumb-item img { width: 100%; height: 120px; object-fit: cover; }
- .section-panel .thumb-meta { display: flex; justify-content: space-between; padding: $ios-spacing-xs $ios-spacing-sm; font-size: $ios-font-size-xs; color: $ios-text-secondary; }
- /* 上传区小幅适配 */
- .section-panel .upload-header {
- display: flex;
- align-items: center;
- justify-content: space-between;
- gap: $ios-spacing-sm;
- padding: $ios-spacing-sm $ios-spacing-md;
- background: $ios-background;
- border: 1px dashed $ios-border;
- border-radius: $ios-radius-sm;
- }
- /* 强调版:客户信息卡片更突出、边缘更清晰 */
- /* 顶部强调条、圆角与阴影调整,以及关键信息高亮 */
- .left-column .project-info-card.card {
- border: 1px solid $ios-border !important;
- border-radius: 12px !important; /* 圆角加大 */
- box-shadow: 0 10px 24px rgba(0,0,0,0.06), 0 2px 6px rgba(0,0,0,0.05) !important; /* 阴影减弱些 */
- position: relative;
- }
- .left-column .project-info-card.card::before {
- content: "";
- position: absolute;
- top: 0; left: 0; right: 0;
- height: 4px; /* 顶部强调条 */
- background: $ios-primary;
- border-top-left-radius: 12px;
- border-top-right-radius: 12px;
- }
- /* 关键信息轻微高亮:客户姓名 */
- .left-column .project-info-card .info-item.key-info span {
- font-weight: $ios-font-weight-semibold;
- color: $ios-text-primary;
- }
- .left-column .project-info-card .info-item.key-info label {
- color: $ios-primary;
- }
- /* 标签轻微高亮:提升标签显著性但不过度 */
- .left-column .project-info-card .tags .tag {
- background-color: rgba(24, 144, 255, 0.08); /* 以主色系的淡背景形成层级 */
- color: $ios-primary;
- }
- .left-column .project-info-card.card h2 {
- color: $ios-primary !important; /* 标题与强调条呼应 */
- }
- /* 客户信息卡片头部和同步状态 */
- .left-column .project-info-card .card-header {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- margin-bottom: 12px !important; // 从16px减少到12px
- padding-bottom: 8px !important; // 从12px减少到8px
- border-bottom: 1px solid #f0f0f0 !important;
- transition: all 0.3s ease !important;
- }
- .left-column .project-info-card .card-header:hover {
- background-color: rgba(0, 0, 0, 0.02) !important;
- }
- .left-column .project-info-card .card-header h2 {
- margin: 0 !important;
- font-size: 18px !important;
- font-weight: 600 !important;
- color: #262626 !important;
- }
- .left-column .project-info-card .card-header .header-actions {
- display: flex !important;
- align-items: center !important;
- gap: 12px !important;
- }
- .left-column .project-info-card .sync-status {
- display: flex !important;
- align-items: center !important;
- font-size: 12px !important;
- color: #8c8c8c !important;
- }
- .left-column .project-info-card .sync-status.syncing {
- color: #1890ff !important;
- }
- .left-column .project-info-card .sync-indicator {
- display: flex !important;
- align-items: center !important;
- gap: 4px !important;
- }
- .left-column .project-info-card .sync-spinner {
- width: 12px !important;
- height: 12px !important;
- border: 2px solid #f0f0f0 !important;
- border-top: 2px solid #1890ff !important;
- border-radius: 50% !important;
- animation: spin 1s linear infinite !important;
- }
- .left-column .project-info-card .sync-time {
- display: flex !important;
- align-items: center !important;
- gap: 4px !important;
- }
- .left-column .project-info-card .icon-sync {
- width: 12px !important;
- height: 12px !important;
- background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%238c8c8c'%3E%3Cpath d='M12 6v3l4-4-4-4v3c-4.42 0-8 3.58-8 8 0 1.57.46 3.03 1.24 4.26L6.7 14.8c-.45-.83-.7-1.79-.7-2.8 0-3.31 2.69-6 6-6zm6.76 1.74L17.3 9.2c.44.84.7 1.79.7 2.8 0 3.31-2.69 6-6 6v-3l-4 4 4 4v-3c4.42 0 8-3.58 8-8 0-1.57-.46-3.03-1.24-4.26z'/%3E%3C/svg%3E") no-repeat center !important;
- background-size: contain !important;
- }
- /* 展开/收起图标样式 */
- .left-column .project-info-card .toggle-icon {
- display: flex !important;
- align-items: center !important;
- justify-content: center !important;
- width: 24px !important;
- height: 24px !important;
- border-radius: 50% !important;
- background-color: rgba(0, 0, 0, 0.04) !important;
- transition: all 0.3s ease !important;
- cursor: pointer !important;
- }
- .left-column .project-info-card .toggle-icon:hover {
- background-color: rgba(0, 0, 0, 0.08) !important;
- }
- .left-column .project-info-card .toggle-icon svg {
- transition: transform 0.3s ease !important;
- color: #666 !important;
- }
- .left-column .project-info-card .toggle-icon.expanded svg {
- transform: rotate(180deg) !important;
- }
- /* 折叠展开动画效果 */
- .left-column .project-info-card .info-grid {
- max-height: 1000px !important;
- overflow: hidden !important;
- transition: max-height 0.3s ease, opacity 0.3s ease !important;
- opacity: 1 !important;
- }
- .left-column .project-info-card .info-grid.collapsed {
- max-height: 0 !important;
- opacity: 0 !important;
- padding: 0 !important;
- margin: 0 !important;
- border: none !important;
- }
- .left-column .project-info-card .tags-container {
- max-height: 1000px !important;
- overflow: hidden !important;
- transition: max-height 0.3s ease, opacity 0.3s ease, padding 0.3s ease, margin 0.3s ease !important;
- opacity: 1 !important;
- }
- .left-column .project-info-card .tags-container.collapsed {
- max-height: 0 !important;
- opacity: 0 !important;
- margin: 0 !important;
- padding: 0 !important;
- border: none !important;
- }
- @keyframes spin {
- 0% { transform: rotate(0deg); }
- 100% { transform: rotate(360deg); }
- }
- /* 方案展示相关样式 */
- .proposal-confirm-card {
- /* 固定高度和滚动条 */
- max-height: 600px; /* 固定显示区域高度 */
- overflow-y: auto; /* 垂直滚动条 */
-
- /* 自定义滚动条样式 */
- &::-webkit-scrollbar {
- width: 8px;
- }
-
- &::-webkit-scrollbar-track {
- background: #f1f1f1;
- border-radius: 4px;
- }
-
- &::-webkit-scrollbar-thumb {
- background: #c1c1c1;
- border-radius: 4px;
-
- &:hover {
- background: #a8a8a8;
- }
- }
- .analysis-progress {
- padding: 24px;
- background: linear-gradient(135deg, #f8f9ff 0%, #e8f2ff 100%);
- border-radius: 12px;
- margin-bottom: 20px;
- border: 1px solid #e1e8ff;
- .progress-header {
- display: flex;
- justify-content: space-between;
- align-items: center;
- margin-bottom: 16px;
- h4 {
- margin: 0;
- color: #2c3e50;
- font-size: 16px;
- font-weight: 600;
- }
- .progress-percentage {
- font-size: 18px;
- font-weight: 700;
- color: #3498db;
- }
- }
- .progress-bar {
- width: 100%;
- height: 8px;
- background: #e9ecef;
- border-radius: 4px;
- overflow: hidden;
- margin-bottom: 12px;
- .progress-fill {
- height: 100%;
- background: linear-gradient(90deg, #3498db 0%, #2ecc71 100%);
- border-radius: 4px;
- transition: width 0.3s ease;
- }
- }
- .progress-description {
- margin: 0;
- color: #6c757d;
- font-size: 14px;
- text-align: center;
- }
- }
- .proposal-display {
- .proposal-overview {
- background: linear-gradient(135deg, #fff 0%, #f8f9fa 100%);
- border-radius: 12px;
- padding: 24px;
- margin-bottom: 24px;
- border: 1px solid #e9ecef;
- box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
- .overview-header {
- display: flex;
- justify-content: space-between;
- align-items: flex-start;
- margin-bottom: 20px;
- h3 {
- margin: 0;
- color: #2c3e50;
- font-size: 20px;
- font-weight: 700;
- }
- .proposal-meta {
- display: flex;
- gap: 12px;
- align-items: center;
- .version {
- background: #e3f2fd;
- color: #1976d2;
- padding: 4px 12px;
- border-radius: 16px;
- font-size: 12px;
- font-weight: 600;
- }
- .feasibility-score {
- background: #e8f5e8;
- color: #2e7d32;
- padding: 4px 12px;
- border-radius: 16px;
- font-size: 12px;
- font-weight: 600;
- }
- }
- }
- .quick-summary {
- display: grid;
- grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
- gap: 16px;
- .summary-item {
- display: flex;
- flex-direction: column;
- gap: 4px;
- .label {
- font-size: 12px;
- color: #6c757d;
- font-weight: 600;
- text-transform: uppercase;
- letter-spacing: 0.5px;
- }
- .value {
- font-size: 14px;
- color: #2c3e50;
- font-weight: 500;
- line-height: 1.4;
- }
- }
- }
- }
- .proposal-details {
- .detail-section {
- background: #fff;
- border-radius: 12px;
- padding: 24px;
- margin-bottom: 20px;
- border: 1px solid #e9ecef;
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04);
- .section-header {
- display: flex;
- justify-content: space-between;
- align-items: center;
- margin-bottom: 20px;
- padding-bottom: 12px;
- border-bottom: 2px solid #f8f9fa;
- h4 {
- margin: 0;
- color: #2c3e50;
- font-size: 18px;
- font-weight: 700;
- }
- .section-count,
- .style-name,
- .harmony-type,
- .total-area,
- .total-budget {
- background: #f8f9fa;
- color: #495057;
- padding: 6px 12px;
- border-radius: 20px;
- font-size: 13px;
- font-weight: 600;
- }
- }
- // 材质网格样式
- .materials-grid {
- display: grid;
- grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
- gap: 16px;
- .material-card {
- background: #f8f9fa;
- border-radius: 8px;
- padding: 16px;
- border-left: 4px solid #dee2e6;
- transition: all 0.3s ease;
- &.primary {
- border-left-color: #28a745;
- background: linear-gradient(135deg, #f8fff9 0%, #e8f5e8 100%);
- }
- &.secondary {
- border-left-color: #ffc107;
- background: linear-gradient(135deg, #fffdf8 0%, #fff3cd 100%);
- }
- &:hover {
- transform: translateY(-2px);
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
- }
- .material-header {
- display: flex;
- justify-content: space-between;
- align-items: center;
- margin-bottom: 12px;
- h5 {
- margin: 0;
- color: #2c3e50;
- font-size: 16px;
- font-weight: 600;
- }
- .usage-percentage {
- background: #007bff;
- color: white;
- padding: 4px 8px;
- border-radius: 12px;
- font-size: 12px;
- font-weight: 700;
- }
- }
- .material-specs {
- margin-bottom: 12px;
- .spec-item {
- display: flex;
- justify-content: space-between;
- margin-bottom: 6px;
- .spec-label {
- color: #6c757d;
- font-size: 13px;
- font-weight: 500;
- }
- .spec-value {
- color: #2c3e50;
- font-size: 13px;
- font-weight: 600;
- }
- }
- }
- .material-properties {
- display: flex;
- gap: 8px;
- flex-wrap: wrap;
- .property-tag {
- background: #e9ecef;
- color: #495057;
- padding: 4px 8px;
- border-radius: 12px;
- font-size: 11px;
- font-weight: 500;
- }
- }
- }
- }
- // 设计风格样式
- .style-elements {
- margin-bottom: 20px;
- .style-element {
- background: #f8f9fa;
- border-radius: 8px;
- padding: 16px;
- margin-bottom: 12px;
- .element-header {
- display: flex;
- justify-content: space-between;
- align-items: center;
- margin-bottom: 8px;
- .element-name {
- font-weight: 600;
- color: #2c3e50;
- font-size: 14px;
- }
- .influence-score {
- background: #007bff;
- color: white;
- padding: 2px 8px;
- border-radius: 10px;
- font-size: 12px;
- font-weight: 600;
- }
- }
- .element-description {
- color: #6c757d;
- font-size: 13px;
- margin-bottom: 8px;
- line-height: 1.4;
- }
- .influence-bar {
- width: 100%;
- height: 4px;
- background: #e9ecef;
- border-radius: 2px;
- overflow: hidden;
- .influence-fill {
- height: 100%;
- background: linear-gradient(90deg, #007bff 0%, #28a745 100%);
- border-radius: 2px;
- transition: width 0.3s ease;
- }
- }
- }
- }
- .style-characteristics {
- display: grid;
- grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
- gap: 12px;
- .characteristic-item {
- background: #f8f9fa;
- padding: 12px;
- border-radius: 8px;
- text-align: center;
- border: 2px solid transparent;
- &.high {
- border-color: #28a745;
- background: linear-gradient(135deg, #f8fff9 0%, #e8f5e8 100%);
- }
- &.medium {
- border-color: #ffc107;
- background: linear-gradient(135deg, #fffdf8 0%, #fff3cd 100%);
- }
- .char-feature {
- display: block;
- font-size: 12px;
- color: #6c757d;
- font-weight: 600;
- margin-bottom: 4px;
- }
- .char-value {
- display: block;
- font-size: 14px;
- color: #2c3e50;
- font-weight: 700;
- }
- }
- }
- // 色彩方案样式
- .color-palette {
- display: grid;
- grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
- gap: 16px;
- margin-bottom: 20px;
- .color-item {
- background: #fff;
- border-radius: 8px;
- padding: 16px;
- border: 1px solid #e9ecef;
- transition: all 0.3s ease;
- &.dominant {
- border-color: #007bff;
- box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.1);
- }
- &.accent {
- border-color: #28a745;
- box-shadow: 0 0 0 2px rgba(40, 167, 69, 0.1);
- }
- &:hover {
- transform: translateY(-2px);
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
- }
- .color-swatch {
- width: 100%;
- height: 60px;
- border-radius: 6px;
- margin-bottom: 12px;
- border: 1px solid rgba(0, 0, 0, 0.1);
- }
- .color-info {
- text-align: center;
- margin-bottom: 8px;
- .color-name {
- font-weight: 600;
- color: #2c3e50;
- font-size: 14px;
- margin-bottom: 4px;
- }
- .color-percentage {
- font-size: 18px;
- font-weight: 700;
- color: #007bff;
- margin-bottom: 4px;
- }
- .color-role {
- font-size: 11px;
- color: #6c757d;
- text-transform: uppercase;
- letter-spacing: 0.5px;
- }
- }
- .color-codes {
- display: flex;
- flex-direction: column;
- gap: 2px;
- .hex-code,
- .rgb-code {
- font-family: 'Courier New', monospace;
- font-size: 11px;
- color: #6c757d;
- text-align: center;
- }
- }
- }
- }
- .color-psychology {
- display: grid;
- grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
- gap: 16px;
- .psychology-item {
- background: #f8f9fa;
- padding: 12px;
- border-radius: 8px;
- display: flex;
- flex-direction: column;
- gap: 4px;
- .label {
- font-size: 12px;
- color: #6c757d;
- font-weight: 600;
- }
- .value {
- font-size: 14px;
- color: #2c3e50;
- font-weight: 600;
- }
- }
- }
- // 空间布局样式
- .space-dimensions {
- display: grid;
- grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
- gap: 12px;
- margin-bottom: 20px;
- .dimension-item {
- background: #f8f9fa;
- padding: 12px;
- border-radius: 8px;
- text-align: center;
- .dim-label {
- display: block;
- font-size: 12px;
- color: #6c757d;
- font-weight: 600;
- margin-bottom: 4px;
- }
- .dim-value {
- display: block;
- font-size: 16px;
- color: #2c3e50;
- font-weight: 700;
- }
- }
- }
- .functional-zones {
- display: grid;
- grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
- gap: 16px;
- .zone-card {
- background: #f8f9fa;
- border-radius: 8px;
- padding: 16px;
- border-left: 4px solid #007bff;
- .zone-header {
- display: flex;
- justify-content: space-between;
- align-items: center;
- margin-bottom: 12px;
- h5 {
- margin: 0;
- color: #2c3e50;
- font-size: 16px;
- font-weight: 600;
- }
- .zone-stats {
- display: flex;
- gap: 8px;
- .zone-area {
- background: #007bff;
- color: white;
- padding: 4px 8px;
- border-radius: 12px;
- font-size: 12px;
- font-weight: 600;
- }
- .zone-percentage {
- background: #28a745;
- color: white;
- padding: 4px 8px;
- border-radius: 12px;
- font-size: 12px;
- font-weight: 600;
- }
- }
- }
- .zone-requirements,
- .zone-furniture {
- margin-bottom: 12px;
- .requirements-label,
- .furniture-label {
- font-size: 12px;
- color: #6c757d;
- font-weight: 600;
- margin-bottom: 6px;
- }
- .requirements-tags {
- display: flex;
- gap: 6px;
- flex-wrap: wrap;
- .requirement-tag {
- background: #e9ecef;
- color: #495057;
- padding: 4px 8px;
- border-radius: 12px;
- font-size: 11px;
- font-weight: 500;
- }
- }
- .furniture-list {
- color: #2c3e50;
- font-size: 13px;
- line-height: 1.4;
- }
- }
- }
- }
- // 预算与时间线样式
- .budget-breakdown {
- margin-bottom: 20px;
- .budget-item {
- background: #f8f9fa;
- border-radius: 8px;
- padding: 16px;
- margin-bottom: 12px;
- display: grid;
- grid-template-columns: 1fr auto auto;
- gap: 16px;
- align-items: center;
- .budget-category {
- font-weight: 600;
- color: #2c3e50;
- font-size: 14px;
- }
- .budget-amount {
- font-weight: 700;
- color: #28a745;
- font-size: 16px;
- }
- .budget-percentage {
- background: #007bff;
- color: white;
- padding: 4px 8px;
- border-radius: 12px;
- font-size: 12px;
- font-weight: 600;
- }
- .budget-bar {
- grid-column: 1 / -1;
- width: 100%;
- height: 6px;
- background: #e9ecef;
- border-radius: 3px;
- overflow: hidden;
- margin-top: 8px;
- .budget-fill {
- height: 100%;
- background: linear-gradient(90deg, #28a745 0%, #20c997 100%);
- border-radius: 3px;
- transition: width 0.3s ease;
- }
- }
- }
- }
- .timeline {
- display: flex;
- gap: 12px;
- flex-wrap: wrap;
- .timeline-item {
- background: #f8f9fa;
- padding: 12px 16px;
- border-radius: 8px;
- text-align: center;
- flex: 1;
- min-width: 120px;
- .phase-name {
- font-size: 13px;
- color: #2c3e50;
- font-weight: 600;
- margin-bottom: 4px;
- }
- .phase-duration {
- font-size: 14px;
- color: #007bff;
- font-weight: 700;
- }
- }
- }
- }
- }
- .proposal-actions {
- display: flex;
- gap: 12px;
- justify-content: center;
- padding: 20px 0;
- .confirm-btn,
- .adjust-btn {
- padding: 12px 24px;
- border-radius: 8px;
- font-weight: 600;
- font-size: 14px;
- border: none;
- cursor: pointer;
- transition: all 0.3s ease;
- &.primary {
- background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
- color: white;
- &:hover {
- transform: translateY(-2px);
- box-shadow: 0 4px 12px rgba(40, 167, 69, 0.3);
- }
- }
- &.secondary {
- background: #f8f9fa;
- color: #6c757d;
- border: 1px solid #dee2e6;
- &:hover {
- background: #e9ecef;
- color: #495057;
- }
- }
- }
- }
- }
- }
- /* 活动阶段卡片:浅红底色突显(更显眼版) */
- .delivery-col.active,
- .vertical-stage-block.active {
- background: #ffeaea; /* 比 #fff2f0 更显眼 */
- border-color: #ffccc7; /* 维持柔和的红系边框 */
- box-shadow: 0 8px 22px rgba(255, 85, 62, 0.12), 0 2px 8px rgba(255, 85, 62, 0.10);
- position: relative; /* 提供定位上下文给badge */
- padding-right: $ios-spacing-lg; /* 让出badge空间,避免内容压贴 */
- }
- /* 活动阶段标题与圆点颜色呼应 */
- .delivery-col.active .delivery-stage-header h3,
- .vertical-stage-block.active .vertical-stage-header h3 { color: #ff4d4f; }
- .delivery-col.active .dot,
- .vertical-stage-block.active .dot { background: #ff4d4f; }
- /* 右上角状态badge:进行中 */
- .delivery-col.active::after,
- .vertical-stage-block.active::after {
- content: '进行中';
- position: absolute;
- top: 8px;
- right: 8px;
- padding: 2px 8px;
- background: #ff4d4f;
- color: #fff;
- border-radius: 999px;
- font-size: 12px;
- line-height: 1.4;
- font-weight: 600;
- box-shadow: 0 4px 10px rgba(255, 77, 79, 0.25);
- }
- /* 阶段卡片横向排列(按板块的阶段数量自适应列数) */
- .stage-progress-container {
- display: grid !important;
- gap: 8px !important; // 从10px进一步减少到8px
- align-items: stretch !important; // 保证同一行的卡片等高
- margin-top: 0 !important; // 删除标题后,移除上边距以优化空间利用
-
- /* 针对交付执行阶段的四个卡片进行特殊处理 */
- &:has(.vertical-stage-block:nth-child(4):last-child) {
- /* 当有且仅有4个卡片时,强制并排显示 */
- grid-template-columns: repeat(4, 1fr) !important;
-
- /* 笔记本端适配(1366px及以上) */
- @media (min-width: 1366px) {
- grid-template-columns: repeat(4, 1fr) !important;
- gap: 12px !important; // 从16px减少到12px
- }
-
- /* 24寸PC端适配(1920px及以上) */
- @media (min-width: 1920px) {
- grid-template-columns: repeat(4, 1fr) !important;
- gap: 16px !important; // 从20px减少到16px
- }
-
- /* 较小屏幕的降级处理(小于1366px) */
- @media (max-width: 1365px) {
- grid-template-columns: repeat(2, 1fr) !important;
- gap: 10px !important; // 从12px减少到10px
- }
- }
-
- /* 其他情况保持原有的自适应布局 */
- &:not(:has(.vertical-stage-block:nth-child(4):last-child)) {
- grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
- gap: 10px !important; // 添加间距控制
- }
- }
- .vertical-stage-block {
- display: flex !important;
- flex-direction: column !important;
- height: 100% !important;
- padding: 8px !important; // 从10px进一步减少到8px
- background: white !important;
- border-radius: 8px !important;
- border: 1px solid #e9ecef !important;
- box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08) !important;
-
- /* 确保卡片内容在并排显示时保持可读性 */
- min-width: 0 !important; /* 防止内容溢出 */
-
- /* 针对四个卡片并排时的特殊样式 */
- .stage-progress-container:has(.vertical-stage-block:nth-child(4):last-child) & {
- /* 笔记本端和PC端的内容优化 */
- @media (min-width: 1366px) {
- padding: 12px !important; // 从16px减少到12px
- min-height: 280px !important; /* 从300px减少到280px */
- }
-
- /* 24寸PC端的内容优化 */
- @media (min-width: 1920px) {
- padding: 16px !important; // 从20px减少到16px
- min-height: 300px !important; // 从320px减少到300px
- }
-
- /* 较小屏幕时保持紧凑布局 */
- @media (max-width: 1365px) {
- padding: 10px !important; // 从12px减少到10px
- min-height: 260px !important; // 从280px减少到260px
- }
- }
- }
- .vertical-stage-header {
- display: flex !important;
- align-items: center !important;
- gap: 8px !important;
- margin-bottom: 8px !important;
- padding-bottom: 6px !important;
- border-bottom: 1px solid #f1f3f4 !important;
- }
- .vertical-stage-header h3 {
- font-size: 13px !important;
- font-weight: 600 !important;
- color: #495057 !important;
- margin: 0 !important;
- }
- .vertical-stage-header .dot {
- width: 8px !important;
- height: 8px !important;
- border-radius: 50% !important;
- background: #dee2e6 !important;
- flex-shrink: 0 !important;
- }
- .vertical-stage-header .dot.completed {
- background: #28a745 !important;
- }
- .vertical-stage-header .dot.active {
- background: #ff4d4f !important;
- }
- .vertical-stage-body {
- display: flex !important;
- flex-direction: column !important;
- gap: 8px !important;
- flex: 1 1 auto !important;
- }
- /* 活动阶段卡片优化 */
- .vertical-stage-block.active {
- background: #fff2f0 !important;
- border-color: #ffccc7 !important;
- box-shadow: 0 2px 8px rgba(255, 77, 79, 0.2) !important;
- }
- .vertical-stage-block.active .vertical-stage-header h3 {
- color: #ff4d4f !important;
- }
- .vertical-stage-block.active .dot {
- background: #ff4d4f !important;
- }
- /* 订单创建阶段完成后的绿色高亮 */
- .vertical-stage-block.completed {
- background: #f6ffed !important;
- border-color: #b7eb8f !important;
- box-shadow: 0 2px 8px rgba(183, 235, 143, 0.3) !important;
- }
- .vertical-stage-block.completed .vertical-stage-header h3 {
- color: #389e0d !important;
- font-weight: 600 !important;
- }
- .vertical-stage-block.completed .dot {
- background: #52c41a !important;
- }
- /* 需求沟通阶段激活时的高亮 */
- .vertical-stage-block[id="stage-requirements-talk"].active {
- background: linear-gradient(135deg, #fff2f0 0%, #ffe6e6 100%) !important;
- border-color: #ff7875 !important;
- box-shadow: 0 4px 16px rgba(255, 77, 79, 0.2) !important;
- transform: translateY(-2px) !important;
- transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
- }
- .vertical-stage-block[id="stage-requirements-talk"].active .vertical-stage-header h3 {
- color: #ff4d4f !important;
- font-weight: 700 !important;
- }
- .vertical-stage-block[id="stage-requirements-talk"].active .dot {
- background: #ff4d4f !important;
- box-shadow: 0 0 0 4px rgba(255, 77, 79, 0.2) !important;
- }
- /* 新增:三板块垂直高度填充 —— 客户信息、需求沟通、方案确认 */
- /* 让主布局的两列在同一行内等高伸展 */
- .progress-tab-content > .main-content-layout {
- align-items: stretch !important;
- }
- /* 客户信息卡片设定统一的最低高度以填补左侧空白 - 仅在展开状态下应用 */
- .left-column .project-info-card.card:not(.collapsed-card) {
- min-height: 420px !important;
- }
- /* 当右侧仅展示 需求沟通 + 方案确认 两个阶段时,强制两列并排,设定统一最低高度 */
- .right-column .stage-progress-container:has(#stage-requirements-talk):has(#stage-proposal-confirm) {
- grid-template-columns: repeat(2, 1fr) !important;
- }
- .right-column .stage-progress-container:has(#stage-requirements-talk):has(#stage-proposal-confirm) .vertical-stage-block {
- min-height: 420px !important;
- }
- /* 根据屏幕尺寸微调高度,保证在大屏下更饱满,在小屏下不压迫 */
- @media (min-width: 1920px) {
- .left-column .project-info-card.card:not(.collapsed-card) { min-height: 480px !important; }
- .right-column .stage-progress-container:has(#stage-requirements-talk):has(#stage-proposal-confirm) .vertical-stage-block { min-height: 480px !important; }
- }
- @media (max-width: 1365px) {
- .left-column .project-info-card.card:not(.collapsed-card) { min-height: 360px !important; }
- .right-column .stage-progress-container:has(#stage-requirements-talk):has(#stage-proposal-confirm) .vertical-stage-block { min-height: 360px !important; }
- /* 方案确认卡片样式 - 与客户信息卡片保持一致 */
- /* 方案确认卡片样式 - 独立样式,不继承通用卡片样式 */
- .left-column .proposal-confirm-card {
- background-color: white !important;
- border-radius: 16px !important; /* 与客户信息卡片区分 */
- padding: 28px !important; /* 更大的内边距 */
- box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12) !important; /* 更深的阴影 */
- border: 2px solid #f0f0f0 !important; /* 更粗的边框 */
- margin-top: 24px !important;
- margin-bottom: 24px !important;
- max-height: 650px !important;
- overflow-y: auto !important;
- position: relative !important;
-
- /* 添加独特的视觉标识 */
- &::before {
- content: "" !important;
- position: absolute !important;
- top: 0 !important;
- left: 0 !important;
- right: 0 !important;
- height: 6px !important;
- background: linear-gradient(90deg, #4CAF50, #2196F3) !important;
- border-top-left-radius: 14px !important;
- border-top-right-radius: 14px !important;
- }
- }
- /* 方案确认卡片头部样式 - 独立设计 */
- .left-column .proposal-confirm-card .card-header {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- margin-bottom: 24px !important;
- padding-bottom: 20px !important;
- border-bottom: 2px solid #f5f5f5 !important; /* 更粗的分割线 */
- background: linear-gradient(135deg, #fafafa 0%, #ffffff 100%) !important;
- border-radius: 12px !important;
- padding: 16px 20px !important;
- margin: -8px -8px 24px -8px !important;
- }
- /* 方案确认卡片标题样式 - 独立设计 */
- .left-column .proposal-confirm-card .card-header h2 {
- margin: 0 !important;
- font-size: 22px !important; /* 更大的字体 */
- font-weight: 700 !important; /* 更粗的字体 */
- color: #2c3e50 !important; /* 独特的颜色 */
- text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) !important;
- line-height: 1.4 !important;
- }
- .left-column .proposal-confirm-card .sync-status {
- display: flex !important;
- align-items: center !important;
- font-size: 13px !important;
- color: #8c8c8c !important;
- font-weight: 500 !important;
- }
- .left-column .proposal-confirm-card .info-grid {
- display: grid !important;
- grid-template-columns: 1fr 1fr !important;
- gap: 8px !important;
- margin-bottom: 16px !important;
- }
- .left-column .proposal-confirm-card .info-item {
- display: flex !important;
- flex-direction: column !important;
- padding: 8px !important;
- background: #f8f9fa !important;
- border-radius: 6px !important;
- border: 1px solid #e9ecef !important;
- font-size: 12px !important;
- }
- .left-column .proposal-confirm-card .info-item label {
- font-weight: 500 !important;
- color: #6c757d !important;
- margin-bottom: 4px !important;
- font-size: 11px !important;
- }
- .left-column .proposal-confirm-card .info-item span {
- color: #212529 !important;
- font-weight: 600 !important;
- font-size: 12px !important;
- }
- .left-column .proposal-confirm-card .color-preview {
- width: 16px !important;
- height: 16px !important;
- border-radius: 4px !important;
- border: 1px solid #ddd !important;
- margin-top: 4px !important;
- }
- .left-column .proposal-confirm-card .proposal-actions {
- margin-top: 16px !important;
- padding-top: 12px !important;
- border-top: 1px solid #f0f0f0 !important;
- text-align: center !important;
- }
- .left-column .proposal-confirm-card .confirm-btn {
- background: #1890ff !important;
- color: white !important;
- border: none !important;
- padding: 8px 24px !important;
- border-radius: 6px !important;
- font-size: 14px !important;
- font-weight: 500 !important;
- cursor: pointer !important;
- transition: background-color 0.3s ease !important;
- }
- .left-column .proposal-confirm-card .confirm-btn:hover {
- background: #40a9ff !important;
- }
- .left-column .proposal-confirm-card .waiting-state {
- text-align: center !important;
- padding: 24px 16px !important;
- color: #8c8c8c !important;
- }
- .left-column .proposal-confirm-card .waiting-content h5 {
- margin: 0 0 8px 0 !important;
- font-size: 16px !important;
- font-weight: 600 !important;
- color: #595959 !important;
- }
- .left-column .proposal-confirm-card .waiting-content p {
- margin: 0 0 12px 0 !important;
- font-size: 14px !important;
- line-height: 1.4 !important;
- }
- /* 方案展示区域样式 */
- .left-column .proposal-confirm-card .proposal-display {
- margin-top: 16px !important;
- }
- .left-column .proposal-confirm-card .proposal-overview {
- margin-bottom: 24px !important;
- padding: 16px !important;
- background: #f8f9fa !important;
- border-radius: 8px !important;
- border: 1px solid #e9ecef !important;
- }
- .left-column .proposal-confirm-card .overview-header {
- display: flex !important;
- justify-content: space-between !important;
- align-items: flex-start !important;
- margin-bottom: 16px !important;
- }
- .left-column .proposal-confirm-card .overview-header h3 {
- margin: 0 !important;
- font-size: 18px !important;
- font-weight: 600 !important;
- color: #262626 !important;
- line-height: 1.4 !important;
- }
- .left-column .proposal-confirm-card .proposal-meta {
- display: flex !important;
- flex-direction: column !important;
- align-items: flex-end !important;
- gap: 4px !important;
- }
- .left-column .proposal-confirm-card .proposal-meta .version,
- .left-column .proposal-confirm-card .proposal-meta .feasibility-score {
- font-size: 12px !important;
- padding: 4px 8px !important;
- border-radius: 4px !important;
- font-weight: 500 !important;
- }
- .left-column .proposal-confirm-card .proposal-meta .version {
- background: #e6f7ff !important;
- color: #1890ff !important;
- }
- .left-column .proposal-confirm-card .proposal-meta .feasibility-score {
- background: #f6ffed !important;
- color: #52c41a !important;
- }
- .left-column .proposal-confirm-card .quick-summary {
- display: grid !important;
- grid-template-columns: 1fr !important;
- gap: 8px !important;
- }
- .left-column .proposal-confirm-card .summary-item {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- padding: 8px 12px !important;
- background: white !important;
- border-radius: 6px !important;
- border: 1px solid #e9ecef !important;
- }
- .left-column .proposal-confirm-card .summary-item .label {
- font-size: 13px !important;
- color: #6c757d !important;
- font-weight: 500 !important;
- }
- .left-column .proposal-confirm-card .summary-item .value {
- font-size: 13px !important;
- color: #212529 !important;
- font-weight: 600 !important;
- }
- /* 详细方案内容样式 */
- .left-column .proposal-confirm-card .proposal-details {
- margin-top: 20px !important;
- }
- .left-column .proposal-confirm-card .detail-section {
- margin-bottom: 24px !important;
- padding: 16px !important;
- background: white !important;
- border: 1px solid #e9ecef !important;
- border-radius: 8px !important;
- }
- .left-column .proposal-confirm-card .section-header {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- margin-bottom: 16px !important;
- padding-bottom: 12px !important;
- border-bottom: 1px solid #f0f0f0 !important;
- }
- .left-column .proposal-confirm-card .section-header h4 {
- margin: 0 !important;
- font-size: 16px !important;
- font-weight: 600 !important;
- color: #262626 !important;
- line-height: 1.4 !important;
- }
- .left-column .proposal-confirm-card .section-count,
- .left-column .proposal-confirm-card .style-name,
- .left-column .proposal-confirm-card .harmony-type,
- .left-column .proposal-confirm-card .total-area {
- font-size: 12px !important;
- padding: 4px 8px !important;
- background: #f0f0f0 !important;
- color: #595959 !important;
- border-radius: 4px !important;
- font-weight: 500 !important;
- }
- /* 材质网格样式 */
- .left-column .proposal-confirm-card .materials-grid {
- display: grid !important;
- grid-template-columns: 1fr !important;
- gap: 12px !important;
- }
- .left-column .proposal-confirm-card .material-card {
- padding: 12px !important;
- background: #f8f9fa !important;
- border: 1px solid #e9ecef !important;
- border-radius: 6px !important;
- }
- .left-column .proposal-confirm-card .material-header {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- margin-bottom: 8px !important;
- }
- .left-column .proposal-confirm-card .material-header h5 {
- margin: 0 !important;
- font-size: 14px !important;
- font-weight: 600 !important;
- color: #262626 !important;
- }
- .left-column .proposal-confirm-card .usage-percentage {
- font-size: 12px !important;
- font-weight: 600 !important;
- color: #1890ff !important;
- }
- .left-column .proposal-confirm-card .material-specs {
- display: grid !important;
- grid-template-columns: 1fr 1fr !important;
- gap: 6px !important;
- margin-bottom: 8px !important;
- }
- .left-column .proposal-confirm-card .spec-item {
- display: flex !important;
- justify-content: space-between !important;
- font-size: 11px !important;
- }
- .left-column .proposal-confirm-card .spec-label {
- color: #6c757d !important;
- font-weight: 500 !important;
- }
- .left-column .proposal-confirm-card .spec-value {
- color: #212529 !important;
- font-weight: 600 !important;
- }
- .left-column .proposal-confirm-card .material-properties {
- display: flex !important;
- gap: 6px !important;
- flex-wrap: wrap !important;
- }
- .left-column .proposal-confirm-card .property-tag {
- font-size: 10px !important;
- padding: 2px 6px !important;
- background: #e6f7ff !important;
- color: #1890ff !important;
- border-radius: 3px !important;
- font-weight: 500 !important;
- }
- /* 设计风格特征样式 */
- .left-column .proposal-confirm-card .style-elements {
- margin-bottom: 16px !important;
- }
- .left-column .proposal-confirm-card .style-element {
- margin-bottom: 12px !important;
- padding: 10px !important;
- background: #f8f9fa !important;
- border-radius: 6px !important;
- border: 1px solid #e9ecef !important;
- }
- .left-column .proposal-confirm-card .element-header {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- margin-bottom: 6px !important;
- }
- .left-column .proposal-confirm-card .element-name {
- font-size: 13px !important;
- font-weight: 600 !important;
- color: #262626 !important;
- }
- .left-column .proposal-confirm-card .influence-score {
- font-size: 12px !important;
- font-weight: 600 !important;
- color: #1890ff !important;
- }
- .left-column .proposal-confirm-card .element-description {
- font-size: 11px !important;
- color: #6c757d !important;
- margin-bottom: 6px !important;
- line-height: 1.4 !important;
- }
- .left-column .proposal-confirm-card .influence-bar {
- height: 4px !important;
- background: #e9ecef !important;
- border-radius: 2px !important;
- overflow: hidden !important;
- }
- .left-column .proposal-confirm-card .influence-fill {
- height: 100% !important;
- background: #1890ff !important;
- transition: width 0.3s ease !important;
- }
- .left-column .proposal-confirm-card .style-characteristics {
- display: grid !important;
- grid-template-columns: 1fr !important;
- gap: 6px !important;
- }
- .left-column .proposal-confirm-card .characteristic-item {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- padding: 6px 10px !important;
- background: white !important;
- border-radius: 4px !important;
- border: 1px solid #e9ecef !important;
- font-size: 11px !important;
- }
- .left-column .proposal-confirm-card .char-feature {
- color: #6c757d !important;
- font-weight: 500 !important;
- }
- .left-column .proposal-confirm-card .char-value {
- color: #212529 !important;
- font-weight: 600 !important;
- }
- /* 色彩搭配方案样式 */
- .left-column .proposal-confirm-card .color-palette {
- display: grid !important;
- grid-template-columns: 1fr !important;
- gap: 10px !important;
- margin-bottom: 16px !important;
- }
- .left-column .proposal-confirm-card .color-item {
- display: flex !important;
- align-items: center !important;
- padding: 10px !important;
- background: #f8f9fa !important;
- border-radius: 6px !important;
- border: 1px solid #e9ecef !important;
- gap: 12px !important;
- }
- .left-column .proposal-confirm-card .color-swatch {
- width: 32px !important;
- height: 32px !important;
- border-radius: 4px !important;
- border: 1px solid #ddd !important;
- flex-shrink: 0 !important;
- }
- .left-column .proposal-confirm-card .color-info {
- flex: 1 !important;
- display: flex !important;
- flex-direction: column !important;
- gap: 2px !important;
- }
- .left-column .proposal-confirm-card .color-name {
- font-size: 13px !important;
- font-weight: 600 !important;
- color: #262626 !important;
- }
- .left-column .proposal-confirm-card .color-percentage {
- font-size: 12px !important;
- font-weight: 600 !important;
- color: #1890ff !important;
- }
- .left-column .proposal-confirm-card .color-role {
- font-size: 11px !important;
- color: #6c757d !important;
- }
- .left-column .proposal-confirm-card .color-codes {
- display: flex !important;
- flex-direction: column !important;
- gap: 2px !important;
- font-size: 10px !important;
- color: #8c8c8c !important;
- font-family: monospace !important;
- }
- .left-column .proposal-confirm-card .color-psychology {
- display: grid !important;
- grid-template-columns: 1fr 1fr !important;
- gap: 8px !important;
- }
- .left-column .proposal-confirm-card .psychology-item {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- padding: 8px 10px !important;
- background: white !important;
- border-radius: 4px !important;
- border: 1px solid #e9ecef !important;
- font-size: 11px !important;
- }
- .left-column .proposal-confirm-card .psychology-item .label {
- color: #6c757d !important;
- font-weight: 500 !important;
- }
- .left-column .proposal-confirm-card .psychology-item .value {
- color: #212529 !important;
- font-weight: 600 !important;
- }
- /* 空间尺寸数据样式 */
- .left-column .proposal-confirm-card .space-dimensions {
- display: grid !important;
- grid-template-columns: 1fr 1fr !important;
- gap: 8px !important;
- margin-bottom: 16px !important;
- }
- .left-column .proposal-confirm-card .dimension-item {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- padding: 8px 10px !important;
- background: #f8f9fa !important;
- border-radius: 4px !important;
- border: 1px solid #e9ecef !important;
- font-size: 11px !important;
- }
- .left-column .proposal-confirm-card .dim-label {
- color: #6c757d !important;
- font-weight: 500 !important;
- }
- .left-column .proposal-confirm-card .dim-value {
- color: #212529 !important;
- font-weight: 600 !important;
- }
- .left-column .proposal-confirm-card .functional-zones {
- display: grid !important;
- grid-template-columns: 1fr !important;
- gap: 10px !important;
- }
- .left-column .proposal-confirm-card .zone-card {
- padding: 12px !important;
- background: #f8f9fa !important;
- border-radius: 6px !important;
- border: 1px solid #e9ecef !important;
- }
- .left-column .proposal-confirm-card .zone-header {
- display: flex !important;
- justify-content: space-between !important;
- align-items: center !important;
- margin-bottom: 8px !important;
- }
- .left-column .proposal-confirm-card .zone-header h5 {
- margin: 0 !important;
- font-size: 14px !important;
- font-weight: 600 !important;
- color: #262626 !important;
- }
- .left-column .proposal-confirm-card .zone-stats {
- display: flex !important;
- gap: 8px !important;
- font-size: 11px !important;
- }
- .left-column .proposal-confirm-card .zone-area {
- color: #1890ff !important;
- font-weight: 600 !important;
- }
- .left-column .proposal-confirm-card .zone-percentage {
- color: #6c757d !important;
- font-weight: 500 !important;
- }
- }
|