.article-reader-controls {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin: 0 0 18px;
    padding: 12px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 8px;
    background: #f8fafc;
    color: #0f172a;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 15px;
    line-height: 1.3;
}

.article-reader-controls__label {
    font-weight: 700;
    margin-right: 2px;
}

.article-reader-controls button,
.article-reader-controls select {
    min-height: 40px;
    border: 1px solid rgba(15, 23, 42, 0.22);
    border-radius: 6px;
    background: #fff;
    color: #0f172a;
    font: inherit;
}

.article-reader-controls button {
    padding: 0 12px;
    cursor: pointer;
}

.article-reader-controls button[aria-pressed="true"] {
    border-color: #1d4ed8;
    background: #dbeafe;
    color: #1e3a8a;
    font-weight: 700;
}

.article-reader-controls select {
    padding: 0 10px;
}

.article-reader-content {
    --article-reader-font-size: 18px;
    --article-reader-font-family: inherit;
    --article-reader-font-weight: 400;
    --article-reader-line-height: 1.85;
    font-size: var(--article-reader-font-size) !important;
    font-family: var(--article-reader-font-family) !important;
    font-weight: var(--article-reader-font-weight) !important;
    line-height: var(--article-reader-line-height) !important;
    overflow-wrap: anywhere;
}

.article-reader-content p,
.article-reader-content li,
.article-reader-content div,
.article-reader-content span,
.article-reader-content td,
.article-reader-content th {
    font-size: inherit !important;
    font-family: inherit !important;
    font-weight: inherit;
    line-height: inherit !important;
}

.article-reader-content h1,
.article-reader-content h2,
.article-reader-content h3,
.article-reader-content h4,
.article-reader-content h5,
.article-reader-content h6 {
    font-family: inherit !important;
    line-height: 1.35 !important;
}

.article-reader-content h1 { font-size: calc(var(--article-reader-font-size) * 1.8) !important; }
.article-reader-content h2 { font-size: calc(var(--article-reader-font-size) * 1.55) !important; }
.article-reader-content h3 { font-size: calc(var(--article-reader-font-size) * 1.35) !important; }
.article-reader-content h4 { font-size: calc(var(--article-reader-font-size) * 1.2) !important; }
.article-reader-content h5,
.article-reader-content h6 { font-size: calc(var(--article-reader-font-size) * 1.1) !important; }

.article-reader-content img,
.article-reader-content iframe,
.article-reader-content video {
    max-width: 100%;
}

@media (max-width: 640px) {
    .article-reader-controls {
        position: sticky;
        top: 0;
        z-index: 20;
        gap: 6px;
        margin-bottom: 14px;
        padding: 10px;
    }

    .article-reader-controls__label {
        width: 100%;
    }

    .article-reader-controls button,
    .article-reader-controls select {
        flex: 1 1 8rem;
        min-width: 0;
    }
}