/* Post 29806 only. Reuse the existing reference blog's shared components;
 * these rules adapt MD media, code and narrow-screen containment only. */
body.postid-29806 .cc-md-raw-case,
body.postid-29806 .cc-md-raw-case * { box-sizing: border-box; }
body.postid-29806 .post-thumbnail.article-post-thumbnail { background: #f5f5f7; }
body.postid-29806 .post-thumbnail.article-post-thumbnail img {
    box-sizing: border-box;
    /* Shared mobile blog CSS sets auto !important; keep this contained cover in its frame. */
    height: 100% !important;
    object-fit: contain;
    padding: 24px 24px 88px;
}
body.postid-29806 .cc-md-raw-case .eyebrow {
    margin: 0 0 16px;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    color: #6e6e73;
}
body.postid-29806 .cc-md-raw-case .dek { margin-bottom: 24px; }
body.postid-29806 .cc-md-hero-copy > span {
    display: block;
    margin-bottom: 10px;
    color: #0071e3;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
}
body.postid-29806 .cc-md-hero-copy > strong {
    display: block;
    color: #1d1d1f;
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.08;
}
body.postid-29806 .cc-md-hero-copy > p { margin: 16px 0 0; }
body.postid-29806 .cc-md-raw-case .cc-md-feature-caption {
    margin: 20px 0 0;
    font-size: 13px;
    color: #6e6e73;
}
body.postid-29806 .cc-md-raw-case section,
body.postid-29806 .cc-md-raw-case h2[id] { scroll-margin-top: 92px; }
body.postid-29806 .cc-md-raw-case .cc-blog-spec-wrap {
    max-width: 100%;
    overscroll-behavior-x: contain;
}
body.postid-29806 .cc-md-raw-case .cc-blog-spec-table caption {
    padding: 16px;
    text-align: left;
    background: #f5f5f7;
    color: #424245;
    font-size: 14px;
    font-weight: 700;
}
body.postid-29806 .cc-md-raw-case .cc-md-two-column {
    min-width: 0;
    table-layout: fixed;
    overflow-wrap: anywhere;
}
body.postid-29806 .cc-md-raw-case .source-table,
body.postid-29806 .cc-md-raw-case [aria-label="Practical checks before changing the integration"] table {
    min-width: 0;
    table-layout: fixed;
    overflow-wrap: anywhere;
}
body.postid-29806 .cc-md-raw-case .cc-md-comparison-table {
    min-width: 0;
    table-layout: fixed;
    overflow-wrap: anywhere;
}
body.postid-29806 .cc-md-comparison-table th:first-child { width: 24%; }
body.postid-29806 .cc-md-comparison-table thead th:not(:first-child) { width: 38%; }
body.postid-29806 .cc-md-two-column th:first-child,
body.postid-29806 .source-table td:first-child { width: 31%; }
body.postid-29806 .cc-md-raw-case code {
    padding: 2px 5px;
    border-radius: 4px;
    background: #f5f5f7;
    font-family: Consolas, 'Liberation Mono', monospace;
    font-size: .85em;
    overflow-wrap: anywhere;
}
body.postid-29806 .cc-md-raw-case pre {
    max-width: 100%;
    margin: 26px 0;
    padding: 20px;
    border: 1px solid #d2d2d7;
    border-radius: 20px;
    background: #f5f5f7;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    word-break: break-word;
    font-size: 14px;
    line-height: 1.65;
}
body.postid-29806 .cc-md-raw-case pre code {
    padding: 0;
    background: transparent;
    font-size: inherit;
    white-space: inherit;
}
body.postid-29806 .cc-md-raw-case .detail-photo img {
    width: min(100%, 360px);
    margin: 20px auto 0;
}
body.postid-29806 .cc-md-raw-case .guide-photo img {
    width: min(100%, 570px);
    margin: 0 auto;
}
body.postid-29806 .cc-md-raw-case .resource-links { padding-left: 22px; margin: 24px 0; }
body.postid-29806 .cc-md-raw-case .resource-links li { margin: 12px 0; }
body.postid-29806 .cc-md-raw-case .references {
    margin: 42px 0;
    padding: 24px;
    border: 1px solid #d2d2d7;
    border-radius: 28px;
    background: #f5f5f7;
}
body.postid-29806 .cc-md-raw-case .references h2 { margin-top: 0; }
body.postid-29806 .cc-md-raw-case .references ul { margin-bottom: 0; }
body.postid-29806 .cc-md-raw-case .cc-blog-cta-button {
    display: inline-flex;
    align-items: center;
    padding: 14px 20px;
    border-radius: 999px;
    background: #fff;
    color: #07111f;
    font-size: 15px;
    line-height: 1.4;
    text-decoration: none;
}
body.postid-29806 .cc-md-raw-case a:focus-visible,
body.postid-29806 .cc-md-raw-case summary:focus-visible,
body.postid-29806 .cc-md-raw-case .cc-blog-spec-wrap:focus-visible {
    outline: 3px solid #0071e3;
    outline-offset: 4px;
}
/* Avoid the reference TOC's negative margin escaping a narrower desktop. */
@media (min-width: 781px) and (max-width: 1359px) {
    body.postid-29806 .cc-md-raw-case .cc-seo-toc {
        float: none;
        width: 100%;
        margin: 28px 0;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    body.postid-29806 .cc-md-raw-case .cc-seo-toc::before { grid-column: 1 / -1; }
}
@media (max-width: 780px) {
    body.postid-29806 .cc-md-raw-case {
        width: calc(100% - 28px);
        max-width: 320px;
        margin: 0 auto;
    }
    body.postid-29806 .single-entry > .entry-content-wrap > .entry-header {
        width: calc(100% - 28px) !important;
        max-width: 320px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
    body.postid-29806 .post-thumbnail.article-post-thumbnail {
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
    body.postid-29806 .post-thumbnail.article-post-thumbnail img { padding: 12px 12px 60px; }
    body.postid-29806 .cc-md-raw-case .cc-seo-toc.is-open { max-height: min(72vh, 650px); overflow-y: auto; }
    body.postid-29806 .cc-md-raw-case .cc-blog-spec-table { font-size: 14px; }
    body.postid-29806 .cc-md-raw-case .cc-md-two-column { min-width: 0; }
    body.postid-29806 .cc-md-raw-case .cc-md-comparison-table { min-width: 760px; }
    body.postid-29806 .cc-md-two-column th,
    body.postid-29806 .cc-md-two-column td { padding: 12px 10px; }
    body.postid-29806 .cc-md-raw-case .cc-blog-spec-wrap:has(.cc-md-comparison-table)::before {
        content: 'Swipe to see columns →';
        display: block;
        width: 264px;
        max-width: 100%;
        padding: 10px 16px;
        color: #6e6e73;
        font-size: 12px;
    }
    body.postid-29806 .cc-md-raw-case pre { padding: 16px; font-size: 12px; }
    body.postid-29806 .cc-md-raw-case .references { padding: 20px; }
}

/* RAW comparison only: emphasize access to the original grayscale buffer. */
body.postid-29806 .cc-md-raw-comparison .cc-md-raw-highlight > td:first-of-type { background: #eef6fb; color: #173e56; }
body.postid-29806 .cc-md-raw-comparison .cc-md-raw-advantage { padding: 18px 20px; margin: 24px 0; border-left: 3px solid #126b9a; background: #f3f7fa; color: #173e56; }

/* FlexMini: effective bit depth and the storage container are separate. */
.cc-flex-depth__table{width:100%;overflow-x:auto;margin:28px 0;overscroll-behavior-x:contain}
.cc-flex-depth__table table{width:100%;border-collapse:collapse;table-layout:fixed;margin:0;font-size:14px;line-height:1.6}
.cc-flex-depth__table th,.cc-flex-depth__table td{padding:18px 20px;border:0;border-bottom:1px solid #dde5ec;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.cc-flex-depth__table thead th{background:#f3f7fa;color:#153b55;font-weight:650}
.cc-flex-depth__table thead span{display:block;font-size:12px;font-weight:400;color:#596b78;margin-top:4px}
.cc-flex-depth__table tbody th{font-weight:600;color:#425664}
.cc-flex-depth__table tbody td:nth-child(2){color:#075985;font-weight:600}
.cc-flex-depth__note{font-size:14px;line-height:1.75;color:#526574;max-width:90ch}
.cc-flex-depth__lead{max-width:75ch}
@media(max-width:600px){.cc-flex-depth__table th,.cc-flex-depth__table td{padding:12px 8px;font-size:12px;line-height:1.5}.cc-flex-depth__table thead span{font-size:11px}.cc-flex-depth__note{font-size:13px}}
