/*
 * 色ページ「その色に染まる」（2026-09-30）
 * 読み込みは色アーカイブ（is_tax paleri_color）だけ。--tint / --on-tint は functions.php がインラインで出す。
 * マークアップは patterns/page-search.php の $is_color_archive 分岐。
 */
@property --tint{syntax:'<color>';inherits:true;initial-value:#1fbfae}
@property --on-tint{syntax:'<color>';inherits:true;initial-value:#030303}
@view-transition{navigation:auto}
::view-transition-group(pc-tint){animation-duration:.62s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}
::view-transition-old(root),::view-transition-new(root){animation-duration:.36s}

body.tax-paleri_color{
  --tint-soft:color-mix(in oklab,var(--tint) 7%,#f7f7f7);
  --tint-deep:color-mix(in oklab,var(--tint) 62%,#030303);
  --pc-ink:#030303;
  --pc-d1:160ms;--pc-d2:320ms;--pc-d3:720ms;
  --pc-out:cubic-bezier(.2,.8,.2,1);--pc-spring:cubic-bezier(.34,1.4,.64,1);
}
body.tax-paleri_color.pc-tone-light{--tint-deep:color-mix(in oklab,var(--tint) 45%,#030303)}
body.tax-paleri_color.pc-neutral{--tint-soft:#f4f4f4}
/* page-redesign-niko.css の body:has(.editor--product-index){background:#f4f4f4!important} より詳細度を上げて上書き */
body.tax-paleri_color:has(.editor--product-index),body.tax-paleri_color:has(.editor--product-index) main.subpage{background:var(--tint-soft)!important}
body.tax-paleri_color main.subpage{padding-top:0}

/* hero */
.pc-hero{position:relative;background:var(--tint);color:var(--on-tint);view-transition-name:pc-tint;overflow:clip;transition:--tint var(--pc-d3) var(--pc-out),--on-tint var(--pc-d2) linear}
.pc-neutral.pc-tone-light .pc-hero{background:linear-gradient(180deg,#fff 0%,var(--tint) 100%);box-shadow:inset 0 -1px 0 rgba(3,3,3,.08)}
.pc-hero__in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:end;padding-top:24px;padding-bottom:64px}
.pc-hero__txt{container-type:inline-size;min-width:0}
.pc-hero .crumb{margin:0 0 36px;color:inherit;opacity:.72}
.pc-hero .crumb a,.pc-hero .crumb .here,.pc-hero .crumb .sep{color:inherit}
.pc-hero__meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 18px;margin:0 0 10px;font:600 12px/1 Jost,sans-serif;letter-spacing:.14em;opacity:.8}
.pc-hero__hex{font-variant-numeric:tabular-nums}
.pc-hero__n{display:inline-flex;align-items:baseline;gap:3px;font-family:"Zen Kaku Gothic New",sans-serif;font-weight:700;letter-spacing:.04em}
.pc-hero__n b{font:800 15px/1 Jost,sans-serif;letter-spacing:0;font-variant-numeric:tabular-nums}
.pc-hero__h{margin:0;color:inherit;font-weight:inherit}
.pc-hero__name{/* 全色同じ大きさ。いちばん長い単語「Turquoise」（9文字）が1行に収まる大きさ: 100cqi ÷ (9 × .56)。Yellow Green は2行になる */display:block;overflow:clip;padding-bottom:.06em;font:800 clamp(56px,calc(100cqi / 5.04),132px)/.86 Jost,sans-serif;letter-spacing:-.035em}
.pc-hero__name>span{display:block}
.pc-hero__jp{display:block;margin:14px 0 0;font:700 clamp(22px,2.4vw,32px)/1.2 "Zen Kaku Gothic New",sans-serif;letter-spacing:.04em}
.pc-hero__jp small{font-weight:500;opacity:.72;margin-left:.1em;font-size:.62em}
.pc-wave{display:block;width:min(480px,100%);height:12px;margin:22px 0 18px;overflow:visible}
.pc-wave path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-dasharray:1400;stroke-dashoffset:0}
.pc-hero .lead{padding:0;margin:0 0 18px;color:inherit;opacity:.82;font-size:14px}
.pc-hero .color-kids{margin:6px 0 0}
.pc-hero .color-kids a{background:transparent;border-color:color-mix(in srgb,currentColor 38%,transparent);color:inherit;transition:background var(--pc-d1),border-color var(--pc-d1)}
.pc-hero .color-kids a:hover{border-color:currentColor}
.pc-hero .color-kids a[aria-current="page"]{background:var(--on-tint);border-color:var(--on-tint);color:var(--tint)}
.pc-hero .color-kids a[aria-current="page"] i{box-shadow:0 0 0 1.5px var(--tint)}
/* 親色ごとの画像（PTK作成・1200x800・背景透過）。ファイルが無い色は出力しない */
.pc-hero__art{margin:24px 0 0;width:100%;max-width:600px;aspect-ratio:3/2;justify-self:start;align-self:start;min-width:0}
.pc-hero__art img{display:block;width:100%;height:100%;object-fit:contain}

/* spectrum */
.pc-spec{background:var(--tint-soft);margin-bottom:24px}
.pc-spec__bar{overflow-x:clip;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--n,18),1fr);height:14px}
.pc-spec__bar li{position:relative;margin:0}
.pc-spec__seg{position:absolute;inset:0 0 auto;height:14px;background:var(--c);transition:height var(--pc-d2) var(--pc-out)}
.pc-spec__seg.is-white{box-shadow:inset 0 -1px 0 rgba(3,3,3,.14),inset 1px 0 0 rgba(3,3,3,.06)}
.pc-spec__seg.is-clear{background:linear-gradient(135deg,#fff,#dfe9f7 55%,#fff)}
.pc-spec__seg:hover,.pc-spec__seg:focus-visible{height:26px;z-index:2;outline:none}
.pc-spec__seg.is-cur,.pc-spec__seg.is-cur:hover{height:14px}
.pc-spec__seg.is-cur::after{content:"";position:absolute;left:50%;top:100%;margin-left:-6px;border:6px solid transparent;border-top-color:var(--tint)}
.pc-spec__lbl{position:absolute;left:50%;top:calc(100% + 8px);transform:translateX(-50%);font:700 11px/1 "Zen Kaku Gothic New",sans-serif;color:var(--pc-ink);white-space:nowrap;opacity:0;transition:opacity var(--pc-d1);pointer-events:none}
.pc-spec__seg:hover .pc-spec__lbl,.pc-spec__seg:focus-visible .pc-spec__lbl{opacity:1}
.pc-spec__seg.is-cur .pc-spec__lbl{display:none}
.pc-spec__steps{display:flex;justify-content:space-between;gap:16px;padding-top:18px}
.pc-spec__step{display:inline-flex;align-items:center;gap:8px;font:700 13px/1 "Zen Kaku Gothic New",sans-serif;color:var(--pc-ink);text-decoration:none}
.pc-spec__step i{width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(3,3,3,.14)}
.pc-spec__step:hover{text-decoration:underline;text-underline-offset:4px}
.pc-spec__seg:focus-visible,.pc-spec__step:focus-visible{outline:2px solid var(--pc-ink);outline-offset:2px}

/* 一覧側 */
body.tax-paleri_color .shelf .sw.is-match .sw__chip{box-shadow:0 0 0 2px var(--tint-soft),0 0 0 4px var(--tint)}
/* 商品カードはHOMEと同じく、ホバーで文字色を変えない（theme.json のリンクhover=teal を打ち消す） */
body.tax-paleri_color .editor--product-index .card a:hover{color:inherit}
body.tax-paleri_color .ccode button{background:var(--tint);color:var(--on-tint);border-color:var(--tint-deep)}

@media (max-width:1023px){
  .pc-hero__in{grid-template-columns:1fr;gap:8px}
  .pc-hero__art{max-width:360px;justify-self:start;margin-top:8px}
}
@media (max-width:767px){
  .pc-hero__in{padding-top:14px;padding-bottom:36px}
  .pc-hero .crumb{margin-bottom:22px}
  .pc-hero__meta{font-size:11px;gap:6px 12px}
  .pc-hero__name{font-size:clamp(56px,calc(100cqi / 5.04),104px)}
  .pc-hero__jp{margin-top:8px}
  .pc-wave{margin:14px 0 12px}
  .pc-hero .lead{margin-bottom:14px;font-size:13px}
  .pc-hero__art{display:none}
  .pc-spec__bar,.pc-spec__seg,.pc-spec__seg:hover,.pc-spec__seg.is-cur{height:10px}
  .pc-spec__steps{padding-top:14px}
}
@media (prefers-reduced-motion:no-preference){
  .pc-hero__name>span{animation:pc-rise var(--pc-d3) var(--pc-out) both}
  .pc-hero__jp,.pc-hero__meta,.pc-hero .lead,.pc-hero .color-kids{animation:pc-fade var(--pc-d3) var(--pc-out) .12s both}
  .pc-wave path{stroke-dashoffset:1400;animation:pc-draw 1.1s var(--pc-out) .2s forwards}
  .pc-hero__art{animation:pc-pop .8s var(--pc-spring) .1s both}
  .pc-spec__bar li{animation:pc-grow .5s var(--pc-out) both;animation-delay:calc(var(--i,0) * 18ms)}
}
@keyframes pc-rise{from{transform:translateY(105%)}to{transform:none}}
@keyframes pc-fade{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes pc-draw{to{stroke-dashoffset:0}}
@keyframes pc-pop{from{opacity:0;scale:.8}to{opacity:1;scale:1}}
@keyframes pc-grow{from{transform:scaleY(0);transform-origin:top}to{transform:scaleY(1);transform-origin:top}}

/* ヘッダーも色に染める（2026-10-01）。濃い色では白ロゴ（header.html の .brand__logo-image--white）に切り替える */
body.tax-paleri_color .mast{background:var(--tint);transition:--tint var(--pc-d3) var(--pc-out),--on-tint var(--pc-d2) linear}
body.tax-paleri_color .mast__nav>a,body.tax-paleri_color .mast__nav>a span,body.tax-paleri_color .mast__nav>a small{color:var(--on-tint)}
body.tax-paleri_color .mast__nav>a small{opacity:.8}
body.tax-paleri_color .mast__search-toggle{background:transparent;color:var(--on-tint);border-color:var(--on-tint)}
body.tax-paleri_color .mast__search-panel{color:#030303}
body.tax-paleri_color .menu-ico{background:var(--on-tint);color:var(--tint);border-color:var(--on-tint)}
body.tax-paleri_color:not(.pc-tone-light) .mast .brand__logo-link>.brand__logo-image:not(.brand__logo-image--white){display:none!important}
body.tax-paleri_color:not(.pc-tone-light) .mast .brand__logo-link>.brand__logo-image--white{display:block!important;filter:brightness(0) invert(1)}
body.tax-paleri_color.pc-neutral.pc-tone-light .mast{background:#fff}

/* PC: 文字の列を中身の幅に合わせ、画像を文字のすぐ横に置く（2026-10-01「間延び」対策）。色名の大きさは Turquoise 基準のまま */
@media (min-width:1024px){
  .pc-hero__in{display:flex;align-items:flex-start;gap:56px;container-type:inline-size}
  .pc-hero__txt{container-type:normal;flex:0 1 auto;width:max-content;max-width:calc((100cqi - 40px) / 2)}
  .pc-hero__name{font-size:clamp(56px,calc((100cqi - 40px) / 10.08),132px)}
  .pc-wave{width:480px}
  .pc-hero__art{flex:1 1 0;max-width:640px;margin-top:40px;justify-self:auto}
}

/* スマホも画像を出す（文字の下・幅80%・中央）。2026-10-01 PTK選択「案A・少し小さく」 */
@media (max-width:767px){.pc-hero__art{display:block;width:80%;max-width:none;margin:18px auto 0;justify-self:center}}

/* チップのホバーで画像を切り替えるときのクロスフェード（color-immersion.js が2枚目の層を重ねる）。背景色の変化（.72s）と揃える */
.pc-hero__art{position:relative}
.pc-hero__art img.pc-art-layer{position:absolute;inset:0}
.pc-hero__art img{transition:opacity .68s cubic-bezier(.4,0,.2,1),filter .68s cubic-bezier(.4,0,.2,1)}
.pc-hero__art img.is-back{opacity:0}
@media (prefers-reduced-motion:no-preference){.pc-hero__art img.is-back{filter:blur(2px)}}
.pc-hero__art[hidden]{display:none!important}

/* 見出しの文字のクロスフェード（color-immersion.js が .pc-xf__l の層を重ねる）。画像と同じ速さ */
.pc-xf{display:inline-grid}
.pc-hero__name>span.pc-xf,.pc-hero .lead.pc-xf{display:grid}
.pc-xf>.pc-xf__l{grid-area:1/1;transition:opacity .68s cubic-bezier(.4,0,.2,1),filter .68s cubic-bezier(.4,0,.2,1)}
.pc-xf>.pc-xf__l.is-back{opacity:0}
/* 色名はいつも1行（PTK 2026-10-11）。入らない名前だけ color-immersion.js が縮める。欄の高さは1行分で固定して下揃え（ホバーで名前が入れ替わってもチップが動かない） */
.pc-hero__name>span{white-space:nowrap}
.pc-hero__name{display:flex;flex-direction:column;justify-content:flex-end;min-height:1.1em}
.pc-hero__name .pc-xf__l{align-self:end}
@media (prefers-reduced-motion:no-preference){.pc-xf>.pc-xf__l.is-back{filter:blur(1.5px)}}

/* スペクトラムの選びやすさ（2026-10-08 案2）
   〜1023px: 帯は細い飾りにして、色丸＋色名を横スクロール（.pc-rail）で選ぶ
   1024px〜: 帯を太くし、全色の名前を常に下に出す */
.pc-rail{display:none}
@media (max-width:1023px){
  .pc-spec__bar,.pc-spec__seg,.pc-spec__seg:hover,.pc-spec__seg.is-cur{height:6px}
  .pc-spec__bar{pointer-events:none}
  .pc-spec__seg.is-cur::after{display:none}
  .pc-spec__steps{display:none}
  .pc-rail{display:flex;gap:6px;list-style:none;margin:0;padding:14px 22px 6px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22px,#000 calc(100% - 22px),transparent);mask-image:linear-gradient(90deg,transparent 0,#000 22px,#000 calc(100% - 22px),transparent)}
  .pc-rail::-webkit-scrollbar{display:none}
  .pc-rail li{flex:0 0 auto;margin:0}
  .pc-rail__item{width:58px;display:flex;flex-direction:column;align-items:center;gap:6px;font:700 10px/1.3 "Zen Kaku Gothic New",sans-serif;color:#030303;text-decoration:none;text-align:center;scroll-snap-align:center;-webkit-tap-highlight-color:transparent}
  .pc-rail__item:hover{color:#030303}
  .pc-rail__item i{width:40px;height:40px;border-radius:50%;background:var(--c);box-shadow:inset 0 0 0 1px rgba(3,3,3,.14)}
  .pc-rail__item.is-clear i{background:linear-gradient(135deg,#fff,#dfe9f7 55%,#fff)}
  .pc-rail__item.is-cur i{box-shadow:0 0 0 3px var(--tint-soft),0 0 0 5px #030303}
}
@media (min-width:1024px){
  .pc-spec__bar{height:60px}
  .pc-spec__seg,.pc-spec__seg:hover,.pc-spec__seg.is-cur{height:20px}
  .pc-spec__seg.is-cur{box-shadow:inset 0 -4px 0 #030303}
  .pc-spec__seg.is-cur::after{display:none}
  .pc-spec__lbl,.pc-spec__seg.is-cur .pc-spec__lbl{display:block;opacity:1;left:0;right:0;transform:none;top:calc(100% + 8px);white-space:normal;text-align:center;padding:0 2px;font-size:11px;line-height:1.3;color:#6e6e6e}
  .pc-spec__seg.is-cur .pc-spec__lbl,.pc-spec__seg:hover .pc-spec__lbl,.pc-spec__seg:focus-visible .pc-spec__lbl{color:#030303}
  .pc-spec__steps{padding-top:2px}
}
.pc-spec__lbl,.pc-rail__item span{word-break:keep-all;overflow-wrap:anywhere}
/* 色名の g・y などの下側が切れないよう、切り抜き枠の下に余白を足す（見た目の間隔は負のマージンで相殺）2026-10-09 */
.pc-hero__name{padding-bottom:.24em;margin-bottom:-.18em}

/* スマホは中央揃え（パンくず → イラスト → 色名 → 和名 → COLOR NN/18・点数 → 波線 → 説明 → 子色）。2026-10-09 PTK指示
   イラストが無い色も同じ揃え方。.pc-hero__txt を display:contents にして中身と画像を同じ列で並べ替える。色名の cqi 用に container を .pc-hero__in へ
   和名は色名に8px寄せる（margin-top 8px → 0） */
@media (max-width:767px){.pc-hero__in{container-type:inline-size;display:flex;flex-direction:column;align-items:stretch;gap:0;text-align:center}.pc-hero__in .pc-hero__txt{display:contents}.pc-hero__in .crumb{order:0;margin-bottom:16px;justify-content:center}.pc-hero__in .pc-hero__art{order:1;width:65%;margin:0 auto 10px}.pc-hero__in .pc-hero__h{order:2}.pc-hero__in .pc-hero__jp{margin-top:0}.pc-hero__in .pc-hero__meta{order:3;justify-content:center;margin:14px 0 0}.pc-hero__in :is(.pc-wave,.lead,.color-kids){order:4}.pc-hero__in .pc-wave{margin-left:auto;margin-right:auto}.pc-hero__in .color-kids{justify-content:center}}

/* PC（1024px〜）はイラストと文字のかたまりを上下中央でそろえる。2026-10-09 PTK指示
   パンくずは上に残したいので絶対配置で外し、そのぶん上の余白を足す（ヒーローの高さは変わらない）。イラストが無い色はそのまま */
@media (min-width:1024px){.pc-hero__in:has(>.pc-hero__art){position:relative;align-items:center;padding-top:64px}.pc-hero__in:has(>.pc-hero__art) .crumb{position:absolute;top:24px;margin:0}.pc-hero__in:has(>.pc-hero__art) .pc-hero__art{margin-top:0}}
