/* KOK-V74-14 cart — carts/show.html.liquid からのみ読込。design05 cart.html 準拠の残差分 */


/* Restored cart route ownership: checkout stepper and page heading were historically
   owned by toraji.css, while the Liquid template continued to emit these classes.
   Keep them route-scoped here instead of restoring the legacy global stylesheet. */
#cart-show-view .t-cart_header { max-width: 1180px; margin: 0 auto; padding: 0 40px; }
#cart-show-view .t-checkout_steps {
  list-style: none; margin: 0 0 40px; padding: 0;
  display: grid; grid-template-columns: repeat(4, 1fr);
}
#cart-show-view .t-checkout_steps__item {
  position: relative;
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  text-align: center;
}
#cart-show-view .t-checkout_steps__item::before {
  content: '';
  position: absolute; top: 6px; left: 50%; width: 100%; height: 1px;
  background: var(--t-hairline);
}
#cart-show-view .t-checkout_steps__item:last-child::before { display: none; }
#cart-show-view .t-checkout_steps__dot {
  position: relative; z-index: 1;
  width: 13px; height: 13px; border-radius: 50%;
  background: var(--t-card);
  border: 1px solid var(--t-hairline);
  box-shadow: 0 0 0 4px var(--t-bg);
}
#cart-show-view .t-checkout_steps__jp {
  font-family: var(--font-serif); font-size: 12.5px; letter-spacing: 0.1em;
  color: var(--t-ink-mute);
}
#cart-show-view .t-checkout_steps__en {
  font-family: var(--font-sans); font-size: 9px; letter-spacing: 0.24em;
  color: var(--t-ink-mute);
}
#cart-show-view .t-checkout_steps__item.is-current .t-checkout_steps__dot {
  background: var(--t-shu); border-color: var(--t-shu);
}
#cart-show-view .t-checkout_steps__item.is-current .t-checkout_steps__jp,
#cart-show-view .t-checkout_steps__item.is-current .t-checkout_steps__en { color: var(--t-shu); }
#cart-show-view .t-step_head { display: block !important; text-align: left; }
#cart-show-view .t-step_head__eyebrow {
  font-family: var(--font-sans); font-size: 10px; font-weight: 600;
  letter-spacing: 0.28em; color: var(--t-shu); margin-bottom: 12px;
}
#cart-show-view .t-step_head__title {
  font-family: var(--font-serif) !important; font-weight: 500 !important;
  font-size: 34px !important; letter-spacing: 0.1em; color: var(--t-ink) !important;
  margin: 0 0 8px !important; padding: 0 !important;
}
#cart-show-view .t-step_head__title::before { display: none !important; }
#cart-show-view .t-step_head__count {
  font-family: var(--font-sans); font-size: 12.5px; letter-spacing: 0.08em;
  color: var(--t-ink-soft); margin: 0;
}
@media (max-width: 767px) {
  #cart-show-view .t-cart_header { padding: 0 16px; }
  #cart-show-view .t-checkout_steps__jp { font-size: 11px; }
  #cart-show-view .t-step_head__title { font-size: 26px !important; }
}

/* 送料無料バナー（design05 cart.html .ct-free） */
#cart-show-view .t-cart_free {
  margin: 14px 0 0;
  padding: 9px 12px;
  background: #FDECEA;
  color: var(--t-shu);
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-align: center;
}

/* お買い物を続ける（design05 .au-btn.ghost、現行CTAのピル形状へ整合） */
#cart-show-view .t-cart_continue {
  display: block;
  width: 100%;
  box-sizing: border-box;
  margin: 10px 0 0;
  padding: 15px 16px;
  text-align: center;
  background: #fff;
  color: var(--t-shu);
  border: 1.5px solid var(--t-shu);
  border-radius: 100px;
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: .12em;
  text-decoration: none;
}
#cart-show-view .t-cart_continue:hover {
  background: #FDECEA;
  color: var(--t-shu);
}

/* 空カート（design05 empty state：中央寄せカード＋商品一覧CTA） */
#cart-show-view .t-cart_empty {
  text-align: center;
  background: #fff;
  border: 1px solid var(--t-hairline);
  padding: 56px 20px;
}
#cart-show-view .t-cart_empty__text {
  margin: 0;
  font-family: var(--font-sans);
  font-size: 14px;
  color: var(--t-ink-soft);
}
#cart-show-view .t-cart_empty__btn {
  display: inline-block;
  margin: 22px 0 0;
  padding: 14px 40px;
  background: var(--t-shu);
  color: #fff;
  border-radius: 100px;
  font-family: var(--font-sans);
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: .12em;
  text-decoration: none;
}
#cart-show-view .t-cart_empty__btn:hover {
  background: var(--t-shu-soft);
  color: #fff;
}

/* KKCART-20260821-HEADING: align cart step heading with the shared page-heading baseline. */
#cart-show-view .t-cart_header{max-width:none!important;margin:0!important;padding:0!important}
#cart-show-view .t-step_head{display:block!important;margin:0!important;padding:0!important}
#cart-show-view .t-step_head__eyebrow{margin:0 0 10px!important;padding:0!important;font-size:10px!important;line-height:1.4!important;letter-spacing:.22em!important}
#cart-show-view .t-step_head__title{
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 0 0 16px!important;
  border:0!important;
  border-left:5px solid var(--t-shu,#e60012)!important;
  font-family:'Noto Sans JP',sans-serif!important;
  font-size:24px!important;
  font-weight:700!important;
  line-height:1.7!important;
  letter-spacing:.1em!important;
}
#cart-show-view .t-step_head__count{margin:8px 0 0!important;padding:0!important;font-size:12px!important;line-height:1.5!important}
@media(max-width:640px){#cart-show-view .t-step_head__title{font-size:20px!important}}
