.sfpp-viewer { box-sizing: border-box; width: 100%; padding: 0; margin: 0; }
.sfpp-viewer .sfpp-frame { display: block; width: 100%; max-width: none; margin: 0; padding: 0; border: 0; background: #e8edf3; }
.sfpp-viewer--content { overflow: hidden; border: 1px solid #d7dfe8; border-radius: 8px; }
.sfpp-viewer--content .sfpp-fallback { display: block; margin: 0; padding: 10px 16px; font: 14px/1.5 system-ui, sans-serif; background: #f4f7fa; }
.sfpp-viewer .sfpp-fallback a { color: #1d4ed8; text-decoration: underline; }
body.sfpp-full-page { --sfpp-admin-offset: 0px; margin: 0; padding: 0; background: #e8edf3; }
body.sfpp-full-page.admin-bar { --sfpp-admin-offset: 32px; }
.sfpp-full-page .sfpp-shell { display: flex; flex-direction: column; height: calc(100vh - var(--sfpp-admin-offset)); height: calc(100dvh - var(--sfpp-admin-offset)); min-height: 360px; background: #e8edf3; font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }
.sfpp-full-page .sfpp-header { display: flex; flex: 0 0 auto; align-items: center; gap: 18px; box-sizing: border-box; margin: 0; padding: 12px 20px; min-height: 60px; background: #10243b; color: #fff; }
.sfpp-full-page .sfpp-header a { color: #fff; font: 500 14px/1.4 system-ui, sans-serif; text-decoration: none; }
.sfpp-full-page .sfpp-header a:hover { text-decoration: underline; }
.sfpp-full-page .sfpp-header a:focus-visible { outline: 2px solid #b7dcff; outline-offset: 4px; }
.sfpp-full-page .sfpp-post-title { flex: 1; margin: 0; padding: 0; color: #fff; font: 600 17px/1.35 system-ui, sans-serif; overflow-wrap: anywhere; }
.sfpp-full-page .sfpp-home { flex-shrink: 0; }
.sfpp-full-page .sfpp-open { flex-shrink: 0; margin-left: auto; padding: 7px 12px; border: 1px solid #59728b; border-radius: 5px; }
.sfpp-full-page .sfpp-main { flex: 1; min-height: 0; width: 100%; max-width: none; margin: 0; padding: 0; }
.sfpp-full-page .sfpp-viewer--full, .sfpp-full-page .sfpp-viewer--full .sfpp-frame { height: 100%; }
@media (max-width: 782px) { body.sfpp-full-page.admin-bar { --sfpp-admin-offset: 46px; } }
@media (max-width: 600px) {
    .sfpp-full-page .sfpp-header { gap: 10px; padding: 10px 12px; flex-wrap: wrap; }
    .sfpp-full-page .sfpp-post-title { order: 3; flex: 0 0 100%; font-size: 15px; }
    .sfpp-full-page .sfpp-header a { font-size: 13px; }
    .sfpp-viewer--content .sfpp-frame { max-height: 80vh; max-height: 80dvh; min-height: 400px; }
}
