/* =========================================
   新着案件一覧（丸チップ縦並び＋掲載日のみ）
   ========================================= */
   :root{
    --bg:#fff; --fg:#222; --muted:#667085; --border:#e5e7eb; --accent:#0ea5e9;
    --card:#fff; --radius:16px; --shadow:0 1px 8px rgba(16,24,40,.06);
    --gap:clamp(12px,2vw,20px);
    --h1:clamp(20px,3vw,28px);
    --chip-fz:14px; --chip-k-fz:12px; --date-fz:12px;
  }
  @media (prefers-color-scheme:dark){
    :root{ --bg:#0b0f14; --fg:#e6e6e6; --muted:#9aa4b2; --border:#2a3441; --card:#121923; --accent:#38bdf8; }
  }
  html,body{background:var(--bg);color:var(--fg);}
  
  /* ---------- コンテナ ---------- */
  .jm-archive.wrapper{max-width:min(1100px,92vw);margin:0 auto;padding:clamp(16px,3vw,32px) 0 64px;}
  .jm-archive>h1{font-size:var(--h1);line-height:1.2;margin:0 0 clamp(16px,3vw,24px)}
  
  /* ---------- グリッド（レスポンシブ） ---------- */
  .jm-list{
    list-style:none;margin:0;padding:0;
    display:grid; gap:var(--gap);
    grid-template-columns:1fr;              /* SP: 1列 */
  }
  @media (min-width:640px){ .jm-list{ grid-template-columns:repeat(2,minmax(0,1fr)); } } /* TB: 2列 */
  @media (min-width:980px){ .jm-list{ grid-template-columns:repeat(3,minmax(0,1fr)); } } /* PC: 3列 */
  
  /* ---------- カード ---------- */
  .jm-item{
    background:var(--card);
    border:1px solid var(--border);
    border-radius:var(--radius);
    box-shadow:var(--shadow);
    padding:16px 18px 12px;
    display:flex; flex-direction:column; gap:12px;
    transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
    border-left:4px solid color-mix(in oklab,var(--accent) 70%, transparent);
  }
  .jm-item:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 18px rgba(16,24,40,.08);
    border-color:color-mix(in oklab,var(--border) 60%, var(--accent));
  }
  
  /* ---------- 丸チップ（縦並び） ---------- */
  .jm-chips{                 /* UL */
    list-style:none; margin:4px 0 0; padding:0;
    display:flex; flex-direction:column; gap:8px;   /* 1つずつ表示 */
  }
  .jm-chips .chip{          /* LI */
    display:flex; align-items:center; gap:10px;
    padding:10px 12px;
    border:1px solid var(--border);
    border-radius:9999px;                 /* 丸く */
    background:color-mix(in oklab,var(--card) 92%, #fff);
    font-size:var(--chip-fz);
    line-height:1.35;
    min-height:38px;
    /* 中身が長くても丸の中で折り返す */
    flex-wrap:wrap;
  }
  
  /* ラベル（左側：小さめ・淡色・半太） */
  .chip .k{
    color:var(--muted);
    font-size:var(--chip-k-fz);
    font-weight:600;
    letter-spacing:.02em;
  }
  
  /* 値（右側：通常） */
  .chip .v{
    color:var(--fg);
    font-weight:600;
  }
  
  /* 値が空の場合は非表示（PHPで空チェックしていれば不要だが保険） */
  .chip:has(.v:empty){ display:none; }
  
  /* ---------- 掲載日（中央） ---------- */
  .jm-date{
    display:block;
    text-align:center;
    font-size:var(--date-fz);
    color:var(--muted);
    margin-top:2px;
  }
  
  /* ---------- ページネーション（WP標準） ---------- */
  .pagination{
    margin-top:clamp(20px,4vw,32px);
    display:flex; justify-content:center;
  }
  .pagination .page-numbers{
    display:inline-flex; align-items:center; justify-content:center;
    min-width:38px; height:38px; padding:0 10px; margin:0 4px;
    border-radius:10px; border:1px solid var(--border);
    text-decoration:none; color:var(--fg); font-size:14px;
    transition:background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
  }
  .pagination .page-numbers:hover{
    transform:translateY(-1px);
    border-color:color-mix(in oklab,var(--accent) 50%, var(--border));
  }
  .pagination .page-numbers.current{
    background:color-mix(in oklab,var(--accent) 14%, transparent);
    border-color:color-mix(in oklab,var(--accent) 60%, var(--border));
    font-weight:700;
  }
  
  /* ---------- 空状態 ---------- */
  .jm-archive>p{
    padding:24px; border:1px dashed var(--border); border-radius:12px; color:var(--muted);
  }
  
  /* ---------- 印刷 ---------- */
  @media print{
    .jm-item{ box-shadow:none !important; border-color:#ddd !important; break-inside:avoid; }
    .pagination{ display:none !important; }
  }
  