.notification-toast {
    position: fixed;
    max-width: 350px;
    z-index: 1060
}

.notification-toast.top-right {
    top: calc(70px + 15px);
    right: 15px
}

.notification-toast.top-left {
    top: calc(70px + 15px);
    left: 15px
}

.notification-toast.top-middle {
    top: calc(70px + 15px);
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
}

.notification-toast.bottom-right {
    bottom: 15px;
    right: 15px
}

.notification-toast.bottom-left {
    bottom: 15px;
    left: 15px
}

.notification-toast.bottom-middle {
    bottom: 15px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    -ms-transform: translateX(-50%)
}

.spinner-sm{
	width: 1.2rem;
    height: 1.2rem;
    border-width: 0.2em;
}

.question-list-a{
	display: block; font-size: 14px; margin-bottom: 2px; font-weight: 500; line-height: 1.2; margin-top: 0;
}

.question-locked-a{
	opacity: .6;
}

.text-indent-2{
	text-indent:2em;
}

.question-desc p{
	text-indent:2em;
}
.question-title{
	font-size:16px; font-weight:500;
}

.step-focus{
    color: #7888fc !important;
    font-weight: 500;
}

.step-li{
	padding:10px 0px !important;
}

table a {
    color: #5b5b5b;
    margin-right: 5px;
}

.basicElement:disabled:not(.disabledOnly) {
    background-color: #ffffff !important;
}


.basicElement[readonly]{
	background-color: #ffffff !important;
}

tr.selected{
	background-color:#f1f2fe;
}

.applyListCard a {
    padding: 10px 15px;
}

.applyListCard a:hover {
    border-radius: 10px;
    background-color: #f3f6f9;
    font-weight: 500;
}

a.disabled {
        pointer-events: none;
}

.eventGroupList a{
    color: #7e8299;}

    
    .YZUMemberBadge {
	display: inline-flex;
	justify-content: space-between;
	align-items: center;
	font-size: 1.2em;
}

.YZUMemberBadge .d-flex.flex-column span {
	font-size: 1em;
}

.YZUMemberBadge .d-flex.flex-column small {
	font-size: 0.8em;
	font-weight: 300;
}

.YZUMemberBadge a {
	display: flex;
	align-items: center;
	margin-left: 0.5rem; /* m-l-xxs */
}

.YZUMemberBadge a svg {
	height: 1em;
	width: 1em;
}
.air-datepicker {
	z-index: 9999 !important;
}

.attach-file-list {
	border: 1px solid #eaecf3;
	border-radius: 12px;
	background: linear-gradient(180deg, #ffffff 0%, #f8f9ff 100%);
	padding: 6px;
	margin-top: 10px;
}

.attach-file-list-compact {
	max-height: 150px;
	overflow-y: auto;
}

.attach-file-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	padding: 7px 8px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.86);
	border: 1px solid transparent;
	transition: border-color .15s ease, background-color .15s ease;
}

.attach-file-item + .attach-file-item {
	margin-top: 5px;
}

.attach-file-item:hover {
	border-color: #dfe3ff;
	background: #ffffff;
}

.attach-file-meta {
	display: flex;
	align-items: center;
	gap: 7px;
	min-width: 0;
}

.attach-file-index {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 24px;
	height: 24px;
	padding: 0 7px;
	border-radius: 999px;
	background: #eef1ff;
	color: #7888fc;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
}

.attach-file-name {
	color: #5b5b5b;
	font-size: 13px;
	font-weight: 500;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 145px;
}

.attach-file-actions {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	flex-shrink: 0;
}

.attach-file-action-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	padding: 0;
	border-radius: 9px;
	margin-right: 0;
}

.attach-file-list-compact .attach-file-item {
	padding: 5px 6px;
}

.attach-file-list-compact .attach-file-name {
	max-width: 72px;
	font-size: 12px;
}

.attach-file-list-compact .attach-file-action-btn {
	width: 26px;
	height: 26px;
}

.process-flow-card .card-body {
	padding: 24px 28px;
}

.process-flow-title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
	color: #5b5b5b;
}

.process-flow-title-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 12px;
	background: #eef1ff;
	color: #7888fc;
}

.process-flow {
	display: flex;
	align-items: stretch;
	gap: 10px;
}

.process-flow-step {
	flex: 1;
	min-width: 0;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 14px 16px;
	border: 1px solid #eaecf3;
	border-radius: 14px;
	background: linear-gradient(180deg, #ffffff 0%, #f8f9ff 100%);
}

.process-flow-step-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 42px;
	height: 42px;
	border-radius: 14px;
	background: #f1f3ff;
	color: #7888fc;
	font-size: 18px;
}

.process-flow-step h6 {
	margin: 0 0 3px;
	font-weight: 600;
	color: #3d3d3d;
}

.process-flow-step p {
	margin: 0;
	color: #7e8299;
	font-size: 12px;
	line-height: 1.35;
}

.process-flow-arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #b7bdd8;
	font-size: 16px;
}

@media (max-width: 992px) {
	.process-flow {
		flex-direction: column;
	}

	.process-flow-arrow {
		transform: rotate(90deg);
	}
}

@keyframes fadeSlideIn {
from { opacity:0;
	transform: translateY(20px) scale(0.98);
}

to {
	opacity: 1;
	transform: translateY(0) scale(1);
}

}
.fade-slide-in {
	animation: fadeSlideIn 0.4s ease-out;
}

@keyframes fadeSlideOut {
	from {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
	to {
		opacity: 0;
		transform: translateY(20px) scale(0.98);
	}
}

.fade-slide-out {
	animation: fadeSlideOut 0.3s ease-in forwards;
}

/* 通用表格状态标签 */
.table-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 5px 9px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
}

.table-status-neutral {
	color: #68758b;
	background: #edf0f4;
}

.table-status-primary {
	color: #315efb;
	background: #edf2ff;
}

.table-status-success {
	color: #117956;
	background: #e7f7f0;
}

.table-status-warning {
	color: #a86a0d;
	background: #fff4dc;
}

.table-status-danger {
	color: #bd3947;
	background: #fff0f2;
}

/* 通用表格图标按钮 */
.table-icon-btn {
	width: 36px;
	height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	padding: 0;
	border: 1px solid #e6eaf1;
	border-radius: 10px;
	background: #fff;
	color: #315efb;
	font: inherit;
	line-height: 1;
	text-decoration: none !important;
	cursor: pointer;
	transition: border-color .18s ease, background-color .18s ease,
		color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.table-icon-btn:hover,
.table-icon-btn:focus {
	border-color: #cbd6ff;
	background: #edf2ff;
	color: #244bd3;
	transform: translateY(-1px);
}

.table-icon-btn-success {
	border-color: #bfe7d8;
	background: #f1fbf6;
	color: #168f68 !important;
}

.table-icon-btn-success:hover,
.table-icon-btn-success:focus {
	border-color: #8fd4bb;
	background: #e5f7ef;
	color: #117653;
}

.table-icon-btn-warning,
.table-icon-btn.is-pending {
	border-color: #e3a02b;
	background: #fffaf0;
	color: #d58a16;
	box-shadow: 0 0 0 2px rgba(213, 138, 22, .09);
}

.table-icon-btn-danger {
	border-color: #f1d2d6;
	background: #fff7f8;
	color: #d84b58;
}

.table-icon-btn-danger:hover,
.table-icon-btn-danger:focus {
	border-color: #e8aeb5;
	background: #fff0f2;
	color: #b93643;
}

.table-icon-btn.disabled,
.table-icon-btn:disabled {
	pointer-events: none;
	opacity: .45 !important;
	transform: none;
	cursor: default;
}
