@import 'Assisto.Client.eq462a2xqj.bundle.scp.css';
@import '_content/Client.Library/Client.Library.t4e962y23n.bundle.scp.css';

/* _content/Assisto.Server/Components/Account/Pages/ForgotPassword.razor.rz.scp.css */

[b-xxedvjktss] h1{
    margin-bottom: 3rem;
}

[b-xxedvjktss] .form{
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1.5rem;
}

[b-xxedvjktss] button{
    text-transform: uppercase;
}
/* _content/Assisto.Server/Components/Account/Pages/Login.razor.rz.scp.css */
h1[b-4sj1kzpw8n]{
    text-align: center;
    margin-bottom: 2rem;
}

.login[b-4sj1kzpw8n]{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
}

[b-4sj1kzpw8n] .form{
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1.5rem;
}

.group[b-4sj1kzpw8n]{
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

.alert[b-4sj1kzpw8n]{
}

.remember-me[b-4sj1kzpw8n]{
    margin-right: 1rem;
}

.no-account[b-4sj1kzpw8n]{
    margin-top: 1rem;
}

.right[b-4sj1kzpw8n]{
    align-items: flex-end;
    text-align: right;
}

.status[b-4sj1kzpw8n]{
    align-self: flex-start;
}


/* _content/Assisto.Server/Components/Account/Pages/ResetPassword.razor.rz.scp.css */
.reset-password[b-fe3wmq2nfc]{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 1rem;
}

[b-fe3wmq2nfc] form{
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    gap: 1rem;
}

[b-fe3wmq2nfc] button{
    text-transform: uppercase;
}
/* _content/Assisto.Server/Components/Account/Pages/Signup.razor.rz.scp.css */

h1[b-vd49fzmmd0]{
    text-align: center;
    margin-bottom: 2rem;
}

.signup[b-vd49fzmmd0]{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2rem;
}

[b-vd49fzmmd0] .form > * {
}

.confirm[b-vd49fzmmd0]{
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    gap: 1rem;
}

[b-vd49fzmmd0] .form{
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
}

[b-vd49fzmmd0] .confirm a {
    text-decoration: none;
    font-weight: bold;
}

@media all and (min-width: 841px) {
    [b-vd49fzmmd0] .form {
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
    }
    [b-vd49fzmmd0] .left, .right[b-vd49fzmmd0] {
        width: 50%;
    }
    [b-vd49fzmmd0] .left { float: left; width: 49%; max-width: 49%; }
    [b-vd49fzmmd0] .right { float: right; width: 49%; }
}

.status[b-vd49fzmmd0]{
    align-self: flex-start;
}

/* Loading state shown inside the SIGN UP button while the account is being created. */
.signup-submitting[b-vd49fzmmd0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
}

/* Native state <select> — mirrors the .input-text fields (which are styled in
   ATextInput's own scoped CSS, so it can't be reused here). */
[b-vd49fzmmd0] .state {
    display: flex;
    flex-direction: column;
    position: relative;
}

[b-vd49fzmmd0] .state > label {
    margin-bottom: .25rem;
    font-weight: 500;
}

[b-vd49fzmmd0] .state-select {
    padding: .5rem 1rem;
    width: 100%;
    border-radius: 4px;
    border: 1px solid #ccd2d8;
    outline: none;
    background-color: white;
    transition: border-color .25s ease-in-out;
}

[b-vd49fzmmd0] .state-select:focus,
[b-vd49fzmmd0] .state-select:focus-visible,
[b-vd49fzmmd0] .state-select:active {
    outline: none;
    border: 1px solid var(--assisto-primary);
}
/* _content/Assisto.Server/Components/Account/Shared/StatusMessage.razor.rz.scp.css */

.alert[b-ldz07paji3]{
    display: flex;
    flex-direction: row;
    gap: 1rem;
    align-items: center;
}

.icon.error[b-ldz07paji3] {
    filter: var(--assisto-error-filter);
}

.icon.info[b-ldz07paji3] {
    filter: var(--assisto-primary-filter);
}

/* _content/Assisto.Server/Components/Public/ProviderMap.razor.rz.scp.css */
/* 
 * Always set the map height explicitly to define the size of the div element
 * that contains the map. 
 */
#map[b-tknk1zz3u2] {
  height: 100%;
}

/* 
 * Optional: Makes the sample page fill the window. 
 */
html[b-tknk1zz3u2],
body[b-tknk1zz3u2] {
  height: 100%;
  margin: 0;
  padding: 0;
}
/* _content/Assisto.Server/Components/Public/ProviderPage.razor.rz.scp.css */
.scroll-container[b-uhjnd5yp5x] {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.scroll-content[b-uhjnd5yp5x] {
    min-height: 100%;
    width: 100%;
    overflow: auto;
}

.content[b-uhjnd5yp5x] {
    max-width: 850px;
    margin: 0 auto;
    padding: 20px;
}

.provider-info[b-uhjnd5yp5x] {
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #dee2e6;
}

.provider-info h1[b-uhjnd5yp5x] {
    color: var(--assisto-primary, #004f44);
    font-size: 28px;
    margin-bottom: 10px;
}

.provider-address[b-uhjnd5yp5x] {
    color: #666;
    margin-bottom: 5px;
}

.provider-id[b-uhjnd5yp5x] {
    color: #777;
    font-size: 0.9rem;
}

.provider-citations h2[b-uhjnd5yp5x] {
    color: var(--assisto-primary, #004f44);
    font-size: 24px;
    margin-bottom: 20px;
}

.citation-list[b-uhjnd5yp5x] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.provider-not-found[b-uhjnd5yp5x] {
    text-align: center;
    padding: 50px 0;
}

.provider-not-found h2[b-uhjnd5yp5x] {
    color: var(--assisto-primary, #004f44);
    margin-bottom: 15px;
}

/* Modal styles */
.modal[b-uhjnd5yp5x] {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
}

.modal.visible[b-uhjnd5yp5x] {
    display: block;
}

.modal-bg[b-uhjnd5yp5x] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.modal-panel[b-uhjnd5yp5x] {
    position: relative;
    background-color: white;
    width: 90%;
    max-width: 800px;
    margin: 50px auto;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    display: none;
}

.modal-panel.visible[b-uhjnd5yp5x] {
    display: block;
}

@media (max-width: 768px) {
    .provider-info h1[b-uhjnd5yp5x] {
        font-size: 24px;
    }

    .provider-citations h2[b-uhjnd5yp5x] {
        font-size: 20px;
    }

    .modal-panel[b-uhjnd5yp5x] {
        width: 95%;
        margin: 20px auto;
    }
}

@media (max-width: 480px) {

    .modal.visible[b-uhjnd5yp5x], .modal-panel.visible[b-uhjnd5yp5x] {
        overflow: scroll;
    }

    .modal-panel.visible[b-uhjnd5yp5x] {
        max-width: 90%;
    }
}

.modal[b-uhjnd5yp5x] {
    position: absolute;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.modal-bg[b-uhjnd5yp5x] {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
}

.modal-header[b-uhjnd5yp5x] {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    border-bottom: #424242;
}

.modal-panel[b-uhjnd5yp5x] {
    pointer-events: all;
    z-index: 1001;
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    max-width: 850px;
    width: 90%;
    max-height: 90%;
    margin: auto;
    display: flex;
    flex-direction: column;
    gap: .5rem;
    position: relative;
    padding: 1rem 1.5rem 1rem 1.5rem;
    overflow-y: scroll;
}

.modal-content[b-uhjnd5yp5x] {
    width: 100%;
    overflow-y: auto;
    padding: 2rem;
}

/* Show/hide story modal */

.modal[b-uhjnd5yp5x], .modal-panel[b-uhjnd5yp5x] {
    display: none;
}

    .modal.visible[b-uhjnd5yp5x], .modal-panel.visible[b-uhjnd5yp5x] {
        display: flex;
        overflow: hidden;
        height: 100vh;
    }

/* Show/hide modal complete report */

.complete-report[b-uhjnd5yp5x] {
}

.modal.complete .complete-report[b-uhjnd5yp5x] {
    display: block;
}

.close-complete-report-text[b-uhjnd5yp5x] {
    display: none;
}

.modal.complete .see-complete-report-text[b-uhjnd5yp5x] {
    display: none;
}

.modal.complete .close-complete-report-text[b-uhjnd5yp5x] {
    display: inline-block;
}
/* _content/Assisto.Server/Components/Public/PublicReportFooter.razor.rz.scp.css */
.footer[b-tgp5o0tkge] {
    color: white;
    font-size: 14px;
    min-height: 100px;
    background-color: var(--rt-ink, #123530);
    padding: 30px;
    display: block;
    background-image: url(_content/Client.Library/images/newsletter/footer-background.png);
    margin-top: 20px;
    width: 100%;
}

.footer.with-navigation[b-tgp5o0tkge] {
    margin-left: 0;
    max-width: none;
}

/* Screen-only: the dark footer band (social links, disclaimers) doesn't belong on paper. */
@media print {
    .footer[b-tgp5o0tkge] {
        display: none !important;
    }
}

.footer .wrapper[b-tgp5o0tkge] {
    max-width: 850px;
    margin: 0 auto;
}

.footer-info > div:not(:last-child)[b-tgp5o0tkge] {
    margin-bottom: 10px;
}

.footer .disclaimer[b-tgp5o0tkge] {
    max-width: 650px;
    margin: 0 auto;
    padding: 20px;
    text-align: left;
}

.footer .social-icons[b-tgp5o0tkge] {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.footer .social-link[b-tgp5o0tkge] {
    margin: 0 10px;
    display: inline-block;
}

.footer .social-link img[b-tgp5o0tkge] {
    display: block;
    width: 24px;
    height: 24px;
}

.footer .separator[b-tgp5o0tkge] {
    height: 1px;
    background-color: #c0c0c0;
    margin: 25px 0;
}

.footer .footer-info[b-tgp5o0tkge] {
    text-align: center;
}

.footer a[b-tgp5o0tkge] {
    color: white;
}

@media (max-width: 768px) {
    .footer.with-navigation[b-tgp5o0tkge] {
        margin-left: 0;
        max-width: 100%;
    }

    .footer .wrapper[b-tgp5o0tkge] {
        padding: 0 10px;
    }
} 
/* _content/Assisto.Server/Components/Public/PublicReportHeader.razor.rz.scp.css */
.header[b-1rk0wu9mk1] {
    position: sticky;
    top: 0;
    /* Above the report's navigation rail (z-index 100), which is a sibling sticky stacking context that
       comes later in the DOM. Without this the rail paints over the account dropdown on mobile (the rail
       sticks just below the header), and the dropdown's own z-index can't escape the header's context. */
    z-index: 101;
    background-color: white;
    border-bottom: 1px solid #e0e0e0;
    padding: 10px 0;
    margin: 0 auto;
    background-color: #F0F0F0;
}

.header-container[b-1rk0wu9mk1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 1rem;
    max-width: 850px;
}


.header.with-navigation .header-container[b-1rk0wu9mk1] {
    margin-left: 30%;
}

@media (max-width: 768px) {
    .header.with-navigation .header-container[b-1rk0wu9mk1] {
        margin-left: 0%;
    }
}

/* The app bar (share button, account menu — often still open when "Print report" was just clicked)
   and the share modal are screen-only; the report body renders its own print masthead instead. */
@media print {
    .header[b-1rk0wu9mk1],
    .modal[b-1rk0wu9mk1] {
        display: none !important;
    }
}

.logo[b-1rk0wu9mk1] {
    height: 28px;
    margin: 0 auto;
}

.header-actions[b-1rk0wu9mk1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.share-button[b-1rk0wu9mk1] {
    margin: 0;
}

.share-label-mobile[b-1rk0wu9mk1] {
    display: none;
}

/* Modal styles */
.modal[b-1rk0wu9mk1] {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
}

.modal.visible[b-1rk0wu9mk1] {
    display: block;
}

.modal-bg[b-1rk0wu9mk1] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
}

.modal-panel[b-1rk0wu9mk1] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: white;
    padding: 2rem;
    border-radius: 8px;
    max-height: 90vh;
    overflow-y: auto;
    opacity: 0;
    transition: opacity 0.3s ease;
    width: 90%;
    max-width: 850px;
}

.modal-panel.visible[b-1rk0wu9mk1] {
    opacity: 1;
}

@media (max-width: 768px) {
    .modal-panel[b-1rk0wu9mk1] {
        top: 0;
        left: 0;
        transform: none;
        width: 100vw;
        height: 100vh;
        max-width: 100vw;
        max-height: 100vh;
        border-radius: 0;
        padding: 1rem;
        box-sizing: border-box;
        overflow: hidden;
    }

    .modal-header[b-1rk0wu9mk1] {
        position: sticky;
        top: 0;
        z-index: 2;
        background-color: #fff;
    }

    .share-modal-content[b-1rk0wu9mk1] {
        flex: 1;
        overflow-y: auto;
        padding: 0.25rem 0 0.75rem;
    }
}



.header-container[b-1rk0wu9mk1] {
    max-width: 850px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-header[b-1rk0wu9mk1] {
    display: flex;
    justify-content: flex-end;
    padding: 0 0 10px 0;
}

/* Update existing styles */
.share-modal-content[b-1rk0wu9mk1] {
    padding: 0 20px 20px 20px;
}

@media (max-width: 480px) {
    .header-container[b-1rk0wu9mk1] {
        padding: 0 10px;
    }

    .share-label-desktop[b-1rk0wu9mk1] {
        display: none;
    }

    .share-label-mobile[b-1rk0wu9mk1] {
        display: inline;
    }
}


.share-free-note[b-1rk0wu9mk1] {
    color: var(--assisto-primary);
    font-size: 18px;
    font-weight: 600;
    margin: 4px 0 0 0;
}

.share-section[b-1rk0wu9mk1] {
    margin-bottom: 24px;
}

    .share-section h4[b-1rk0wu9mk1] {
        color: var(--assisto-primary);
        margin: 0 0 8px 0;
        font-size: 16px;
    }

.share-email-container[b-1rk0wu9mk1] {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-top: 16px;
}

    .share-email-container input[b-1rk0wu9mk1] {
        flex: 1;
        padding: 8px 12px;
        border: 1px solid #e0e0e0;
        border-radius: 4px;
        font-size: 14px;
    }

.share-error[b-1rk0wu9mk1] {
    color: var(--assisto-error);
    font-size: 14px;
    margin-top: 8px;
}

.share-success[b-1rk0wu9mk1] {
    color: #4CAF50;
    font-size: 14px;
    margin-top: 8px;
}

@media (max-width: 480px) {
    .share-email-container[b-1rk0wu9mk1] {
        flex-direction: column;
    }

        .share-email-container input[b-1rk0wu9mk1] {
            width: 100%;
        }
}

.share-form[b-1rk0wu9mk1] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 16px;
}

.share-form-field[b-1rk0wu9mk1] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

    .share-form-field label[b-1rk0wu9mk1] {
        font-size: 14px;
        color: var(--assisto-primary);
    }

    .share-form-field input[b-1rk0wu9mk1],
    .share-form-field textarea[b-1rk0wu9mk1] {
        padding: 8px 12px;
        border: 1px solid #e0e0e0;
        border-radius: 4px;
        font-size: 14px;
        width: 100%;
    }

    .share-form-field textarea[b-1rk0wu9mk1] {
        min-height: 80px;
        resize: vertical;
    }

.share-form-submit[b-1rk0wu9mk1] {
    display: flex;
    justify-content: flex-end;
    margin-top: 8px;
}

.share-copy-footer[b-1rk0wu9mk1] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    margin-top: 14px;
    flex-wrap: wrap;
}

.share-copy-footer-text[b-1rk0wu9mk1] {
    color: var(--assisto-primary);
    font-size: 15px;
    font-weight: 500;
}

.share-platform-logos[b-1rk0wu9mk1] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin: 0 6px;
    vertical-align: middle;
}

.share-platform-logo[b-1rk0wu9mk1] {
    width: 24px;
    height: 24px;
    display: inline-block;
    object-fit: contain;
}

.share-copy-separator[b-1rk0wu9mk1] {
    border: 0;
    border-top: 1px solid var(--assisto-primary);
    opacity: 0.35;
    margin: 50px 0 12px 0;
}

/* Update existing mobile styles */
@media (max-width: 480px) {
    .share-form[b-1rk0wu9mk1] {
        gap: 12px;
    }

    .share-form-field input[b-1rk0wu9mk1],
    .share-form-field textarea[b-1rk0wu9mk1] {
        width: 100%;
    }
}


.share-button[b-1rk0wu9mk1] {
    margin-right: 0;
}

.share-modal-content[b-1rk0wu9mk1] {
    padding: 20px;
}

    .share-modal-content h3[b-1rk0wu9mk1] {
        margin-top: 0;
        color: var(--assisto-primary);
        margin-bottom: 16px;
    }

.share-url-container[b-1rk0wu9mk1] {
    display: flex;
    gap: 10px;
    align-items: center;
    margin-top: 16px;
}

    .share-url-container input[b-1rk0wu9mk1] {
        flex: 1;
        padding: 8px 12px;
        border: 1px solid #e0e0e0;
        border-radius: 4px;
        font-size: 14px;
    }

#copy-success[b-1rk0wu9mk1] {
    color: var(--assisto-primary);
    font-size: 15px;
    font-weight: 500;
    margin-left: 4px;
}

@media (max-width: 480px) {
    .share-url-container[b-1rk0wu9mk1] {
        flex-direction: column;
    }

        .share-url-container input[b-1rk0wu9mk1] {
            width: 100%;
        }

    .share-copy-footer[b-1rk0wu9mk1] {
        justify-content: flex-start;
    }
}
/* _content/Assisto.Server/Components/Public/ReportLoginModal.razor.rz.scp.css */
/* Self-contained modal shell: this component renders on several public pages, so it can't rely on
   any page's scoped .modal styles. The login panel sizes to content (unlike the full-height story
   modal on the report page). */

.modal[b-9wwpsll299] {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.modal.visible[b-9wwpsll299] {
    display: flex;
}

.modal-bg[b-9wwpsll299] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.65);
}

.modal-panel.login-modal-panel[b-9wwpsll299] {
    pointer-events: all;
    z-index: 1001;
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    width: 90%;
    max-width: 460px;
    height: auto;
    max-height: 90vh;
    margin: auto;
    display: none;
    flex-direction: column;
    gap: 0;
    position: relative;
    padding: 0 0 1.5rem;
    overflow-y: auto;
}

.modal-panel.login-modal-panel.visible[b-9wwpsll299] {
    display: flex;
}

.modal-header[b-9wwpsll299] {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    padding: 0.75rem 0.75rem 0;
}

/* Nudge the close button off the very corner so it isn't flush to the panel edges. */
.modal-header[b-9wwpsll299]  .borderless {
    margin-top: 0.45rem;
    margin-right: 0.45rem;
}

.login-modal-content[b-9wwpsll299] {
    padding: 0 2rem;
}

.login-modal-content h4[b-9wwpsll299] {
    color: var(--assisto-primary);
    margin: 0 0 4px 0;
    font-size: 20px;
}

/* The EditForm's <form class="form"> belongs to the EditForm component, hence ::deep. */
.login-modal-content[b-9wwpsll299]  .form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.login-modal-note[b-9wwpsll299] {
    color: #555555;
    font-size: 14px;
    margin: 0 0 1.25rem 0;
}

.login-modal-error[b-9wwpsll299] {
    color: var(--assisto-error);
    font-size: 14px;
    margin-top: 0.75rem;
}

.login-modal-actions[b-9wwpsll299] {
    margin-top: 1.25rem;
}

.login-modal-links[b-9wwpsll299] {
    font-size: 13px;
    margin: 1rem 0 0;
}

.login-modal-links a[b-9wwpsll299] {
    color: var(--assisto-primary);
}

@media print {
    .modal[b-9wwpsll299] {
        display: none !important;
    }
}
/* _content/Assisto.Server/Components/Public/ReportStatistics.razor.rz.scp.css */
.report-statistics[b-bb2oifbwxo] {
    margin-top: 10px;
    padding: 10px 15px;
    background-color: #f8f9fa;
    border-radius: 6px;
    font-size: 0.9rem;
}

.statistics-row[b-bb2oifbwxo] {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: center;
}

.statistic-item[b-bb2oifbwxo] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.stat-label[b-bb2oifbwxo] {
    font-weight: 500;
    color: #495057;
}

.citation-date[b-bb2oifbwxo] {
    font-size: 0.8rem;
    color: #6c757d;
    margin-left: 4px;
}

.expand-toggle[b-bb2oifbwxo] {
    margin-left: auto;
    display: flex;
    align-items: center;
    cursor: pointer;
    color: var(--assisto-primary);
    font-size: 0.8rem;
    padding: 4px 8px;
    border-radius: 4px;
    transition: background-color 0.2s;
}

.expand-toggle:hover[b-bb2oifbwxo] {
    background-color: rgba(var(--assisto-primary-rgb), 0.1);
}

.arrow-down[b-bb2oifbwxo], .arrow-up[b-bb2oifbwxo] {
    display: inline-block;
    width: 0;
    height: 0;
    margin-right: 5px;
}

.arrow-down[b-bb2oifbwxo] {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid var(--assisto-primary);
}

.arrow-up[b-bb2oifbwxo] {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid var(--assisto-primary);
}

.toggle-text[b-bb2oifbwxo] {
    font-weight: 500;
}

.expanded-details[b-bb2oifbwxo] {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px solid #e9ecef;
    animation: fadeIn-b-bb2oifbwxo 0.3s ease;
}

.recent-citation[b-bb2oifbwxo] {
    margin-bottom: 15px;
}

.penalty-exposure[b-bb2oifbwxo] {
    background-color: #f8f9fa;
    border-radius: 6px;
}

@keyframes fadeIn-b-bb2oifbwxo {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

.exposure-header[b-bb2oifbwxo] {
    display: flex;
    align-items: center;
    margin-bottom: 8px;
}

.exposure-title[b-bb2oifbwxo] {
    font-weight: 600;
    color: #495057;
    font-size: 0.9rem;
}

.exposure-info[b-bb2oifbwxo] {
    display: inline-block;
    margin-left: 5px;
    width: 16px;
    height: 16px;
    text-align: center;
    border-radius: 50%;
    background-color: #6c757d;
    color: white;
    font-size: 0.7rem;
    line-height: 16px;
    cursor: help;
    max-width: 300px;
}

.exposure-details[b-bb2oifbwxo] {
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.exposure-item[b-bb2oifbwxo] {
    display: flex;
    flex-direction: column;
    min-width: 120px;
}

.exposure-label[b-bb2oifbwxo] {
    font-size: 0.8rem;
    color: #666;
}

.exposure-value[b-bb2oifbwxo] {
    font-weight: 600;
    color: var(--assisto-primary);
}

.no-penalty-exposure[b-bb2oifbwxo] {
    padding: 10px;
    color: #666;
    font-style: italic;
}

.severity-tag[b-bb2oifbwxo] {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 5px;
    color: white;
    width: 2rem;
    height: 1.5rem;
    font-weight: bold;
    background-color: #95b0aa;
}

.severity-tag.l4[b-bb2oifbwxo] {
    background-color: #d80162;
}

.severity-tag.l3[b-bb2oifbwxo] {
    background-color: #e16b21;
}

.severity-tag.l2[b-bb2oifbwxo] {
    background-color: #e9c403;
}

.severity-tag.l1[b-bb2oifbwxo] {
    background-color: #95b0aa;
} 
/* _content/Assisto.Server/Components/Public/ReportView.razor.rz.scp.css */
[b-4j85q8sgc8] .loader-colors .k-loader {
    color: #00c9af;
}

[b-4j85q8sgc8] .loader-colors .k-loader-container-label {
    color: #0b8f81 !important;
    font-weight: bold;
}

.header[b-4j85q8sgc8] {
    background-color: #F0F0F0;
    padding: 10px;
    border-bottom: 1px solid #e0e0e0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    top: 0;
    z-index: 100;
}

.logo[b-4j85q8sgc8] {
    margin-left: 20px;
}

[b-4j85q8sgc8] .intro-container {
    background-color: #FCF7EE;
    padding: 20px;
    margin: 20px auto;
}

.browser-link[b-4j85q8sgc8] {
    font-size: 12px;
    color: #888888;
}

/* Sticky context bar: holds the state selector (left), tab buttons (centered) and the Topic switcher
   (right), and stays pinned just below the sticky header as the reader scrolls. The side controls are
   absolutely positioned so the tabs stay optically centered regardless of their width. */
.tabs-bar[b-4j85q8sgc8] {
    position: sticky;
    top: 56px;
    z-index: 99;
    padding: 12px 16px;
    background-color: #F0F0F0;
    border-bottom: 1px solid #e0e0e0;
}

.tabs-bar-inner[b-4j85q8sgc8] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    max-width: 1000px;
    min-height: 40px;
    margin: 0 auto;
}

.tabs-bar-state[b-4j85q8sgc8] {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.tabs-bar-inner .tabs-topic-switcher[b-4j85q8sgc8] {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.tabs-container[b-4j85q8sgc8] {
    display: flex;
}

/* Below tablet width the absolute side controls would crowd the tabs, so stack everything. */
@media (max-width: 768px) {
    .tabs-bar-inner[b-4j85q8sgc8] {
        flex-direction: column;
        gap: 12px;
        min-height: 0;
    }

    .tabs-bar-state[b-4j85q8sgc8],
    .tabs-bar-inner .tabs-topic-switcher[b-4j85q8sgc8] {
        position: static;
        transform: none;
        width: 100%;
        justify-content: center;
    }
}

.tabs-topic-switcher[b-4j85q8sgc8] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.tabs-topic-label[b-4j85q8sgc8] {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #757575;
}

.tabs-topic-switcher .report-switcher-select[b-4j85q8sgc8] {
    min-width: 180px;
}

@media (max-width: 768px) {
    .tabs-topic-switcher[b-4j85q8sgc8] {
        width: 100%;
        justify-content: center;
    }

    .tabs-topic-switcher .report-switcher-select[b-4j85q8sgc8] {
        flex: 1;
        min-width: 0;
    }
}

.report-switcher[b-4j85q8sgc8] {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
    max-width: 850px;
    margin: 0 auto;
    padding: 16px 20px 0;
}

.report-switcher-field[b-4j85q8sgc8] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.report-switcher-label[b-4j85q8sgc8] {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #757575;
}

.report-switcher-select[b-4j85q8sgc8] {
    min-width: 200px;
    padding: 8px 10px;
    border: 1px solid #c0c0c0;
    border-radius: 8px;
    background-color: white;
    color: #2b2b2b;
    font-size: 15px;
    cursor: pointer;
}

.report-switcher-select:hover[b-4j85q8sgc8] {
    border-color: var(--assisto-primary);
}

@media (max-width: 768px) {
    .report-switcher[b-4j85q8sgc8] {
        width: 100%;
    }

    .report-switcher-field[b-4j85q8sgc8] {
        flex: 1 1 45%;
    }

    .report-switcher-select[b-4j85q8sgc8] {
        min-width: 0;
        width: 100%;
    }
}

.tab-button[b-4j85q8sgc8] {   
    color: #0b8f81;
    background-color: #e0e0e0;
    padding: 10px;
    font-size: 16px;
    cursor: pointer;
}

    .tab-button:first-child[b-4j85q8sgc8] {
        border-radius: 10px 0 0 10px;
    }

    .tab-button:last-child[b-4j85q8sgc8] {
        border-radius: 0 10px 10px 0; 
        border-left: none;
    }

    .tab-button.active[b-4j85q8sgc8] {
        background-color: #4f8a80;
        color: white;
    }

    .tab-button:not(.active):hover[b-4j85q8sgc8] {
        background-color: #c0c0c0;
    }

/* "See all citations used to prepare this Topic report" — a prominent banner button on both the
   Home and Topics tabs. Clicking it opens the dedicated citations modal (#citations-modal). */
.citations-cta[b-4j85q8sgc8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    cursor: pointer;
    list-style: none;
    padding: 1rem 1.35rem;
    font-size: 1.1rem;
    font-weight: 650;
    text-align: left;
    color: #fff;
    background-color: var(--rt-ink, #123530);
    border: none;
    border-radius: 13px;
    transition: background-color 0.2s ease;
}

button.citations-cta[b-4j85q8sgc8] {
    margin-bottom: 1.5rem;
}

.citations-cta:hover[b-4j85q8sgc8],
.citations-cta:focus-visible[b-4j85q8sgc8] {
    background-color: var(--rt-ink-soft, #1c433c);
}

.citations-cta-arrow[b-4j85q8sgc8] {
    color: var(--rt-lime, #bcdf0c);
}

.citations-cta-arrow svg[b-4j85q8sgc8] {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

/* ---- "How to use this report" orientation card (Overview tab) ---- */
.report-howto[b-4j85q8sgc8] {
    margin-bottom: 2.5rem;
}

.report-howto-title[b-4j85q8sgc8] {
    display: inline-block;
    margin: 0 0 0.25rem;
    padding-bottom: 7px;
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--rt-ink, #123530);
    border-bottom: 3px solid var(--rt-accent, #0ba292);
}

.report-howto-lead[b-4j85q8sgc8] {
    margin: 0.5rem 0 1rem;
    font-size: 0.95rem;
    color: var(--rt-text-secondary, #3f524c);
}

.report-howto-steps[b-4j85q8sgc8] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.report-howto-step[b-4j85q8sgc8] {
    display: block;
}

/* The whole step is a button (jumps to the section it describes). Reset the native button chrome and lay the
   icon / text / arrow out as a full-width row that reads like the static card it replaced. */
.report-howto-step-btn[b-4j85q8sgc8] {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    width: 100%;
    margin: 0;
    padding: 0.7rem 0.9rem;
    border: 1.5px solid var(--rt-border, #d3e5df);
    border-radius: 11px;
    background: #fff;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.15s ease, border-color 0.15s ease;
}

.report-howto-step-btn:hover[b-4j85q8sgc8],
.report-howto-step-btn:focus-visible[b-4j85q8sgc8] {
    background-color: var(--rt-mist, #f2faf7);
    border-color: var(--rt-accent, #0ba292);
    outline: none;
}

.report-howto-arrow[b-4j85q8sgc8] {
    flex-shrink: 0;
    align-self: center;
    margin-left: auto;
    display: inline-flex;
    color: var(--assisto-primary);
    opacity: 0;
    transform: translateX(-4px);
    transition: opacity 0.15s ease, transform 0.15s ease;
}

.report-howto-arrow svg[b-4j85q8sgc8] {
    width: 1.1rem;
    height: 1.1rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.report-howto-step-btn:hover .report-howto-arrow[b-4j85q8sgc8],
.report-howto-step-btn:focus-visible .report-howto-arrow[b-4j85q8sgc8] {
    opacity: 1;
    transform: translateX(0);
}

.report-howto-ico[b-4j85q8sgc8] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 10px;
    color: #3d4d05;
    background-color: var(--rt-marker, #e4f286);
}

.report-howto-ico svg[b-4j85q8sgc8] {
    width: 1.1rem;
    height: 1.1rem;
}

.report-howto-text[b-4j85q8sgc8] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.report-howto-step-title[b-4j85q8sgc8] {
    font-size: 1rem;
    font-weight: 650;
    color: var(--rt-text, #16261f);
}

.report-howto-step-desc[b-4j85q8sgc8] {
    font-size: 0.92rem;
    line-height: 1.5;
    color: var(--rt-text-secondary, #3f524c);
}

.report-howto-beta[b-4j85q8sgc8] {
    display: inline-block;
    margin-left: 5px;
    padding: 1px 7px;
    border-radius: 5px;
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    vertical-align: middle;
    color: var(--rt-lime, #bcdf0c);
    background-color: var(--rt-ink, #123530);
}

/* Empty state shown when a state has no citations at all (deficiency-free period). Reuses the
   report-howto panel language, centered, so it fills the space above the disclaimer intentionally. */
.report-empty[b-4j85q8sgc8] {
    margin: 2.5rem 0;
    padding: 3rem 1.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    border: 1px solid var(--assisto-action-bg-border);
    border-radius: 8px;
    background-color: var(--assisto-action-bg);
}

.report-empty-ico[b-4j85q8sgc8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    color: var(--assisto-primary);
    background-color: rgba(var(--assisto-primary-rgb), 0.12);
    margin-bottom: 1rem;
}

.report-empty-title[b-4j85q8sgc8] {
    margin: 0 0 0.5rem;
    font-size: 1.35rem;
    font-weight: 700;
    color: #111827;
}

.report-empty-text[b-4j85q8sgc8] {
    margin: 0;
    max-width: 32rem;
    font-size: 0.95rem;
    line-height: 1.6;
    color: #374151;
}

.content[b-4j85q8sgc8] {
    margin: 0 auto;
    padding: 20px;
}

/* Extra breathing room between the (first) "Breakdown by Topic" and the State trends section below it. */
.overview-trends-section[b-4j85q8sgc8] {
    margin-top: 2.75rem;
}

.two-columns[b-4j85q8sgc8] {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
}

.intro[b-4j85q8sgc8] {
    font-size: 14px;
}

.print-button[b-4j85q8sgc8] {
    position: relative;
    top: 8px;
}

.header-content[b-4j85q8sgc8], .date-info[b-4j85q8sgc8] {
    flex-basis: 50%;
}

.date-info[b-4j85q8sgc8] {
    text-align: right;
    font-size: 14px;
    color: #00c9af;
}

    .date-info .year[b-4j85q8sgc8] {
        color: #757575;
    }

@media (max-width: 768px) {

    .content[b-4j85q8sgc8] {
        max-width: 100%;
        margin: 0 auto;
        padding: 14px;
    }

    .two-columns[b-4j85q8sgc8] {
        flex-direction: column-reverse;
        align-items: center;
    }

    .print-button[b-4j85q8sgc8] {
        display: none;
    }

    .modal.visible[b-4j85q8sgc8], .modal-panel.visible[b-4j85q8sgc8] {
        overflow: scroll;
    }

    .modal-panel.visible[b-4j85q8sgc8] {
        max-width: 100%;
        width: 100%;
        height: 100%;
    }
}


.header-content[b-4j85q8sgc8] {
    text-align: left;
    font-size: 24px;
}

.header-text[b-4j85q8sgc8] {
    color: var(--assisto-primary);
    font-weight: bold;
    font-size: 20px;
}


.story-similar-container[b-4j85q8sgc8] {
    background-color: #F0F0F0;
    margin-top: 10px;
    padding-bottom: 15px;
}

.corrective-actions ul[b-4j85q8sgc8] {
    padding: 0 12px;
}

.corrective-actions li[b-4j85q8sgc8] {
    padding-bottom: 6px;
}

pre[b-4j85q8sgc8] {
    overflow-x: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
}

/* NOTE: the footer band is styled by PublicReportFooter.razor.css. The near-duplicate
   .footer / .footer-info / .social-* rules that used to live here were dead (Blazor
   scoped CSS can't reach the child component's elements) and have been removed. */

.subscribe-message[b-4j85q8sgc8]{
    padding: 1rem;
}

.scroll-container[b-4j85q8sgc8]{
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    /* Top-align: centering pushes tall content (and the sticky header) above the clipped
       container, which hid the header on large reports. */
    justify-content: flex-start;
}

.scroll-content[b-4j85q8sgc8]{
    min-height: 100%;
    width: 100%;
    overflow: auto;
}

.modal[b-4j85q8sgc8]{
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.modal-bg[b-4j85q8sgc8]{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.65);
    display: flex;
    justify-content: center;
    align-items: center;
}

.modal-header[b-4j85q8sgc8]{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    border-bottom: #424242;
}

.modal-panel[b-4j85q8sgc8] {
    pointer-events: all;
    z-index: 1001;
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    width: 90%;
    height: 90%;
    max-width: 850px;
    max-height: 90%;
    margin: auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
    padding: 0;
    overflow: hidden;
}

.modal-content[b-4j85q8sgc8]{
    width: 100%;
    overflow-y: auto;
    padding: 2rem;

}

/* Dedicated citations modal: sits below the per-story modal (#modal, z-index 1000) so a story can
   open on top of it when a card's "See more details" is clicked. */
#citations-modal[b-4j85q8sgc8] {
    z-index: 990;
}

.citations-modal-panel .modal-header[b-4j85q8sgc8] {
    padding: 0.5rem 0.5rem 0;
}

/* Nudge the close button off the very corner so it isn't flush to the panel edges. */
.modal-header[b-4j85q8sgc8]  .borderless {
    margin-top: 0.45rem;
    margin-right: 0.45rem;
}

.citations-modal-body[b-4j85q8sgc8] {
    flex: 1;
    min-height: 0;
    width: 100%;
    overflow-y: auto;
    padding: 0 1rem 1.5rem;
}

.page-scroll-top-button[b-4j85q8sgc8] {
    position: fixed;
    right: 24px;
    /* Stacked just above the teal assistant launcher (pinned at the bottom-right corner, ~48px tall). */
    bottom: 88px;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 999px;
    /* Neutral grey, semi-transparent so it reads as a distinct, unobtrusive utility control,
       separate from the teal assistant launcher. */
    background-color: rgba(90, 99, 110, 0.45);
    color: white;
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    z-index: 1090;
    box-shadow: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s ease, visibility 0.2s ease;
    border: none;
}

.page-scroll-top-button:hover[b-4j85q8sgc8] {
    filter: brightness(0.9);
}

.page-scroll-top-button.is-visible[b-4j85q8sgc8] {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Show/hide story modal */

.modal[b-4j85q8sgc8], .modal-panel[b-4j85q8sgc8]{
    display: none;
}

    .modal.visible[b-4j85q8sgc8], .modal-panel.visible[b-4j85q8sgc8] {
        display: flex;
        overflow: hidden;
        height: 100vh;
    }

/* Show/hide modal complete report */

.complete-report[b-4j85q8sgc8]{
}

.modal.complete .complete-report[b-4j85q8sgc8]{
    display: block;
}

.close-complete-report-text[b-4j85q8sgc8]{
    display: none;
}

.modal.complete .see-complete-report-text[b-4j85q8sgc8]{
    display: none;
}

.modal.complete .close-complete-report-text[b-4j85q8sgc8]{
    display: inline-block;
}

/* Print-only masthead (see the .razor markup): hidden on screen, shown on paper in place of the
   app chrome. The html/body + @page print setup lives in the page's inline <style> — scoped CSS
   can't reach those elements. */
.print-header[b-4j85q8sgc8] {
    display: none;
}

@media print {

    .content[b-4j85q8sgc8] {
        max-width: 100%;
        margin: 0 auto;
        padding: 0;
    }

    /* The base .content.with-navigation rule (later in this file, same specificity) clears the fixed
       rail with a 28% offset — on paper the rail is hidden, so reclaim the full width. */
    .content.with-navigation[b-4j85q8sgc8] {
        margin-left: 0 !important;
        max-width: 100% !important;
    }

    .scroll-container[b-4j85q8sgc8], .scroll-content[b-4j85q8sgc8] {
        height: auto !important;
        overflow: visible !important;
    }

    /* On-screen chrome with no job on paper: navigation, conversion CTAs, floating controls and
       the (hidden-by-default, but belt-and-braces) modals. */
    .report-rail[b-4j85q8sgc8],
    .signup-prompt[b-4j85q8sgc8],
    .page-scroll-top-button[b-4j85q8sgc8],
    .citations-cta[b-4j85q8sgc8],
    .modal[b-4j85q8sgc8],
    .modal-panel[b-4j85q8sgc8] {
        display: none !important;
    }

    .print-header[b-4j85q8sgc8] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        margin: 0 0 18px;
        padding-bottom: 10px;
        border-bottom: 2px solid var(--assisto-primary, #0ba292);
    }

    .print-header-logo[b-4j85q8sgc8] {
        height: 24px;
    }

    .print-header-meta[b-4j85q8sgc8] {
        text-align: right;
    }

    .print-header-title[b-4j85q8sgc8] {
        font-size: 1.05rem;
        font-weight: 700;
        color: #111827;
    }

    .print-header-sub[b-4j85q8sgc8] {
        font-size: 0.85rem;
        color: #4b5563;
    }
}


/* ── Signup prompt (mint tint background, teal accents, highlight-yellow CTA) ── */

.signup-prompt[b-4j85q8sgc8] {
    margin: 40px auto 8px;
    max-width: 850px;
    padding: 32px;
    border-radius: 14px;
    background-color: var(--rt-accent-strong, #0B8F81);
    background-image: var(--rt-banner-image, url("/_content/Client.Library/images/banner-bg.svg"));
    background-size: cover;
    background-position: top right;
    background-repeat: no-repeat;
    border: none;
    color: #fff;
}

.signup-prompt h4[b-4j85q8sgc8] {
    margin: 0 0 10px 0;
    font-size: 22px;
    font-weight: 700;
    color: #fff;
}

.signup-prompt p[b-4j85q8sgc8] {
    margin: 0 0 20px 0;
    font-size: 15px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.92);
}

.signup-prompt .signup-prompt-social[b-4j85q8sgc8] {
    margin: 0 0 16px 0;
    font-size: 17px;
    font-weight: 700;
    color: #fff;
}

.signup-prompt .signup-prompt-price[b-4j85q8sgc8] {
    margin: 0 0 4px 0;
    font-size: 15px;
}

.signup-prompt .signup-prompt-price strong[b-4j85q8sgc8] {
    font-size: 26px;
    font-weight: 700;
    color: var(--rt-lime, #bcdf0c);
}

.signup-prompt .signup-prompt-price-badge[b-4j85q8sgc8] {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 8px;
    border: none;
    border-radius: 6px;
    background-color: var(--rt-lime, #bcdf0c);
    color: var(--rt-ink, #123530);
    font-size: 12px;
    font-weight: 700;
    vertical-align: middle;
}

.signup-prompt .signup-prompt-billing[b-4j85q8sgc8] {
    margin: 0 0 20px 0;
    font-size: 14px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.8);
}

.signup-prompt .signup-prompt-note[b-4j85q8sgc8] {
    margin: 14px 0 0 0;
    font-size: 13px;
    color: rgba(255, 255, 255, 0.8);
}

.signup-prompt a[b-4j85q8sgc8] {
    text-decoration: none;
    display: inline-block;
}

.signup-prompt-cta[b-4j85q8sgc8]  button {
    border: none;
    font-weight: 700;
    font-size: 16px;
    padding: 0.75rem 1.5rem;
    background-color: #fff;
    color: var(--rt-accent-strong, #0B8F81);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
}

.signup-prompt-cta[b-4j85q8sgc8]  button:hover,
.signup-prompt-cta[b-4j85q8sgc8]  button:focus,
.signup-prompt-cta[b-4j85q8sgc8]  button:active {
    background-color: #fff;
    filter: brightness(0.95);
}

@media (max-width: 480px) {
    .signup-prompt[b-4j85q8sgc8] {
        text-align: center;
        padding: 24px;
    }

    .signup-prompt a[b-4j85q8sgc8] {
        display: flex;
        justify-content: center;
    }
}

.content.with-navigation[b-4j85q8sgc8],
.signup-prompt.with-navigation[b-4j85q8sgc8] {
    margin-left: 28%;
    max-width: 850px;
}

.header.with-navigation .header-container[b-4j85q8sgc8],
.content.with-navigation .header-container[b-4j85q8sgc8],
.footer.with-navigation .wrapper[b-4j85q8sgc8] {
    margin-left: 30%;
    max-width: 850px;
}

/* ── Navigation rail (persistent left rail on desktop, collapsible bar on mobile) ──
   Replaces the old tabs-bar + topic dropdown. .content.with-navigation (above) clears the
   fixed desktop rail; below 768px the rail collapses and the content offset resets. */
.report-rail-desktop[b-4j85q8sgc8] {
    position: fixed;
    left: 20px;
    top: 70px;
    width: 28%;
    max-width: 300px;
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    overflow-x: hidden;
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    padding: 1rem;
    z-index: 100;
    font-size: 15px;
}

.report-rail-mobile[b-4j85q8sgc8] {
    display: none;
}

.report-rail-state[b-4j85q8sgc8] {
    margin-bottom: 0.75rem;
}

.report-rail-state .header-state-field[b-4j85q8sgc8] {
    width: 100%;
}

.report-rail .rail-item[b-4j85q8sgc8] {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    /* Without border-box, width:100% + horizontal padding overflows the rail and forces a horizontal
       scrollbar (overflow-y:auto computes overflow-x to auto). Include padding in the width instead. */
    box-sizing: border-box;
    text-align: left;
    padding: 0.6rem 10px;
    border: none;
    background: transparent;
    border-radius: 4px;
    color: var(--assisto-primary);
    font-size: 15px;
    cursor: pointer;
    margin-bottom: 0.25rem;
}

.report-rail .rail-item:hover[b-4j85q8sgc8] {
    background-color: #f5f5f5;
}

.report-rail .rail-item.active[b-4j85q8sgc8] {
    background-color: var(--rt-ink, #123530);
    color: var(--rt-lime, #bcdf0c);
}

/* No-citation topic: greyed, non-interactive — nothing to open. */
.report-rail .rail-item--empty[b-4j85q8sgc8] {
    color: #9ca3af;
    cursor: default;
}

.report-rail .rail-item--empty:hover[b-4j85q8sgc8] {
    background-color: transparent;
}

.report-rail .rail-item-empty-hint[b-4j85q8sgc8] {
    margin-left: auto;
    font-size: 12px;
    font-weight: 600;
    color: #9ca3af;
}

.report-rail .rail-item--topic[b-4j85q8sgc8] {
    padding-left: 22px;
    /* Topic names can wrap to several lines, so keep the icon pinned to the first line (not centred on
       the whole text block). */
    align-items: flex-start;
}

.report-rail .rail-item--topic .rail-ico[b-4j85q8sgc8] {
    margin-top: 1px;
}

/* The active topic's narrative sections, nested a level deeper. */
.report-rail .rail-item--section[b-4j85q8sgc8] {
    /* width:auto (not the inherited 100%) so the left margin doesn't push the box past the rail. */
    width: auto;
    padding: 0.4rem 10px 0.4rem 34px;
    font-size: 14px;
    color: #5f7d77;
    border-left: 2px solid #e0e0e0;
    margin-left: 22px;
    border-radius: 0;
}

.report-rail .rail-item--section:hover[b-4j85q8sgc8] {
    color: var(--assisto-primary);
}

/* The section currently in view (scroll-spy). High specificity (.rail-item.rail-item--section.active)
   so it wins over the solid teal .rail-item.active block on both the desktop and mobile copies — a
   lighter green accent reads as "you are here" without looking like a selected topic. */
.report-rail .rail-item.rail-item--section.active[b-4j85q8sgc8] {
    background-color: rgba(var(--assisto-primary-rgb), 0.12);
    color: var(--assisto-primary);
    font-weight: 600;
    border-left-color: var(--assisto-primary);
}

/* A topic's self-audit, nested as the last child next to its narrative sections. It reads as a plain
   section link (no highlight) — only the checklist icon distinguishes it. The left padding is pulled back
   to 10px so the icon sits near the border and the label lines up with the icon-less section links above. */
.report-rail .rail-item--section.rail-item--selfaudit-entry[b-4j85q8sgc8] {
    padding: 0.4rem 10px;
    margin-top: 0.15rem;
}

.report-rail .rail-item--selfaudit-entry .rail-ico[b-4j85q8sgc8] {
    flex-shrink: 0;
}

/* Topic sub-links are a collapsible accordion on every viewport (desktop + mobile): collapsed by default,
   expanded when the topic is .expanded. The active topic starts expanded (markup adds the class), and any
   topic can then be toggled open/closed via railTopicClick without navigating (single-open: opening one
   closes the others). The open/close is animated with the grid-rows 0fr↔1fr technique (an inner wrapper
   with overflow:hidden), which animates smoothly regardless of how tall the topic's content is. */
.report-rail .rail-topic-sections[b-4j85q8sgc8] {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.25s ease;
}

.report-rail .rail-topic.expanded .rail-topic-sections[b-4j85q8sgc8] {
    grid-template-rows: 1fr;
}

.report-rail .rail-topic-sections-inner[b-4j85q8sgc8] {
    overflow: hidden;
    min-height: 0;
}

/* Expand caret on any topic that has children (sections and/or a self-audit): pinned to the right edge
   of the row, flipped when the topic is open. */
.report-rail .rail-topic-caret[b-4j85q8sgc8] {
    display: none;
}

.report-rail .rail-item--has-sections .rail-topic-caret[b-4j85q8sgc8] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: auto;
    color: var(--assisto-primary);
    transition: transform 0.2s ease;
}

.report-rail .rail-item.active .rail-topic-caret[b-4j85q8sgc8] {
    color: inherit;
}

/* Direct-child scope (>) so an expanded topic only flips its OWN header caret, not the caret of a
   nested Overview group that also lives inside the (expanded) topic. */
.report-rail .rail-topic.expanded > .rail-item--has-sections .rail-topic-caret[b-4j85q8sgc8] {
    transform: rotate(180deg);
}

/* The nested Overview group: its own accordion (grid-rows 0fr↔1fr), independent of the topic's, with
   its header caret flipping on the subgroup's own .expanded state. */
.report-rail .rail-subgroup-sections[b-4j85q8sgc8] {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.25s ease;
}

.report-rail .rail-subgroup.expanded .rail-subgroup-sections[b-4j85q8sgc8] {
    grid-template-rows: 1fr;
}

.report-rail .rail-subgroup-sections-inner[b-4j85q8sgc8] {
    overflow: hidden;
    min-height: 0;
}

.report-rail .rail-subgroup.expanded > .rail-item--has-sections .rail-topic-caret[b-4j85q8sgc8] {
    transform: rotate(180deg);
}

/* Overview header sits at the section indent but reads as a group label (a touch bolder). Its narrative
   sub-links (rail-item--subsection) indent one step deeper, sharing the same left guide line. */
.report-rail .rail-item--overview[b-4j85q8sgc8] {
    /* Pull the left padding back (from the icon-less section indent) so the leading icon sits near the
       border and the label lines up with the self-audit entry below it. */
    padding: 0.4rem 10px;
    font-weight: 500;
}

.report-rail .rail-item--subsection[b-4j85q8sgc8] {
    padding-left: 46px;
}

.report-rail .rail-ico[b-4j85q8sgc8] {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}

.report-rail .rail-section-label[b-4j85q8sgc8] {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #757575;
    padding: 0.6rem 10px 0.25rem;
}

.report-rail .rail-divider[b-4j85q8sgc8] {
    height: 1px;
    background: #e0e0e0;
    margin: 0.5rem 6px;
}


/* Mobile: the rail becomes a full-width sticky disclosure under the header. */
@media (max-width: 768px) {
    .report-rail-desktop[b-4j85q8sgc8] {
        display: none;
    }

    /* Stick the NAV (not the inner rail): position:sticky is bounded by the element's containing block,
       and the inner rail's parent is the short <nav>, so sticking it directly un-sticks immediately.
       The <nav>'s containing block is the tall .scroll-content, so it stays pinned across the scroll. */
    .report-rail[b-4j85q8sgc8] {
        position: sticky;
        top: 56px;
        z-index: 100;
    }

    .report-rail-mobile[b-4j85q8sgc8] {
        display: block;
        margin-bottom: 1rem;
        background: var(--assisto-primary);
    }

    .report-rail-mobile-state[b-4j85q8sgc8] {
        padding: 0.6rem 1rem;
    }

    .report-rail-mobile-state .header-state-field[b-4j85q8sgc8] {
        width: 100%;
    }

    .report-rail-bar[b-4j85q8sgc8] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 0.8rem 1rem;
        color: #ffffff;
        font-weight: 600;
        cursor: pointer;
    }

    /* Current-location label + its icon (home / topic), kept together on the left of the bar. */
    .report-rail-bar .nav-current[b-4j85q8sgc8] {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        min-width: 0;
    }

    .report-rail-bar .nav-current-ico[b-4j85q8sgc8] {
        display: inline-flex;
        align-items: center;
        flex-shrink: 0;
    }

    /* No icon for this destination (e.g. the checklist): collapse the slot so the label sits flush. */
    .report-rail-bar .nav-current-ico:empty[b-4j85q8sgc8] {
        display: none;
    }

    .report-rail-bar .nav-arrow[b-4j85q8sgc8]::after {
        content: "▼";
        font-size: 0.8em;
    }

    .report-rail-mobile.open .report-rail-bar .nav-arrow[b-4j85q8sgc8]::after {
        content: "▲";
    }

    .report-rail-menu[b-4j85q8sgc8] {
        display: none;
        background: white;
        max-height: 60vh;
        overflow-y: auto;
        box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
    }

    .report-rail-mobile.open .report-rail-menu[b-4j85q8sgc8] {
        display: block;
    }

    .report-rail-menu .rail-item[b-4j85q8sgc8] {
        border-radius: 0;
        border-bottom: 1px solid #edf3f2;
        color: #1f2937;
        margin-bottom: 0;
        padding: 0.7rem 1rem;
    }

    .report-rail-menu .rail-item--empty[b-4j85q8sgc8] {
        color: #9ca3af;
    }

    .report-rail-menu .rail-item--topic[b-4j85q8sgc8] {
        padding-left: 1.5rem;
    }

    .report-rail-menu .rail-item--section[b-4j85q8sgc8] {
        padding-left: 2.25rem;
        margin-left: 1rem;
    }

    .report-rail-menu .rail-item.active[b-4j85q8sgc8] {
        background-color: var(--assisto-primary);
        color: white;
    }

    .report-rail-menu .rail-section-label[b-4j85q8sgc8] {
        padding: 0.6rem 1rem 0.25rem;
    }
}

@media (max-width: 768px) {
    .modal-panel[b-4j85q8sgc8] {
        border-radius: 0;
        box-shadow: none;
        width: 100vw;
        height: 100vh;
        max-width: 100vw;
        max-height: 100vh;
        margin: 0;
        /* The shared .dialog has no padding on mobile, so provide the horizontal
           gutter here to keep content off the screen edges. */
        padding: 0 1rem;
    }

    .tabs-container[b-4j85q8sgc8] {
        width: 100%;
        padding: 16px 0;
    }

    .page-scroll-top-button[b-4j85q8sgc8] {
        right: 16px;
        /* Above the mobile assistant launcher, which sits at bottom:20px and is ~44px tall
           (see livechat.css mobile rules) — so its top sits near 64px. Clear it with a small gap. */
        bottom: 80px;
        width: 48px;
        height: 48px;
        font-size: 24px;
    }

    .content.with-navigation[b-4j85q8sgc8],
    .signup-prompt.with-navigation[b-4j85q8sgc8],
    .header.with-navigation[b-4j85q8sgc8],
    .footer.with-navigation[b-4j85q8sgc8] {
        margin-left: 0;
        margin: auto 0;
    }

    .header.with-navigation .header-container[b-4j85q8sgc8],
    .content.with-navigation .header-container[b-4j85q8sgc8],
    .footer.with-navigation .wrapper[b-4j85q8sgc8] {
        margin-left: 0%;
    }

    /* The reset above zeroes the CTA's horizontal margin, leaving it flush to the screen edges on mobile.
       Inset it so the box doesn't touch the sides. */
    .signup-prompt[b-4j85q8sgc8],
    .signup-prompt.with-navigation[b-4j85q8sgc8] {
        margin-left: 16px;
        margin-right: 16px;
    }
}
/* _content/Assisto.Server/Components/Public/SearchPagePublic.razor.rz.scp.css */

.search-page[b-cd4bggx7cw] {
    margin-top: 0rem;
    max-height: 100%;
}
/* _content/Assisto.Server/Components/Public/SurveyPrepActionPlanView.razor.rz.scp.css */
.survey-action[b-lh5r92ihew] {
    max-width: var(--rt-page-max, 1080px);
    margin: 0 auto;
    padding: 1.5rem 1.25rem 3rem;
}

.survey-action-back[b-lh5r92ihew] {
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--assisto-primary, #0b8f81);
    text-decoration: none;
}

.survey-action-back:hover[b-lh5r92ihew] {
    text-decoration: underline;
}

.survey-action-head[b-lh5r92ihew] {
    margin-bottom: 1.5rem;
}

.survey-action-title[b-lh5r92ihew] {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0;
}

.survey-action-subtitle[b-lh5r92ihew] {
    font-size: 0.9rem;
    color: var(--sa-faint, #6b7280);
    margin: 6px 0 0;
}

.survey-action-missing[b-lh5r92ihew] {
    color: var(--sa-faint, #6b7280);
}

.survey-prep-print .survey-action[b-lh5r92ihew] {
    max-width: none;
    padding: 0.5rem 0 1rem;
}
/* _content/Assisto.Server/Components/Public/SurveyPrepCitationModal.razor.rz.scp.css */
/* The fetched-citation modal for the survey-prep pages. Mirrors ReportView's #modal styles — those are
   scoped to ReportView.razor, so this component carries its own copy. The injected .dialog body styles
   itself (CitationDetailDialog's scoped css, bundled globally). */

.modal[b-czy7c8cc27] {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    display: none;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.modal.visible[b-czy7c8cc27] {
    display: flex;
}

.modal-bg[b-czy7c8cc27] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.65);
}

.modal-panel[b-czy7c8cc27] {
    pointer-events: all;
    z-index: 1001;
    background-color: white;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    width: 90%;
    height: 90%;
    max-width: 850px;
    max-height: 90%;
    margin: auto;
    display: none;
    flex-direction: column;
    gap: 0;
    position: relative;
    padding: 0;
    overflow: hidden;
}

.modal-panel.visible[b-czy7c8cc27] {
    display: flex;
}

@media (max-width: 768px) {
    .modal-panel[b-czy7c8cc27] {
        border-radius: 0;
        box-shadow: none;
        width: 100vw;
        height: 100vh;
        max-width: 100vw;
        max-height: 100vh;
        margin: 0;
        /* The shared .dialog has no padding on mobile, so provide the horizontal gutter here. */
        padding: 0 1rem;
    }
}
/* _content/Assisto.Server/Components/Public/SurveyPrepFindingsView.razor.rz.scp.css */
.survey-findings[b-9qjkursb25] {
    max-width: var(--rt-page-max, 1080px);
    margin: 0 auto;
    padding: 1.5rem 1.25rem 3rem;
}

.survey-findings-head[b-9qjkursb25] {
    margin: 0 0 1.25rem;
}

.survey-findings-title[b-9qjkursb25] {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0;
}

.survey-findings-subtitle[b-9qjkursb25] {
    font-size: 0.9rem;
    color: var(--sa-faint, #6b7280);
    margin: 4px 0 0;
}

/* One tab bar drives the whole page — three citation feeds and two trend views. A faint divider separates
   the two clusters. Same quiet pill treatment as the checklist lens bar; the active one takes the soft-accent
   fill. */
.sf-tabbar[b-9qjkursb25] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    margin: 0 0 14px;
}

.sf-tab[b-9qjkursb25] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 15px;
    border: 1.5px solid var(--rt-ink, #123530);
    border-radius: 999px;
    background: #fff;
    color: var(--rt-ink, #123530);
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
}

.sf-tab:hover[b-9qjkursb25] {
    background: var(--rt-mist, #f2faf7);
}

.sf-tab.is-active[b-9qjkursb25] {
    background: var(--rt-ink, #123530);
    border-color: var(--rt-ink, #123530);
    color: var(--rt-lime, #bcdf0c);
    font-weight: 650;
}

.sf-tab-count[b-9qjkursb25] {
    font-size: 0.8rem;
    color: var(--rt-text-secondary, #3f524c);
}

.sf-tab.is-active .sf-tab-count[b-9qjkursb25] {
    color: var(--rt-lime, #bcdf0c);
}

.sf-tab-ico[b-9qjkursb25] {
    display: inline-flex;
    align-items: center;
    color: var(--rt-text-secondary, #3f524c);
}

.sf-tab.is-active .sf-tab-ico[b-9qjkursb25] {
    color: var(--rt-lime, #bcdf0c);
}

.sf-tab-divider[b-9qjkursb25] {
    width: 2px;
    align-self: stretch;
    min-height: 20px;
    margin: 0 4px;
    background: var(--rt-border, #d3e5df);
}

/* Ruled section title + description for the active tab (rt-section-title / rt-section-intro come
   from report-theme.css; the host script fills them from the tab's data-sf-title / data-sf-intro). */
.sf-section-head[b-9qjkursb25] {
    margin: 28px 0 14px;
}

.sf-section-head .rt-section-title:empty[b-9qjkursb25],
.sf-section-head .rt-section-intro:empty[b-9qjkursb25] {
    display: none;
}

/* Sort — feed tabs only; the host script hides this row on the trend tabs. */
.sf-toolbar[b-9qjkursb25] {
    display: flex;
    justify-content: flex-end;
    margin: 0 0 14px;
}

.sf-sort[b-9qjkursb25] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 0.82rem;
    color: var(--sa-faint, #6b7280);
}

.sf-sort-select[b-9qjkursb25] {
    padding: 5px 9px;
    border: 1px solid var(--sa-border, rgba(127, 127, 127, 0.25));
    border-radius: 8px;
    background: transparent;
    color: var(--sa-strong, #111827);
    font-size: 0.82rem;
    cursor: pointer;
}

.sf-sort-select:hover[b-9qjkursb25] {
    border-color: var(--assisto-primary, #0b8f81);
}

/* Each feed is a stack of rows; a row is a facility header (name + optional distance) over a shared
   ReportCitationItem card (self-styled via its own scoped CSS). */
.sf-feed[b-9qjkursb25] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Near-you map (ProviderMap, 400px tall) leading the Near tab, above the sort control — rounded to match
   the citation cards below it. */
.sf-near-map[b-9qjkursb25] {
    margin: 0 0 14px;
    border: 1px solid #dcebe6;
    border-radius: 14px;
    overflow: hidden;
}

.sf-near-map[b-9qjkursb25]  #map {
    border-radius: 14px;
}

.sf-row[b-9qjkursb25] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Facility header on the Near-you feed: the facility + how far it is is the headline of the card
   (the same survey team covers your area), so it reads loud — bold ink name, distance in a lime chip. */
.sf-row-head[b-9qjkursb25] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    padding-left: 2px;
    line-height: 1.3;
}

.sf-row-fac[b-9qjkursb25] {
    font-weight: 700;
    font-size: 1.02rem;
    color: var(--rt-ink, #123530);
}

.sf-row-dist[b-9qjkursb25] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px 11px 3px 9px;
    border-radius: 999px;
    background: var(--rt-marker, #e4f286);
    color: #3d4d05;
    font-size: 0.88rem;
    font-weight: 700;
    white-space: nowrap;
}

.sf-row-dist-ico[b-9qjkursb25] {
    width: 13px;
    height: 13px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* ---- Per-feed "Summarize these N citations" — a plain-language synthesis of the whole feed. ---- */
.sf-feed-tools[b-9qjkursb25] {
    display: flex;
    margin: 0;
}

.sf-feed-summarize[b-9qjkursb25] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 16px;
    border: none;
    border-radius: 10px;
    background: var(--rt-accent, #0ba292);
    color: #fff;
    font-size: 0.9rem;
    font-weight: 650;
    cursor: pointer;
    box-shadow: 0 3px 10px rgba(9, 80, 72, 0.18);
}

.sf-feed-summarize:hover[b-9qjkursb25] { background: var(--rt-accent-strong, #0B8F81); }
.sf-feed-summarize:disabled[b-9qjkursb25] { opacity: 0.65; cursor: default; }

.sf-feed-summarize-ico[b-9qjkursb25] {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

/* Feed-level synthesis — same flat editorial treatment as the mover summary (scoped CSS doesn't cross
   component boundaries, so the sf-summary-* rules are redefined here). */
.sf-feed-summary[b-9qjkursb25] {
    position: relative;
    margin: 0;
    padding: 2px 34px 2px 16px;
    border-left: 3px solid var(--rt-ink, #123530);
    font-size: 0.92rem;
    line-height: 1.55;
    color: var(--rt-text, #16261f);
}

.sf-summary-headline[b-9qjkursb25] {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: var(--rt-ink, #123530);
    margin-bottom: 4px;
}

.sf-summary-lead[b-9qjkursb25] {
    margin: 0 0 8px;
}

.sf-summary-bullets[b-9qjkursb25] {
    margin: 0;
    padding-left: 18px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.sf-summary-bullets li[b-9qjkursb25] {
    padding-left: 2px;
}

.sf-summary-bottom[b-9qjkursb25] {
    margin: 9px 0 0;
    font-size: 0.86rem;
    color: var(--rt-text-secondary, #3f524c);
}

.sf-summary-close[b-9qjkursb25] {
    position: absolute;
    top: -2px;
    right: 0;
    width: 24px;
    height: 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: none;
    border-radius: 6px;
    background: transparent;
    color: var(--rt-text-secondary, #3f524c);
    font-size: 1.15rem;
    line-height: 1;
    cursor: pointer;
}

.sf-summary-close:hover[b-9qjkursb25] {
    background: var(--rt-mist, #f2faf7);
    color: var(--rt-ink, #123530);
}

.sf-summary-loading[b-9qjkursb25] { color: var(--rt-text-secondary, #3f524c); }

.sf-feed-empty[b-9qjkursb25] {
    padding: 18px 2px;
    margin: 0;
    font-size: 0.9rem;
    color: var(--sa-faint, #6b7280);
}

.sf-feed-note[b-9qjkursb25] {
    font-size: 0.8rem;
    color: var(--sa-faint, #6b7280);
    line-height: 1.5;
    margin: 16px 0 0;
}
/* _content/Assisto.Server/Components/Public/SurveyPrepMockSurveyView.razor.rz.scp.css */
.mock-survey[b-2j0634dh04] {
    max-width: var(--rt-page-max, 1080px);
    margin: 0 auto;
    padding: 1.5rem 1.25rem 3rem;
}

.mock-survey-back[b-2j0634dh04] {
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 0.9rem;
    color: var(--assisto-primary, #0b8f81);
    text-decoration: none;
}

.mock-survey-back:hover[b-2j0634dh04] {
    text-decoration: underline;
}

.mock-survey-head[b-2j0634dh04] {
    margin-bottom: 1.25rem;
}

.mock-survey-title[b-2j0634dh04] {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0;
}

.mock-survey-subtitle[b-2j0634dh04] {
    font-size: 0.9rem;
    color: var(--sa-faint, #6b7280);
    margin: 4px 0 0;
}

.mock-survey-missing[b-2j0634dh04] {
    padding: 3rem 1.25rem;
    text-align: center;
    color: var(--sa-faint, #6b7280);
}
/* _content/Assisto.Server/Components/Public/SurveyPrepNearbyView.razor.rz.scp.css */
.survey-nearby[b-6shng4wzqs] {
    max-width: var(--rt-page-max, 1080px);
    margin: 0 auto;
    padding: 1.5rem 1.25rem 3rem;
}

.survey-nearby-back[b-6shng4wzqs] {
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--assisto-primary, #0b8f81);
    text-decoration: none;
}

.survey-nearby-back:hover[b-6shng4wzqs] {
    text-decoration: underline;
}

.survey-nearby-head[b-6shng4wzqs] {
    margin-bottom: 1.5rem;
}

.survey-nearby-title[b-6shng4wzqs] {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0;
}

.survey-nearby-subtitle[b-6shng4wzqs] {
    font-size: 0.9rem;
    color: var(--sa-faint, #6b7280);
    margin: 4px 0 0;
}

.survey-nearby-intro[b-6shng4wzqs] {
    font-size: 0.9rem;
    color: var(--sa-muted, #374151);
    line-height: 1.55;
    margin: 10px 0 0;
}

.survey-nearby-missing[b-6shng4wzqs] {
    text-align: center;
    color: var(--sa-faint, #6b7280);
}

/* Map demoted to a toggle. */
.nearby-map-details[b-6shng4wzqs] {
    margin-top: 0.5rem;
}

.nearby-map-summary[b-6shng4wzqs] {
    cursor: pointer;
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--assisto-primary, #0b8f81);
    list-style: none;
    padding: 6px 0;
}

.nearby-map-summary[b-6shng4wzqs]::-webkit-details-marker {
    display: none;
}

.nearby-map-summary[b-6shng4wzqs]::before {
    content: "▸ ";
}

.nearby-map-details[open] > .nearby-map-summary[b-6shng4wzqs]::before {
    content: "▾ ";
}

.survey-prep-print .survey-nearby[b-6shng4wzqs] {
    max-width: none;
    padding: 0.5rem 0 1rem;
}
/* _content/Assisto.Server/Components/Public/SurveyPrepReportView.razor.rz.scp.css */
.survey-prep[b-oanfzspggu] {
    max-width: var(--rt-page-max, 1080px);
    margin: 0 auto;
    padding: 1.5rem 1.25rem 3rem;
}

.survey-prep-head[b-oanfzspggu] {
    margin-bottom: 1.5rem;
}

.survey-prep-title[b-oanfzspggu] {
    font-size: 1.6rem;
    font-weight: 500;
    margin: 0;
}

.survey-prep-subtitle[b-oanfzspggu] {
    font-size: 0.9rem;
    color: var(--sa-faint, #6b7280);
    margin: 4px 0 0;
}

.survey-prep-section-title[b-oanfzspggu] {
    font-size: 1.2rem;
    font-weight: 500;
    margin: 0 0 4px;
}

/* One-line role framing under each section title: what this section is FOR and how it relates to the others
   (mirrors .risk-profile-intro in SurveyRiskProfileSection). */
.survey-prep-section-intro[b-oanfzspggu] {
    font-size: 0.9rem;
    color: var(--sa-faint, #374151);
    line-height: 1.55;
    margin: 0 0 14px;
}

.survey-action-plan[b-oanfzspggu],
.dept-deep-dives[b-oanfzspggu] {
    margin-top: 1.75rem;
}

.dept-deep-dives-list[b-oanfzspggu] {
    display: flex;
    flex-direction: column;
    gap: 11px;
}

/* Compact department overview: responsive card grid (each card links to its own department page). */
.dept-cards-grid[b-oanfzspggu] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 11px;
}

.survey-prep-trends[b-oanfzspggu] {
    margin-top: 1.75rem;
}

/* Brief trends card — the headline KPIs, linking to the full trends page. Card surface/border/radius/hover come
   from the global .report-card (app.css). */
.trends-summary-kpis[b-oanfzspggu] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 12px;
}

.trends-summary-kpi[b-oanfzspggu] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.tsk-value[b-oanfzspggu] {
    font-size: 1.65rem;
    font-weight: 600;
    line-height: 1.1;
}

.tsk-label[b-oanfzspggu] {
    font-size: 0.88rem;
    color: var(--sa-faint, #6b7280);
}

.tsk-yoy[b-oanfzspggu] {
    font-size: 0.82rem;
    font-weight: 600;
}

.tsk-yoy.is-up[b-oanfzspggu] { color: #c0392b; }
.tsk-yoy.is-down[b-oanfzspggu] { color: #1d9e75; }

/* Top statewide movers above the KPI card — the tags moving against (or for) the facility. Same up=red /
   down=green polarity as the KPI year-over-year figures. */
.sp-state-chips[b-oanfzspggu] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 12px;
}

.sp-state-chip[b-oanfzspggu] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 0.82rem;
    font-weight: 600;
    border: 1px solid var(--sa-border, rgba(127, 127, 127, 0.22));
    background: var(--sa-surface, rgba(127, 127, 127, 0.04));
}

.sp-state-chip.is-up[b-oanfzspggu] { color: #c0392b; }
.sp-state-chip.is-down[b-oanfzspggu] { color: #1d9e75; }

.trends-summary-cta[b-oanfzspggu] {
    display: inline-block;
    margin-top: 12px;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--assisto-primary, #0b8f81);
}

.survey-prep-nearby[b-oanfzspggu] {
    margin-top: 1.75rem;
}

/* Link under the Nearby-lens map to the full nearby-activity page (tags + recent serious citations). */
.sp-nearby-more[b-oanfzspggu] {
    display: inline-block;
    margin-top: 10px;
    font-size: 0.9rem;
    color: var(--assisto-primary, #0b8f81);
    text-decoration: none;
}

.sp-nearby-more:hover[b-oanfzspggu] {
    text-decoration: underline;
}

/* The "How to use this report" orientation card is now the shared .rt-howto* pattern
   (report-theme.css); the old .sp-howto* rules that lived here have been removed. */

.survey-prep-missing[b-oanfzspggu] {
    padding: 3rem 1.25rem;
    text-align: center;
    color: var(--sa-faint, #6b7280);
}

/* Binder-print mode: no chrome, full-width, avoid breaking tiles/rows across pages. */
.survey-prep-print .survey-prep[b-oanfzspggu] {
    max-width: none;
    padding: 0.5rem 0 1rem;
}

@media print {
    .dept-deep-dives-list > *[b-oanfzspggu] {
        break-inside: avoid;
    }

    /* Browser print of the screen layout: the how-to card is three navigation links — chrome, not
       report content. The citation modal is hidden anyway; belt-and-braces like ReportView's print
       rules in case one is open when printing starts. */
    .rt-howto[b-oanfzspggu] {
        display: none;
    }

    .survey-prep[b-oanfzspggu]  .modal,
    .survey-prep[b-oanfzspggu]  .modal-panel {
        display: none !important;
    }
}
/* _content/Assisto.Server/Components/Public/SurveyPrepRiskTagView.razor.rz.scp.css */
.survey-risk[b-rqivr4vqpr] {
    max-width: var(--rt-page-max, 1080px);
    margin: 0 auto;
    padding: 1.5rem 1.25rem 3rem;
}

.survey-risk-back[b-rqivr4vqpr] {
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--assisto-primary, #0b8f81);
    text-decoration: none;
}

.survey-risk-back:hover[b-rqivr4vqpr] {
    text-decoration: underline;
}

.survey-risk-head[b-rqivr4vqpr] {
    margin-bottom: 1.5rem;
}

.survey-risk-title-row[b-rqivr4vqpr] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.survey-risk-ftag[b-rqivr4vqpr] {
    font-family: var(--font-mono, monospace);
    font-size: 1.6rem;
    font-weight: 600;
    margin: 0;
}

.survey-risk-name[b-rqivr4vqpr] {
    font-size: 1rem;
    color: var(--sa-muted, #374151);
    margin: 6px 0 0;
}

.survey-risk-badges[b-rqivr4vqpr] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin: 10px 0 0;
}

.survey-risk-why[b-rqivr4vqpr] {
    font-size: 0.9rem;
    color: var(--sa-faint, #4b5563);
    line-height: 1.55;
    margin: 10px 0 0;
}

.survey-risk-guidance[b-rqivr4vqpr] {
    display: inline-block;
    margin: 12px 0 0;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--assisto-primary, #0b8f81);
    text-decoration: none;
}

.survey-risk-guidance:hover[b-rqivr4vqpr] {
    text-decoration: underline;
}

.survey-risk-empty[b-rqivr4vqpr],
.survey-risk-missing[b-rqivr4vqpr] {
    color: var(--sa-faint, #6b7280);
}

.survey-prep-print .survey-risk[b-rqivr4vqpr] {
    max-width: none;
    padding: 0.5rem 0 1rem;
}
/* _content/Assisto.Server/Components/Public/SurveyPrepTrendsView.razor.rz.scp.css */
.survey-trends[b-zdpjmfqgbm] {
    max-width: var(--rt-page-max, 1080px);
    margin: 0 auto;
    padding: 1.5rem 1.25rem 3rem;
}

.survey-trends-back[b-zdpjmfqgbm] {
    display: inline-block;
    margin-bottom: 1rem;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--assisto-primary, #0b8f81);
    text-decoration: none;
}

.survey-trends-back:hover[b-zdpjmfqgbm] {
    text-decoration: underline;
}

.survey-trends-missing[b-zdpjmfqgbm],
.survey-trends-empty[b-zdpjmfqgbm] {
    text-align: center;
    color: var(--sa-faint, #6b7280);
}

.survey-prep-print .survey-trends[b-zdpjmfqgbm] {
    max-width: none;
    padding: 0.5rem 0 1rem;
}
/* _content/Assisto.Server/Components/Public/TagFrequencyChart.razor.rz.scp.css */
.chart-section[b-fy28otogl0] {
    margin: 2rem 0;
}

.chart-section h4[b-fy28otogl0] {
    color: var(--assisto-primary);
    margin-bottom: 1rem;
    font-size: 1.25rem;
}

.chart-description[b-fy28otogl0] {
    font-size: 0.95rem;
    color: #666;
    margin-bottom: 1.5rem;
}

.chart-container[b-fy28otogl0] {
    width: 100%;
    max-width: 800px;
    margin: 20px auto;
    padding: 20px;
    background-color: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    height: 400px;
}

@media (max-width: 480px) {
    .chart-container[b-fy28otogl0] {
        padding: 10px;
        height: 500px;
    }
}

@media print {
    .chart-container[b-fy28otogl0] {
        break-inside: avoid;
        page-break-inside: avoid;
    }
} 
/* _content/Assisto.Server/Components/Subscription/PlanSelectionPage.razor.rz.scp.css */

.plan-selection[b-90qdm64bgt]{
    display: flex;
    justify-content: center;
    flex-direction: column;
    width: 100%;
}

h1[b-90qdm64bgt]{
    margin-bottom: 2rem;
    font-weight: bold;
    color: var(--assisto-primary);
    text-align: center;
    font-size: 2rem;
}
