/*
Theme Name: 脳パフォーマンスを高める生活習慣（画像忠実版 v16）
Description: お送りいただいた1536x1024画像をデスクトップでそのまま表示し、クリック可能なリンクを重ねる。モバイルは同素材から構成。
Version: 1.9.1
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: brain-exact
*/
:root{--blue:#0575d5;--navy:#0d285d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8fbff;color:var(--navy);font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN',Meiryo,sans-serif}a{color:inherit}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #ff861b;outline-offset:2px}.desk{position:relative;width:min(100%,1536px);margin:0 auto;line-height:0}.desk>.base{display:block;width:100%;height:auto}.hotspot{position:absolute;display:block;z-index:3;background:transparent;border:0;cursor:pointer;line-height:1}.hotspot:hover{background:rgba(5,117,213,.07);border-radius:7px}.hotspot:focus-visible{background:rgba(5,117,213,.15)}.desktop-search{position:absolute;z-index:10;top:8%;right:9%;width:min(370px,33%);padding:13px;background:white;border:1px solid #ccd9ec;box-shadow:0 8px 32px #11375e2d;border-radius:12px;line-height:1.4}.desktop-search[hidden]{display:none}.search-inline{display:flex;gap:6px}.search-inline input{width:100%;min-width:0;border:1px solid #b8c9da;border-radius:8px;padding:10px}.search-inline button,.button{background:#087ce0;border:0;color:#fff;padding:10px 14px;border-radius:8px;cursor:pointer}.mobile{display:none}.mobile-header{background:#fff;box-shadow:0 2px 8px #102e5f12;padding:14px 15px;display:flex;justify-content:space-between;align-items:center;gap:15px}.mobile-logo{font-size:clamp(17px,4.4vw,25px);font-weight:900;color:#087cda;text-decoration:none;line-height:1.3}.mobile-toggle{background:#fff;border:1px solid #d6e1f1;border-radius:8px;padding:9px 12px;min-width:48px}.mobile-nav{display:none;padding:9px 16px 18px;background:white;box-shadow:0 3px 8px #1228481b}.mobile-nav.open{display:grid;gap:4px}.mobile-nav a{display:block;padding:11px 8px;font-size:15px;font-weight:700;text-decoration:none}.mobile-nav .signup{background:#ff634e;color:white;border-radius:8px;text-align:center;margin-top:4px}.mobile-nav .member{background:#edf5fe;color:#0767bc;border-radius:8px;text-align:center}.mobile-hero{background:#fff;padding:22px 16px 12px}.mobile-hero h1{margin:0;font-size:clamp(26px,6vw,38px);line-height:1.55;letter-spacing:-.03em}.mobile-hero p{line-height:1.8;font-size:14px}.mobile-hero img{width:100%;height:auto;display:block;object-fit:contain}.underline{border-bottom:5px solid #55b2f6}.underline.green{border-color:#4bb98d}.underline.orange{border-color:#f9876d}.underline.yellow{border-color:#f9d84d}.mobile-main{padding:10px 13px 30px}.mobile-section{background:white;border-radius:16px;padding:16px;margin-bottom:14px;box-shadow:0 1px 8px #1635590f}.section-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:14px}.section-title h2{font-size:20px;margin:0}.section-title h2:before{content:'●';color:#168ce9;font-size:14px;margin-right:8px}.section-title a{color:#087de1;font-size:13px;text-decoration:none}.mobile-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mobile-post{display:flex;flex-direction:column;border:1px solid #e5eaf1;border-radius:12px;overflow:hidden;text-decoration:none}.mobile-post img{width:100%;aspect-ratio:1.5;object-fit:cover}.mobile-post-info{padding:10px;display:flex;flex-direction:column;gap:7px}.mobile-post-info strong{font-size:13px;line-height:1.6}.mobile-post-info time{color:#8792a2;font-size:11px}.mobile-post-info em{font-size:10px;color:#788ca3;font-style:normal}.mobile-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.mobile-cats a{display:block;border:1px solid #e1eaf2;border-radius:11px;overflow:hidden}.mobile-cats img{display:block;width:100%;height:auto}.mobile-policy img{display:block;width:100%;height:auto}.mobile-policy ol{font-size:13px;line-height:1.7}.mobile-search{display:flex;gap:7px}.mobile-search input{padding:11px;border:1px solid #ccd9e6;border-radius:8px;min-width:0;flex:1}.mobile-search button{border:0;background:#168ce9;color:#fff;padding:10px 15px;border-radius:8px}.foot{padding:20px;text-align:center;color:#71849b;font-size:12px}.content{max-width:850px;margin:30px auto;padding:0 18px}.content article,.content>.panel{padding:24px;background:#fff;border:1px solid #e2eaf4;border-radius:14px;margin-bottom:16px;line-height:1.85}.content img{max-width:100%;height:auto}.content h1{font-size:clamp(25px,4vw,37px);line-height:1.5}.content h2{line-height:1.5}.content a{color:#086bc7}.content input,.content textarea{max-width:100%;padding:11px;border:1px solid #cddae9;border-radius:7px}.content label{display:block;margin:12px 0}.content textarea{width:100%}.content button{padding:10px 17px;border:0;color:white;background:#087ce0;border-radius:7px}.content .post-preview{display:grid;grid-template-columns:160px 1fr;gap:18px}.post-preview img{width:160px;aspect-ratio:1.3;object-fit:cover;border-radius:8px}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:1100px){.desk{display:none}.mobile{display:block}.mobile-header,.mobile-nav,.mobile-main,.mobile-hero{max-width:850px;margin:auto}.mobile-posts{grid-template-columns:repeat(2,1fr)}}@media(max-width:540px){.mobile-posts{grid-template-columns:1fr}.mobile-post{flex-direction:row;min-height:125px}.mobile-post img{width:42%;aspect-ratio:auto;object-fit:cover}.mobile-post-info{flex:1}.mobile-cats{grid-template-columns:1fr}.mobile-cats img{max-height:235px;object-fit:contain}.content .post-preview{grid-template-columns:1fr}}

/* v8: preserve exact backdrop, but replace only its four baked-in article cards */
.desktop-live-posts{position:absolute;left:3.4%;top:43.05%;width:93.3%;height:18.38%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.3%;z-index:4;line-height:normal;background:#fff}
.desktop-live-card{display:flex;overflow:hidden;min-width:0;height:100%;background:#fff;border:1px solid #e8eaf0;box-shadow:0 2px 7px #112f5610;border-radius:12px;text-decoration:none;color:#111827;transition:transform .2s,box-shadow .2s}
.desktop-live-card:hover{transform:translateY(-2px);box-shadow:0 7px 17px #153b6e1b}
.desktop-live-image{width:47.5%;height:100%;object-fit:cover;flex-shrink:0;display:block}
.desktop-live-details{flex:1;min-width:0;display:flex;flex-direction:column;padding:10px 11px 10px;gap:5px;overflow:hidden}
.desktop-live-category{align-self:flex-start;border-radius:12px;background:#2682cb;color:white;font-size:11px;line-height:1.3;padding:4px 10px;font-weight:700;white-space:nowrap}
.desktop-live-category.category-1{background:#249868}.desktop-live-category.category-2{background:#f16a3d}.desktop-live-category.category-3{background:#e6b833}
.desktop-live-details strong{font-size:clamp(10px,.95vw,15px);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.desktop-live-excerpt{font-size:clamp(8px,.73vw,11px);line-height:1.6;color:#64718b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.desktop-live-details time{font-size:clamp(8px,.73vw,11px);color:#8a93a5;margin-top:auto}
@media(min-width:1101px) and (max-width:1280px){.desktop-live-details{padding:6px;gap:3px}.desktop-live-category{font-size:9px;padding:2px 7px}}

/* v10: ensure links in the image map remain clickable */
.hotspot{pointer-events:auto}.desktop-live-card{position:relative;pointer-events:auto}.desk>.base{pointer-events:none}

/* v11: remove duplicate evaluation list on mobile/tablet; only real posts appear. */
.mobile-policy ol{display:none!important}
@media(max-width:1100px){.mobile-policy img{width:100%;height:auto;display:block}}

/* v12: label colors follow the real post category, not the card position. */
.desktop-live-category.category-sleep{background:#1683d5}
.desktop-live-category.category-exercise{background:#249868}
.desktop-live-category.category-nutrition{background:#f16a3d}
.desktop-live-category.category-learning{background:#e6b833}
.desktop-live-category.category-other{background:#a33ce0}

/* V13: keep complete editorial artwork visible in post card thumbnails; no cropping. */
.desktop-live-image{object-fit:contain!important;object-position:center center!important;background:#fff}
.mobile-post img{object-fit:contain!important;object-position:center center!important;background:#fff}
/* Keep complete site mockup and decorative art visible at original aspect ratios. */
.desk>.base{object-fit:contain!important;object-position:center!important;height:auto!important}
.mobile-hero img{object-fit:contain!important;height:auto!important}

/* V14: fill the article thumbnail area without white strips. */
.desktop-live-image{object-fit:cover!important;object-position:center center!important}
.mobile-post img{object-fit:cover!important;object-position:center center!important}

/* v15: preserve exact uploaded artwork, cover article photo slots; responsive image crops are built from the reference. */
.desktop-live-image{object-fit:cover!important;object-position:center center!important}
.mobile-post img{object-fit:cover!important}

/* v19: tablet/mobile only — remove duplicate section headings while preserving category links and policy content. */
@media (max-width: 1100px) {
  #categories-mobile > .secondary-section-title,
  #policy-mobile > .secondary-section-title { display: none !important; }
  #categories-mobile, #policy-mobile { overflow: hidden; }
  #policy-mobile { padding: 8px; }
  #policy-mobile > img { display: block; width: 100%; height: auto; max-width: 675px; margin: 0 auto; object-fit: contain; }
}
@media (max-width: 540px) {
  #policy-mobile { padding: 4px; }
  #policy-mobile > img { max-width: 100%; }
}

/* v19.1: tablet (541–1100px) uses the original five-column policy graphic; phone keeps the vertical graphic. */
@media (max-width:1100px) {
 #policy-mobile > .responsive-policy-art {display:block;width:100%;max-width:none;margin:0 auto;}
 #policy-mobile > .responsive-policy-art img {display:block;width:100%;height:auto;object-fit:contain;}
}
@media (min-width:541px) and (max-width:1100px) {
 #policy-mobile {padding:8px;}
}
