/* ============================================================
   v8.css — kurumahub v8 本番コンポーネント（mock docs/ui-statics/v8-kit.css と整合）
   全フロントで読み込む共通 v8 部品。a11y.css 不可侵・重要指定なし・scoped クラス。
   ============================================================ */

/* ---- 車両カード（vehicle_card.php / 全リスト共通） ---- */
.khvc{position:relative;display:flex;flex-direction:column;border:2px solid #DBD8D2;border-radius:15px;overflow:hidden;background:#fff;transition:transform .3s,border-color .25s,box-shadow .25s}
.khvc:hover{transform:translateY(-5px);border-color:#D5000F;box-shadow:0 22px 44px -34px rgba(10,10,14,.4)}
.khvc-fav{position:absolute;top:10px;right:10px;z-index:5;width:36px;height:36px;border:0;border-radius:50%;background:#fff;box-shadow:0 4px 12px rgba(10,10,14,.18);display:grid;place-items:center;cursor:pointer;color:#C9C6C0;transition:color .18s,transform .18s}
.khvc-fav:hover{color:#D5000F;transform:scale(1.08)}.khvc-fav.is-fav{color:#D5000F}.khvc-fav svg{width:18px;height:18px}
.khvc-ph{display:block;aspect-ratio:16/10;background:linear-gradient(135deg,#F4EFE9,#fff);position:relative;overflow:hidden}
.khvc-ph picture,.khvc-ph img{width:100%;height:100%;object-fit:cover;display:block}
.khvc-ph img{transition:transform .5s}.khvc:hover .khvc-ph img{transform:scale(1.05)}
.khvc-noimg{position:absolute;inset:0;display:grid;place-items:center;font-size:2.6rem}
.khvc-tags{position:absolute;top:10px;left:10px;display:flex;gap:6px;flex-wrap:wrap;max-width:82%}
.khvc-badge{font-size:.66rem;font-weight:800;padding:4px 9px;border-radius:999px;background:#fff;border:1.5px solid #DBD8D2;color:#1E1E26}
.khvc-badge-new{background:#D5000F;color:#fff;border-color:#D5000F}
.khvc-badge-type{color:#A60010;border-color:rgba(213,0,15,.3)}
.khvc-badge-ink{background:#0A0A0E;color:#fff;border-color:#0A0A0E}
.khvc-bd{padding:15px;display:flex;flex-direction:column;flex:1}
.khvc-mk{font-size:.8rem;color:#35353B;font-weight:600}
.khvc-md{font-weight:800;font-size:1.06rem;margin:3px 0 8px;line-height:1.4}
.khvc-md a{color:#0A0A0E;text-decoration:none}.khvc-md a:hover{color:#D5000F}
.khvc-spec{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.khvc-spec span{font-size:.72rem;font-weight:700;color:#1E1E26;background:#FAF7F4;border:1px solid #DBD8D2;border-radius:7px;padding:3px 8px}
.khvc-foot{margin-top:auto;display:flex;align-items:flex-end;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid #ECE8E2}
.khvc-plabel{font-size:.68rem;color:#5C5C63;font-weight:600;margin-bottom:2px}
.khvc-pr{font-weight:800;color:#D5000F;font-size:1.24rem;line-height:1}.khvc-pr small{color:#1E1E26;font-weight:600;font-size:.74rem}
.khvc-pr.khvc-ask{font-size:.96rem;color:#1E1E26}
.khvc-rate{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.khvc-stars{color:#E0A422;font-size:.8rem;line-height:1}.khvc-rate span:last-child{font-size:.66rem;color:#5C5C63}
.khvc-cta{display:block;text-align:center;margin-top:14px;background:#0A0A0E;color:#fff;font-weight:800;font-size:.86rem;padding:11px;border-radius:11px;text-decoration:none;transition:background .2s}
.khvc-cta:hover{background:#D5000F}
.khvc-fav:focus-visible,.khvc-cta:focus-visible,.khvc-md a:focus-visible{outline:2px solid #D5000F;outline-offset:2px}
@media(prefers-reduced-motion:reduce){.khvc,.khvc-ph img,.khvc-fav,.khvc-cta{transition:none}}
