@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Template:   cocoon-master
Version:    1.1.3
*/

/* =========================================================
   一覧カード（#list）整形：全ページ共通
   - Masonryの有無に関係なくグリッド化
   - サムネ16:9で統一（中央トリミング）
   - PC:2列 / Tablet&SP:1列
   ========================================================= */

/* コンテナを常にグリッド化 */
#list{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(320px, 1fr)) !important; /* PC: 2列 */
  gap: 24px !important;
  width: 100% !important;
  max-width: none !important;   /* テーマ側の上限幅を打消し */
  height: auto !important;      /* Masonryの高さ指定を打消し */
  position: static !important;
}

/* Masonryの子要素が残っていても安全にリセット */
#list .masonry-brick{
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  margin: 0 !important;
}

/* カード本体（中央寄せや最大幅固定を解除し、見た目を統一） */
#list .entry-card-wrap{
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;

  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
  text-decoration: none;
  transition: transform .25s ease, box-shadow .25s ease;
}
#list .entry-card-wrap:hover{
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

/* カード内レイアウト（高さを揃えやすく） */
#list .entry-card{ display: flex; flex-direction: column; height: 100%; }
#list .entry-card-content{ padding: 12px 14px 14px; display: flex; flex-direction: column; flex: 1; }

/* サムネイル：16:9＋中央トリミング */
#list .entry-card-thumb{
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #f7f7f7;
}
#list .entry-card-thumb img{
  width: 100%; height: 100%;
  object-fit: cover; object-position: center;
  display: block;
}

/* タイトルは2行固定（高さを揃える） */
#list .entry-card-title{
  font-size: 16px; line-height: 1.5; margin: 8px 0 6px;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(1.5em * 2);
  color:#222; font-weight:600;
}

/* メタ行（PV等）が無くても高さが崩れないよう最小高を付与 */
#list .admin-pv, #list .entry-card-meta{
  color:#6b7280; font-size:12px;
  margin-top:auto; padding-top:8px; border-top:1px dashed #eee;
  min-height:22px;
}

/* 既存レイアウトクラスが幅を固定している場合の打消し */
.ect-2-columns #list .entry-card-wrap,
.ect-tile-card-2 #list .entry-card-wrap,
.ect-vertical-card #list .entry-card-wrap{
  max-width: none !important;
  margin: 0 !important;
}

/* ===== レスポンシブ ===== */
@media (max-width: 1024px){
  #list{ grid-template-columns: 1fr !important; gap: 16px !important; }
}
@media (max-width: 480px){
  #list .entry-card-title{ font-size: 15px; }
  #list .entry-card-content{ padding: 10px 12px 12px; }
}

/* =========================================================
   投稿メタ：日付・筆者をサイト全体で非表示
   ========================================================= */
.post-date,
.entry-date,
.entry-updated,
.meta-time,
.update-time,
.author,
.author-info,
.author-name,
.entry-author,
.admin-pv-by{
  display: none !important;
}
