
:root {
    --body-font-family: "Roboto", "Helvetica", "Arial", sans-serif;
    --primary-color: #325C33;
    --primary-color-light: #457e46;
    --body-color: #1F2A13;
    --body-bg-color: #F7F3F3;
    --secondary-color: #af4507;
    --secondary-color-dark: #953b06;
    --highlight-color: #f9e4d3;
    --highlight-blurb-bg-color: #f9ede3;
    --highlight-blurb-border-color: #f6daa6;
    --highlight-emphasis-color: #e39455;
    --highlight-dark-color: #dc7b2d;
    --highlight-light-color: #faf0e8;
    --link-color: #f3dbcd;
    --nav-link-color: #677167;
    --header-bg-color: #325C33;
    --prompt-color: #244124;
    --btn-bg-color: #F7F7F7;
    --btn-outline-border-color: #f9903b;
    --highlight-text-color: #057907;
    --muted-color: #696868;
    --muter-color: #d2cfcf;
    --hr-border-color: #d2d0d0;
    --header-box-shadow: 1px 1px 2px 2px var(--muter-color);
    --well-bg-color: #faf3ee;
    --well-transparent-bg-color: hsla(0, 20, 96, 0.9);
    --well-border-color: #f1dfd5;
    --well-border-emphasis-color: #ff9800;
    --summary-table-border-color: #edeaea;
    --divider-border-color: #b8b7b7;
    --summary-cell-bg-color: #fbf9f9;
    --warningColor: #8c601c;
    --errorColor: #bd0b0b;
    --warningBgColor: #f7f0eb;
    --inlineHelpHighlightColor: #fbecd3;
    --tickMarkColor: #9da89d;
    --heroContainerColor: #f6c8a2;
    --well-background-color: #f9ede3;
    --well-border-color: #f6daa6;
}
body {
    font-family: var(--body-font-family) !important;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    line-height: 1.5;
    color: var(--body-color);
    background-color: var(--body-bg-color) !important;
}
.container {
    margin-right: auto;
    margin-left: auto;
    padding-left: 16px;
    padding-right: 16px;
}
@media (min-width: 1200px) {
  .container {
      width: 1180px;
  }
}
.row {
    margin-left: -16px;
    margin-right: -16px;
}
.outer-container {
    position: relative;
    min-height: 64px;
    padding-left: 16px;
    padding-right: 16px;
}
.intervention-container {
    padding: 0;
}
.page {
    font-family: var(--body-font-family) !important;
    position: relative;
    padding: 0 16px;
    min-height: 30px;
    width: 9.9in;
    font-size: 20px;
    margin: 4mm auto;
    background-color: var(--body-bg-color);
}
@media (min-width: 699px) {
    .page {
        padding: 0;
    }
}
.flex {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
}
.flex .btn {
    min-width: 204px;
    box-shadow: 1px 2px 3px #c5bdb6;
    border-width: 3px;
    padding: 8px 16px;
}
@media (min-width: 992px) {
    .flex {
        flex-wrap: nowrap;
    }
}
.flex.row {
    flex-direction: row;
    gap: 16px;
}
@media (min-width: 992px) {
    .flex.row {
        margin-left: -48px;
    }
}
.flex.column {
    flex-direction: column;
    /* gap: 12px; */
}
@media (min-width: 992px) {
    .flex.column {
        gap: 12px;
    }
}
.content-cell {
                    border-top: 1px solid #e4e1e1;
        box-shadow: var(--container-box-shadow);
                padding: 16px 16px;
    border-radius: 4px;
}
.content-cell .header-title {
    margin-bottom: 16px;
    font-size: 1.525rem;
}
.content-cell .date-display {
    font-size: 1.1rem;
}
.intro-lead-text {
    margin-bottom: 20px;
}
.intro-cell-content {
    /* box-shadow: var(--container-box-shadow); */
    padding: 0;
    border-radius: 4px;
    margin-bottom: 16px;
}
h1, h2, h3, h4, h5, h6 {
    color: var(--primary-color);
    line-height: 1.2 !important;
    font-weight: 600 !important;
}
h1, h2, h3 {
    margin-top: 0;
    margin-bottom: 0;
}
h3, h4 {
    border-bottom: 0;
}
h1 {
    font-size: 2.25rem;
    border-bottom: 1px solid;
    padding-bottom: 2px;
}
h2.subtitle {
    font-size: 1.4em;
    margin-bottom: 12px;
    margin-left: -16px;
    margin-right: -16px;
    padding-left: 16px;
    padding-right: 16px;
    padding-top: 8px;
    border-bottom: 0;
}
h2.subtitle.gap {
    margin-top: 4px;
    margin-bottom: 16px;
}
li:not(.nav-item), p {
    line-height: 1.3;
    font-size: 20px;
}
.modal-body, .accordion-body :is(p, li) {
    font-size: 18px;
    color: var(--prompt-color);
}
.btn {
    font-size: 16px !important;
    text-align: center;

}
#mainReportTable {
    page-break-before: avoid;
    font-size: 20px;
}
#mainReportTable .intro-text {
    margin-bottom: 4px;
}
#mainReportTable .intro-highlight-text {
    margin-bottom: 16px;
    font-weight: 500;
}
.print-header {
    display: none;
}
.header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    page-break-after: avoid;
    margin-bottom: 8px;
}
.check-icon {
    font-size: 18px;
    margin-right: 6px;
}
.header .title-container {
    width: 100%;
    flex: 1;
}
.date-display {
    font-weight: 400;
    font-size: 1.3rem;
}
.title-container .title {
    width: calc(100% - 40px);
}
.title-container .header-title {
    width: 100%;
    flex: 1;
    display: flex;
    gap: 8px;
    flex-direction: column;
    align-items: center;
    margin-bottom: 8px;
}
@media (min-width: 699px) {
    .title-container .header-title {
        flex-direction: row;
    }
}
.underline, .read-selection {
    display: inline;
}
#first-page.page {
    page-break-before: avoid;
}
.gap {
    margin-bottom: 16px;
}
.section-title {
    letter-spacing: 0.01rem;
    margin-bottom: 0;
    color: #444;
    font-weight: 500;
    font-size: 26px;
    padding-top: 12px;
    padding-bottom: 8px;
}
.response-title {
    margin-top: 4px;
    margin-bottom: 8px;
    font-size: 1.2em;
    width: calc(100% - 40px);
}
table {
    margin-top: 16px;
    margin-bottom: 16px;
    border-collapse: collapse;
}
th, td {
    padding: 0;
}
td.answer {
    width: 30%;
}
table.responses {
    width: 100%;
}
.responses {
    margin-bottom: 24px;
}
.buttons-container {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: column;
}
@media (min-width: 768px) {
    .buttons-container {
        flex-direction: row;
    }
}
.modal .buttons-container .btn {
    padding: 8px 12px;
}
.btn-primary {
    background-image: none !important;
    background-color: var(--secondary-color) !important;
    color: var(--btn-bg-color) !important;
    border: 0 !important;
    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms !important;

    i {
        color: var(--btn-bg-color) !important;
    }
    &:hover, &:active {
        background-image: none !important;
        color: var(--btn-bg-color) !important;
        background-color: var(--highlight-dark-color) !important;
        border-color: var(--highlight-dark-color) !important;
        outline: none !important;
        i {
            color:  var(--btn-bg-color) !important;
        }
    }
}
.btn-secondary {
    background-image: none !important;
    background-color: var(--primary-color) !important;
    color: var(--btn-bg-color) !important;
    border: 0 !important;
    transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms !important;

    i {
        color: var(--btn-bg-color) !important;
    }
    &:hover, &:active {
        background-image: none !important;
        color: var(--btn-bg-color) !important;
        background-color: var(--primary-color-light) !important;
        border-color: var(--primary-color-light) !important;
        outline: none !important;
        i {
            color:  var(--btn-bg-color) !important;
        }
    }
}
button.accordion-button {
    padding: 10px;
    background-color: var(--primary-color);
    background: var(--primary-color);
}
.accordion-button > h6 {
    color: var(--highlight-light-color) !important;
}

.accordion-button:not(.collapsed) {
    background-color: var(--primary-color-light) !important;
}
.accordion-button.collapsed::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}
.accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}
.accordion-body {
    background-color: var(--well-background-color);
    border: 2px solid var(--well-border-color) !important;
}
.accordion-collapse {
    border-width: 2px !important;
    border-color: var(--well-border-color) !important;
}
.modal-dialog {
    width: 480px;
    max-width: 100%;
}
.btn-print {
    min-width: 72px;
}
.title-container {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.warning {
    color: var(--warningColor);
}
.icon {
    width: 50px;
    border: 2px solid var(--primary-color);
    border-radius: 4px;
    margin-right: 8px;
    vertical-align: middle;
}
.no-answer {
    margin-top: 8px;
}

@media screen, print {
    .page {
        margin: 1mm auto;
        width: auto;
        padding: 0;
    }
                    #mainReportTable {
            line-height: 1.45;
        }
        .content-cell .header-title {
            font-size: 2rem;
        }
        .content-cell .date-display {
            font-size: 1.3rem;
        }
                .header {
        display: none;
    }
    body {
        -webkit-print-color-adjust: exact !important;
        color-adjust: exact !important;
    }
    .print-header {
        display: block;
        margin-bottom: 16px;
        width: 100%;
        background-color: var(--primary-color) !important;
    }
    .content-cell {
        border: 0;
        padding: 0;
        box-shadow: none;
    }
    .btn-player {
        display: none;
    }
    .icon {
        width: 32px;
    }
                .header {
        margin-bottom: 0;
    }
    .header .title {
                        margin-bottom: 8px;
        margin-top: 0;
    }
    h2.section-title,
    h3.section-title,
    .section-title {
        margin-top: 8px;
        margin-bottom: 8px;
        padding-top: 0;
        padding-bottom: 0;
    }
    .title-container {
        margin-top: 8px;
        margin-bottom: 8px;
    }
    .response-title {
        margin-bottom: 0;
        display: block;
    }
    /* .response-item) {
        page-break-inside: avoid;
    } */
    .response-item, .responses {
        margin-left: 0;
                    }
    table {
        margin-bottom: 0;
    }
    table  td {
        padding: 0;
    }
    .noprint {
        display: none;
    }
    .header {
        margin-top: 0;
    }
    #headerContainer {
        display: none
    }
    .navbar {
        display: none !important
    }
    .btn-print {
        display: none;
    }
    .check-icon {
        display: none !important;
    }
    .noprint {
        display: none !important;
    }
    .main-row {
        flex-grow: 1;
      }
      footer {
        margin-bottom: 1em;
        font-style: italic;
      }
      div.container-fluid.main {
        min-height: 100%;
        margin-right: auto;
        margin-left: auto;
        max-width: 800px;
        display: flex;
        flex-direction: column;
      }
      html, body {
        height: 100%;
      }
      .navbar .container-fluid {
        padding: 0,0.5rem;
      }
}
    