/* CSP対応フォント設定 */
/* Google Fontsが読み込めない場合のフォールバック */
body {
    font-family: 'Noto Serif JP', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
}

/* CSP-compliant font loading - avoid data URIs */
@font-face {
    font-family: 'Noto Serif JP Fallback';
    src: local('Noto Serif JP'), local('NotoSerifJP-Regular'), local('游明朝'), local('Yu Mincho'), local('serif');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Noto Serif JP Fallback';
    src: local('Noto Serif JP'), local('NotoSerifJP-Bold'), local('游明朝'), local('Yu Mincho'), local('serif');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

/* Prevent data URI font loading */
* {
    font-family: 'Noto Serif JP', 'Noto Serif JP Fallback', '游明朝', 'Yu Mincho', serif !important;
}

/* Override any data URI fonts */
@supports not (font-display: swap) {
    * {
        font-family: '游明朝', 'Yu Mincho', serif !important;
    }
}

/* CSP違反を避けるためのスタイル調整 */
.wp-block-editor iframe {
    /* iframe関連のCSPエラー対策 */
    border: none;
    background: transparent;
}

/* ブロックエディタのエラー対策 */
.block-editor-iframe__container {
    position: relative;
}

.block-editor-iframe__container iframe {
    width: 100%;
    height: 100%;
    border: none;
}

/* フォント読み込み最適化 */
.font-loading {
    font-display: swap;
    visibility: hidden;
}

.font-loaded {
    visibility: visible;
}

/* Block editor error countermeasures */
.block-editor-page {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Ensure documentElement is available */
html {
    font-size: 16px;
    line-height: 1.6;
}

/* CSP: Block data URI fonts globally */
@media screen {
    * {
        font-family: 'Noto Serif JP', '游明朝', 'Yu Mincho', serif !important;
    }
    
    /* Prevent any data URI or blob URL content */
    *[src^="data:"],
    *[src^="blob:"] {
        display: none !important;
    }
}