/* Opt-in styles only: existing headings and articles are unchanged. */
.entry-content,
.editor-styles-wrapper {
    counter-reset: okd-section;
}

.entry-content .is-style-okd-numbered,
.editor-styles-wrapper .is-style-okd-numbered {
    counter-increment: okd-section;
    position: relative;
    padding-inline-start: 3.2em;
    font-size: clamp(1.4rem, 3vw, 2rem);
    line-height: 1.25;
    overflow-wrap: anywhere;
    text-align: start;
}

.is-style-okd-numbered::before {
    content: counter(okd-section, decimal-leading-zero) " /";
    position: absolute;
    inset-inline-start: 0;
    color: #007eae;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.entry-content .okd-photo-entry,
.editor-styles-wrapper .okd-photo-entry {
    margin-block: 2.5rem;
    padding-block-end: 2rem;
    border-bottom: 1px solid #dce2e8;
}

.okd-photo-entry > .is-style-okd-numbered {
    margin-block: 0 1rem;
}

.entry-content .okd-photo-entry figure,
.editor-styles-wrapper .okd-photo-entry figure {
    margin: 0 0 1rem;
}

.okd-photo-entry .wp-block-image img {
    display: block;
    max-width: 100%;
    max-height: 850px;
    width: auto;
    height: auto;
    margin-inline: auto;
    object-fit: contain;
}

.entry-content .okd-photo-caption,
.editor-styles-wrapper .okd-photo-caption {
    margin-block: 1rem 0.5rem;
    font-size: 1rem;
    line-height: 1.6;
}

.entry-content .okd-photo-credit,
.editor-styles-wrapper .okd-photo-credit {
    margin-block: 0.5rem 0;
    color: #626d79;
    font-size: 0.8rem;
    line-height: 1.5;
}

.entry-content .okd-numbered-section {
    margin-block: 2rem;
}

body.dark-mode .is-style-okd-numbered::before { color: #53cfff; }
body.dark-mode .entry-content .okd-photo-credit { color: #aeb8c5; }
body.dark-mode .entry-content .okd-photo-entry { border-color: #354152; }

@media (max-width: 600px) {
    .entry-content .okd-photo-entry { margin-block: 2rem; padding-block-end: 1.5rem; }
}
