/*
Theme Name: PHOTOCARBLOG
Description: photocarbu.jp の theme（News Post の子 theme）。独自 theme 化の Stage 2。表示は段ごとに photocarbu-news-post-compat から移す。
Author: PHOTOCARBLOG
Template: news-post
Version: 0.4.0
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: photocarbu
*/

/*
 * S2-2（2026-10-01）: photocarbu-news-post-compat の CSS のうち、次の 3 つをここへ移した（中身は同じ）。
 * 親（News Post）の CSS の後に読み込む（functions.php、handle photocarbu-style、依存 news-post-style）。
 * compat は add_theme_support() の宣言を見て、同じ CSS を出さない。親 theme に戻せば compat が出す。
 * - pcj-staff-page-css   Staff ページ（旧 contributors テンプレートの本文）の横並び（compat PCNPC_Staff_Page）
 * - pcj-archives-css     sidebar の Archives の年アコーディオン（markup は compat PCNPC_Archives が描く）
 * - pcj-content-ui-css   sidebar の Categories の階層、single 本文の H2 / H3（並び順と階層の指定は compat PCNPC_Content_UI）
 * Site_Colors の CSS は Customizer の保存値から作るので、ここではなく inc/site-colors.php が出す。
 *
 * S2-3（2026-10-01）: header / footer / nav の CSS を移した（中身は同じ）。宣言は pcj-header-ui / pcj-header-search / pcj-nav-mobile / pcj-footer-ui。
 * Brand（ロゴの lockup）の CSS は Site Logo の有無で変わるので inc/brand.php が出す（photocarbu-style の inline）。
 *
 * S2-4（2026-10-01）: 記事 card の metadata・記事の header・アイキャッチの fallback・single の breadcrumb の CSS を移した（中身は同じ）。
 */

/* ---- Staff ページ（pcj-staff-page-css）---- */
.page-template-page-templatescontributors-php .entry-content #main-content #primary.content-area{width:auto;max-width:none;float:none}
.page-template-page-templatescontributors-php .entry-content .contributor{margin:0 0 40px}
.page-template-page-templatescontributors-php .entry-content .contributor:last-child{margin-bottom:0}
.page-template-page-templatescontributors-php .entry-content .contributor-info{display:flex;align-items:flex-start;gap:24px}
.page-template-page-templatescontributors-php .entry-content .contributor-avatar{flex:0 0 120px;width:120px}
.page-template-page-templatescontributors-php .entry-content .contributor-avatar img{display:block;width:100%;height:auto;margin:0}
.page-template-page-templatescontributors-php .entry-content .contributor-summary{flex:1 1 auto;min-width:0}
.page-template-page-templatescontributors-php .entry-content .contributor-name{margin:0 0 8px}
.page-template-page-templatescontributors-php .entry-content .contributor-summary p{margin:0}
.page-template-page-templatescontributors-php .entry-content .contributor-summary .contributor-bio{margin:0 0 8px}
.page-template-page-templatescontributors-php .entry-content .contributor-posts-link br{display:none}
@media (max-width:767px){
	.page-template-page-templatescontributors-php .entry-content .contributor{margin-bottom:32px}
	.page-template-page-templatescontributors-php .entry-content .contributor:last-child{margin-bottom:0}
	.page-template-page-templatescontributors-php .entry-content .contributor-info{gap:16px}
	.page-template-page-templatescontributors-php .entry-content .contributor-avatar{flex-basis:96px;width:96px}
}
@media (max-width:299px){
	.page-template-page-templatescontributors-php .entry-content .contributor-info{flex-direction:column}
}

/* ---- sidebar の Archives（pcj-archives-css）---- */
.pcnpc-archives{list-style:none;margin:0;padding:0}
.pcnpc-archives__year{margin:0}
.pcnpc-archives__details{border-block-end:1px solid var(--theme-border-hue,#eee)}
.pcnpc-archives__summary{cursor:pointer;padding:6px 2px;font-weight:600;list-style:none;display:flex;align-items:center;gap:6px}
.pcnpc-archives__summary::-webkit-details-marker{display:none}
.pcnpc-archives__summary::before{content:"";flex:0 0 auto;width:0;height:0;border-inline-start:5px solid currentColor;border-block-start:4px solid transparent;border-block-end:4px solid transparent;transition:transform .15s;opacity:.7}
.pcnpc-archives__details[open] .pcnpc-archives__summary::before{transform:rotate(90deg)}
.pcnpc-archives__summary:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.pcnpc-archives__months{list-style:none;margin:0 0 6px;padding:0 0 0 16px;display:flex;flex-wrap:wrap;gap:2px 10px}
.pcnpc-archives__month{margin:0}
.pcnpc-archives__month a{display:inline-block;padding:2px 0;font-size:.9em;opacity:.85;text-decoration:none}
.pcnpc-archives__month a:hover{text-decoration:underline;opacity:1}

/* ---- sidebar の Categories と single の H2 / H3（pcj-content-ui-css）---- */
.wp-block-categories>.cat-item>a{font-weight:600}
.wp-block-categories .children{margin:0;padding:0;list-style:none}
.wp-block-categories .children>li{display:flex;align-items:baseline;gap:.3em;padding-inline-start:2px}
.wp-block-categories .children>li::before{content:"\251C\2500";flex:0 0 auto;opacity:.4;font-feature-settings:normal;pointer-events:none}
.wp-block-categories .children>li:last-child::before{content:"\2514\2500"}
.wp-block-categories .cat-item>a{display:inline-block}
body.single-post .entry-content h2{margin-block:1.8em .9em;padding:.6em .8em;background:rgba(0,0,0,.035);border-inline-start:3px solid rgba(0,0,0,.32);border-radius:2px}
body.single-post .entry-content h3{margin-block:1.4em .7em;padding-inline-start:.65em;border-inline-start:2px solid rgba(0,0,0,.18)}

/* ---- header の topbar の Sign In の器、hamburger の寄せ（pcj-header-ui） ---- */
.theme-top-header .top-header-right .header-button{display:none}
@media(max-width:991px){
	.theme-main-header .theme-main-header-wrapper{justify-content:flex-end}
}

/* ---- nav の右端の検索（pcj-header-search） ---- */
.theme-top-header{display:none!important}
.main-navigation{display:flex;align-items:center;gap:8px}
.main-navigation>div{flex:1 1 auto;min-width:0}
.pcnpc-nav-search__toggle{margin-inline-start:auto}
@media(max-width:991px){
	.main-navigation{gap:4px}
	.main-navigation>div{order:1;flex:1 1 auto}
	.main-navigation .pcnpc-nav-search__toggle{order:2;margin-inline-start:auto;flex:0 0 auto;padding:0 .5em}
	.main-navigation .menu-toggle{order:3;flex:0 0 auto;margin-inline-start:0}
	.pcnpc-nav-search__panel .pcnpc-nav-search__form{width:100%}
}
.pcnpc-nav-search__toggle{background:none;border:0;padding:0 .35em;margin:0;cursor:pointer;color:inherit;font-size:inherit;line-height:1;display:inline-flex;align-items:center}
.pcnpc-nav-search__toggle:hover,.pcnpc-nav-search__toggle:focus{opacity:.7}
.pcnpc-nav-search__panel{padding-block:10px;display:none}
.pcnpc-nav-search__panel.is-open{display:block}
.pcnpc-nav-search__form{display:flex;gap:8px;align-items:center}
.pcnpc-nav-search__input{flex:1 1 auto;min-width:0;padding:.45em .7em;border:1px solid var(--theme-border-hue,#d8d8d8);border-radius:3px;font-size:var(--typo-xs,.875rem)}
.pcnpc-nav-search__submit{flex:0 0 auto;padding:.45em 1em;cursor:pointer;border:1px solid var(--theme-border-hue,#d8d8d8);background:none;color:var(--theme-text-hue,#333);border-radius:3px;font-size:var(--typo-xs,.875rem);white-space:nowrap;letter-spacing:.04em;line-height:1.4}

/* ---- 狭い画面の category の横並びと子の panel（pcj-nav-mobile） ---- */
@media(max-width:991px){
	.menu-toggle{display:none!important}
	.primary-nav,.primary-nav-container,.header-nav,.main-navigation{min-width:0;width:100%;flex:1 1 auto}
	.main-navigation{display:flex;align-items:center;gap:6px}
	.main-navigation>div{order:1;flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}
	.main-navigation>div.pcnpc-nav-scroll{margin-inline-start:-10px}
	.pcnpc-nav-scroll #primary-menu{justify-content:flex-start}
	.main-navigation>div.pcnpc-nav-fits{margin-inline-start:0}
	.pcnpc-nav-fits #primary-menu{justify-content:center;padding-inline-start:var(--pcnpc-nav-reserve,38px)}
	.main-navigation>div::-webkit-scrollbar{display:none}
	.main-navigation .pcnpc-nav-search__toggle{order:2;flex:0 0 auto;margin-inline-start:0}
	#primary-menu{display:flex!important;position:static!important;width:auto!important;flex-wrap:nowrap!important;background:none!important;box-shadow:none!important;text-align:left;margin:0;padding:0}
	#primary-menu>li{flex:0 0 auto;border:0!important;position:static;display:flex;align-items:center}
	#primary-menu>li>a{display:inline-block;padding:12px 10px;white-space:nowrap;text-transform:none}
	#primary-menu>li.menu-item-has-children>a{display:none}
	#primary-menu>li.menu-item-has-children>a::after{content:none!important}
	.pcnpc-parent{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:12px 10px;margin:0;border:0;background:none;cursor:pointer;color:inherit;font:inherit;line-height:1.4;white-space:nowrap}
	.pcnpc-parent::after{content:"";flex:0 0 auto;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform 150ms ease}
	.pcnpc-parent[aria-expanded="true"]::after{transform:translateY(2px) rotate(-135deg)}
	.pcnpc-parent:focus-visible{outline:2px solid currentColor;outline-offset:-2px}
	#pcnpc-subpanel{position:absolute;left:0;top:100%;width:100%;z-index:9999;background:var(--theme-background-hue,#fff);box-shadow:var(--shadow);border-block-start:1px solid #f1f1f1;max-height:70vh;overflow-y:auto;-webkit-overflow-scrolling:touch}
	#pcnpc-subpanel[hidden]{display:none}
	#pcnpc-subpanel .sub-menu{display:block!important;height:auto!important;transform:none!important;overflow:visible!important;margin:0!important;padding:0;list-style:none;position:static!important;width:auto!important;background:none!important;box-shadow:none!important}
	#pcnpc-subpanel .sub-menu li{margin:0;border-block-end:1px solid #f1f1f1}
	#pcnpc-subpanel .sub-menu li:last-child{border-block-end:0}
	#pcnpc-subpanel .sub-menu a{display:block;padding:14px 18px;white-space:normal;text-decoration:none}
	#pcnpc-subpanel .pcnpc-parent-archive a{font-weight:600}
	#primary-menu .sub-menu{display:none}
}
@media(min-width:992px){
	.pcnpc-parent{display:none!important}
	#pcnpc-subpanel{display:none!important}
	#primary-menu .pcnpc-parent-archive{display:none!important}
}

/* ---- footer の情報行と navigation（pcj-footer-ui） ---- */
.site-footer .lower-footer .site-info{text-align:center}
.pcnpc-footer-nav{display:block;margin:0 0 .5em}
.pcnpc-footer-nav a{text-decoration:none}
.pcnpc-footer-nav a:hover{text-decoration:underline}
.pcnpc-footer-nav .pcnpc-sep{margin:0 .5em;opacity:.55}
@media (max-width:600px){
	.site-footer .lower-footer{padding-bottom:96px}
}

/* ---- 記事 card の metadata 行と並び、記事の header の tag（pcj-card-meta） ---- */
.single-card-container .single-card-detail .card-categories{display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;}
.single-card-container .single-card-detail .card-categories .cat-links,.single-card-container .single-card-detail .card-categories .pcnpc-tag-links{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 0;}
.single-card-container .single-card-detail .card-categories a.pcnpc-post-tag{z-index:1;position:relative;display:inline-flex;align-items:center;line-height:1.6;padding:0 5px;font-weight:400;text-decoration:none;margin-inline-end:4px;font-size:calc(var(--typo-xxs) - 1px);color:inherit;opacity:.75;border:1px solid currentColor;border-radius:2px;background:none;}
.single-card-container .single-card-detail .card-categories a.pcnpc-post-tag::before{content:none;}
.single-card-container .single-card-detail .card-categories a.pcnpc-post-tag:hover,.single-card-container .single-card-detail .card-categories a.pcnpc-post-tag:focus{opacity:1;}
.single-card-container .single-card-detail{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto 1fr auto;align-items:start;}
.single-card-container .single-card-detail>.card-categories{grid-area:1/1/2/3;}
.single-card-container .single-card-detail>.card-title{grid-area:2/1/3/3;}
.single-card-container .single-card-detail>.post-exerpt{grid-area:3/1/4/3;}
.single-card-container .single-card-detail>.post-button{grid-area:4/1/5/2;align-self:end;}
.single-card-container .single-card-detail>.card-meta{grid-area:4/2/5/3;align-self:end;justify-self:end;text-align:right;padding-top:.5em;padding-inline-start:.75em;}
@media(max-width:480px){
	.single-card-container .single-card-detail>.post-button{grid-area:4/1/5/3;}
	.single-card-container .single-card-detail>.card-meta{grid-area:5/1/6/3;}
}
.entry-cat .card-categories{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px;}
.pcnpc-entry-tags{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 6px;}
a.pcnpc-entry-tags__link{z-index:1;position:relative;display:inline-flex;align-items:center;line-height:1.4;padding:1px 5px;font-weight:400;text-decoration:none;font-size:calc(var(--typo-xxs) - 1px);color:inherit;opacity:.75;border:1px solid currentColor;border-radius:2px;background:none;}
a.pcnpc-entry-tags__link::before{content:none;}
.single-card-container .single-card-detail .card-categories a.post-category,body.single .single-page .page-header-content .entry-cat .cat-links a.post-category{top:calc(-1 * var(--pcnpc-label-lift));}
.single-card-container .single-card-detail .card-categories a.post-category::before,body.single .single-page .page-header-content .entry-cat .cat-links a.post-category::before{top:var(--pcnpc-label-lift);}
:root{--pcnpc-label-lift:.5px}
@media(max-width:965px){
	:root{--pcnpc-label-lift:1px}
}
.single-card-container .single-card-detail .card-categories a.post-category,.single-card-container .single-card-detail .card-categories a.post-category::before,body.single .single-page .page-header-content .entry-cat .cat-links a.post-category,body.single .single-page .page-header-content .entry-cat .cat-links a.post-category::before{border-radius:2px;}
@media(max-width:965px){
	.single-card-container .single-card-detail .card-categories a.pcnpc-post-tag{line-height:calc(1.6em - 2px);padding-bottom:2px;}
	a.pcnpc-entry-tags__link{line-height:calc(1.4em - 2px);padding-bottom:3px;}
	.entry-cat .pcnpc-entry-tags{position:relative;top:-1px;}
}
a.pcnpc-entry-tags__link:hover,a.pcnpc-entry-tags__link:focus{opacity:1;}
.single-card-container .single-card-detail .card-meta .post-date a::before,.single-card-container .single-card-detail .card-meta .relative-time::before{display:none;}
.single-card-container .single-card-detail .card-meta .post-date a,.single-card-container .single-card-detail .card-meta .relative-time{margin-inline-start:0;}
.single-card-container .single-card-image>a{overflow:hidden;border-radius:var(--curve-border);}
.single-card-container .single-card-image>a img{transition:transform .25s ease;}
@media (any-hover:hover){
	.single-card-container:hover .single-card-image>a img{transform:translateY(-4px) scale(1.03);}
	.single-card-container:hover .single-card-image>a{box-shadow:0 4px 12px rgba(0,0,0,.08);}
}
@media (prefers-reduced-motion:reduce){
	.single-card-container .single-card-image>a img{transition:none;}
	.single-card-container:hover .single-card-image>a img{transform:none;}
	.single-card-container:hover .single-card-image>a{box-shadow:none;}
}

/* ---- アイキャッチが無い記事のロゴの fallback（pcj-thumbnail-fallback） ---- */
img.pcnpc-thumbnail-fallback,.single-card-container .single-card-image > a img.pcnpc-thumbnail-fallback,body.single .single-page>.post-thumbnail img.pcnpc-thumbnail-fallback{display:block;width:100%;height:auto;aspect-ratio:1/0.7;object-fit:contain;box-sizing:border-box;padding:18% 0;background:var(--theme-background-hue-light,#f7f6f6);max-width:100%}
@media(min-width:768px){
	body.single .single-page>.post-thumbnail img.pcnpc-thumbnail-fallback{padding:25% 0}
}

/* ---- single の breadcrumb（pcj-breadcrumb） ---- */
.single-page > #breadcrumb-list{margin-block-end:clamp(10px,2vw,16px)}
.single-page > #breadcrumb-list .trail-items{flex-wrap:wrap}
