/* ==========================================================
   ECZERO Seamless Linker（v2: 添付2寄せ / 非クロップ / badge右上）
   ※他CSS干渉回避のため class 多め + !important 部分あり
========================================================== */

.eczero-linker{
  background:#fff;
  border:1px solid rgba(0,0,0,.08);
  border-radius:12px;
  padding:14px;
  margin:14px 0 18px;
}

.eczero-linker__head{ margin:0 0 10px; }

.eczero-linker__title {
    margin: 0px 0 10px !important;
    position: relative;
    display: flex;
    align-items: center;
    padding: 13px 0 13px 30px;
    font-size: 15px !important;
    background: rgb(12 29 60 / 92%);
    border-radius: 6px;
    font-weight: 500;
    line-height: 1.3;
    color: #ffffff;
    border: none;
}

.eczero-linker__title::after {
    content: "";
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    width: 5px;
    height: 20px;
    background: #ffffffb5;
    border-radius: 9999px;
}

.eczero-linker__note {
    margin: 0;
    font-size: 11px;
    line-height: 1.6;
    color: rgb(31 47 75);
    background: #fbf5dc;
    padding: 4px 10px;
    text-align: center;
    border-radius: 6px;
    margin: 16px 0;
}

.eczero-linker__list{
  list-style:none;
  margin:0;
  padding:0;
  display:block;
}

.eczero-linker__item{
  border-top:1px solid rgba(0,0,0,.06);
  padding:10px 0;
}

.eczero-linker__item:first-child{
  border-top:none;
  padding-top:0;
}

/* row（v2前提） */
.eczero-linker__row{
  display:flex;
  gap:12px;
  align-items:flex-start;
  justify-content:flex-start;
}

/* ==========================================================
   thumb（★クロップしない：全体表示）
========================================================== */

/* badgeをサムネ右上に置くためのwrap */
.eczero-linker__thumbwrap{
  position:relative;
  flex:0 0 auto;
}

/* thumb */
.eczero-linker__thumb {
    width: 150px;
    height: 150px;
    border-radius: 6px;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, .08);
    background: rgba(0, 0, 0, .03);
    flex: 0 0 auto;
    display: block !important;
    padding: 6px !important;
    box-sizing: border-box;
}

.eczero-linker__thumb img{
  width:100% !important;

  /* ★高さ100%をやめる（伸びて切れる原因） */
  height:auto !important;
  max-height:100% !important;

  /* ★クロップ禁止：contain */
  object-fit:contain !important;
  object-position:center center !important;

  display:block !important;
}

.eczero-linker__thumb--empty{
  width:90px;
  height:90px;
  border-radius:6px;
  border:1px dashed rgba(0,0,0,.18);
  background:rgba(0,0,0,.02);
}

/* badge（候補/高確度/確定） */
.eczero-linker__badge{
  display:inline-block;
  font-size:11px;
  padding:2px 8px;
  border:1px solid rgba(0,0,0,.15);
  background:rgba(255,255,255,.92);
  flex:0 0 auto;
  border-radius:4px;
}

/* サムネオーバーレイ */
.eczero-linker__badge.eczero-linker__badge--overlay {
    position: absolute;
    top: 6px;
    left: 6px;
    z-index: 2;
    pointer-events: none;
}

.eczero-linker__badge--fixed{
    color: #fff;
    border-color: rgb(255 255 255 / 15%);
    background: rgb(245 35 35 / 84%);
}
.eczero-linker__badge--high{
    color: #fff;
    border-color: rgb(255 255 255 / 15%);
    background: rgb(245 35 35 / 84%);
}
.eczero-linker__badge--cand {
    color: #fff;
    border-color: rgb(255 255 255 / 15%);
    background: rgb(245 35 35 / 84%);
}

/* ==========================================================
   content（右側）
========================================================== */

.eczero-linker__content{
  min-width:0;
  flex:1 1 auto;
}

/* 上段：一致度バー + 一致度xx% */
.eczero-linker__topline{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 6px;
  min-width:0;
}

.eczero-linker__match{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.eczero-linker__meter{
  width:120px;
  max-width:34vw;
  height:8px;
  border-radius:999px;
  background:rgba(0,0,0,.08);
  overflow:hidden;
}

.eczero-linker__bar {
    height: 100%;
    background: rgb(76 175 80);
}

.eczero-linker__matchlabel {
    font-size: 11px;
    white-space: nowrap;
    font-weight: 500;
    color: #ffffff;
    background: #009688;
    border-radius: 40px;
    padding: 0 10px;
}

/* タイトル */
.eczero-linker__link{
  display:block;
  padding:0 !important;
  text-decoration:none;
  min-width:0;
}

.eczero-linker__link:hover{ text-decoration:underline; }

.eczero-linker__name{
  display:block;
  min-width:0;
  width:100%;
  max-width:100%;
  font-size:12px;
  font-weight:500;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

/* ==========================================================
   価格（rank-price）※既存CSSと干渉しても崩れにくいように軽く補助
========================================================== */

.eczero-linker .rank-price{
  margin: 0;
}

.eczero-linker .rank-price .price{
  font-size:18px;
  font-weight:700;
  color:#b00000;
  white-space:nowrap;
}

.eczero-linker .rank-price .price .price_name {
    margin-right: 4px;
    font-size: 10px;
    font-weight: 500;
    padding: 0 5px 0 0;
    color: #b00000;
}

.eczero-linker .rank-price .price .price_ss{
  font-size:12px;
  font-weight:500;
  margin-left:2px;
  color:#b00000;
}

/* ==========================================================
   評価（rank-meta）※既存CSSに合わせる前提、足りない場合のみ補助
========================================================== */

.eczero-linker .rank-meta{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:0px;
  font-size:12px;
  color:rgba(0,0,0,.65);
  flex-wrap:wrap;
}

.eczero-linker .rank-meta .stars{
  display:inline-flex;
  align-items:center;
}

.eczero-linker .rank-meta .star-wrap{
  display:inline-flex;
  gap:1px;
  line-height:1;
}

.eczero-linker .rank-meta .star{
  font-size:13px;
  line-height:1;
}

.eczero-linker .rank-meta .star.full{
  color:#f5a623;
}

.eczero-linker .rank-meta .star.empty{
  color:rgba(0,0,0,.25);
}

.eczero-linker .rank-meta .rating{
  font-weight:600;
}

.eczero-linker .rank-meta .reviews{
  color:rgba(0,0,0,.55);
}

/* reasons */
.eczero-linker__why{
  margin-top:6px;
  font-size:10px;
  color:rgba(0,0,0,.55);
  line-height:1.5;
  text-align:left;
  padding:0;
}

.eczero-linker__empty{
  margin:0;
  font-size:13px;
  color:rgba(0,0,0,.65);
  line-height:1.7;
}

.eczero-linker__list a::after{ display:none; }

/* ==========================================================
   SP
========================================================== */

@media (max-width: 800px){
  .eczero-linker{ padding:12px; }
	
	.eczero-linker__note{    font-size: 9px;}
	
    .eczero-linker__thumb {
        width: 140px;
        height: 140px;
        padding: 6px !important;
    }
  .eczero-linker__thumb--empty{
    width:140px;
    height:140px;
  }

  .eczero-linker__meter{
    width:130px;
    max-width:20vw;
  }
  .eczero-linker__why {
        margin: 0;
    }

    .eczero-linker__name {
        font-size: 12px;
        font-weight: 400;
        line-height: 1.4;
        -webkit-line-clamp: 3;
    }

