/* いちたりないキャラクター診断：テーマ側の装飾（このページだけ） */
/* The diagnosis content itself remains untouched. The body class is assigned only on
   a WordPress page containing [ichitarinai_diagnosis]. */

/* Site header: white canvas, blue copy, subtle blue dividing line. */
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, header.site-header, header.main-header,
    header[role="banner"], .site-header, .main-header, .header-area, .header-wrap,
    #header-wrapper, .header-wrapper, #header-inner, .header-inner
) {
    background-color: #fff !important;
    background-image: none !important;
    color: #25557e !important;
    border-color: #d4e2ee !important;
}
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, header.site-header, header.main-header,
    header[role="banner"], .site-header, .main-header, .header-area, .header-wrap
) :is(a, a:link, a:visited, span, p, li, label, strong, .site-title, .site-description,
        .menu-item, .menu-item a, .nav-menu a) {
    color: #25557e !important;
}
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, .site-header, .main-header, .header-area, .header-wrap,
    #header-wrapper, .header-wrapper
) a:hover {
    color: #477da6 !important;
}
/* EASEL / Canvas menu areas, including mobile navigation. */
body.ichitarinai-diagnosis-page :is(
    #site-navigation, #navigation, #global-nav, #gnav, .site-navigation,
    .main-navigation, .global-nav, .header-nav, .menu-header-container,
    .sp-menu, .mobile-menu, .mobile-nav, .slicknav_menu
) {
    background-color: #fff !important;
    background-image: none !important;
    color: #25557e !important;
    border-color: #d4e2ee !important;
}
body.ichitarinai-diagnosis-page :is(
    #site-navigation, #navigation, #global-nav, #gnav, .site-navigation,
    .main-navigation, .global-nav, .header-nav, .menu-header-container,
    .sp-menu, .mobile-menu, .mobile-nav, .slicknav_menu
) a {
    color: #25557e !important;
}
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, .site-header, .main-header, .header-area,
    .header-wrap, .site-navigation, .main-navigation, .header-nav, .mobile-menu
) :is(.menu-toggle, .nav-toggle, .hamburger, .menu-btn, button[aria-controls*="menu"]) {
    color: #25557e !important;
    border-color: #aec8df !important;
}
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, .site-header, .main-header,
    .site-navigation, .main-navigation, .mobile-menu
) :is(.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after,
       .menu-toggle span, .nav-toggle span) {
    background-color: #25557e !important;
}
/* Search field and its submit button, excluding the quiz buttons. */
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, .site-header, .main-header, .header-area,
    .header-wrap, .search-form, .searchform, .header-search, .site-search
) :is(input[type="search"],input[type="text"],.search-field) {
    background: #fff !important;
    color: #25557e !important;
    border-color: #c4d7e9 !important;
}
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, .site-header, .main-header, .header-area,
    .header-wrap, .search-form, .searchform, .header-search, .site-search
) :is(button[type="submit"], input[type="submit"], .search-submit) {
    background: #e0eff9 !important;
    color: #25557e !important;
    border-color: #8eafce !important;
}
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, .site-header, .main-header, .header-area,
    .header-wrap, .search-form, .searchform, .header-search, .site-search
) :is(button[type="submit"],input[type="submit"],.search-submit) :is(i,svg) {
    color: #25557e !important;
    fill: currentColor;
}
/* Footer: white background, blue text and links, no dark overlay. */
body.ichitarinai-diagnosis-page :is(
    #colophon, #footer, #site-footer, footer.site-footer, footer[role="contentinfo"],
    footer#footer, .site-footer, .footer, .footer-area, .footer-wrap,
    .footer-inner, .footer-bottom, .copyright-area
) {
    background-color: #fff !important;
    background-image: none !important;
    color: #25557e !important;
    border-color: #d4e2ee !important;
}
body.ichitarinai-diagnosis-page :is(
    #colophon, #footer, #site-footer, footer.site-footer, footer[role="contentinfo"],
    .site-footer, .footer, .footer-area, .footer-wrap, .footer-inner,
    .footer-bottom, .copyright-area
) :is(p,span,small,div,a,a:visited, a:link,li) {
    color: #25557e !important;
}
body.ichitarinai-diagnosis-page :is(
    #colophon, #footer, #site-footer, .site-footer, .footer, .footer-area
) a:hover { color: #477da6 !important; }

/* The theme's page heading is redundant with the plugin's own title.
   Do not hide h1/h2 globally: the actual diagnosis heading stays visible. */
body.ichitarinai-diagnosis-page :is(
    .entry-header, .page-header, .page-title-area,
    .page-title-wrap, .post-title-wrap, .page-heading-wrap
) { display:none !important; }
body.ichitarinai-diagnosis-page :is(
    .entry-title, .page-title, .post-title, .page-heading,
    .page-header-title, h1.title, h2.title
) { display:none !important; }

/* Collapse the empty top spacing produced by the theme's page.php. */
body.ichitarinai-diagnosis-page :is(
    #primary, #main, #content, .site-content, .site-main, .content-area,
    .main-content, .content-inner, .entry-content, .page-content,
    .post-content, .article-body, .page-body, .wp-block-post-content,
    .wp-block-shortcode
) {
    margin-top:0 !important;
    padding-top:0 !important;
}
/* No stray margin between the shortcode wrapper and the diagnosis panel. */
body.ichitarinai-diagnosis-page .wp-block-shortcode:has(> #ichitarinai-diagnosis) {
    margin-block:0 !important;
    padding-block:0 !important;
}
/* Diagnosis is the whole page content: avoid the theme's blog-article bottom gap. */
body.ichitarinai-diagnosis-page article:is(.page, .type-page) {
    padding-bottom:0 !important;
    margin-bottom:0 !important;
}
body.ichitarinai-diagnosis-page :is(.entry-content, .page-content, .wp-block-shortcode) {
    margin-bottom:0 !important;
    padding-bottom:0 !important;
}


/* v1.1.1: EASEL child-theme pink accents → blue (diagnosis page only).
   The diagnosis quiz/buttons are excluded. The JS adds small helper classes to
   the existing site's search and mobile-menu elements without changing markup. */
body.ichitarinai-diagnosis-page {
    --icd-chrome-blue: #315d86;
    --icd-chrome-blue-hover: #426f99;
}

/* Search buttons: filled blue, white magnifying glass on PC and mobile. */
body.ichitarinai-diagnosis-page :is(
    .icd-theme-search-button,
    form.search-form button,
    form.searchform button,
    form[role="search"] button,
    .search-form .search-submit,
    .searchform .searchsubmit,
    .searchform #searchsubmit,
    .header-search button,
    .site-search button,
    .search-box button,
    .search-bar button,
    .search-container button,
    .search-form input[type="submit"],
    .searchform input[type="submit"]
) {
    background: #315d86 !important;
    background-color: #315d86 !important;
    background-image: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #315d86 !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
}
body.ichitarinai-diagnosis-page :is(
    .icd-theme-search-button,
    form.search-form button,
    form.searchform button,
    form[role="search"] button,
    .search-form .search-submit,
    .searchform .searchsubmit,
    .header-search button,
    .site-search button,
    .search-box button,
    .search-bar button,
    .search-container button
) :is(i, span, svg, svg path, .fa, .fas, .far),
body.ichitarinai-diagnosis-page :is(
    .icd-theme-search-button,
    .search-form .search-submit,
    .searchform .searchsubmit,
    form[role="search"] button
)::before,
body.ichitarinai-diagnosis-page :is(
    .icd-theme-search-button,
    .search-form .search-submit,
    .searchform .searchsubmit,
    form[role="search"] button
)::after {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
body.ichitarinai-diagnosis-page :is(
    .icd-theme-search-button,
    .search-form button,
    .searchform button,
    .header-search button,
    .site-search button
):hover {
    background: #426f99 !important;
    background-color: #426f99 !important;
    border-color: #426f99 !important;
}

/* Mobile menu button (the MENU outline + hamburger strokes). */
body.ichitarinai-diagnosis-page :is(
    .icd-theme-menu-toggle,
    .menu-toggle,
    .nav-toggle,
    .menu-btn,
    .menu-button,
    .menu-trigger,
    .hamburger,
    .hamburger-btn,
    .sp-menu-button,
    .sp-menu-btn,
    .sp-menu-trigger,
    .mobile-menu-toggle,
    .responsive-menu-button,
    #menu-toggle,
    #mobile-menu-button,
    #responsive-menu-button
) {
    border-color: #315d86 !important;
    color: #315d86 !important;
}
body.ichitarinai-diagnosis-page :is(
    .icd-theme-menu-toggle,
    .menu-toggle,
    .nav-toggle,
    .menu-btn,
    .menu-button,
    .menu-trigger,
    .hamburger,
    .hamburger-btn,
    .sp-menu-button,
    .sp-menu-btn,
    .mobile-menu-toggle
) :is(i, svg, svg path, .hamburger-inner, .bar, .line, .menu-line),
body.ichitarinai-diagnosis-page :is(
    .icd-theme-menu-toggle,
    .hamburger-inner,
    .menu-toggle .bar,
    .menu-toggle .line,
    .menu-btn .bar
)::before,
body.ichitarinai-diagnosis-page :is(
    .icd-theme-menu-toggle,
    .hamburger-inner,
    .menu-toggle .bar,
    .menu-toggle .line,
    .menu-btn .bar
)::after {
    color: #315d86 !important;
    border-color: #315d86 !important;
    fill: #315d86 !important;
    stroke: #315d86 !important;
    background-color: #315d86 !important;
}

/* EASEL mobile navigation dividers, including the top colored border of the opened menu. */
body.ichitarinai-diagnosis-page :is(
    #masthead, #header, #site-header, .site-header, .header-area,
    #site-navigation, #navigation, #global-nav, #gnav,
    .site-navigation, .main-navigation, .global-nav, .header-nav,
    .header-menu, .menu-container, .menu-header-container,
    .mobile-menu, .mobile-nav, .sp-menu, .slicknav_menu,
    .responsive-menu, .responsive-menu-container,
    .icd-theme-menu-panel
) {
    border-top-color: #315d86 !important;
    border-bottom-color: #315d86 !important;
}


/* v1.1.2: Exact EASEL mobile hamburger markup.
   EASEL header.php uses <label id="formenubar"><i class="fas fa-bars"></i></label>
   to toggle its #menubar checkbox, NOT a button. Earlier menu button
   selectors never matched the label, so the pink border/icon survived. */
body.ichitarinai-diagnosis-page #formenubar {
    color: #315d86 !important;
    border-color: #315d86 !important;
    outline-color: #315d86 !important;
}
body.ichitarinai-diagnosis-page #formenubar :is(i, .fa, .fas, .fa-bars),
body.ichitarinai-diagnosis-page #formenubar :is(i, .fa, .fas, .fa-bars)::before,
body.ichitarinai-diagnosis-page #formenubar::before,
body.ichitarinai-diagnosis-page #formenubar::after {
    color: #315d86 !important;
    -webkit-text-fill-color: #315d86 !important;
    text-shadow: none !important;
}
/* Preserve the original outline width, corner rounding, MENU label and
   click behavior. Only change colors on this diagnosis page. */


/* v1.1.3: Actual custom Canvas on EASEL mobile header.
   In header-archive-preview.php, the trigger is a <summary> inside
   <details class="cfp-mobile-menu">. It is not #formenubar.
   Limit both changes to the character-diagnosis page. */
body.ichitarinai-diagnosis-page #cfp-site-header .cfp-mobile-menu .cfp-mobile-menu-trigger,
body.ichitarinai-diagnosis-page .cfp-site-header .cfp-mobile-menu .cfp-mobile-menu-trigger {
    border-color: #315d86 !important;
    outline-color: #315d86 !important;
}
body.ichitarinai-diagnosis-page #cfp-site-header .cfp-mobile-menu-trigger .cfp-menu-lines > span,
body.ichitarinai-diagnosis-page .cfp-site-header .cfp-mobile-menu-trigger .cfp-menu-lines > span {
    background: #315d86 !important;
    background-color: #315d86 !important;
    border-color: #315d86 !important;
}
/* Preserve the existing blue MENU lettering. */
body.ichitarinai-diagnosis-page #cfp-site-header .cfp-mobile-menu-trigger .cfp-menu-label,
body.ichitarinai-diagnosis-page .cfp-site-header .cfp-mobile-menu-trigger .cfp-menu-label {
    color: #315d86 !important;
}
