.rbms-portal-page .site-header,
.rbms-portal-page .main-navigation,
.rbms-portal-page .site-footer,
.rbms-portal-page .entry-header { display: none !important; }
.rbms-portal-page .site-content,
.rbms-portal-page .content-area,
.rbms-portal-page .site-main,
.rbms-portal-page .inside-article { margin: 0 !important; max-width: none !important; padding: 0 !important; width: 100% !important; }
.rbms-portal-page { background: #f2f3f5; }
.rbms-portal { --red: #eb0028; --ink: #171b21; --muted: #66707d; --line: #dfe2e6; color: var(--ink); font-family: Inter, "Segoe UI", Arial, sans-serif; min-height: 100vh; }
.rbms-portal * { box-sizing: border-box; }
.rbms-emulation-banner { align-items: center; background: #fff0c7; color: #5b4100; display: flex; font-size: 13px; font-weight: 800; gap: 18px; justify-content: center; padding: 10px 18px; }
.rbms-emulation-banner a { color: #a4001d; }
.rbms-portal-header { align-items: center; background: #fff; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; min-height: 70px; padding: 0 30px; }
.rbms-portal-brand { align-items: center; color: var(--ink) !important; display: flex; font-size: 12px; font-weight: 900; gap: 10px; letter-spacing: .04em; text-decoration: none !important; text-transform: uppercase; }
.rbms-portal-brand > span { align-items: center; background: var(--red); color: #fff; display: flex; height: 32px; justify-content: center; transform: skew(-7deg); width: 32px; }
.rbms-portal-account { align-items: center; display: flex; font-size: 13px; gap: 15px; }
.rbms-portal-account a { color: var(--red); font-weight: 700; text-decoration: none; }
.rbms-portal-layout { display: grid; grid-template-columns: 235px minmax(0, 1fr); min-height: calc(100vh - 70px); }
.rbms-portal-sidebar { background: var(--ink); color: #fff; padding: 28px 18px; }
.rbms-portal-tenant { border-bottom: 1px solid #343b45; margin-bottom: 20px; padding: 0 10px 22px; }
.rbms-portal-tenant small { color: #aeb5bf; display: block; font-size: 10px; letter-spacing: .1em; margin-bottom: 6px; text-transform: uppercase; }
.rbms-portal-tenant strong { display: block; line-height: 1.35; }
.rbms-portal-sidebar nav { display: grid; gap: 5px; }
.rbms-portal-sidebar nav a, .rbms-portal-sidebar nav span { border-left: 3px solid transparent; color: #c8cdd5 !important; display: block; font-size: 13px; font-weight: 700; padding: 11px 12px; text-decoration: none !important; }
.rbms-portal-sidebar nav a.is-current { background: #282e37; border-left-color: var(--red); color: #fff !important; }
.rbms-portal-sidebar nav em { color: #858e99; display: block; font-size: 9px; font-style: normal; margin-top: 3px; text-transform: uppercase; }
.rbms-portal-main { margin: 0 auto; max-width: 1180px; padding: 52px 42px 80px; width: 100%; }
.rbms-portal-heading { align-items: flex-end; display: flex; justify-content: space-between; margin-bottom: 34px; }
.rbms-heading-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.rbms-heading-actions button { background: var(--red); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-weight: 800; padding: 10px 14px; }
.rbms-heading-actions button.is-secondary { background: #e7ebf0; color: var(--ink); }
.rbms-portal-heading p, .rbms-portal-section__heading p, .rbms-portal-card > p { color: var(--red); font-size: 10px; font-weight: 900; letter-spacing: .12em; margin: 0 0 7px; text-transform: uppercase; }
.rbms-portal-heading h1 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(36px, 5vw, 58px); letter-spacing: -.035em; line-height: 1; margin: 0 0 10px; }
.rbms-portal-heading > div > span { color: var(--muted); font-size: 13px; }
.rbms-portal-state { background: var(--ink); color: #fff; font-size: 11px; padding: 8px 12px; text-transform: uppercase; }
.rbms-portal-section, .rbms-portal-card { background: #fff; border: 1px solid var(--line); }
.rbms-portal-section { margin-bottom: 22px; }
.rbms-portal-section__heading { align-items: center; border-bottom: 1px solid var(--line); display: flex; justify-content: space-between; padding: 24px 28px; }
.rbms-portal-section__heading h2, .rbms-portal-card h2 { font-size: 20px; margin: 0; }
.rbms-portal-section__heading > span { background: #fff4d8; color: #704f00; font-size: 10px; font-weight: 800; padding: 7px 9px; text-transform: uppercase; }
.rbms-portal-steps { display: grid; grid-template-columns: repeat(3, 1fr); }
.rbms-portal-steps article { border-left: 1px solid var(--line); display: flex; gap: 14px; min-height: 150px; padding: 28px 24px; }
.rbms-portal-steps article:first-child { border-left: 0; }
.rbms-portal-steps article.is-current { box-shadow: inset 0 4px var(--red); }
.rbms-portal-steps i { align-items: center; background: #f0f1f3; color: var(--muted); display: flex; flex: 0 0 32px; font-style: normal; font-weight: 900; height: 32px; justify-content: center; }
.rbms-portal-steps .is-current i { background: var(--red); color: #fff; }
.rbms-portal-steps strong { display: block; font-size: 14px; margin-bottom: 7px; }
.rbms-portal-steps p { color: var(--muted); font-size: 12px; line-height: 1.55; margin: 0; }
.rbms-portal-grid { display: grid; gap: 22px; grid-template-columns: 1fr 1fr; }
.rbms-portal-card { min-width: 0; padding: 24px 28px; }
.rbms-portal-card h2 { overflow-wrap: anywhere; }
.rbms-portal-card > span { color: var(--muted); display: inline-block; font-size: 12px; margin-top: 12px; }
.rbms-portal-card > span.is-success { background: #e2f5e8; color: #145c2d; font-weight: 800; padding: 6px 9px; text-transform: uppercase; }
.rbms-upload-section { margin-top: 22px; }
.rbms-upload-locked { background: #fff8dc; border-left: 4px solid #e2a400; color: #5b4100; padding: 18px 24px; }
.rbms-upload-form { display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); padding: 26px 28px; }
.rbms-upload-form label { color: #263442; display: grid; font-size: 13px; font-weight: 700; gap: 7px; min-width: 0; }
.rbms-upload-form label:last-of-type, .rbms-upload-form > p, .rbms-upload-form > button, .rbms-upload-form > progress, .rbms-upload-form > div { grid-column: 1 / -1; }
.rbms-upload-form input { background: #fff; border: 1px solid #ccd3dc; border-radius: 7px; color: #17202a; padding: 12px 13px; width: 100%; }
.rbms-upload-form button { background: var(--red); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-weight: 800; justify-self: start; padding: 12px 20px; }
.rbms-upload-form button:disabled { cursor: wait; opacity: .55; }
.rbms-upload-form progress { accent-color: var(--red); height: 14px; width: 100%; }
.rbms-upload-form > p, #rbms-upload-status { color: var(--muted); font-size: 13px; margin: 0; }
.rbms-portal-signed-out, .rbms-portal-error { background: #fff; border-top: 4px solid #eb0028; margin: 80px auto; max-width: 680px; padding: 45px; }
.rbms-portal-signed-out h1, .rbms-portal-error h1 { font-family: Georgia, serif; font-size: 42px; }
.rbms-portal-signed-out a { background: #eb0028; color: #fff; display: inline-block; font-weight: 800; padding: 13px 18px; text-decoration: none; }
@media (max-width: 1050px) {
    .rbms-portal-layout { grid-template-columns: 1fr; }
    .rbms-portal-sidebar { padding: 14px 18px; }
    .rbms-portal-tenant { display: none; }
    .rbms-portal-sidebar nav { display: flex; gap: 5px; overflow-x: auto; }
    .rbms-portal-sidebar nav a { flex: 0 0 auto; white-space: nowrap; }
    .rbms-portal-main { padding: 36px 20px 60px; }
    .rbms-portal-steps, .rbms-portal-grid { grid-template-columns: 1fr; }
    .rbms-upload-form { grid-template-columns: 1fr; }
    .rbms-portal-steps article { border-left: 0; border-top: 1px solid var(--line); min-height: 0; }
}
@media (max-width: 520px) {
    .rbms-portal-header { padding: 0 16px; }
    .rbms-portal-brand { max-width: 180px; }
    .rbms-portal-account > span { display: none; }
    .rbms-portal-heading { align-items: flex-start; flex-direction: column; gap: 18px; }
    .rbms-portal-section__heading { align-items: flex-start; flex-direction: column; gap: 12px; }
}
.rbms-policy-form, .rbms-workflow-project { background: #fff; border: 1px solid var(--line); margin: 20px 28px; padding: 20px; }
.rbms-policy-form label { display: block; margin-top: 14px; }
.rbms-policy-form input[type="text"] { display: block; margin-top: 6px; padding: 10px; width: 100%; }
.rbms-policy-check { align-items: flex-start; display: flex !important; gap: 9px; }
.rbms-workflow { display: grid; gap: 16px; padding: 24px 28px; }
.rbms-library-tools { display: grid; gap: 12px; padding: 18px 28px 0; }
.rbms-library-tools input { border: 1px solid #ccd3dc; border-radius: 7px; padding: 10px 12px; width: 100%; }
.rbms-library-views { display: flex; flex-wrap: wrap; gap: 7px; }
.rbms-library-views button { background: #eef1f4; border: 1px solid transparent; border-radius: 999px; color: var(--ink); cursor: pointer; font-size: 12px; font-weight: 800; padding: 8px 12px; }
.rbms-library-views button.is-current { background: var(--ink); color: #fff; }
.rbms-library-views span { background: rgba(255,255,255,.75); border-radius: 999px; color: var(--ink); display: inline-block; margin-left: 5px; min-width: 20px; padding: 1px 5px; }
.rbms-workflow-project { margin: 0; }
.rbms-workflow-project header { display: flex; gap: 16px; justify-content: space-between; }
.rbms-workflow-project header h3 { margin: 4px 0; }
.rbms-workflow-project header span { color: #b3192e; font-weight: 800; text-transform: capitalize; }
.rbms-workflow-project ol { display: grid; gap: 7px; grid-template-columns: repeat(4, 1fr); list-style: none; padding: 0; }
.rbms-workflow-project li { background: #eef1f4; border-radius: 999px; font-size: 11px; padding: 8px; text-align: center; }
.rbms-workflow-project li.is-complete { background: #dff4e5; color: #176b35; }
.rbms-workflow-summary { background: #f6f7f9; margin: 14px 0; padding: 18px; }
.rbms-thumbnail-preview { background: #171b22; margin: 14px 0; padding: 12px; }
.rbms-thumbnail-preview > div { aspect-ratio: 16 / 9; background: #000; overflow: hidden; position: relative; }
.rbms-thumbnail-preview-base { display: block; height: 100%; object-fit: cover; width: 100%; }
.rbms-thumbnail-preview-logo { height: auto; position: absolute; }
.rbms-thumbnail-preview figcaption { color: #d8dde5; font-size: 11px; margin-top: 8px; }
.rbms-archived-notice { align-items: flex-start; background: #fff4d8; border-left: 4px solid #d99a00; display: flex; flex-direction: column; gap: 3px; margin: 12px 0; padding: 10px 12px; }
.rbms-archived-notice span { color: #66501b; font-size: 12px; }
.rbms-workflow-summary h4 { font-size: 21px; margin: 0 0 8px; }
.rbms-workflow-summary h5 { font-size: 13px; margin: 20px 0 8px; text-transform: uppercase; }
.rbms-summary-teaser { color: #3d4651; font-weight: 700; }
.rbms-summary-description { line-height: 1.65; white-space: pre-line; }
.rbms-workflow-summary ul { margin: 8px 0; padding-left: 22px; }
.rbms-workflow-summary li { background: transparent; border-radius: 0; font-size: 13px; line-height: 1.5; padding: 3px 0; text-align: left; }
.rbms-scripture-list { display: grid; gap: 8px; list-style: none; padding-left: 0 !important; }
.rbms-scripture-list li { border-left: 3px solid var(--red); padding-left: 10px; }
.rbms-scripture-list span { color: var(--muted); font-size: 10px; margin-left: 8px; text-transform: uppercase; }
.rbms-scripture-list q { color: var(--muted); display: block; font-size: 12px; margin-top: 3px; }
.rbms-summary-hashtags { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 18px; }
.rbms-summary-hashtags span { background: #e7ebf0; border-radius: 999px; font-size: 11px; padding: 6px 9px; }
.rbms-youtube-description { border-top: 1px solid var(--line); margin-top: 20px; padding-top: 16px; }
.rbms-youtube-description > div { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 8px; }
.rbms-youtube-description h5 { margin: 0; }
.rbms-youtube-description > div span, .rbms-youtube-description > span { color: var(--muted); font-size: 11px; }
.rbms-youtube-description button { background: var(--ink); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-size: 11px; margin-left: auto; padding: 8px 11px; }
.rbms-youtube-description textarea { background: #fff; border: 1px solid #ccd3dc; border-radius: 6px; font-family: inherit; line-height: 1.5; min-height: 260px; padding: 12px; resize: vertical; width: 100%; }
.rbms-transcript { border: 1px solid var(--line); margin: 14px 0; }
.rbms-transcript summary { cursor: pointer; font-weight: 800; padding: 13px 15px; }
.rbms-transcript-toolbar { align-items: center; border-top: 1px solid var(--line); display: flex; gap: 12px; padding: 10px 15px; }
.rbms-transcript-toolbar button { background: var(--ink); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-size: 11px; padding: 8px 11px; }
.rbms-transcript-toolbar span { color: var(--muted); font-size: 11px; }
.rbms-transcript-text { border-top: 1px solid var(--line); font-family: Georgia, serif; font-size: 14px; line-height: 1.7; max-height: 420px; overflow: auto; padding: 18px; white-space: pre-wrap; }
.rbms-workflow-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.rbms-workflow-actions button, .rbms-workflow-download, #rbms-refresh-workflow, .rbms-policy-form button { background: var(--ink); border: 0; border-radius: 999px; color: #fff; cursor: pointer; padding: 10px 14px; text-decoration: none; }
.rbms-workflow-error { color: #9b1c1c; }
.rbms-workflow-notice { background: #fff4d8; color: #704f00; padding: 10px 12px; }
.rbms-processing { align-items: center; background: #f4f7fb; border-left: 4px solid var(--red); display: flex; gap: 14px; margin: 15px 0; padding: 14px 16px; }
.rbms-processing i { animation: rbms-spin .85s linear infinite; border: 3px solid #d8dde5; border-top-color: var(--red); border-radius: 50%; flex: 0 0 28px; height: 28px; width: 28px; }
.rbms-processing strong, .rbms-processing span { display: block; }
.rbms-processing span { color: var(--muted); font-size: 12px; margin-top: 3px; }
@keyframes rbms-spin { to { transform: rotate(360deg); } }
.rbms-speaker-settings { padding: 26px 28px; }
.rbms-branding-settings { align-items: start; border-bottom: 1px solid var(--line); display: grid; gap: 18px; grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); margin: 0 0 24px; padding: 0 0 24px; }
.rbms-branding-settings h3 { margin: 0 0 6px; }
.rbms-branding-settings p { color: var(--muted); font-size: 12px; margin: 0; }
.rbms-branding-settings form { align-items: start; display: grid; gap: 9px; }
.rbms-branding-settings img { background: #eef1f4; border: 1px solid var(--line); height: 110px; object-fit: contain; padding: 8px; width: 140px; }
.rbms-speaker-settings > p { color: var(--muted); margin-top: 0; }
.rbms-speaker-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; }
.rbms-speaker-list span { background: #eef1f4; border-radius: 999px; font-size: 12px; font-weight: 700; padding: 8px 12px; }
.rbms-speaker-settings form { align-items: end; display: flex; flex-wrap: wrap; gap: 10px; }
.rbms-speaker-settings label { display: grid; flex: 1 1 300px; font-size: 13px; font-weight: 700; gap: 6px; }
.rbms-speaker-settings input { border: 1px solid #ccd3dc; border-radius: 7px; padding: 11px 12px; width: 100%; }
.rbms-speaker-settings button { background: var(--ink); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-weight: 800; padding: 11px 16px; }
.rbms-speaker-settings form span { color: var(--muted); flex-basis: 100%; font-size: 12px; }
.rbms-open-thumbnail { background: var(--red); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-weight: 800; padding: 10px 14px; }
.rbms-modal-open { overflow: hidden; }
.rbms-thumbnail-modal { align-items: center; background: rgba(12, 15, 20, .82); display: flex; inset: 0; justify-content: center; padding: 24px; position: fixed; z-index: 100000; }
.rbms-thumbnail-modal[hidden] { display: none; }
.rbms-thumbnail-frame { background: #fff; box-shadow: 0 20px 70px rgba(0,0,0,.4); max-height: calc(100vh - 48px); max-width: 1240px; overflow: auto; width: 100%; }
.rbms-thumbnail-frame > header { align-items: center; background: var(--ink); color: #fff; display: flex; justify-content: space-between; padding: 18px 22px; }
.rbms-thumbnail-frame > header small { color: #aeb5bf; display: block; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.rbms-thumbnail-frame > header h2 { margin: 3px 0 0; }
.rbms-thumbnail-frame > header button { background: transparent; border: 0; color: #fff; cursor: pointer; font-size: 34px; line-height: 1; }
.rbms-thumbnail-editor { display: grid; grid-template-columns: minmax(0, 1fr) 280px; }
.rbms-thumbnail-stage { background: #20252d; min-width: 0; padding: 22px; }
.rbms-thumbnail-stage canvas { background: #000; display: block; height: auto; max-width: 100%; touch-action: none; width: 100%; }
.rbms-thumbnail-stage p { color: #c8cdd5; font-size: 12px; margin: 10px 0 0; }
.rbms-thumbnail-editor aside { display: grid; align-content: start; gap: 13px; padding: 24px; }
.rbms-thumbnail-editor aside h3 { margin: 0 0 4px; }
.rbms-thumbnail-editor aside label { display: grid; font-size: 12px; font-weight: 800; gap: 7px; }
.rbms-thumbnail-editor aside button { background: var(--red); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-weight: 800; padding: 11px 14px; }
.rbms-thumbnail-editor aside button.is-secondary { background: #e7ebf0; color: var(--ink); }
#rbms-thumbnail-status { color: var(--muted); font-size: 12px; line-height: 1.5; }
.rbms-summary-edit-frame { max-width: 850px; }
.rbms-summary-edit-form { display: grid; gap: 15px; padding: 24px; }
.rbms-summary-edit-form label { display: grid; font-size: 12px; font-weight: 800; gap: 6px; }
.rbms-summary-edit-form input, .rbms-summary-edit-form textarea { border: 1px solid #ccd3dc; border-radius: 7px; font-family: inherit; padding: 10px 12px; width: 100%; }
.rbms-summary-edit-form label small { color: var(--muted); text-align: right; }
.rbms-summary-edit-form > div { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; }
.rbms-summary-edit-form button { background: var(--red); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-weight: 800; padding: 10px 14px; }
.rbms-summary-edit-form button.is-secondary { background: #e7ebf0; color: var(--ink); }
.rbms-summary-edit-form [role="status"] { color: var(--muted); font-size: 12px; }
.rbms-google-settings { align-items: center; background: #fafafa; border: 1px solid #e2e4e8; display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr) auto; padding: 20px; }
.rbms-google-settings h3, .rbms-google-settings p { margin: 0; }
.rbms-google-settings p { color: var(--muted); margin-top: 6px; max-width: 720px; }
.rbms-integration-state { background: #fff3cd; color: #725600; font-weight: 800; padding: 9px 12px; }
.rbms-google-connect, .rbms-google-connection a { background: var(--ink); border-radius: 999px; color: #fff !important; display: inline-flex; font-weight: 800; padding: 11px 16px; text-decoration: none; }
.rbms-google-connection { display: grid; gap: 5px; justify-items: start; }
.rbms-publishing-profile-form { border-bottom: 1px solid var(--line); display: grid; gap: 14px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 22px 0; padding: 0 0 24px; }
.rbms-publishing-profile-form .rbms-settings-intro, .rbms-publishing-profile-form .rbms-publishing-cta, .rbms-publishing-profile-form .rbms-publishing-actions { grid-column: 1 / -1; }
.rbms-settings-intro h3, .rbms-settings-intro p { margin: 0; }
.rbms-settings-intro p { color: var(--muted); font-size: 12px; margin-top: 5px; }
.rbms-publishing-profile-form label { display: grid; font-size: 12px; font-weight: 800; gap: 6px; margin: 0; }
.rbms-publishing-profile-form input, .rbms-publishing-profile-form textarea { border: 1px solid #ccd3dc; border-radius: 7px; font: inherit; padding: 10px 12px; width: 100%; }
.rbms-publishing-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 12px; }
.rbms-portal-signed-out > span { color: var(--muted); display: block; margin: 12px 0; }
.rbms-portal-signed-out .rbms-google-signin { background: #fff; border: 1px solid #dadce0; color: #202124; }
.rbms-speaker-settings .rbms-branding-settings form { align-items: start; display: grid; }
@media (max-width: 700px) { .rbms-workflow-project ol { grid-template-columns: 1fr 1fr; } }
@media (max-width: 700px) { .rbms-library-tools { grid-template-columns: 1fr; } .rbms-heading-actions { justify-content: flex-start; } }
@media (max-width: 900px) {
    .rbms-google-settings { grid-template-columns: 1fr; }
    .rbms-publishing-profile-form { grid-template-columns: 1fr; }
    .rbms-publishing-profile-form .rbms-settings-intro, .rbms-publishing-profile-form .rbms-publishing-cta, .rbms-publishing-profile-form .rbms-publishing-actions { grid-column: auto; }
    .rbms-branding-settings { grid-template-columns: 1fr; }
    .rbms-thumbnail-modal { align-items: stretch; padding: 0; }
    .rbms-thumbnail-frame { max-height: 100vh; }
    .rbms-thumbnail-editor { grid-template-columns: 1fr; }
    .rbms-thumbnail-stage { padding: 12px; }
    .rbms-thumbnail-editor aside { padding: 18px; }
}
