/* ================================================================
   布局主题：卡片网格（grid）—— body.layout-grid
   首页与列表页：隐藏侧栏，图文卡两列竖排（≥1500px 三列），
   无图卡（面包屑/归档年份等）独占整行；文章页保持右栏不变。
   本文件在 bundle.css 之后、皮肤 CSS 之前加载。
   ================================================================ */

/* —— 侧栏隐藏，主区变网格 —— */
body.layout-grid.page-index .site-aside,
body.layout-grid.page-list .site-aside { display: none; }

body.layout-grid.page-index .site-main,
body.layout-grid.page-list .site-main {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.75rem;
    align-items: stretch;
}
@media screen and (min-width: 1500px) {
    body.layout-grid.page-index .site-main,
    body.layout-grid.page-list .site-main { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* 轮播 / 页签 / 分页条 / 无图卡独占整行 */
body.layout-grid .site-main > .site-slider,
body.layout-grid .site-main > .site-tabs,
body.layout-grid .site-main > .card.card-transparent,
body.layout-grid.page-list .site-main > .card:not(.blog-slider):not(:has(> .card-image)) {
    grid-column: 1 / -1;
}
/* 间距交给 grid gap，取消纵向 margin */
body.layout-grid .site-main .card + .card { margin-top: 0; }

/* —— 竖版卡：图上文下（16:10 封面裁切） —— */
body.layout-grid .site-main .card:not(.blog-slider) { flex-direction: column; }
body.layout-grid .site-main .card:not(.blog-slider) > .card-image {
    flex: none;
    width: auto;
    height: auto;
    align-self: stretch;
    margin: 0;
    border-radius: 10px 10px 0 0;
    overflow: hidden;
    aspect-ratio: 16 / 10;
}
body.layout-grid .site-main .card:not(.blog-slider) > .card-image a,
body.layout-grid .site-main .card:not(.blog-slider) > .card-image .image {
    display: block;
    width: 100%;
    height: 100%;
    padding-top: 0;   /* 抵消 bulma is-7by1 的 padding 撑高 */
}
body.layout-grid .site-main .card:not(.blog-slider) > .card-image .image.is-7by1 img {
    position: static; /* 抵消 bulma 绝对定位 */
}
body.layout-grid .site-main .card:not(.blog-slider) > .card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0;
    transition: transform .3s ease;
}
body.layout-grid .site-main .card:not(.blog-slider) > .card-content {
    padding: 1.05rem 1.15rem 1.15rem;
}
body.layout-grid .site-main .card:not(.blog-slider) > .card-content .title { font-size: 1.1rem; }
/* 摘要限三行，保持卡片等高节奏（列表页无摘要时正文同样收敛） */
body.layout-grid .site-main .card:not(.blog-slider) > .card-content .content {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: .93rem;
    line-height: 1.75;
}

/* —— 移动端：单列 —— */
@media screen and (max-width: 640px) {
    body.layout-grid.page-index .site-main,
    body.layout-grid.page-list .site-main { grid-template-columns: 1fr; gap: 1.25rem; }
}
