/* Shared issue layout. Keep publication content in data/issues/*.json. */
.issue-page .issue-heading {
    margin: 0 0 32px;
    text-align: center;
}
.issue-page .issue-heading h1 {
    margin: 0;
    font: 700 3rem/1.25 'Playfair Display', Georgia, serif;
    color: var(--text-main);
}
.issue-page .content-wrapper .section-header {
    text-align: center;
}
.issue-page .issue-message {
    padding: 40px 16px;
    text-align: center;
}

/* The complete issue follows the same typography and alignment as its materials. */
.issue-page .issue-full-pdf {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    box-sizing: border-box;
    width: 100%;
    margin: 0 0 32px;
    padding: 16px 16px 16px 24px;
    border-top: 1px solid rgba(197, 160, 89, 0.6);
    border-bottom: 1px solid rgba(197, 160, 89, 0.6);
    border-left: 8px solid #c5a059;
    border-right: 8px solid transparent;
    box-shadow: 0 8px 16px 4px rgba(0, 0, 0, 0.1);
    color: var(--text-main);
    transition: background-color 0.3s ease, border-color 0.3s ease,
                box-shadow 0.3s ease, transform 0.3s ease;
    animation: issueFullReveal 0.55s ease-out 0.08s backwards;
}
.issue-page .issue-full-pdf[hidden] { display: none; }
.issue-page .issue-full-label { min-width: 0; }
.issue-page .issue-full-pdf:is(:hover, :focus-within) {
    background: #fcfcfc;
    border-left-color: #c5a059;
    transform: translateX(4px);
    box-shadow: 8px 8px 32px rgba(0, 0, 0, 0.25);
}
@keyframes issueFullReveal {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 700px) {
    .issue-page .issue-full-pdf { flex-wrap: wrap; gap: 8px; }
    .issue-page .issue-full-label { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .issue-page .issue-full-pdf { animation: none; transition: none; }
    .issue-page .issue-full-pdf:is(:hover, :focus-within) { transform: none; }
}

/* Full-PDF archives use the same heading, content width and 32px heading gap. */
.issue-page #issue-embedded-pdf[hidden] { display: none; }
.issue-page .issue-pdf-frame {
    display: block;
    width: 100%;
    height: min(85vh, 1000px);
    min-height: 520px;
    box-sizing: border-box;
    border: 1px solid #dfe2e2;
    border-radius: 12px;
    background: #e9eced;
}
