/* ==========================================================================
   FT Grid 1 — Single Post
   ========================================================================== */

/* Hide sub-nav bar on single posts */
.single .sk-subnav {
    display: none;
}

.sk-single {
    max-width: var(--sk-container-max);
    margin-inline: auto;
    position: relative;
    --sk-single-rail-width: 260px;
}

.sk-single[data-post-dir] {
    --sk-single-rail-width: calc(var(--sk-sidebar-width) - var(--sk-padding-md));
}

.sk-post-context {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--sk-padding-md);
    padding: var(--sk-padding-sm) var(--sk-padding-md);
}

.sk-post-context__back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--sk-gray);
    text-decoration: none;
    transition: color 0.15s ease;
}

.sk-post-context__back:hover {
    color: var(--sk-dark);
}

.sk-post-context__arrow {
    font-size: 18px;
    line-height: 1;
}

/* Flip arrow for RTL context row */
.sk-post-context[dir="rtl"] .sk-post-context__arrow {
    transform: scaleX(-1);
}

.sk-post-context__trail {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap;
}

.sk-post-context__section {
    font-size: 10px;
    color: var(--sk-gray);
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* --- Post Hero: rail flips with the post language direction --- */

.sk-post-hero {
    display: grid;
    grid-template-columns: 1fr 1px minmax(200px, var(--sk-single-rail-width));
    padding: var(--sk-padding-lg) var(--sk-padding-md);
    direction: ltr;
    align-items: start;
}

.sk-post-hero > .sk-line-v {
    visibility: visible;
}

.sk-single[data-post-dir="ltr"] .sk-post-hero {
    grid-template-columns: minmax(200px, var(--sk-single-rail-width)) 1px 1fr;
}

.sk-single[data-post-dir="rtl"] .sk-post-hero__meta {
    grid-column: 3;
    padding-left: var(--sk-padding-md);
}

.sk-single[data-post-dir="ltr"] .sk-post-hero__meta {
    grid-column: 1;
    padding-right: var(--sk-padding-md);
}

.sk-single[data-post-dir="ltr"] .sk-post-hero > .sk-line-v {
    grid-column: 2;
}

.sk-single[data-post-dir="rtl"] .sk-post-hero__title {
    grid-column: 1;
    padding-right: var(--sk-padding-lg);
}

.sk-single[data-post-dir="rtl"] .sk-post-hero > .sk-line-v {
    grid-column: 2;
}

.sk-single[data-post-dir="ltr"] .sk-post-hero__title {
    grid-column: 3;
    padding-left: var(--sk-padding-lg);
}

.sk-post-hero__title {
    display: flex;
    flex-direction: column;
    gap: var(--sk-padding-md);
    grid-row: 1;
}

/* Right-align all title content for RTL posts (including LTR elements in cross-language view) */
.sk-single[data-post-dir="rtl"] .sk-post-hero__title {
    text-align: right;
    align-items: flex-end;
}

.sk-post-hero__h1 {
    font-size: var(--sk-h1-single-size);
    font-weight: 400;
    line-height: 1.1;
    text-transform: none;
    letter-spacing: 0;
    margin: 0;
}

/* Bilingual hero: shrink interface title, enlarge original title */
.sk-post-hero__title--bilingual .sk-post-hero__h1 {
    font-size: calc(var(--sk-h1-single-size) - 4px);
}

/* Original (native language) title — secondary, below interface-language title */
.sk-post-hero__h1-original {
    font-size: calc(var(--sk-h1-single-size) + 4px);
    font-weight: 400;
    line-height: 1.3;
    margin: 0;
    color: var(--sk-gray);
}

.sk-post-hero__deck {
    max-width: 42rem;
    font-size: clamp(16px, 1.8vw, 20px);
    line-height: 1.55;
    color: var(--sk-gray);
    margin: 0;
}

.sk-post-hero__feature {
    margin: 0;
    max-width: 580px;
}

.sk-post-hero__feature img {
    width: 100%;
    height: auto;
    display: block;
}

.sk-post-hero__feature .sk-post-content__caption {
    max-width: none;
    margin-top: 10px;
}

.sk-post-hero__meta {
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: flex-start;
    padding-top: 8px;
    grid-row: 1;
}

.sk-post-hero > .sk-line-v {
    grid-row: 1;
}

.sk-post-meta-item {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    align-items: baseline;
    padding: 3px 0;
    border-bottom: 1px solid var(--sk-light-gray);
}

.sk-post-meta-item:last-child {
    border-bottom: 0;
}

.sk-post-meta-item .sk-label {
    font-size: 9px;
    text-align: end;
    white-space: nowrap;
}

.sk-post-meta-item .sk-mono {
    font-size: 12px;
    text-align: start;
}

.sk-post-meta-links {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.sk-post-meta-links .sk-post-tax-link {
    font-size: 10px;
    padding: 2px 6px;
}

.sk-post-meta-links--versions {
    gap: 8px;
}

.sk-post-meta-version {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
    color: var(--sk-dark);
}

.sk-post-meta-version__kind {
    font-size: 11px;
    color: var(--sk-gray);
}

/* PDF / Print actions in sidebar */
.sk-post-meta-actions {
    display: flex;
    gap: 12px;
    margin-top: 12px;
    padding-top: 8px;
    border-top: 1px solid var(--sk-light-gray);
}

.sk-meta-action {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    text-decoration: none;
    color: var(--sk-gray);
    transition: color 0.15s ease;
}

.sk-meta-action:hover {
    color: var(--sk-dark);
}

.sk-meta-action .sk-mono {
    font-size: 9px;
}

/* --- Share rail in content sidebar --- */

/* RTL: rail on right (column 2), padding-left toward the line */
.sk-post-content__rail {
    grid-column: 2;
    grid-row: 1;
    position: sticky;
    top: calc(var(--sk-navbar-height) + var(--sk-padding-lg));
    padding: var(--sk-padding-sm);
}

/* LTR: rail on left (column 1) */
.sk-single[data-post-dir="ltr"] .sk-post-content__rail {
    grid-column: 1;
    padding-right: var(--sk-padding-md);
}

.sk-share-rail {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Text size control */
.sk-text-size {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 4px;
}

.sk-text-size__buttons {
    display: flex;
    gap: 0;
}

.sk-text-size__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--sk-light-gray);
    background: none;
    color: var(--sk-gray);
    cursor: pointer;
    font-size: 12px;
    text-transform: none;
    letter-spacing: 0;
    transition: color 0.15s ease, border-color 0.15s ease, background 0.15s ease;
    margin-inline-end: -1px;
}

.sk-text-size__btn:hover {
    color: var(--sk-dark);
    border-color: var(--sk-dark);
    z-index: 1;
}

.sk-text-size__btn--active {
    color: var(--sk-dark);
    border-color: var(--sk-dark);
    font-weight: 600;
    z-index: 1;
}

.sk-text-size__btn--large {
    font-size: 16px;
}

/* Body text size variants — must override paragraph/element font-size */
.sk-post-content__body.sk-text--small,
.sk-post-content__body.sk-text--small p,
.sk-post-content__body.sk-text--small li,
.sk-post-content__body.sk-text--small td {
    font-size: 14px;
}

.sk-post-content__body.sk-text--large,
.sk-post-content__body.sk-text--large p,
.sk-post-content__body.sk-text--large li,
.sk-post-content__body.sk-text--large td {
    font-size: 20px;
}

.sk-share-rail__divider {
    border: none;
    border-top: 1px solid #ccc;
    width: 210px;
    margin: 4px 0;
}

.sk-share-rail__actions {
    display: flex;
    gap: 12px;
    padding-top: 4px;
    margin-bottom: 4px;
}

.sk-share-rail__actions .sk-meta-action svg {
    width: 20px;
    height: 20px;
}

.sk-share-rail .sk-label {
    font-size: 9px;
}

.sk-share-rail__icons {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.sk-share-rail .sk-share-link {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--sk-light-gray);
    color: var(--sk-gray);
    transition: color 0.15s ease, border-color 0.15s ease;
}

.sk-share-rail .sk-share-link:hover {
    color: var(--sk-dark);
    border-color: var(--sk-dark);
}

/* --- Post Content --- */

.sk-post-content {
    padding: var(--sk-padding-lg) var(--sk-padding-md);
    position: relative;
}

.sk-single:not(.sk-single--book) .sk-post-content:not(.sk-post-content--with-image):not(.sk-post-content--feature-aside) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--sk-single-rail-width);
    direction: ltr;
    align-items: start;
}

/* RTL posts: body in column 1, pinned to the right (toward vertical line) */
.sk-single:not(.sk-single--book) .sk-post-content:not(.sk-post-content--with-image):not(.sk-post-content--feature-aside) .sk-post-content__body {
    grid-column: 1;
    max-width: 720px;
    margin-left: auto;
    margin-right: 0;
    padding-right: var(--sk-padding-lg);
    padding-left: 0;
}

/* LTR posts: body in column 2, pinned to the left (toward vertical line) */
.sk-single[data-post-dir="ltr"]:not(.sk-single--book) .sk-post-content:not(.sk-post-content--with-image):not(.sk-post-content--feature-aside) {
    grid-template-columns: var(--sk-single-rail-width) minmax(0, 1fr);
}

.sk-single[data-post-dir="ltr"]:not(.sk-single--book) .sk-post-content:not(.sk-post-content--with-image):not(.sk-post-content--feature-aside) .sk-post-content__body {
    grid-column: 2;
    margin-left: 0;
    margin-right: auto;
    padding-left: var(--sk-padding-lg);
    padding-right: 0;
}

.sk-single:not(.sk-single--book) .sk-post-content:not(.sk-post-content--with-image):not(.sk-post-content--feature-aside)::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(var(--sk-single-rail-width) + var(--sk-padding-md) + 1px);
    width: 1px;
    background: var(--sk-dark);
    pointer-events: none;
}

.sk-single[data-post-dir="ltr"]:not(.sk-single--book) .sk-post-content:not(.sk-post-content--with-image):not(.sk-post-content--feature-aside)::after {
    right: auto;
    left: calc(var(--sk-single-rail-width) + var(--sk-padding-md) + 1px);
}

.sk-post-content--with-image {
    display: grid;
    grid-template-columns: 1fr 1px 1fr;
    padding: 0;
}

.sk-post-content__image {
    padding: var(--sk-padding-lg) var(--sk-padding-md);
    position: sticky;
    top: calc(var(--sk-navbar-height) + var(--sk-padding-md));
    align-self: start;
}

.sk-post-content__image img {
    width: 100%;
    height: auto;
}

.sk-post-content--with-image .sk-post-content__body {
    padding: var(--sk-padding-lg) var(--sk-padding-md);
}

.sk-post-content--feature-aside {
    display: grid;
    grid-template-columns: minmax(280px, 360px) 1px minmax(0, 1fr);
    padding: 0;
    align-items: start;
    direction: ltr;
}

.sk-post-content--feature-aside .sk-post-content__feature {
    grid-column: 1;
    grid-row: 1;
}

.sk-post-content--feature-aside > .sk-line-v {
    grid-column: 2;
    grid-row: 1;
    min-height: 100%;
}

.sk-post-content--feature-aside .sk-post-content__body {
    grid-column: 3;
    grid-row: 1;
}

.sk-single[data-post-dir="rtl"] .sk-post-content--feature-aside {
    grid-template-columns: minmax(0, 1fr) 1px minmax(280px, 360px);
}

.sk-single[data-post-dir="rtl"] .sk-post-content--feature-aside .sk-post-content__body {
    grid-column: 1;
}

.sk-single[data-post-dir="rtl"] .sk-post-content--feature-aside > .sk-line-v {
    grid-column: 2;
}

.sk-single[data-post-dir="rtl"] .sk-post-content--feature-aside .sk-post-content__feature {
    grid-column: 3;
}

.sk-post-content__feature {
    margin: 0;
    padding: var(--sk-padding-lg) var(--sk-padding-md);
    align-self: start;
}

.sk-post-content__feature img {
    width: 100%;
    height: auto;
    display: block;
    max-width: 360px;
    margin-inline: auto;
}

.sk-post-content__caption {
    margin-top: 10px;
    font-size: 13px;
    color: var(--sk-gray);
    max-width: 360px;
    margin-inline: auto;
}

.sk-post-content--feature-aside .sk-post-content__body {
    padding: var(--sk-padding-lg) var(--sk-padding-md);
}

/* Rich text content */
.sk-rich-text {
    max-width: 720px;
    margin-inline: auto;
    padding-inline-end: var(--sk-padding-lg);
}

.sk-rich-text h2 {
    font-size: var(--sk-h2-size);
    margin-top: 2em;
    margin-bottom: 0.5em;
    line-height: 1.15;
}

.sk-rich-text h3 {
    font-size: var(--sk-h3-size);
    margin-top: 1.5em;
    margin-bottom: 0.5em;
}

.sk-rich-text p {
    margin-bottom: 1.5em;
    font-size: var(--sk-body-size);
    line-height: var(--sk-body-lh);
}

.sk-rich-text blockquote {
    border-inline-start: 3px solid var(--sk-dark);
    padding-inline-start: var(--sk-padding-md);
    margin: 2em 0;
    font-style: italic;
    color: var(--sk-gray);
}

.sk-rich-text ul,
.sk-rich-text ol {
    padding-inline-start: 1.5em;
    margin-bottom: 1.5em;
    list-style: disc;
}

.sk-rich-text ol {
    list-style: decimal;
}

.sk-rich-text li {
    margin-bottom: 0.5em;
}

.sk-rich-text a {
    color: var(--sk-dark);
    text-decoration: underline;
    text-decoration-color: var(--sk-lime);
    text-underline-offset: 3px;
    text-decoration-thickness: 2px;
}

.sk-rich-text a:hover {
    background: var(--sk-lime);
}

.sk-rich-text img {
    margin: 2em 0;
}

.sk-rich-text figure {
    margin: 2em 0;
}

.sk-rich-text figcaption {
    font-size: 13px;
    color: var(--sk-gray);
    margin-top: 8px;
}

/* --- Multimedia Single (book-style) --- */

.sk-multimedia-detail__titlebar {
    display: block;
    padding: var(--sk-padding-md);
}

.sk-multimedia-detail__header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    padding: 0;
    align-items: start;
}

.sk-multimedia-detail__video .sk-multimedia-embed {
    padding: 0;
    max-width: none;
    margin: 0;
}

.sk-multimedia-detail__meta {
    padding: var(--sk-padding-md);
}

.sk-multimedia-detail__video iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    display: block;
}

.sk-multimedia-detail__title {
    font-size: clamp(20px, 3vw, 32px);
    font-weight: 400;
    line-height: 1.15;
    margin: 0;
    text-transform: none;
    letter-spacing: 0;
}

.sk-multimedia-detail__meta .sk-post-meta-item {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    align-items: baseline;
    margin-bottom: 0;
    padding: 6px 0;
    border-bottom: 1px solid var(--sk-light-gray);
}

.sk-multimedia-detail__meta .sk-post-meta-item:last-child {
    border-bottom: none;
}

.sk-multimedia-detail__meta .sk-label {
    font-size: 9px;
    text-align: end;
    white-space: nowrap;
}

.sk-multimedia-detail__meta .sk-mono {
    font-size: 11px;
    text-align: start;
}

.sk-multimedia-transcript {
    padding: var(--sk-padding-md);
}

.sk-multimedia-transcript__toggle {
    background: none;
    border: var(--sk-border);
    padding: 8px 20px;
    margin: 16px;
    cursor: pointer;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    transition: background 0.15s ease;
}

.sk-multimedia-transcript__toggle:hover {
    background: var(--sk-light-gray);
}

.sk-multimedia-transcript__toggle[aria-expanded="true"] {
    background: var(--sk-dark);
    color: var(--sk-white);
    border-color: var(--sk-dark);
}

.sk-multimedia-transcript__body {
    padding-top: var(--sk-padding-lg);
    max-width: 720px;
}

.sk-multimedia-detail__desc {
    margin-top: var(--sk-padding-sm);
    padding-top: var(--sk-padding-sm);
    border-top: 1px solid var(--sk-light-gray);
    font-size: 13px;
    line-height: 1.5;
    color: var(--sk-gray);
}

.sk-multimedia-detail__desc p {
    margin: 0;
}

.sk-multimedia-detail__video-actions {
    display: flex;
    justify-content: flex-start;
    margin-top: var(--sk-padding-md);
    padding: 0 var(--sk-padding-sm) var(--sk-padding-sm);
}

[dir="rtl"] .sk-multimedia-detail__video-actions {
    justify-content: flex-end;
}

.sk-multimedia-embed--podcast iframe {
    max-height: 200px;
}

.sk-page-title-link {
    text-decoration: none;
    color: inherit;
}

/* --- Audio Waveform Player --- */

.sk-audio-player {
    margin-top: 0;
    padding: var(--sk-padding-sm) var(--sk-padding-sm) var(--sk-padding-xs);
    background: var(--sk-light-gray);
}

.sk-multimedia-embed {
    line-height: 0;
    padding: 0;
}

.sk-multimedia-embed iframe {
    display: block;
}

#ft-waveform {
    cursor: pointer;
    border-radius: 2px;
    overflow: hidden;
}

.sk-audio-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
}

.sk-audio-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: none;
    cursor: pointer;
    color: var(--sk-dark);
    padding: 6px;
    border-radius: 4px;
    transition: background 0.15s;
    line-height: 1;
}

.sk-audio-btn:hover {
    background: rgba(0, 0, 0, 0.06);
}

.sk-audio-play {
    width: 44px;
    height: 44px;
    background: var(--sk-dark);
    border-radius: 50%;
    color: var(--sk-white);
    flex-shrink: 0;
}

.sk-audio-play:hover {
    background: #333;
}

.sk-audio-play .ft-wave-icon-pause { display: none; }
.sk-audio-play.is-playing .ft-wave-icon-play { display: none; }
.sk-audio-play.is-playing .ft-wave-icon-pause { display: block; }

.sk-audio-skip {
    width: 38px;
    height: 38px;
    flex-shrink: 0;
}

.sk-audio-speed {
    font-size: 11px;
    font-weight: 600;
    min-width: 32px;
    background: rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 3px;
    padding: 3px 4px;
    flex-shrink: 0;
}

.sk-audio-speed:hover {
    background: rgba(0, 0, 0, 0.1);
}

.sk-audio-time {
    text-align: center;
    font-size: 11px;
    color: var(--sk-gray);
    margin-top: 6px;
    font-variant-numeric: tabular-nums;
}

.sk-audio-time-sep {
    margin: 0 2px;
    opacity: 0.4;
}

/* --- Speaker Labels (transcript) --- */

.sk-speaker-label {
    color: var(--sk-dark);
    font-weight: 700;
}

/* --- Prev/Next Navigation --- */

.sk-multimedia-detail {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.sk-multimedia-detail .sk-multimedia-nav-wrapper {
    margin-top: auto;
}

.sk-multimedia-nav {
    display: flex;
    justify-content: space-between;
    padding: var(--sk-padding-md);
    gap: var(--sk-padding-md);
}

.sk-multimedia-nav__link {
    font-size: 16px;
    color: var(--sk-gray);
    text-decoration: none;
    transition: color 0.15s;
    max-width: 45%;
}

.sk-multimedia-nav__arrow {
    font-size: 21px;
    font-weight: 700;
}

.sk-multimedia-nav__link:hover {
    color: var(--sk-dark);
}

.sk-multimedia-nav__next {
    margin-inline-start: auto;
    text-align: end;
}

@media (max-width: 768px) {
    .sk-multimedia-detail__header {
        grid-template-columns: 1fr;
    }

    .sk-multimedia-detail__meta .sk-post-meta-item {
        grid-template-columns: 82px minmax(0, 1fr);
    }

    .sk-multimedia-detail__video-actions,
    [dir="rtl"] .sk-multimedia-detail__video-actions {
        justify-content: stretch;
    }

    .sk-multimedia-detail__video-actions .sk-research-save {
        width: 100%;
        justify-content: center;
    }

    .sk-multimedia-nav {
        flex-direction: column;
    }

    .sk-multimedia-nav__link {
        max-width: 100%;
    }
}

/* --- Multimedia Hero: 50/50 Split (video + title) inside content column --- */

.sk-mm-split {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--sk-padding-md);
    align-items: start;
}

.sk-mm-split__video,
.sk-mm-split__info {
    min-width: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}

/* LTR: video left (toward sidebar), title right */
.sk-single[data-post-dir="ltr"] .sk-mm-split__video { order: 1; }
.sk-single[data-post-dir="ltr"] .sk-mm-split__info  { order: 2; }

/* RTL: video right (toward sidebar), title left */
.sk-single[data-post-dir="rtl"] .sk-mm-split__video { order: 2; }
.sk-single[data-post-dir="rtl"] .sk-mm-split__info  { order: 1; }

.sk-mm-split__video .sk-multimedia-embed { line-height: 0; }

.sk-mm-split__video .sk-multimedia-embed iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    display: block;
}

.sk-mm-split__video .sk-multimedia-embed--podcast iframe {
    aspect-ratio: 16 / 9;
    max-height: none;
}

.sk-mm-split__title {
    font-size: clamp(18px, 2.2vw, 26px);
    font-weight: 400;
    line-height: 1.2;
    margin: 0 0 var(--sk-padding-sm);
}

.sk-mm-split__deck {
    font-size: clamp(13px, 1.3vw, 15px);
    line-height: 1.5;
    color: var(--sk-gray);
    margin: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}

/* Audio player below the split */
.sk-single--multimedia .sk-post-hero__title > .sk-audio-player {
    margin-top: var(--sk-padding-sm);
}

.sk-single--multimedia .sk-post-hero__title {
    gap: var(--sk-padding-sm);
}

/* Save button in metadata sidebar */
.sk-single--multimedia .sk-post-meta-item--save {
    display: block;
    border-bottom: none;
    padding-top: var(--sk-padding-sm);
}

.sk-single--multimedia .sk-post-meta-item--save .sk-research-save {
    padding: 6px 10px;
    font-size: 10px;
    white-space: nowrap;
}

/* Transcript toggle button */
.sk-mm-transcript-toggle {
    background: none;
    border: var(--sk-border);
    padding: 10px 20px;
    cursor: pointer;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    transition: background 0.15s ease;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

.sk-mm-transcript-toggle:hover {
    background: var(--sk-light-gray);
}

.sk-mm-transcript-toggle[aria-expanded="true"] {
    background: var(--sk-dark);
    color: var(--sk-white);
    border-color: var(--sk-dark);
}

.sk-mm-transcript-toggle__icon {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

.sk-mm-transcript-section {
    padding: var(--sk-padding-md);
}

.sk-single--multimedia .sk-multimedia-transcript__body {
    padding-top: 0;
}

@media (max-width: 768px) {
    .sk-mm-split {
        grid-template-columns: 1fr;
    }
    .sk-mm-split__video,
    .sk-mm-split__info {
        order: unset !important;
    }
}

/* --- Book Detail --- */

.sk-line-v--hidden {
    visibility: hidden;
}

.sk-book-detail__nav {
    padding: var(--sk-padding-sm) var(--sk-padding-md);
}

.sk-book-detail__header {
    display: grid;
    grid-template-columns: 240px 1fr;
    grid-template-rows: auto auto;
    gap: var(--sk-padding-md);
    padding: var(--sk-padding-md);
    align-items: start;
}

.sk-book-detail__cover {
    grid-row: 1 / 3;
}

.sk-book-detail__cover img {
    width: 100%;
    height: auto;
    display: block;
}

.sk-book-detail__hero {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sk-book-detail__title {
    font-size: clamp(16px, 2vw, 22px);
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 0;
}

.sk-book-detail__title-alt {
    font-size: clamp(24px, 3vw, 36px);
    font-weight: 400;
    line-height: 1.2;
    color: var(--sk-dark);
    margin: 0;
}

.sk-single--book[dir="ltr"] {
    text-align: left;
}

.sk-single--book[dir="rtl"] {
    text-align: right;
}

.sk-single--book .sk-book-detail__hero,
.sk-single--book .sk-book-detail__title,
.sk-single--book .sk-book-detail__title-alt,
.sk-single--book .sk-post-content__body,
.sk-single--book .sk-post-content__body h2,
.sk-single--book .sk-post-content__body h3,
.sk-single--book .sk-post-content__body p,
.sk-single--book .sk-post-content__body blockquote,
.sk-single--book .sk-post-content__body ul,
.sk-single--book .sk-post-content__body ol,
.sk-single--book .sk-post-content__body li,
.sk-single--book .sk-post-content__body figcaption {
    text-align: inherit;
}

.sk-book-detail__meta .sk-post-meta-item {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 10px;
    align-items: baseline;
    margin-bottom: 0;
    padding: 6px 0;
    border-bottom: 1px solid var(--sk-light-gray);
}

.sk-book-detail__meta .sk-post-meta-item:last-child {
    border-bottom: none;
}

.sk-book-detail__meta .sk-label {
    font-size: 9px;
    text-align: end;
    white-space: nowrap;
}

.sk-book-detail__meta .sk-mono {
    font-size: 11px;
    text-align: start;
}

.sk-book-detail__meta .sk-badge {
    font-size: 10px;
    padding: 1px 6px;
}

.sk-book-detail__actions {
    margin-top: var(--sk-padding-xs);
    grid-column: 1 / -1;
    display: none;
}

.sk-single--book .sk-post-content::after {
    display: none;
}

/* --- Book Prev / Next Navigation --- */

.sk-book-nav {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    gap: var(--sk-padding-sm);
    padding: var(--sk-padding-md);
    max-width: var(--sk-container-max);
}

.sk-book-nav__link {
    display: flex;
    align-items: center;
    gap: var(--sk-padding-sm);
    text-decoration: none;
    color: var(--sk-gray);
    transition: color 0.15s;
    max-width: 48%;
}

.sk-book-nav__link:hover {
    color: var(--sk-dark);
}

.sk-book-nav__prev {
    justify-content: flex-start;
}

.sk-book-nav__next {
    justify-content: flex-end;
    margin-inline-start: auto;
    text-align: end;
}

.sk-book-nav__arrow {
    font-size: 18px;
    flex-shrink: 0;
    line-height: 1;
}

.sk-book-nav__info {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sk-book-nav__year {
    font-size: 11px;
    color: var(--sk-gray);
    letter-spacing: 0.04em;
}

.sk-book-nav__title {
    font-size: 13px;
    line-height: 1.4;
}

.sk-book-nav--disabled {
    visibility: hidden;
}

@media (max-width: 768px) {
    .sk-book-detail__header {
        grid-template-columns: 1fr;
    }

    .sk-book-detail__cover {
        max-width: 240px;
    }

    .sk-book-detail__meta .sk-post-meta-item {
        grid-template-columns: 82px minmax(0, 1fr);
    }

    .sk-book-nav {
        padding: var(--sk-padding-sm) var(--sk-padding-md);
    }

    .sk-book-nav__title {
        font-size: 12px;
    }
}

/* --- Taxonomy Footer --- */

.sk-post-taxonomy {
    padding: var(--sk-padding-md);
    max-width: var(--sk-container-max);
}

.sk-post-tax-row {
    display: flex;
    align-items: baseline;
    gap: var(--sk-padding-md);
    padding: var(--sk-padding-sm) 0;
}

.sk-post-tax-row .sk-label {
    min-width: 100px;
    flex-shrink: 0;
}

.sk-post-tax-values {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sk-post-tax-link {
    font-size: 14px;
    color: var(--sk-dark);
    text-decoration: none;
    padding: 2px 8px;
    border: var(--sk-border);
    transition: background 0.15s ease;
}

a.sk-post-tax-link:hover {
    background: var(--sk-light-gray);
}

/* --- Share Bar --- */

.sk-share-bar {
    display: flex;
    align-items: center;
    gap: var(--sk-padding-md);
    padding: var(--sk-padding-sm) var(--sk-padding-md);
}

.sk-share-links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--sk-padding-sm);
}

.sk-share-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: var(--sk-border);
    color: var(--sk-dark);
    transition: background 0.15s ease;
}

.sk-share-link:hover {
    background: var(--sk-light-gray);
    color: var(--sk-dark);
}

.sk-share-link--copy {
    cursor: pointer;
    background: none;
    font: inherit;
}

.sk-share-link--copied {
    background: var(--sk-badge-en);
    color: var(--sk-white);
    border-color: var(--sk-badge-en);
}

/* --- Sidebar share links --- */

.sk-sidebar-share {
    padding: var(--sk-padding-sm) var(--sk-padding-md);
}

.sk-sidebar-share__links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

/* Share links inside the post left rail */
.sk-share-rail .sk-sidebar-share {
    padding: 0;
}

.sk-share-rail .sk-sidebar-share__links {
    margin-top: 6px;
}

/* --- Related Posts --- */

.sk-related {
    padding: var(--sk-padding-md) 0;
}

.sk-related__header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    padding: var(--sk-padding-sm) var(--sk-padding-md);
}

.sk-related__title {
    font-size: var(--sk-h2-size);
    text-transform: none;
}

.sk-related__see-all {
    color: var(--sk-gray);
}

.sk-related__see-all:hover {
    color: var(--sk-dark);
}

/* ==========================================================================
   Book Chapters / Table of Contents
   ========================================================================== */

.sk-book-chapters {
    margin-top: var(--sk-padding-lg, 2rem);
}

.sk-book-chapters__title-row {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    margin-bottom: var(--sk-padding-md, 1rem);
}

.sk-book-chapters h2.sk-book-chapters__title {
    font-family: var(--sk-font-sans);
    font-size: 1.1875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 0;
    color: var(--sk-gray);
}

.sk-book-chapters__toggle-all {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    color: var(--sk-gray);
    transition: color 0.2s ease;
    line-height: 1;
}

.sk-book-chapters__toggle-all:hover {
    color: var(--sk-dark);
}

.sk-book-chapters__toggle-icon {
    font-size: 1.75rem;
}

.sk-book-chapters__intro {
    font-family: var(--sk-font-serif, Georgia, serif);
    font-size: var(--sk-font-size-base, 0.95rem);
    line-height: 1.7;
    color: var(--sk-text);
    margin-bottom: var(--sk-padding-lg, 2rem);
}

.sk-book-part {
    margin-bottom: var(--sk-padding-lg, 2rem);
}

.sk-book-part__title {
    font-family: var(--sk-font-sans);
    font-size: var(--sk-font-size-sm, 0.8125rem);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--sk-gray);
    padding-bottom: 0.375rem;
    border-bottom: 1px solid var(--sk-border, #ddd);
    margin-bottom: var(--sk-padding-sm, 0.5rem);
}

.sk-book-chapter {
    margin-bottom: 0.25rem;
    border-bottom: 1px solid var(--sk-border-light, #eee);
}

.sk-book-chapter[open] {
    margin-bottom: var(--sk-padding-md, 1rem);
    padding-bottom: var(--sk-padding-md, 1rem);
    border-bottom: 1px solid var(--sk-border, #ddd);
}

.sk-book-chapter__title {
    font-family: var(--sk-font-sans);
    font-size: var(--sk-font-size-base, 0.95rem);
    font-weight: 600;
    cursor: pointer;
    padding: 0.5rem 0;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    color: var(--sk-dark);
    list-style: none;
}

.sk-book-chapter__title::-webkit-details-marker {
    display: none;
}

.sk-book-chapter__title::before {
    content: '\25B8';
    font-size: 0.75em;
    color: var(--sk-gray);
    transition: transform 0.2s ease;
    flex-shrink: 0;
}

.sk-book-chapter[open] > .sk-book-chapter__title::before {
    transform: rotate(90deg);
}

.sk-book-chapter__title:hover {
    color: var(--sk-accent, #333);
}

.sk-book-chapter__num {
    font-family: var(--sk-font-mono, 'IBM Plex Mono', monospace);
    font-size: 0.8125rem;
    font-weight: 400;
    color: var(--sk-gray);
    min-width: 1.5em;
}

.sk-book-chapter__sections {
    list-style: none;
    padding: 0;
    margin: 0.5rem 0 0.75rem 2rem;
}

.sk-book-chapter__sections li {
    font-family: var(--sk-font-sans);
    font-size: var(--sk-font-size-sm, 0.8125rem);
    color: var(--sk-gray);
    padding: 0.15rem 0;
    position: relative;
    padding-inline-start: 0.875rem;
}

.sk-book-chapter__sections li::before {
    content: '\2013';
    position: absolute;
    inset-inline-start: 0;
    color: var(--sk-border, #ddd);
}

.sk-book-chapter__summary {
    margin: 0.5rem 0 0 2rem;
}

.sk-book-chapter__summary p {
    font-family: var(--sk-font-serif, Georgia, serif);
    font-size: var(--sk-font-size-sm, 0.8125rem);
    line-height: 1.75;
    color: var(--sk-text);
    margin: 0;
}

.sk-book-backmatter {
    margin-bottom: var(--sk-padding-lg, 2rem);
}

.sk-book-backmatter .sk-book-chapter__sections {
    margin-inline-start: 0;
}
