/* -----------------------------------
   カツナビ オリジナルブロック
----------------------------------- */
:root,
.editor-styles-wrapper,
.block-editor-block-preview__content,
.block-editor-inserter__preview-content {
    --katsu-primary: #f25822;
    --katsu-primary-dark: #d94b1a;
    --katsu-primary-soft: #fff5f2;
    --katsu-heading-bg: #ffdccc;
    --katsu-primary-border: #f5c4b0;
    --katsu-accent: #00c366;
    --katsu-accent-dark: #00a154;
    --katsu-text-main: #333333;
    --katsu-text-muted: #666666;
    --katsu-box-radius: 10px;
}

.single__content,
.editor-styles-wrapper,
.block-editor-block-preview__content,
.block-editor-inserter__preview-content {
    --primary-color: var(--katsu-primary);
    --primary-dark: var(--katsu-primary-dark);
    --bg-light: var(--katsu-primary-soft);
    --accent-color: var(--katsu-accent);
    --accent-dark: var(--katsu-accent-dark);
    --text-main: var(--katsu-text-main);
    --text-muted: var(--katsu-text-muted);
    --border-color: #ead8d0;
}

/* 画像キャプション */
.single__content .wp-block-image figcaption,
.single__content .wp-block-image .wp-element-caption,
.editor-styles-wrapper .wp-block-image figcaption,
.editor-styles-wrapper .wp-block-image .wp-element-caption,
.block-editor-block-preview__content .wp-block-image figcaption,
.block-editor-block-preview__content .wp-block-image .wp-element-caption {
    margin: 0.45rem 0 0;
    font-size: 0.82rem;
    line-height: 1.5;
    color: #888;
    text-align: center;
}

/* note 風リンクカード（埋め込み URL） */
.editor-styles-wrapper .wp-block-embed.katsu-link-card-wrap,
.block-editor-block-preview__content .wp-block-embed.katsu-link-card-wrap {
    position: static;
    overflow: visible;
}
.editor-styles-wrapper .wp-block-embed.katsu-link-card-wrap .wp-block-embed__wrapper,
.editor-styles-wrapper .wp-block-embed.katsu-link-card-wrap iframe,
.block-editor-block-preview__content .wp-block-embed.katsu-link-card-wrap .wp-block-embed__wrapper,
.block-editor-block-preview__content .wp-block-embed.katsu-link-card-wrap iframe {
    display: none !important;
}
.editor-styles-wrapper .katsu-link-card,
.block-editor-block-preview__content .katsu-link-card,
.block-editor-inserter__preview-content .katsu-link-card {
    display: flex;
    align-items: stretch;
    gap: 0;
    width: 100%;
    min-height: 108px;
    margin: 0;
    padding: 0;
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    background: #fff;
    color: inherit;
    text-decoration: none;
    overflow: hidden;
    transition: border-color 0.2s, box-shadow 0.2s;
}
.editor-styles-wrapper .katsu-link-card:hover,
.block-editor-block-preview__content .katsu-link-card:hover,
.block-editor-inserter__preview-content .katsu-link-card:hover {
    border-color: #cfcfcf;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    color: inherit;
    text-decoration: none;
}
.editor-styles-wrapper .katsu-link-card__body,
.block-editor-block-preview__content .katsu-link-card__body,
.block-editor-inserter__preview-content .katsu-link-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: center;
    gap: 0.35rem;
    min-width: 0;
    padding: 14px 16px;
}
.editor-styles-wrapper .katsu-link-card__title,
.block-editor-block-preview__content .katsu-link-card__title,
.block-editor-inserter__preview-content .katsu-link-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.45;
    color: var(--text-main);
}
.editor-styles-wrapper .katsu-link-card__description,
.block-editor-block-preview__content .katsu-link-card__description,
.block-editor-inserter__preview-content .katsu-link-card__description {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 0.78rem;
    line-height: 1.55;
    color: var(--text-muted);
}
.editor-styles-wrapper .katsu-link-card__domain,
.block-editor-block-preview__content .katsu-link-card__domain,
.block-editor-inserter__preview-content .katsu-link-card__domain {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.15rem;
    font-size: 0.72rem;
    line-height: 1.4;
    color: #888;
}
.editor-styles-wrapper .katsu-link-card__favicon,
.block-editor-block-preview__content .katsu-link-card__favicon,
.block-editor-inserter__preview-content .katsu-link-card__favicon {
    flex-shrink: 0;
    width: 16px;
    height: 16px;
    border-radius: 2px;
}
.editor-styles-wrapper .katsu-link-card__thumb,
.block-editor-block-preview__content .katsu-link-card__thumb,
.block-editor-inserter__preview-content .katsu-link-card__thumb {
    flex: 0 0 140px;
    width: 140px;
    align-self: stretch;
    overflow: hidden;
    border-left: 1px solid #eee;
    background: #f7f7f7;
}
.editor-styles-wrapper .katsu-link-card__thumb img,
.block-editor-block-preview__content .katsu-link-card__thumb img,
.block-editor-inserter__preview-content .katsu-link-card__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 108px;
    object-fit: cover;
    object-position: center;
}

.editor-styles-wrapper .wp-block-embed.katsu-article-card-wrap,
.block-editor-block-preview__content .wp-block-embed.katsu-article-card-wrap {
    position: static;
    overflow: visible;
    margin: 0 0 1.25rem;
}
@media (min-width: 769px) {
    .editor-styles-wrapper .wp-block-embed.katsu-article-card-wrap,
    .block-editor-block-preview__content .wp-block-embed.katsu-article-card-wrap {
        max-width: 480px;
        margin-left: 0;
        margin-right: auto;
    }
}
.editor-styles-wrapper .wp-block-embed.katsu-article-card-wrap .wp-block-embed__wrapper,
.editor-styles-wrapper .wp-block-embed.katsu-article-card-wrap iframe,
.block-editor-block-preview__content .wp-block-embed.katsu-article-card-wrap .wp-block-embed__wrapper,
.block-editor-block-preview__content .wp-block-embed.katsu-article-card-wrap iframe {
    display: none !important;
}
.editor-styles-wrapper .katsu-article-card,
.block-editor-block-preview__content .katsu-article-card,
.block-editor-inserter__preview-content .katsu-article-card {
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.04);
}
.editor-styles-wrapper .katsu-article-card__link,
.block-editor-block-preview__content .katsu-article-card__link,
.block-editor-inserter__preview-content .katsu-article-card__link {
    display: block;
    color: inherit;
    text-decoration: none;
}
.editor-styles-wrapper .katsu-article-card__media img,
.block-editor-block-preview__content .katsu-article-card__media img,
.block-editor-inserter__preview-content .katsu-article-card__media img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
.editor-styles-wrapper .katsu-article-card__media--placeholder,
.block-editor-block-preview__content .katsu-article-card__media--placeholder,
.block-editor-inserter__preview-content .katsu-article-card__media--placeholder {
    aspect-ratio: 16 / 9;
}
.editor-styles-wrapper .katsu-article-card__body,
.block-editor-block-preview__content .katsu-article-card__body,
.block-editor-inserter__preview-content .katsu-article-card__body {
    display: block;
    padding: 18px 20px 16px;
}
.editor-styles-wrapper .katsu-article-card__title,
.block-editor-block-preview__content .katsu-article-card__title,
.block-editor-inserter__preview-content .katsu-article-card__title {
    display: block;
    margin: 0 0 10px;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.5;
    color: var(--katsu-text-main);
}
.editor-styles-wrapper .katsu-article-card__excerpt,
.block-editor-block-preview__content .katsu-article-card__excerpt,
.block-editor-inserter__preview-content .katsu-article-card__excerpt {
    display: block;
    font-size: 0.88rem;
    line-height: 1.7;
    color: var(--katsu-text-muted);
}
.editor-styles-wrapper .katsu-article-card__readmore,
.block-editor-block-preview__content .katsu-article-card__readmore,
.block-editor-inserter__preview-content .katsu-article-card__readmore {
    color: #1a73e8;
    font-weight: 500;
}
.editor-styles-wrapper .katsu-article-card__footer,
.block-editor-block-preview__content .katsu-article-card__footer,
.block-editor-inserter__preview-content .katsu-article-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 20px;
    border-top: 1px solid #eee;
}
.editor-styles-wrapper .katsu-article-card__brand,
.block-editor-block-preview__content .katsu-article-card__brand,
.block-editor-inserter__preview-content .katsu-article-card__brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--katsu-text-main);
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
}
.editor-styles-wrapper .katsu-article-card__brand-icon,
.block-editor-block-preview__content .katsu-article-card__brand-icon,
.block-editor-inserter__preview-content .katsu-article-card__brand-icon {
    width: 20px;
    height: 20px;
    border-radius: 4px;
}
.editor-styles-wrapper .katsu-article-card__share.post-share-btn,
.block-editor-block-preview__content .katsu-article-card__share.post-share-btn,
.block-editor-inserter__preview-content .katsu-article-card__share.post-share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 999px;
    background: transparent;
    color: #666;
}

/* 背景色付きブロック（段落・リスト） */
.editor-styles-wrapper p.has-background,
.editor-styles-wrapper .wp-block-paragraph.has-background,
.block-editor-block-preview__content p.has-background,
.block-editor-block-preview__content .wp-block-paragraph.has-background {
    padding: 1rem 1.25rem;
}
.editor-styles-wrapper ul.has-background,
.editor-styles-wrapper ol.has-background,
.editor-styles-wrapper .wp-block-list.has-background,
.block-editor-block-preview__content ul.has-background,
.block-editor-block-preview__content ol.has-background,
.block-editor-block-preview__content .wp-block-list.has-background {
    padding: 1rem 1.25rem 1rem 2rem;
    list-style-position: outside;
}

/* セクション見出し（H2）— 薄いオレンジ帯＋黒文字 */
.single__content h2,
.editor-styles-wrapper h2,
.block-editor-block-preview__content h2,
.single__content .wp-block-heading.is-style-katsu-section,
.editor-styles-wrapper .wp-block-heading.is-style-katsu-section,
.block-editor-block-preview__content .wp-block-heading.is-style-katsu-section {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 2.5rem 0 1rem;
    padding: 12px 16px;
    color: var(--katsu-text-main) !important;
    background: var(--katsu-heading-bg);
    border: none;
    border-radius: 0;
}

.single__content h2::after,
.editor-styles-wrapper h2::after,
.block-editor-block-preview__content h2::after,
.single__content .wp-block-heading.is-style-katsu-section::after,
.editor-styles-wrapper .wp-block-heading.is-style-katsu-section::after,
.block-editor-block-preview__content .wp-block-heading.is-style-katsu-section::after {
    display: none;
}

/* 見出しスタイル：帯見出し（必要なときだけ使う） */
.single__content .wp-block-heading.is-style-katsu-band,
.editor-styles-wrapper .wp-block-heading.is-style-katsu-band,
.block-editor-block-preview__content .wp-block-heading.is-style-katsu-band {
    padding: 14px 18px;
    color: #fff !important;
    background: linear-gradient(135deg, var(--katsu-primary) 0%, var(--katsu-primary-dark) 100%);
    border: none;
    border-left: none;
    border-radius: 4px;
}

.single__content .wp-block-heading.is-style-katsu-band::after,
.editor-styles-wrapper .wp-block-heading.is-style-katsu-band::after,
.block-editor-block-preview__content .wp-block-heading.is-style-katsu-band::after {
    display: none;
}

.single__content .wp-block-separator.is-style-katsu-section,
.editor-styles-wrapper .wp-block-separator.is-style-katsu-section {
    border: none;
    height: 2px;
    background: linear-gradient(90deg, var(--katsu-primary) 0%, rgba(242, 88, 34, 0.12) 100%);
    margin: 2.5rem 0;
}

/* 情報ボックス */
.single__content .katsu-info-box,
.editor-styles-wrapper .katsu-info-box,
.block-editor-block-preview__content .katsu-info-box,
.block-editor-inserter__preview-content .katsu-info-box {
    margin: 2rem 0;
    border-radius: var(--katsu-box-radius);
    overflow: hidden;
    border: 2px solid var(--katsu-primary-border);
    box-shadow: 0 4px 14px rgba(242, 88, 34, 0.08);
}

.single__content .katsu-info-box__head,
.editor-styles-wrapper .katsu-info-box__head,
.block-editor-block-preview__content .katsu-info-box__head,
.block-editor-inserter__preview-content .katsu-info-box__head {
    background: linear-gradient(135deg, var(--katsu-primary) 0%, var(--katsu-primary-dark) 100%);
    padding: 13px 18px;
}

.single__content .katsu-info-box__head p,
.editor-styles-wrapper .katsu-info-box__head p,
.block-editor-block-preview__content .katsu-info-box__head p,
.block-editor-inserter__preview-content .katsu-info-box__head p {
    margin: 0;
    color: #fff !important;
    font-weight: 700;
    font-size: 1rem;
    line-height: 1.5;
}

.single__content .katsu-info-box__body,
.editor-styles-wrapper .katsu-info-box__body,
.block-editor-block-preview__content .katsu-info-box__body,
.block-editor-inserter__preview-content .katsu-info-box__body {
    background: var(--katsu-primary-soft);
    padding: 18px 20px;
}

.single__content .katsu-info-box__body > :last-child,
.editor-styles-wrapper .katsu-info-box__body > :last-child {
    margin-bottom: 0;
}

.single__content .katsu-info-box__body p,
.single__content .katsu-info-box__body li,
.editor-styles-wrapper .katsu-info-box__body p,
.editor-styles-wrapper .katsu-info-box__body li,
.block-editor-block-preview__content .katsu-info-box__body p,
.block-editor-block-preview__content .katsu-info-box__body li {
    color: var(--katsu-text-main);
}

/* ポイントボックス */
.single__content .katsu-point-box,
.single__content .wp-block-group.is-style-katsu-point,
.editor-styles-wrapper .katsu-point-box,
.editor-styles-wrapper .wp-block-group.is-style-katsu-point,
.block-editor-block-preview__content .katsu-point-box {
    margin: 2rem 0;
    padding: 18px 20px 18px 22px;
    background: linear-gradient(90deg, var(--katsu-primary-soft) 0%, #fff 100%);
    border: 1px solid var(--katsu-primary-border);
    border-left: 5px solid var(--katsu-primary);
    border-radius: 0 var(--katsu-box-radius) var(--katsu-box-radius) 0;
    box-shadow: 0 2px 10px rgba(242, 88, 34, 0.06);
}

.single__content .katsu-point-box p,
.editor-styles-wrapper .katsu-point-box p,
.block-editor-block-preview__content .katsu-point-box p {
    color: var(--katsu-text-main);
}

.single__content .katsu-point-box > :last-child,
.editor-styles-wrapper .katsu-point-box > :last-child {
    margin-bottom: 0;
}

.single__content .katsu-point-box__label,
.editor-styles-wrapper .katsu-point-box__label,
.block-editor-block-preview__content .katsu-point-box__label {
    font-weight: 700;
    color: var(--katsu-primary);
}

.single__content .katsu-point-box__label strong,
.editor-styles-wrapper .katsu-point-box__label strong,
.block-editor-block-preview__content .katsu-point-box__label strong {
    color: var(--katsu-primary);
}

.single__content .katsu-step__title,
.editor-styles-wrapper .katsu-step__title,
.block-editor-block-preview__content .katsu-step__title {
    font-weight: 700;
}

/* 合わせて読みたい */
.single__content .katsu-related-box,
.editor-styles-wrapper .katsu-related-box,
.block-editor-block-preview__content .katsu-related-box {
    margin: 2rem 0;
    padding: 18px 20px;
    border: 2px solid var(--katsu-primary);
    border-radius: var(--katsu-box-radius);
    background: #fff;
    box-shadow: 0 3px 12px rgba(242, 88, 34, 0.07);
}

.single__content .katsu-related-box__label,
.editor-styles-wrapper .katsu-related-box__label,
.block-editor-block-preview__content .katsu-related-box__label {
    margin: 0 0 12px !important;
    font-weight: 700;
    color: var(--katsu-primary) !important;
    font-size: 1rem;
}

.single__content .katsu-related-box__links,
.editor-styles-wrapper .katsu-related-box__links,
.block-editor-block-preview__content .katsu-related-box__links {
    margin: 0;
    padding-left: 0;
    list-style: none;
}

.single__content .katsu-related-box__links li,
.editor-styles-wrapper .katsu-related-box__links li,
.block-editor-block-preview__content .katsu-related-box__links li {
    margin: 0;
    padding: 8px 0;
    border-bottom: 1px dashed var(--katsu-primary-border);
}

.single__content .katsu-related-box__links li:last-child,
.editor-styles-wrapper .katsu-related-box__links li:last-child,
.block-editor-block-preview__content .katsu-related-box__links li:last-child {
    border-bottom: none;
    padding-bottom: 0;
}

.single__content .katsu-related-box__links a,
.editor-styles-wrapper .katsu-related-box__links a,
.block-editor-block-preview__content .katsu-related-box__links a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--katsu-text-main);
    font-weight: 500;
    text-decoration: none;
}

.single__content .katsu-related-box__links a::before,
.editor-styles-wrapper .katsu-related-box__links a::before,
.block-editor-block-preview__content .katsu-related-box__links a::before {
    content: "→";
    color: var(--katsu-primary);
    font-weight: 700;
}

/* CTAボックス */
.single__content .katsu-cta-box,
.editor-styles-wrapper .katsu-cta-box,
.block-editor-block-preview__content .katsu-cta-box {
    margin: 2.5rem 0;
    border-radius: var(--katsu-box-radius);
    overflow: hidden;
    border: 1px solid var(--katsu-primary-border);
    box-shadow: 0 6px 20px rgba(242, 88, 34, 0.12);
}

.single__content .katsu-cta-box__head,
.editor-styles-wrapper .katsu-cta-box__head,
.block-editor-block-preview__content .katsu-cta-box__head {
    background: linear-gradient(135deg, var(--katsu-primary) 0%, var(--katsu-primary-dark) 100%);
    padding: 14px 18px;
    text-align: center;
}

.single__content .katsu-cta-box__head p,
.editor-styles-wrapper .katsu-cta-box__head p,
.block-editor-block-preview__content .katsu-cta-box__head p {
    margin: 0;
    color: #fff !important;
    font-weight: 700;
    font-size: 1.05rem;
}

.single__content .katsu-cta-box__body,
.editor-styles-wrapper .katsu-cta-box__body,
.block-editor-block-preview__content .katsu-cta-box__body {
    padding: 24px 20px;
    text-align: center;
    background: #fff;
}

.single__content .katsu-cta-box__body .wp-block-buttons,
.editor-styles-wrapper .katsu-cta-box__body .wp-block-buttons,
.block-editor-block-preview__content .katsu-cta-box__body .wp-block-buttons {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin: 0 0 1rem;
}

.single__content .katsu-cta-box__body .wp-block-button,
.editor-styles-wrapper .katsu-cta-box__body .wp-block-button,
.block-editor-block-preview__content .katsu-cta-box__body .wp-block-button {
    margin: 0;
}

.single__content .katsu-cta-box__body .wp-block-button__link,
.editor-styles-wrapper .katsu-cta-box__body .wp-block-button__link,
.block-editor-block-preview__content .katsu-cta-box__body .wp-block-button__link {
    display: inline-block;
    padding: 12px 28px;
    border-radius: 9999px;
    background: var(--katsu-primary);
    color: #fff !important;
    font-weight: 700;
    text-decoration: none;
}

.single__content .katsu-cta-box__note,
.editor-styles-wrapper .katsu-cta-box__note,
.block-editor-block-preview__content .katsu-cta-box__note {
    margin: 0 !important;
    font-size: 0.85rem;
    color: #d63638 !important;
}

/* かつ丼メモ */
.single__content .katsu-tip-box,
.editor-styles-wrapper .katsu-tip-box,
.block-editor-block-preview__content .katsu-tip-box {
    display: flex;
    gap: 20px;
    align-items: center;
    margin: 2.5rem 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
}

.single__content .katsu-tip-box__bubble,
.editor-styles-wrapper .katsu-tip-box__bubble,
.block-editor-block-preview__content .katsu-tip-box__bubble {
    flex: 1;
    min-width: 0;
}

.single__content .katsu-tip-box__bubble p,
.editor-styles-wrapper .katsu-tip-box__bubble p,
.block-editor-block-preview__content .katsu-tip-box__bubble p {
    position: relative;
    margin: 0;
    padding: 18px 22px;
    background: var(--katsu-primary-soft);
    border-radius: 10px;
    border: none;
    color: var(--katsu-text-main);
    line-height: 1.8;
    font-size: 0.95rem;
}

.single__content .katsu-tip-box__bubble p::after,
.editor-styles-wrapper .katsu-tip-box__bubble p::after,
.block-editor-block-preview__content .katsu-tip-box__bubble p::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -10px;
    width: 0;
    height: 0;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-right: 12px solid var(--katsu-primary-soft);
    transform: translateY(-50%);
    background: none;
    border-left: none;
}

.single__content .katsu-tip-box__aside,
.editor-styles-wrapper .katsu-tip-box__aside,
.block-editor-block-preview__content .katsu-tip-box__aside {
    flex-shrink: 0;
    width: 96px;
    text-align: center;
}

.single__content .katsu-tip-box__icon,
.editor-styles-wrapper .katsu-tip-box__icon,
.block-editor-block-preview__content .katsu-tip-box__icon {
    margin: 0 auto 8px;
}

.single__content .katsu-tip-box__icon img,
.editor-styles-wrapper .katsu-tip-box__icon img,
.block-editor-block-preview__content .katsu-tip-box__icon img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 50%;
    display: block;
    margin: 0 auto;
    border: none;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.single__content .katsu-tip-box__name,
.editor-styles-wrapper .katsu-tip-box__name,
.block-editor-block-preview__content .katsu-tip-box__name {
    margin: 0 !important;
    font-size: 0.78rem !important;
    font-weight: 700;
    line-height: 1.4;
    color: var(--katsu-text-main) !important;
}

/* 番号付きステップ */
.single__content .katsu-steps,
.editor-styles-wrapper .katsu-steps,
.block-editor-block-preview__content .katsu-steps {
    margin: 2rem 0;
    counter-reset: katsu-step;
}

.single__content .katsu-steps__title,
.editor-styles-wrapper .katsu-steps__title,
.block-editor-block-preview__content .katsu-steps__title {
    font-size: 1.15rem;
    margin: 0 0 1rem;
    color: var(--katsu-primary);
    padding-bottom: 0.4rem;
    border-bottom: 2px solid var(--katsu-primary-border);
}

.single__content .katsu-step,
.editor-styles-wrapper .katsu-step,
.block-editor-block-preview__content .katsu-step {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    margin-bottom: 16px;
    padding: 16px;
    background: #fff;
    border-radius: var(--katsu-box-radius);
    border: 1px solid var(--katsu-primary-border);
    box-shadow: 0 2px 8px rgba(242, 88, 34, 0.05);
}

.single__content .katsu-step:last-child,
.editor-styles-wrapper .katsu-step:last-child,
.block-editor-block-preview__content .katsu-step:last-child {
    margin-bottom: 0;
}

.single__content .katsu-step__num,
.editor-styles-wrapper .katsu-step__num,
.block-editor-block-preview__content .katsu-step__num {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--katsu-primary) 0%, var(--katsu-primary-dark) 100%);
    color: #fff;
    font-weight: 700;
    border-radius: 50%;
    line-height: 1;
    box-shadow: 0 2px 6px rgba(242, 88, 34, 0.25);
}

.single__content .katsu-step:not([data-has-custom-number]) .katsu-step__num,
.editor-styles-wrapper .katsu-step:not([data-has-custom-number]) .katsu-step__num,
.block-editor-block-preview__content .katsu-step:not([data-has-custom-number]) .katsu-step__num {
    counter-increment: katsu-step;
}

.single__content .katsu-step__num::before,
.editor-styles-wrapper .katsu-step__num::before,
.block-editor-block-preview__content .katsu-step__num::before {
    content: counter(katsu-step);
    color: #fff;
}

.single__content .katsu-step__num[data-number]::before,
.editor-styles-wrapper .katsu-step__num[data-number]::before,
.block-editor-block-preview__content .katsu-step__num[data-number]::before {
    content: attr(data-number);
}

.single__content .katsu-step__body > :last-child,
.editor-styles-wrapper .katsu-step__body > :last-child {
    margin-bottom: 0;
}

.single__content .katsu-step__body p,
.editor-styles-wrapper .katsu-step__body p,
.block-editor-block-preview__content .katsu-step__body p {
    color: var(--katsu-text-main);
}

.single__content .katsu-info-box__body:empty::before,
.editor-styles-wrapper .katsu-info-box__body:empty::before,
.block-editor-block-preview__content .katsu-info-box__body:empty::before {
    content: "＋ ボタンからリストや段落を追加";
    display: block;
    padding: 8px 0;
    color: var(--katsu-text-muted);
    font-size: 0.9rem;
}

.single__content .katsu-related-box .block-list-appender,
.editor-styles-wrapper .katsu-related-box .block-list-appender,
.single__content .katsu-steps .block-list-appender,
.editor-styles-wrapper .katsu-steps .block-list-appender {
    margin-top: 8px;
}
.single__content .wp-block-button.is-style-katsu-accent .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-katsu-accent .wp-block-button__link,
.block-editor-block-preview__content .wp-block-button.is-style-katsu-accent .wp-block-button__link {
    background-color: var(--katsu-accent) !important;
    color: #fff !important;
}

@media (max-width: 767px) {
    .single__content .katsu-tip-box,
    .editor-styles-wrapper .katsu-tip-box,
    .block-editor-block-preview__content .katsu-tip-box {
        gap: 12px;
    }

    .single__content .katsu-tip-box__aside,
    .editor-styles-wrapper .katsu-tip-box__aside,
    .block-editor-block-preview__content .katsu-tip-box__aside {
        width: 72px;
    }

    .single__content .katsu-tip-box__icon img,
    .editor-styles-wrapper .katsu-tip-box__icon img,
    .block-editor-block-preview__content .katsu-tip-box__icon img {
        width: 56px;
        height: 56px;
    }

    .single__content .katsu-tip-box__bubble p,
    .editor-styles-wrapper .katsu-tip-box__bubble p,
    .block-editor-block-preview__content .katsu-tip-box__bubble p {
        padding: 14px 16px;
        font-size: 0.9rem;
    }
}
