/*
 Theme Name: Fujiyama Child
 Theme URI: https://example.com/fujiyama-child
 Description: Child theme for the Fujiyama JP parent theme. Safe space for customizations that survive parent updates.
 Author: Your Name
 Author URI: https://example.com
 Template: fujiyama_jp
 Version: 1.0.1
 Text Domain: fujiyama-child
 License: GNU General Public License v2 or later
 License URI: https://www.gnu.org/licenses/gpl-2.0.html
 Tags: child-theme, minimal, woocommerce, dokan
*/

/* Put your custom CSS below */

/* Dokan登録フォームのエラーメッセージを赤に */
.woocommerce-error {
  color: #f00;
}


/* ===== Header strip: force full-width white ===== */

/* ヘッダー本体 */
header#masthead.site-header{
  background: #fff !important;
  background-image: none !important;
}

/* ヘッダー周辺の親要素（テーマ差を吸収） */
.site-header,
.site-header-wrap,
.header-wrap,
.header-area,
.header,
#header,
#page > header,
#page header.site-header{
  background: #fff !important;
  background-image: none !important;
}

/* ヘッダーの上下に余計な透けが出る場合の保険 */
body header#masthead,
body .site-header{
  box-shadow: none;
}

/* ヘッダーが中央固定幅で、外側の背景が見える場合の対策 */
header#masthead.site-header{
  width: 100% !important;
  max-width: none !important;
}

/* テーマの内側コンテナがある場合も白に */
header#masthead .container,
header#masthead .inner,
header#masthead .wrap{
  background: #fff !important;
}

header#masthead.site-header{
  border-bottom: 1px solid #ededed;
}

/* ===== Logo sizing ===== */
#masthead .site-logo img{
  display: block;
  height: auto;
  max-width: 120px;
}

#masthead.site-header{
  padding: 0 14px;
}


/* ===== Search input: remove inner border/box ===== */
.pp-search-input{
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  background: transparent !important;
  -webkit-appearance: none;
  appearance: none;
}

.pp-header-search{
  box-shadow: none !important;
}


/* ===== Right icons alignment ===== */
#cart-navigation ul{
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 0;
  padding: 0;
}

#cart-navigation li{
  list-style: none;
}

/* ===== Header menu helpers ===== */

/* CTA（アカウント登録）ボタン風 */
.cta-signup > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  border-radius: 999px;
  background: #111;
  color: #fff !important;
  font-weight: 600;
  line-height: 1;
}

.cta-signup > a:hover {
  opacity: 0.9;
}

/* 検索リンクの最低限の整え（後で拡張） */
.menu a[href="#search"] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

/* ===== Header Search (PerformancePrompt) ===== */
.menu-item-search { margin-left: 8px; }

.pp-header-search{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 10px;
  border: 1px solid #e6e6e6;
  border-radius: 999px;
  background: #fff;
}

.pp-search-input{
  width: 220px;
  border: 0;
  outline: none;
  background: transparent;
  font-size: 14px;
  line-height: 1;
}

.pp-search-btn{
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 16px;
  line-height: 1;
  padding: 6px 8px;
  border-radius: 999px;
}

.pp-search-btn:hover{
  background: #f3f3f3;
}

/* モバイルで潰れないように */
@media (max-width: 768px){
  .pp-search-input{ width: 140px; }
}

/* ===== Header background: solid white ===== */
#masthead.site-header{
  background: #fff !important;
  background-image: none !important;
}

/* ===== Hide theme auto "Login" link in cart-navigation (keep cart) ===== */
#cart-navigation ul li.login { 
  display: none !important;
}

/* ===== Header layout: logo left / nav+cart right ===== */
#masthead.site-header {
  display: flex;
  align-items: center;
  gap: 18px;
}

/* ロゴは左に固定、ここで残りを右へ押す */
#masthead .site-branding {
  flex: 0 0 auto;
  margin-right: auto;
}

/* ナビとカートは右側に並べる */
#site-navigation {
  flex: 0 1 auto;
}

#cart-navigation {
  flex: 0 0 auto;
  margin-left: 10px;
}

/* nav内メニューを横並びに（すでにflexでも保険） */
#site-navigation .menu {
  display: flex;
  align-items: center;
  gap: 16px;
}

/* 検索フォームがメニュー内で縦に潰れないように */
#site-navigation .menu-item-search {
  display: flex;
  align-items: center;
}

/* 高さを揃えて整列を綺麗に */
.pp-header-search { height: 40px; }
.pp-search-input { height: 24px; }
#cart-navigation a { display: inline-flex; align-items: center; height: 40px; }


/* ===== Footer (performanceprompt) ===== */
.pp-footer{
  background: #fff;
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
}

.pp-footer__inner{
  max-width: 980px; 
  margin: 0 auto;
  padding-top: 40px;
  padding-left: 20px;
  padding-right: 20px;
}

.pp-footer__grid{
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr;
  gap: 28px;
  padding-bottom: 28px;
}

.pp-footer__logo img{
  display: block;
  height: 80px; 
  width: auto;
}

.pp-footer__tagline{
  margin: 14px 0 0;
  font-size: 13px;
  line-height: 1.8;
  color: rgba(0,0,0,.68);
}

.pp-footer__heading{
  margin: 0 0 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  color: rgba(0,0,0,.78);
}

.pp-footer__heading--mt{
  margin-top: 18px;
}

.pp-footer__list{
  list-style: none;
  margin: 0;
  padding: 0;
}

.pp-footer__list li{
  margin: 0;
  padding: 0;
}

.pp-footer__list a{
  display: inline-block;
  padding: 6px 0;
  text-decoration: none;
  color: rgba(0,0,0,.78);
  font-size: 14px;
  line-height: 1.6;
}

/* ホバーだけオレンジ（ロゴのオレンジに合わせてここだけ調整） */
:root{
  --pp-accent: #f28c28; /* 仮：ロゴの実色に合わせて置換 */
}
.pp-footer__list a:hover{
  color: var(--pp-accent);
}

.pp-footer__bottom{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 16px 0 22px;
  border-top: 1px solid rgba(0,0,0,.08);
}

.pp-footer__copy{
  font-size: 12px;
  color: rgba(0,0,0,.55);
}


/* SP */
@media (max-width: 860px){
  .pp-footer__inner{
    padding-top: 32px;
  }
  .pp-footer__grid{
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .pp-footer__bottom{
    flex-direction: column;
    align-items: center;
  }
  .pp-footer__brand{
    text-align: center;
  }
  .pp-footer__logo{
    display: flex;
    justify-content: center;
  }
  .pp-footer__social{
    justify-content: center;
  }
  .pp-footer__list{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px 18px;
    padding: 0;
    margin: 0;
  }
  
  .pp-footer__list li{
    display: inline-flex;
    align-items: center;
    font-size: 14px;
  }
  
  .pp-footer__list li::before{
    content: "–";
    margin-right: 4px;
    font-size: 12px;
    color: rgba(0,0,0,.35);
  }
}

.pp-footer__social{
  display: flex;
  gap: 12px;
  margin-top: 12px;
}

.pp-footer__social a{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 999px;
  color: rgba(0,0,0,.70);
  text-decoration: none;
}

.pp-footer__social svg{
  width: 16px;
  height: 16px;
  fill: currentColor;
}

.pp-footer__social a:hover{
  color: var(--pp-accent);
  border-color: rgba(0,0,0,.18);
}


/* ===== SHOP ===== */

/* 商品カテゴリ（Woo Blocks）: 第3階層以降を非表示 */
.wp-block-woocommerce-product-categories .wc-block-product-categories-list--depth-2,
.wp-block-woocommerce-product-categories .wc-block-product-categories-list--depth-3{
  display: none;
}

/* 商品カテゴリ（Woo Blocks）: ドット除去＋左余白リセット */
.wp-block-woocommerce-product-categories ul{
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}

/* サイドバーのカテゴリ（Woo Blocks）デザイン */
.wp-block-woocommerce-product-categories{
  font-size: 14px;
}

.wp-block-woocommerce-product-categories .wc-block-product-categories-list{
  margin: 0;
  padding: 0;
}

.wp-block-woocommerce-product-categories .wc-block-product-categories-list-item{
  margin: 0;
  padding: 6px 0;
}

.wp-block-woocommerce-product-categories .wc-block-product-categories-list-item > a{
  display: inline-block;
  text-decoration: none;
  color: rgba(0,0,0,.78);
  line-height: 1.7;
}

.wp-block-woocommerce-product-categories .wc-block-product-categories-list-item > a:hover{
  color: var(--pp-accent);
}

/* 件数（右側の数字）を軽く */
.wp-block-woocommerce-product-categories .wc-block-product-categories-list-item-count{
  font-size: 12px;
  color: rgba(0,0,0,.45);
  margin-left: 6px;
}

/* 第2階層（depth-1） */
.wp-block-woocommerce-product-categories .wc-block-product-categories-list--depth-1{
  margin-top: 4px;
}
.wp-block-woocommerce-product-categories 
.wc-block-product-categories-list--depth-1 
> .wc-block-product-categories-list-item > a::before{
  content: "–";
  margin-right: 8px;
  font-size: 12px;
  color: rgba(0,0,0,.45);
}

/* 第1階層ごとに上ボーダー */
.wp-block-woocommerce-product-categories 
.wc-block-product-categories-list--depth-0 
> .wc-block-product-categories-list-item{
  border-bottom: 1px solid rgba(0,0,0,.08);
  padding-bottom: 12px;
  margin-bottom: 12px;
}

.wc-block-product-categories-list--depth-0 
> .wc-block-product-categories-list-item 
> a{
  font-weight: 600;
}
