/* IZNM iznm-base-override.css v2.6.5 */
/* ============================================================
   IZNM BASE OVERRIDE v3.0 - ニューモーフィズム専用
   GeneratePress上書き・全ページ統一
   ============================================================ */

/* ══ ニューモ変数 ══ */
:root {
  --nm-bg:         #1e1e1e;
  --nm-bg-deep:    #1a1a1a;
  --nm-bg-raised:  #252525;
  --nm-shadow-out: 6px 6px 14px #111, -4px -4px 10px #2c2c2c;
  --nm-shadow-in:  inset 4px 4px 10px #111, inset -3px -3px 8px #2c2c2c;
  --nm-shadow-btn: 5px 5px 12px #111, -3px -3px 8px #2a2a2a;
  --nm-text:       #d0d0d0;
  --nm-text-muted: #888888;
  --nm-text-dim:   #555555;
  --nm-border:     #252525;
  --nm-red:        #c0392b;
  --iznm-black:    #1e1e1e;
  --iznm-white:    #d0d0d0;
  --iznm-dark:     #1a1a1a;
}

/* ══ body・html ══ */
html,
body {
  background: #1e1e1e !important;
  background-color: #1e1e1e !important;
  color: #d0d0d0 !important;
  font-size: 18px;
  line-height: 1.85;
}

/* ══ GeneratePress コンテナ ══ */
.site-content,
.content-area,
.entry-content,
main,
.site-main,
article,
.inside-article,
.grid-container,
.container,
.inside-container,
.site,
.hfeed {
  background: transparent !important;
  background-color: transparent !important;
}

/* separate-containers のデフォルト白背景を上書き */
.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.one-container .container,
.separate-containers .paging-navigation,
.inside-page-header {
  background-color: transparent !important;
}

/* inside-article のGeneratePressデフォルトpadding(40px)を除去 */
.inside-article {
  padding: 0 !important;
}

/* ══ フォントサイズ・行高 ══ */
p, li, .entry-content p { font-size: 18px !important; line-height: 1.85 !important; }
label { font-size: 16px; }
h1 { font-size: clamp(36px, 8vw, 72px) !important; color: #d0d0d0 !important; }
h2 { font-size: clamp(28px, 6vw, 52px) !important; color: #d0d0d0 !important; }
h3 { font-size: clamp(22px, 4vw, 32px) !important; color: #d0d0d0 !important; }
h4, h5, h6 { color: #d0d0d0 !important; }

/* ══ ヘッダー ══ */
#iznm-header {
  background: #1e1e1e !important;
  box-shadow: 0 4px 12px #111 !important;
  border-bottom: 1px solid #252525 !important;
}
.site-header,
#site-header,
.main-navigation,
.inside-header {
  background: transparent !important;
  background-color: transparent !important;
}

/* ══ フッター ══ */
#iznm-footer {
  background: #1e1e1e !important;
  border-top: 1px solid #252525 !important;
  box-shadow: 0 -4px 12px #111 !important;
}
.site-footer,
#site-footer,
.inside-site-info,
.site-info {
  background: transparent !important;
  background-color: transparent !important;
}

/* ══ IDページ：ヘッダー・フッター・タイトル非表示 ══ */
body.iznm-is-id-page header,
body.iznm-is-id-page #iznm-header,
body.iznm-is-id-page .site-header,
body.iznm-is-id-page .main-navigation,
body.iznm-is-id-page #site-navigation { display: none !important; }

body.iznm-is-id-page footer,
body.iznm-is-id-page #iznm-footer,
body.iznm-is-id-page .site-footer { display: none !important; }

body.iznm-is-id-page .entry-header,
body.iznm-is-id-page .page-header,
body.iznm-is-id-page h1.entry-title,
body.iznm-is-id-page .entry-title { display: none !important; }

body.iznm-is-id-page .site-content { padding-top: 0 !important; }
body.iznm-is-id-page .content-area { margin-top: 0 !important; }

/* ══ リンク ══ */
a { color: #888 !important; }
a:hover { color: #ccc !important; }
a:visited { color: #777 !important; }

/* ══ スクロールバー ══ */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #1a1a1a; }
::-webkit-scrollbar-thumb { background: #2e2e2e; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #3a3a3a; }

/* ══ WooCommerce デフォルト上書き ══ */
/* WC :where() セレクタ対策 */
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button {
  background: #1e1e1e !important;
  color: #ccc !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 5px 5px 12px #111, -3px -3px 8px #2a2a2a !important;
  font-family: 'Noto Sans JP', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  padding: 14px 24px !important;
  text-shadow: none !important;
}
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt,
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt {
  background: #1e1e1e !important;
  color: #d0d0d0 !important;
  border-top: 1px solid #282828 !important;
  border-left: 1px solid #282828 !important;
  border-right: none !important;
  border-bottom: none !important;
}

/* GeneratePressデフォルトボタン上書き */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"],
a.button,
a.wp-block-button__link:not(.has-background) {
  background: #1e1e1e !important;
  color: #ccc !important;
  border: none !important;
  box-shadow: 5px 5px 12px #111, -3px -3px 8px #2a2a2a !important;
  text-shadow: none !important;
  border-radius: 10px !important;
}

/* GeneratePressデフォルト入力フィールド上書き */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select {
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
  color: #bbb !important;
  border-color: #2a2a2a !important;
  border-radius: 10px !important;
  box-shadow: inset 4px 4px 10px #111, inset -3px -3px 8px #2c2c2c !important;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
  background: #1a1a1a !important;
  color: #d0d0d0 !important;
  border-color: #444 !important;
  outline: none !important;
  box-shadow: inset 5px 5px 12px #0e0e0e, inset -3px -3px 8px #2a2a2a !important;
}

/* ══ WP管理バー ══ */
#wpadminbar { background: #111 !important; }

/* ══ WooCommerceのnotice上書き ══ */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  background: #1e1e1e !important;
  border: none !important;
  border-left: 3px solid #444 !important;
  border-radius: 0 10px 10px 0 !important;
  box-shadow: var(--nm-shadow-out) !important;
  color: #888 !important;
  font-family: 'Noto Sans JP', sans-serif !important;
  font-size: 13px !important;
  padding: 16px 20px !important;
  margin-bottom: 16px !important;
}
.woocommerce-error { border-left-color: #c0392b !important; color: #a06060 !important; }
.woocommerce-message { border-left-color: #3a5a3a !important; }
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before { display: none !important; }

/* ══ WP標準ログインページ ══ */
body.login {
  background: #1e1e1e !important;
}
body.login #login {
  background: transparent !important;
  box-shadow: none !important;
}
body.login h1 a {
  background-image: url('http://staging.iznm.jp/wp-content/uploads/2026/03/iznm-logo-tag-w.png') !important;
  background-size: contain !important;
  width: 160px !important;
  height: 80px !important;
}
body.login #loginform,
body.login #registerform {
  background: #1e1e1e !important;
  border: none !important;
  border-radius: 16px !important;
  box-shadow: 8px 8px 20px #111, -5px -5px 14px #2a2a2a !important;
  padding: 32px !important;
}
body.login label {
  font-family: 'Noto Sans JP', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 0.15em !important;
  color: #666 !important;
}
body.login input[type="text"],
body.login input[type="password"] {
  background: #1a1a1a !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: inset 4px 4px 10px #111, inset -3px -3px 8px #2c2c2c !important;
  color: #bbb !important;
  font-size: 15px !important;
  padding: 13px 16px !important;
}
body.login .button-primary {
  background: #1e1e1e !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 5px 5px 12px #111, -3px -3px 8px #2a2a2a !important;
  color: #ccc !important;
  font-family: 'Noto Sans JP', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  padding: 14px 24px !important;
  text-shadow: none !important;
  width: 100% !important;
}
body.login #nav a,
body.login #backtoblog a {
  color: #555 !important;
  font-size: 11px !important;
  text-decoration: none !important;
}

/* ══ my-account ログイン・登録フォーム（ニューモ） ══ */
.woocommerce-account:not(.logged-in) .woocommerce {
  max-width: 460px;
  margin: 0 auto;
  padding: 0 20px;
}
.woocommerce-account:not(.logged-in) .woocommerce .col2-set {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}
.woocommerce-account:not(.logged-in) .woocommerce .col2-set .col-1,
.woocommerce-account:not(.logged-in) .woocommerce .col2-set .col-2 {
  width: 100% !important;
  float: none !important;
}
/* カード */
.woocommerce-account:not(.logged-in) .woocommerce .col-1,
.woocommerce-account:not(.logged-in) .woocommerce .col-2 {
  background: #1e1e1e !important;
  border-radius: 16px !important;
  box-shadow: 8px 8px 20px #111, -5px -5px 14px #2a2a2a !important;
  padding: 28px 24px !important;
}
/* タイトル */
.woocommerce-account:not(.logged-in) .woocommerce h2 {
  font-family: 'Noto Sans JP', sans-serif !important;
  font-size: 9px !important;
  letter-spacing: 0.35em !important;
  text-transform: uppercase !important;
  color: #666 !important;
  margin-bottom: 20px !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  border-bottom: 1px solid #252525 !important;
  padding-bottom: 14px !important;
}
.woocommerce-account:not(.logged-in) .woocommerce h2::before {
  content: '';
  display: inline-block;
  width: 11px; height: 11px;
  background-image: url('http://staging.iznm.jp/wp-content/uploads/2026/03/iznm-logo-slash-w.png');
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.2;
  filter: brightness(4);
}
/* ラベル */
.woocommerce-account:not(.logged-in) .woocommerce form .form-row label {
  font-family: 'Noto Sans JP', sans-serif !important;
  font-size: 10px !important;
  letter-spacing: 0.15em !important;
  color: #666 !important;
  font-weight: 500 !important;
  margin-bottom: 7px !important;
}
/* 入力欄（凹み） */
.woocommerce-account:not(.logged-in) .woocommerce form .form-row input.input-text,
.woocommerce-account:not(.logged-in) .woocommerce form input[type="email"],
.woocommerce-account:not(.logged-in) .woocommerce form input[type="text"],
.woocommerce-account:not(.logged-in) .woocommerce form input[type="password"] {
  background: #1a1a1a !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: inset 4px 4px 10px #111, inset -3px -3px 8px #2c2c2c !important;
  color: #bbb !important;
  font-size: 14px !important;
  padding: 13px 16px !important;
}
/* ボタン（立体） */
.woocommerce-account:not(.logged-in) .woocommerce form .woocommerce-button,
.woocommerce-account:not(.logged-in) .woocommerce form button[type="submit"],
.woocommerce-account:not(.logged-in) .woocommerce-form-login__submit,
.woocommerce-account:not(.logged-in) .woocommerce-form-register__submit {
  background: #1e1e1e !important;
  color: #ccc !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 5px 5px 12px #111, -3px -3px 8px #2a2a2a !important;
  font-family: 'Noto Sans JP', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2em !important;
  padding: 14px 24px !important;
  width: 100% !important;
  margin-top: 8px !important;
  text-shadow: none !important;
}
/* プライバシーポリシー文 */
.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text,
.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text p {
  font-size: 12px !important;
  color: #555 !important;
  line-height: 1.8 !important;
}
.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text a {
  color: #666 !important;
}
/* チェックボックスラベル */
.woocommerce-account:not(.logged-in) .woocommerce-form__label-for-checkbox {
  font-size: 13px !important;
  color: #666 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
/* パスワード忘れ */
.woocommerce-account:not(.logged-in) .woocommerce-LostPassword a {
  font-size: 11px !important;
  color: #555 !important;
  text-decoration: none !important;
}
/* PC横並び */
@media (min-width: 768px) {
  .woocommerce-account:not(.logged-in) .woocommerce {
    max-width: 940px;
    padding: 0 20px;
  }
  .woocommerce-account:not(.logged-in) .woocommerce .col2-set {
    flex-direction: row !important;
    gap: 12px !important;
  }
  .woocommerce-account:not(.logged-in) .woocommerce .col2-set .col-1,
  .woocommerce-account:not(.logged-in) .woocommerce .col2-set .col-2 {
    width: calc(50% - 6px) !important;
  }
}

/* ══ my-accountページタイトル非表示 ══ */
.woocommerce-account .entry-title { display: none !important; }
.woocommerce-MyAccount-navigation { display: none !important; }
.woocommerce-MyAccount-content { float: none !important; width: 100% !important; }