style: 对齐批量工具页视觉风格与原型
All checks were successful
Build and Deploy TenantUI / build-and-deploy (push) Successful in 53s

This commit is contained in:
2026-02-26 13:25:25 +08:00
parent b97ee93a1b
commit 08d8a0e94c
4 changed files with 54 additions and 17 deletions

View File

@@ -30,7 +30,12 @@ const emit = defineEmits<Emits>();
</div> </div>
<h3 class="pbt-card-name">{{ card.title }}</h3> <h3 class="pbt-card-name">{{ card.title }}</h3>
<p class="pbt-card-desc">{{ card.description }}</p> <p class="pbt-card-desc">{{ card.description }}</p>
<Button type="primary" size="small" @click="emit('toggle', card.key)"> <Button
type="primary"
block
class="pbt-card-action"
@click="emit('toggle', card.key)"
>
{{ props.activeTool === card.key ? '收起' : '开始操作' }} {{ props.activeTool === card.key ? '收起' : '开始操作' }}
</Button> </Button>
</article> </article>

View File

@@ -2,50 +2,63 @@
.pbt-grid { .pbt-grid {
display: grid; display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px; gap: 14px;
} }
.pbt-card { .pbt-card {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 10px; gap: 12px;
padding: 18px; min-height: 178px;
padding: 20px 22px 18px;
background: #fff; background: #fff;
border-radius: 12px; border: 1px solid #e5eaf3;
box-shadow: var(--pbt-shadow-sm); border-radius: 14px;
box-shadow: 0 1px 2px rgb(17 24 39 / 3%);
transition: var(--pbt-transition); transition: var(--pbt-transition);
} }
.pbt-card:hover, .pbt-card:hover,
.pbt-card.active { .pbt-card.active {
box-shadow: var(--pbt-shadow-md); border-color: #c7dbff;
transform: translateY(-1px); box-shadow: 0 8px 24px rgb(22 119 255 / 10%);
transform: translateY(-2px);
} }
.pbt-card-icon { .pbt-card-icon {
display: inline-flex; display: inline-flex;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
width: 40px; width: 36px;
height: 40px; height: 36px;
font-size: 20px; font-size: 18px;
border-radius: 10px; border-radius: 10px;
} }
.pbt-card-name { .pbt-card-name {
margin: 0; margin: 0;
font-size: 15px; font-size: 24px;
font-weight: 600; font-weight: 700;
color: #1a1a2e; line-height: 1.25;
color: #111827;
} }
.pbt-card-desc { .pbt-card-desc {
margin: 0; margin: 0;
font-size: 13px; min-height: 28px;
line-height: 1.5; font-size: 15px;
line-height: 1.4;
color: #6b7280; color: #6b7280;
} }
.pbt-card-action {
height: 36px;
margin-top: auto;
font-size: 15px;
font-weight: 600;
border-radius: 8px;
}
.pbt-card.is-orange .pbt-card-icon { .pbt-card.is-orange .pbt-card-icon {
color: #fa8c16; color: #fa8c16;
background: #fff7e6; background: #fff7e6;

View File

@@ -3,16 +3,30 @@
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 16px; gap: 16px;
max-width: 1120px; max-width: 1180px;
} }
.pbt-toolbar-card { .pbt-toolbar-card {
border-radius: 12px;
box-shadow: var(--pbt-shadow-sm); box-shadow: var(--pbt-shadow-sm);
} }
.pbt-toolbar-card .store-scope-toolbar {
gap: 14px;
}
.pbt-toolbar-card .store-scope-selector {
width: 300px;
}
.pbt-toolbar-card .store-scope-spacer {
flex: 1;
}
.pbt-toolbar-tip { .pbt-toolbar-tip {
font-size: 13px; font-size: 13px;
color: #9ca3af; color: #9ca3af;
white-space: nowrap;
} }
.pbt-empty-wrap { .pbt-empty-wrap {

View File

@@ -8,8 +8,13 @@
grid-template-columns: 1fr; grid-template-columns: 1fr;
} }
.pbt-toolbar-card .store-scope-selector {
width: 100%;
}
.pbt-toolbar-tip { .pbt-toolbar-tip {
width: 100%; width: 100%;
white-space: normal;
} }
.pbt-actions { .pbt-actions {