/* =================================================================
 * cv-stub.css — 枠ページ5本 (782/783/784/785/788) 共通 CSS（W4-5 / #92）
 *
 * 設計: docs/stub-pages-plan-2026-07.md §3・§7
 * スコープ:
 *   - レイアウト移管（サイドバー非表示・本文を列幅いっぱい）は親テーマ DOM を
 *     対象にするため body の .page-id-78x で限定（5ページ ID を列挙）。
 *   - コンポーネント（hero/badge/memo/back）は seed テンプレが付ける .cv-stub-page
 *     配下に限定（HUMAN が本文を編集しても壊れない・クラス1つで完結）。
 * 方針:
 *   - Tools Hub の教訓を踏まえ、全幅ブレイクアウト（margin:calc(-50vw+50%)）は使わない。
 *     サイドバーを隠し、本文は列幅内の中央寄せコンテナに収める（崩れにくい）。
 *   - !important 不使用・ハードコード色ゼロ（_tokens.css の --cv-* 参照）。
 *   - テンプレ（PR seed）が .cv-stub-page / クラスを付けるまで inert。
 * ================================================================= */

/* ---- レイアウト移管（5ページ ID 限定・親テーマ Newscrunch 上書き・!important なし） ---- */
.page-id-782 .spnc-col-9.spnc-sticky-sidebar,
.page-id-783 .spnc-col-9.spnc-sticky-sidebar,
.page-id-784 .spnc-col-9.spnc-sticky-sidebar,
.page-id-785 .spnc-col-9.spnc-sticky-sidebar,
.page-id-788 .spnc-col-9.spnc-sticky-sidebar {
  display: none;
}
.page-id-782 .spnc-col-7.spnc-sticky-content,
.page-id-783 .spnc-col-7.spnc-sticky-content,
.page-id-784 .spnc-col-7.spnc-sticky-content,
.page-id-785 .spnc-col-7.spnc-sticky-content,
.page-id-788 .spnc-col-7.spnc-sticky-content {
  width: 100%;
  max-width: 100%;
  flex: 0 0 100%;
}
.page-id-782 .breadcrumb-trail, .page-id-782 .breadcrumb-overlay, .page-id-782 .spnc-breadcrumb-wrap, .page-id-782 .entry-title, .page-id-782 .page-title,
.page-id-783 .breadcrumb-trail, .page-id-783 .breadcrumb-overlay, .page-id-783 .spnc-breadcrumb-wrap, .page-id-783 .entry-title, .page-id-783 .page-title,
.page-id-784 .breadcrumb-trail, .page-id-784 .breadcrumb-overlay, .page-id-784 .spnc-breadcrumb-wrap, .page-id-784 .entry-title, .page-id-784 .page-title,
.page-id-785 .breadcrumb-trail, .page-id-785 .breadcrumb-overlay, .page-id-785 .spnc-breadcrumb-wrap, .page-id-785 .entry-title, .page-id-785 .page-title,
.page-id-788 .breadcrumb-trail, .page-id-788 .breadcrumb-overlay, .page-id-788 .spnc-breadcrumb-wrap, .page-id-788 .entry-title, .page-id-788 .page-title {
  display: none;
}

/* ---- コンポーネント（.cv-stub-page 配下・1 クラスで完結） ---- */
.cv-stub-page {
  max-width: 760px;
  margin: 0 auto;
  padding: 24px 20px 64px;
  color: var(--cv-text);
}
/* WP のグループブロックは中身を .wp-block-group__inner-container で包み、
 * is-layout-constrained が子を content-size に拘束する。枠ページ内の各ブロックが
 * cv-stub-page の幅を使えるよう拘束を解除（Tools Hub と同じ対処）。 */
.cv-stub-page > .wp-block-group__inner-container > *,
.cv-stub-page .is-layout-constrained > * {
  max-width: 100%;
}

/* Hero（_tokens.css のグローバル --cv-hero-* を参照） */
.cv-stub-page .cv-stub-hero {
  background: linear-gradient(135deg, var(--cv-hero-from), var(--cv-hero-to));
  color: var(--cv-hero-text);
  border-radius: 12px;
  padding: 40px 28px;
  margin: 0 0 28px;
}
.cv-stub-page .cv-stub-hero h1 {
  color: var(--cv-hero-text);
  margin: 0 0 12px;
  line-height: 1.25;
}
.cv-stub-page .cv-stub-hero__lead {
  color: var(--cv-hero-sub);
  margin: 0;
}

/* ステータスバッジ（観察中=青 / 準備中=黄。pill・token 駆動） */
.cv-stub-page .cv-status-badge {
  display: inline-block;
  font-size: 0.85rem;
  font-weight: 600;
  border-radius: 999px;
  padding: 3px 14px;
  border: 1px solid currentColor;
  margin: 0 0 20px;
}
.cv-stub-page .cv-status-badge--observing {
  color: var(--cv-status-sub);
}
.cv-stub-page .cv-status-badge--preparing {
  color: var(--cv-status-exp);
}

/* 一言メモ */
.cv-stub-page .cv-stub-memo {
  font-size: 1.05rem;
  line-height: 1.8;
  margin: 0 0 16px;
}

/* 8月予告など補足 */
.cv-stub-page .cv-stub-note {
  color: var(--cv-text-subtle);
  margin: 0 0 28px;
}

/* Hub への導線 */
.cv-stub-page .cv-stub-back {
  margin: 32px 0 0;
}
.cv-stub-page .cv-stub-back a {
  color: var(--cv-text);
  font-weight: 500;
  text-decoration: none;
}
.cv-stub-page .cv-stub-back a:hover {
  text-decoration: underline;
}

/* a11y: フォーカスリング維持 */
.cv-stub-page a:focus-visible {
  outline: 2px solid var(--cv-status-sub);
  outline-offset: 2px;
}

/* レスポンシブ */
@media (max-width: 768px) {
  .cv-stub-page .cv-stub-hero {
    padding: 32px 20px;
  }
}
