/* 站点补充样式 —— 与蓝本视觉一致 */
body, html {
    height: 100vh;
    width: 100%;
    margin: 0;
    padding: 0;
}
.home-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    background-color: #f2f5f9;
}
.content-pre {
    white-space: pre-line;
}
.avatar-min {
    width: 30px;
    height: 30px;
    border-radius: 50% !important
}
div.card-item {
    --img-scale: 1.000;
}
div.card-item:has(:hover, :focus) {
    --img-scale: 1.1;
    box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px,
                rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
}
div.card-item img {
    transform-origin: center;
    transform: scale(var(--img-scale));
    transition: transform 0.4s ease-in-out;
}
.header-area a {
    font-weight: 700 !important;
    padding: .5rem !important;
    text-decoration: none !important;
    color: var(--text-color-subtitle);
    margin-bottom: 1rem;
}
.header-area a.active {
    border-radius: 1rem !important;
    background-color: #212529 !important;
    color: rgb(248, 249, 250) !important;
}
.area-collapse {
    overflow: hidden;
    transition: height 0.3s ease-in-out;
}
.user-menu-box { min-width: 150px; z-index: 1080; }
.cursor-pointer { cursor: pointer; }
.top-notification-app:hover { opacity: .8; }
img.img-fit { object-fit: cover; }
.image-list-area img { cursor: zoom-in; }
.gap-2 { gap: .5rem; }
