.literature-list-page,
.literature-page {
    max-width: 960px;
}

.literature-list-title {
    margin: 0 0 1.25rem;
    font-size: 1.5rem;
}

.literature-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

.literature-list a {
    color: #1a365d;
    font-size: 1.05rem;
    font-weight: 600;
    text-decoration: none;
}

.literature-list a:hover {
    text-decoration: underline;
}

.literature-list-empty {
    color: #6b7280;
}

.literature-messages {
    list-style: none;
    margin: 0 0 0.75rem;
    padding: 0.75rem 1rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.literature-page--reader .literature-messages {
    flex: 0 0 auto;
    padding: 0.65rem 1rem;
    margin: 0;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.literature-messages__item {
    margin: 0;
    font-size: 0.95rem;
    line-height: 1.4;
}

.literature-messages__item--error {
    color: #b91c1c;
}

.literature-messages__item--warning {
    color: #b45309;
}

.literature-messages__item--success {
    color: #166534;
}

.literature-messages__item--info {
    color: #1e40af;
}

.main-content.literature-main {
    display: flex;
    flex-direction: column;
    padding: 0;
    min-height: calc(100vh - 140px);
}

.literature-page--reader {
    max-width: none;
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
    min-width: 0;
}

.literature-book-embed {
    flex: 1 1 auto;
    min-height: calc(100vh - 140px);
    overflow: hidden;
    background: #e7e8e2;
}

.literature-book-frame {
    display: block;
    width: 100%;
    height: calc(100vh - 140px);
    min-height: 640px;
    border: 0;
}
