/* sidemenu #272933
buttons #1068c9
tags: #6a7c89
lightgrey text: #dadada */
body {
    margin: auto;
    width: 100vw;
    height: 100vh;
}

ul {
    list-style-type: none;
}

.body-wrapper {
    width: 100vw;
    height: 100vh;
    background-color: #f1f3f7;
    transition: all .3s ease;
    display: grid;
    overflow-x: hidden;
    /* overflow-y: scroll; */
    grid-template-columns: 1fr 8fr 2.5fr;
    gap: 0.5rem;
    position: relative;
    font-family: montserrat;
    max-width: 100%;
    user-select: none;
    align-items: stretch;
}
.body-wrapper.expanded-menu, .body-wrapper.legislation-doc.expanded-menu {
    grid-template-columns:  1fr 8fr 4.5fr;
}
.body-wrapper.legislation-doc{
    grid-template-columns: 1fr 6fr 3.5fr;
}

.body-wrapper.full-doc {
    grid-template-columns: 1fr 1fr 1fr;
}

.side-menu-main-container.collapsed-menu {
    width: 112px;
    transition: all .25s ease-out;
}

/* .profile-main-container.collapsed-menu{
    width: 112px;
transition: all .25s ease-out;
} */
.side-menu-bg {
    background-color: #272933;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 5;
    /* box-shadow: 14px 0px 30px 1px rgb(0 0 0 / 22%); */
}

.side-menu-main-container {
    width: 11.979vw;
    height: 100vh;
    position: sticky;
    top: 0;
    box-sizing: border-box;
    background-color: #272933;
    transition: all .25s ease-out;
    color: white;
    margin-right: 2rem;
    z-index: 5;
}

.side-menu-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    position: relative;
    z-index: 5;
    align-items: center;
    box-sizing: border-box;
    flex-direction: row;
    padding: 2rem 0 1rem 1rem;
    justify-content: space-between
}

/* notification panel */
.notification-panel {
    color: white;
    position: absolute;
    padding-top: 4rem;
    width: 150%;
    height: 100%;
    transition: all .25s ease-out;
    /* background-color: #1e1f23; */
    background-color: #1e1f23e0;
    backdrop-filter: blur(8px);
    z-index: 4;
    top: 0;
    left: 0;
    min-width: 345px;
    transform: translateX(-98%);
    box-sizing: border-box;
}

.notification-panel ul {
    margin: 0;
    padding: 0;
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    flex-direction: column;
}

.notification-panel-contents {
    padding: 0 1rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
}

.notification-panel-contents li {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    cursor: pointer;
}

.panel-view-all {
    font-size: 12px;
    text-decoration: underline;
    cursor: pointer;
}

.updated-item-title {
    font-size: 13px;
    font-weight: 700;
}

.updated-item-info {
    font-size: 11px;
}

.updated-item-tags {
    font-size: 9px;
    color: #1e1f23;
    font-weight: 600;
    display: flex;
    gap: 5px;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 0.25rem;
}

.updated-item-tags span {
    background-color: white;
    border-radius: 5px;
    padding: 0.35em 0.65em;
}

.side-menu-container {
    height: 100%;
    width: auto;
    display: grid;
    gap: .5rem;
    grid-template-rows: 1fr 1.5fr 6fr;
}

/* regime selector */
.regime-selector-container {
    position: relative;
}

.regime-selector-wrapper {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.regime-selector {
    border: 1px solid white;
    padding: 5px 10px;
    border-radius: 0.3rem;
    display: flex;
    align-items: center;
    font-size: 14px;
    justify-content: space-between;
    cursor: pointer;
}

.regime-selector-dropdownarrow {
    border: solid white;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 2px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

.regime-dropdown {
    background-color: #1e1f23;
    padding: 0.6rem;
    font-size: 13px;
    position: relative;
    flex: 1;
    cursor: pointer;
    display: none;
}

.regime-dropdown li {
    padding-bottom: 5px;
    padding-left: .6rem;
    transition: all .25s ease-out;
}

.regime-dropdown li:hover {
    background-color: #ffffff0f;
}

.regime-dropdown ul {
    margin: 0;
    padding: 0;
    position: absolute;
    display: flex;
    gap: 5px;
    left: 0;
    flex-direction: column;
    width: 100%;

}

.menu-options-list {
    font-size: 15px;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 1.5rem;
    grid-template-rows: repeat(5, 1fr);
}

.menu-options-items {
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

/* .menu-options-items span{
    position: absolute;
} */
.option-item {
    display: flex;
    flex-direction: row;
    white-space: nowrap;
    justify-content: flex-start;
    align-items: center;
}

.recent-updates {
    display: flex;
    align-items: flex-start;
}

.notification-icon {
    width: 10px;
    height: 10px;
    background-color: red;
    border-radius: 50%;
    display: inline-block;
}

/* side-menu expand button */
.menu-expand-button {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 100%;
    transition: all .25s ease-out;
}

.menu-expand-button:hover {
    background-color: #ffffff0f
}

.menu-expand-button span {
    border: solid white;
    border-width: 0 2.5px 2.5px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
}

.menu-expand-button span.rotated-arrow {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
}

.account-settings {
    font-size: 13px;
    white-space: nowrap;
}

.profile-container {
    display: flex;
    cursor: pointer;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    box-sizing: border-box;
}

.profile-main-container {
    display: flex;
    justify-content: flex-end;
    flex-direction: column;
    overflow: hidden;
    position: absolute;
    width: 100%;
    /* display: none; */
    box-sizing: border-box;
    bottom: 0;
    left: 0;
}

.profile-wrapper {
    display: grid;
    grid-template-columns: 1fr 4fr;
    gap: 0.5rem;
    width: 100%;
    background: #272933;
    padding: 1rem;
    box-sizing: border-box;
    justify-items: stretch;
    align-items: center;
}

.profile-icon {
    color: #272933;
    background-color: white;
    border-radius: 50%;
    font-weight: 700;
    width: 35px;
    height: 35px;
    border-color: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* main body section */
.main-body {
    padding: 2rem 4rem 5rem 0;
    display: grid;
    grid-template-rows: auto minmax(0, 4fr);
}

/* .main-body.grid-view{
    padding: 2rem 4rem 3rem 0;
    height: 100vh;
    box-sizing: border-box;
} */
.main-body.grid-view-open{
    padding: 2rem 4rem 3rem 0;
    height: 100vh;
    box-sizing: border-box;
}

.main-body.legislation-doc {
    padding: 2rem 4rem 3rem 0;
    box-sizing: border-box;
    height: 100vh;
}

/* Search function container */
.search-function-input {
    flex: 1;
}

.search-function-container {
    display: grid;
    grid-template-columns: 5fr 1fr;
    align-items: center;
}

.search-function-container.legislation-page {
    grid-template-columns: 1fr 2fr;
    gap: 1rem;
}

.search-function-contents {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 1rem;
}

.filter-container {
    background-color: white;
    font-size: 13px;
    padding: 0.5rem 1rem 0.5rem 1rem;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid #e2e3e8;
    flex: 1;
    cursor: pointer;
    position: relative;
    box-sizing: border-box;
    max-width: 211px;
}

.filter-container-cover {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 2;
}

.filter-results {
    background-color: white;
    position: absolute;
    height: auto;
    width: 100%;
    top: 0;
    max-height: 400px;
    overflow-y: scroll;
    overflow-x: hidden;
    transform: translateY(43px);
    align-items: stretch;
    transition: all .25s ease-out;
    box-shadow: 0 4px 13px 4px rgba(0, 0, 0, .05);
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    display: none;
    left: 0;
}

.filter-results.show-results {
    display: flex;
}

#results-grid {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: stretch;
    align-items: stretch;
    width: 100%;
}

#result-selection {
    font-size: 13px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border: solid #f3f3f3;
    cursor: pointer;
    border-width: 0 0 1px 0;
    padding: 1rem 1rem;
}

#result-selection:hover {
    background-color: #1068c9;
    color: white;
}

.search-function-dropdown {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
}

.dropdown-filter-arrow {
    border: solid black;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 2px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

.search-filters-container {
    display: flex;
    flex: 1;
    flex-direction: row;
    gap: 1rem;
    align-items: center;
    justify-content: flex-start;
}

.search-filter-input input {
    flex: 1;
    font-size: 13px;
    padding: 0.5rem 1rem 0.5rem 2rem;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid #e2e3e8;
}

.search-filter-input {
    display: flex;
    align-items: center;
    position: relative;
}

.search-filter-input::before {
    content: "search";
    font-family: 'Material Symbols Outlined';
    width: 20px;
    display: inline-block;
    color: #a5aaaf;
    font-weight: 500;
    height: 20px;
    position: absolute;
    left: 2%;
    margin: auto;
}

.button-container {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    position: relative;
}

.button-container.legislation-page {
    justify-content: space-between;
}

.button-container button {
    padding: 0.5rem 2rem;
    background-color: #1068c9;
    border: none;
    color: white;
    border-radius: 6px;
    cursor: pointer;
}

.dashboard-top {
    display: grid;
    gap: 1rem;
    grid-template-rows: 2fr 1fr .7fr;
    justify-items: stretch;
}

.dashboard-top.legislation-page {
    grid-template-rows: 2fr 1fr;
    gap: 0.5rem;
}

.dashboard-main {
    position: relative;
    z-index: 3;
}

.dashboard-tags {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    font-size: 12px;
    align-items: flex-start;
    z-index: 2;
    flex-wrap: wrap;
}

.filter-tags {
    background-color: #6a7c89;
    padding: 0.5rem 2rem 0.5rem 1rem;
    border-radius: 20px;
    color: white;
    position: relative;
    display: flex;
    align-items: center;
    cursor: pointer;
    transition: all .2s ease-out;
}

.filter-tags:hover {
    background-color: #8aa0af;
}

.filter-tags.legislation-page {
    padding: 0.5rem 1rem;
}

.filter-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.filter-tags::before,
.filter-tags::after {
    content: "";
    position: absolute;
    width: 9px;
    height: 1px;
    right: 11px;
    background: #ffff;
}

.filter-tags.filter-tags.legislation-page::before,
.filter-tags.legislation-page::after {
    content: none;
}

.filter-tags::before {
    transform: rotate(45deg);
}

.filter-tags::after {
    transform: rotate(-45deg);
}

.tag-content {
    padding-left: 5px;
    display: flex;
    align-items: center;
}

.main-body.grid-view .document-folders{
    display: grid;
    grid-template-columns: repeat( auto-fit, minmax(200px, 1fr) );
}

.dashboard-overview.legislation-doc {
    height: 100%;
    padding-right: 2rem;
}

.dashboard-overview-container {
    background-color: white;
    border-radius: 13px;
    overflow: hidden;
    height: auto;
    box-shadow: 0 0 14px -11px rgba(0, 0, 0, .38);
    transition: all .3s ease-out;
}


.dashboard-overview-container.legislation-doc {
    padding: 1rem 10px 5px 0;
    height: 100%;
    box-sizing: border-box;
}

.dashboard-overview-container.legislation-doc.full-view-doc {
    position: absolute;
    overflow: hidden;
    z-index: 5;
    width: 100%;
    height: 100vh;
    max-height: 100vh;
    left: 0;
    top: 0;
    border-radius: 0;
    grid-area: 1/1/1/3;
}

#comment-field::-webkit-scrollbar, .dashboard-overview::-webkit-scrollbar, .index-lightbox ul::-webkit-scrollbar{
    width: 5px;
}

/* Track */
#comment-field::-webkit-scrollbar-track, .dashboard-overview::-webkit-scrollbar-track, .index-lightbox ul::-webkit-scrollbar-track{
    background: #1069c900;
}

/* Handle */
#comment-field::-webkit-scrollbar-thumb, .dashboard-overview::-webkit-scrollbar-thumb, .index-lightbox ul::-webkit-scrollbar-thumb{
    background: #1c1c1c;
    border-radius: 10px;
}



/* document dashboard */
.document-folders {
    padding: 0;
    margin: 0;
}

#folder-container {
    font-size: 15px;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    border: solid #f3f3f3;
    cursor: pointer;
    border-width: 0 0 1px 0;
    flex-direction: column;
}
.main-body.grid-view .document-folders #folder-container{
    font-size: 12px;
    line-height: 1.5;
}
.main-body.grid-view .document-folders .folder-name{
    flex-direction: column;
    text-align: center;
    padding: 1.5rem 1.5rem;
    gap: 0.75rem;
}
.folder-name {
    padding: 1rem 2rem;
    box-sizing: border-box;
    display: flex;
    gap: 1.5rem;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
}

.folder-name:hover {
    color: #1068c9;
}

.folder-name.active-tab:hover {
    color: white;
}

.folder-items {
    margin: 0;
    overflow: hidden;
    max-height: 0;
    gap: 1rem;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    padding-right: 5px;
}

.folder-items ul {
    font-size: 14px;
    padding: 0 4rem;
    list-style: none;
    overflow-y: auto;
    max-height: 500px;
    box-sizing: border-box;
    transform: translateY(-100%);
    transition: transform .3s ease-out;
}

.main-body.grid-view-open .folder-items ul{
    max-height: none;
}
.main-body.grid-view-open .dashboard-overview, .main-body.grid-view-open .document-folders, .main-body.grid-view-open #folder-container, .main-body.grid-view-open .folder-items 
{
    height: 100%;
}

.folder-items ul li {
    /* margin-bottom: 2rem; */
    display: flex;
    gap: 1.5rem;
    align-items: center;
    justify-content: flex-start;
    flex-direction: row;
    box-sizing: border-box;
    padding: 1rem 0;
    border: solid #f3f3f3;
    cursor: pointer;
    border-width: 0 0 1px 0;
    transition: border-color .15s ease-out;
    /* max-width: 802px; */
    line-height: 25px;
}

span.item-options {
    float: right;
    position: absolute;
    right: 0;
    display: none;
    gap: 1rem;
    margin-right: 2rem;
    color: black;
}

.folder-items li:hover .item-options {
    display: flex;
    color: #1068c9;
}

.folder-items ul::-webkit-scrollbar {
    width: 5px;
}

/* Track */
.folder-items ul::-webkit-scrollbar-track {
    background: #1069c900;
    padding-top: 10px;
}

/* Handle */
.folder-items ul::-webkit-scrollbar-thumb {
    background: #1c1c1c;
    border-radius: 10px;
}


::-webkit-scrollbar {
    width: 16px;
}

/* Track */
::-webkit-scrollbar-track {
    background: transparent;
    padding-top: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background: #1c1c1c;
    border-radius: 10px;
}


/* Handle on hover */
/* ::-webkit-scrollbar-thumb:hover {
    background: #b30000; 
  }  */
.folder-name span:nth-child(2) {
    font-weight: 700;
}

.folder-items ul li a:hover {
    color: #1068c9;
    /* border-color: #1068c9; */
}

.folder-items ul li a {
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 1.5rem;
    color: black;
    font-weight: 500;
}

.active-tab {
    background-color: #1068c9;
    color: white;
    transition: none;
}

.overview-options{
    font-size: 13px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.overview-options div{
    display: flex;
    gap: 1rem;
}

.overview-options div span:hover {
    color: #1068c9;
    cursor: pointer;
}
/* .expand-all-container {
    display: flex;
    gap: 1rem;
} */

.expand-all-container.legislation-doc {
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
/* 
.expand-all-container span:hover {
    color: #1068c9;
    cursor: pointer;
} */

/* news section */
.news-container {
    padding: 2rem 3rem 5rem 0;
    transition: all .25s ease-out;
}
.news-container.legislation-doc {
    padding: 6rem 3rem 3rem 0;
    transition: all .25s ease-out;
    display: grid;
    grid-template-rows: auto 4fr;
    gap: 1rem;
    box-sizing: border-box;
    height: 100vh;
}
.news-container.full-doc {
    position: sticky;
    top: 0;
    box-sizing: border-box;
    padding: 3rem 1rem 1rem 2rem;
    z-index: 1;
}

.news-title {
    display: flex;
    font-size: 13px;
    justify-content: flex-start;
}

.news-hover-overlay {
    position: absolute;
    transition: all .25s ease-out;
    display: flex;
    font-weight: 600;
    color: white;
    background-color: #1068c9;
    height: 40px;
    left: 0;
    bottom: 0;
    width: 100%;
    transform: translateY(102%);
    align-items: center;
    justify-content: center;
}

.news-hover-overlay:hover {
    background-color: #2e91ff;
}

.news-item h3 {
    font-size: 15px;
    margin: 0;
}

.news-items-container {
    display: flex;
    flex-direction: column;
    gap: 3rem;
    align-items: stretch;
}

.news-item {
    background-color: white;
    border-radius: 13px;
    overflow: hidden;
    height: auto;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    max-height: 300px;
    box-sizing: border-box;
    position: relative;
    cursor: pointer;
    box-shadow: 0 0 14px -11px rgba(0, 0, 0, .38);
}

.news-item:hover .news-hover-overlay {
    transform: translateY(0%);
}

.news-item:hover .news-heading-section h3 {
    color: #1068c9;
}

.news-heading-section {
    display: flex;
    gap: 0.5rem;
    flex-direction: column;
    margin-bottom: 1rem;
    align-items: flex-start;
}

span.news-date {
    font-size: 12px;
    font-weight: 500;
    color: #757575;
}

.news-item p {
    font-size: 14px;
    margin: 0;
    overflow: hidden;
    line-height: 23px;
}

.view-all-news button {
    width: 100%;
    min-height: 31px;
    color: white;
    border: none;
    background-color: #1068c9;
    border-radius: 6px;
    cursor: pointer;
}

button:hover {
    background-color: #2e91ff;
}

button {
    transition: background-color .25s ease-out;
}

/* profile settings */
.profile-settings-container {
    transition: max-height .25s ease-out;
    width: 100%;
    max-height: 0;
    position: relative;
    background-color: #1e1f23;
    overflow: hidden;
    flex: 1;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.profile-settings-container ul {
    font-size: 13px;
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .9rem;
}

.profile-settings {
    padding: 1rem;
    box-sizing: border-box;
    border-top: 1px solid #ffffff30;
    height: 275px;
    display: flex;
    align-items: center;
}

.profile-settings ul li {
    padding: 0.3rem 0;
}

.profile-name {
    font-size: 12px;
    font-weight: 700;
    display: flex;
    flex-direction: column;
}

/* .profile-settings li{
    margin-bottom: 1rem;
} */
.open-settings {
    background-color: #1e1f23;
}

.notifications-title::after {
    content: "";
    width: 7px;
    display: inline-block;
    height: 7px;
    background: red;
    position: absolute;
    border-radius: 50%;
    right: -9px;
    top: 1px;
}

span.notifications-title {
    position: relative;
}

.notifications-container {
    position: absolute;
    width: 100%;
    border-top: 1px solid #ffffff30;
    height: 100%;
    padding: 0.5rem;
    box-sizing: border-box;
    background-color: #1e1f23;
    transform: translateX(105%);
    transition: transform .2s cubic-bezier(.8, 0, .16, 1);
}

.updates-header-container {
    font-size: 13px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.updates-container {
    display: flex;
    gap: 1rem;
    flex-direction: column;
    max-height: 275px;
}

.updates-title {
    font-weight: 600;
}

.updates-back-button .material-symbols-outlined {
    font-size: 18px;
}

.updates-back-button {
    display: flex;
    align-items: center;
}

li.notification-update-container {
    font-size: 12px;
    display: flex;
    flex-direction: column;
}

.notification-update-date {
    font-size: 10px;
}

.notification-update-title {
    font-weight: 700;
    margin-bottom: 0.2rem;
}

.notification-update-text {
    line-height: 17px;
}

.update-list-container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0 1rem 1.5rem 0;
    overflow-y: scroll;
}

.update-list-container::-webkit-scrollbar {
    width: 5px;
}

/* Track */
.update-list-container::-webkit-scrollbar-track {
    background: rgba(255, 255, 255, 0);
    padding-top: 10px;
}

/* Handle */
.update-list-container::-webkit-scrollbar-thumb {
    background: #ffffff;
    border-radius: 10px;
}



/* Handle on hover */
/* ::-webkit-scrollbar-thumb:hover {
    background: #b30000; 
  }  */

/********************************** LEGISLATION ITEM CSS ****************************************/

.nav-backbutton {
    border: solid;
    border-width: 0 2.5px 2.5px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transition: transform .20s ease-out;
}


.header-navigation a {
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    color: black;
    cursor: pointer;
    transition: color .20s ease-out;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.header-navigation a:hover {
    color: #1068c9;
}

.header-navigation a:hover .nav-backbutton {
    transform: translateX(-3px) rotate(135deg);
}

.index-container {
    position: relative;
    padding: 1rem 0;
    z-index: 3;
}

.index-options {
    display: flex;
    align-items: center;
    overflow: hidden;
}

.index-container:hover .bookmark-button {
    color: #2e91ff;
}

.index-container:hover .doc-options {
    transform: translateX(0%);
}

.index-container span:hover {
    color: #1068c9;
}

   /* Styles to override the hover effect of index-container*/
.index-container.open-index .doc-options {
    transform: none;
  }
.index-container.open-index  .bookmark-button {
    color: #1068c9;
}
.index-container.open-index span {
    color: inherit;
}
.index-container.open-index .index-lable.open-index {
    color: #1068c9;
}

.material-symbols-outlined.bookmark-button {
    color: #1068c9;
    font-size: 30px;
    cursor: pointer;
    z-index: 2;
    position: relative;
    background-color: #f1f3f7;
    transition: all .25s ease-out;
}

.legislation-chapter-list .legislation-chapter {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
}

.legislation-chapter-list .legislation-chapter .chapter-heading-container {
    line-height: 25px;
    font-weight: 700;
    cursor: pointer;
    width: 100%;
    padding: 0 0 1rem 0;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    box-sizing: border-box;
    position: relative;
}
.legislation-chapter-list .legislation-chapter:nth-child(n+2) .chapter-heading-container {
    padding: 1rem 0;
}


.chapter-heading-container:hover {
    color: #1068c9;
}

/* .chapter-heading-container:hover .chapter-button{
    transform: translateX(0%);
 } */
.chapter-heading-container:hover .chapter-title {
    transform: translateX(1rem);
}

.chapter-title {
    transition: transform .20s ease-out;
}

.chapter-heading-container:hover .chapter-expand-button {
    /* transform: translateX(0%); */
    opacity: 1;
}

ul.legislation-chapter-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 0;
    align-items: flex-start;
    margin: 0;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
    overflow-y: scroll;
    overflow-x: hidden;
    scroll-behavior: smooth;
}

.legislation-contents{
    height: 100%;
    padding: 0 0 0 2rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.chapter-button {
    position: absolute;
    right: 0;
    color: white;
    font-size: 13px;
    background-color: #1068c9;
    padding: 0.5rem 2rem;
    height: 100%;
    box-sizing: border-box;
    display: none;
    /* display: flex; */
    align-items: center;
    transform: translateX(105%);
    transition: transform .2s ease-out;
}

.legislation-chapter .material-symbols-outlined {
    font-size: 19px;
    opacity: 0;
    transition: opacity 0.25s ease-out;
    /* transition: transform .2s ease-in-out;
    transform: translateX(170%); */
}

/* span.index-lable {
    font-size: 12px;
    transition: transform .2s ease-out;
    font-weight: 600;
    transform: translateX(120%);
    position: relative;
    z-index: 1;
} */

/* -------------- CHAPTER CONTENTS -------------- */
.chapter-content-container {
    font-size: 13px;
    max-height: 0;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
}

.chapter-content-container.open-container {
    max-height: none;
}

.chapter-heading-container.open-container .chapter-title {
    color: #1068c9;
    transform: translateX(1rem);
}

.chapter-heading-container.open-container .chapter-expand-button {
    opacity: 1;
    color: #1068c9;
}

.chapter-content-body {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    padding: 1.2rem 5rem 1.2rem 1.2rem
}

.Subnormal {
    margin-left: 19px;
}

.subsubnormal {
    margin-left: 57px;
}

.doc-options {
    font-size: 12px;
    transition: transform .4s ease-out;
    font-weight: 600;
    transform: translateX(120%);
    position: relative;
    z-index: 1;
    display: flex;
    gap: 0.5rem;
    padding-left: 1rem;
    box-sizing: border-box;
}

.doc-options span {
    cursor: pointer;
    transition: color .2s ease-out;
}

.top-of-screen {
    position: absolute;
    top: 0;
    right: 0;
    background-color: #1068c9;
    color: white;
    font-weight: 700;
    cursor: pointer;
    display: none;
    z-index: 2;
    padding: 1.2rem 2rem;
    transition: all .25s ease-out;
}

.top-of-screen:hover {
    background-color: #2e91ff;
}

.full-view-title {
    display: none;
}
.full-view-title h2 {
    margin: auto;
}

.index-lightbox {
    position: absolute;
    width: 21vw;
    height: 18vw;
    background-color: rgb(255, 255, 255);
    right: 30px;
    top: 50px;
    display: none;
    border-bottom-right-radius: 15px;
    border-bottom-left-radius: 15px;
    box-shadow: 0 4px 20px -13px rgba(0, 0, 0, .38);
    transition: all .3s ease-out;
    /* overflow-y: scroll; */
}

.index-lightbox.open-index {
    display: block;
    box-sizing: border-box;
    padding: 0 0.5rem 1rem 0;
}
.index-lightbox ul, .contents-screen ul {
    display: flex;
    font-size: 13px;
    flex-direction: column;
    padding: 0 1rem;
    overflow-y: scroll;
    height: 100%;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
}
.index-lightbox li, .contents-screen li{
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.index-lightbox a, .contents-screen a{
    text-decoration: none;
    color: black;
    font-weight: 500;
    line-height: 23px;
    height: 100%;
    display: inline-block;
    padding: 0.5rem 0;
    box-sizing: border-box;
    width: 100%;
}
.index-lightbox li:hover, .contents-screen a:hover{
    color: #1068c9;
}
/* .index-lightbox li:hover .contents-bookmark{
   opacity: 1;
} */
.index-container.open-index .contents-bookmark{
opacity: 0;
}

/* ----------------- DOCUMENT SCREEN ----------------- */
.document-tabs {
    display: flex;
    flex-direction: row;
    gap: 1rem;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    font-size: 13px;
}
.document-tabs span {
    padding: 0.4rem 1rem;
    border: 2px solid #6a7c89;
    border-radius: 20px;
    color: #6a7c89;
    position: relative;
    font-weight: 600;
    box-sizing: border-box;
    display: flex;
    cursor: pointer;
    flex: 1;
    align-items: center;
    justify-content: center;
}
#contents-button{
    display: none;
}
.document-tabs span:hover{
    color: white;
    background-color: #6a7c89;
}

.document-tabs span.clicked-summary{
    background-color: #6a7c89;
    color: white;
}

.document-screen-container {
    background-color: white;
    border-radius: 13px;
    box-shadow: 0 0 14px -11px rgba(0, 0, 0, .38);
    transition: all .3s ease-out;
    padding: 1.5rem;
    box-sizing: border-box;
    max-height: 768px;
    overflow: hidden;
}

.document-tabs span.active-button{
    color: white;
    background-color: #6a7c89;
}
#summary-info{
    resize: none;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    text-align: left;
    font-family: 'Montserrat';
    line-height: 1.5;
}
.field-title{
    font-size: 14px;
    font-weight: 600;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.document-screens.overview-screen{
    display: grid;
    grid-template-rows: minmax(0, 15.625vw) 2.5fr 2fr;
    height: 100%;
    gap: 1rem;
}

/**************SUMMARY SCREEN**************/

.summary-screen-field{
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
.field-info{
    width: 100%;
    height: 100%;
    padding: .5rem 0;
    box-sizing: border-box;
    font-size: 13px;
    font-weight: 500;
}

.summary-field-info{
    box-sizing: border-box;
    height: 100%;
    width: 100%;
    overflow: hidden;
    display: flex;
    gap: 0.5rem;
    position: relative;
    flex-direction: column;
}
.summary-buttons {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
}
.summary-button {
    padding: 0.5rem 2rem;
    font-weight: 600;
    border-radius: 20px;
    cursor: pointer;
}
.close-button{
    border: 2px solid #dc3545;
    color: #dc3545;
}
.save-button{
    border: 2px solid #1068c9;
    color: #1068c9;
}
.close-button:hover{
    background-color: #dc3545;
    color: white;
}
.save-button:hover{
    background-color: #1068c9;
    color: white;
}
.material-symbols-outlined.summary-edit-button {
    background-color: white;
    position: relative;
    z-index: 2;
}
.summary-field-edit-button {
    color: black;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    overflow: hidden;
}
span.edit-lable {
    font-size: 12px;
    margin-bottom: 2px;
    margin-right: 4px;
    transform: translateX(110%);
    transition: transform .2s ease-out;
}
.summary-field-edit-button:hover{
    color: #1068c9;
}
.summary-field-edit-button:hover .edit-lable{
    transform: translateX(0%);
}
.revisions-field.hide-summary, .notes-field.hide-summary, .summary-field-edit-button.hide-summary, #summary-info.hide-summary, .summary-info-view.hide-summary, .summary-buttons.hide-summary{
    display: none;
}
.revisions-field.view-summary, .notes-field.view-summary, .summary-field-edit-button.view-summary, #summary-info.view-summary, .summary-info-view.view-summary, .summary-buttons.view-summary{
    display: flex;
}

.overview-screen.view-summary {
    grid-template-rows: 1fr;
}

.field-view-all a {
    color: black;
    text-decoration: none;
    font-size: 11px;
    cursor: pointer;
}
.field-view-all a:hover{
    color: #1068c9;
}

/**************NOTES SUMMARY**************/

.note-field {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    padding-bottom: 1rem;
    width: 100%;
}
.notes-icon {
    color: white;
    background-color: #272933;
    width: 100%;
    flex: 1;
    border-radius: 50%;
    font-weight: 700;
    min-width: 35px;
    max-width: 35px;
    box-sizing: border-box;
    height: 35px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.notes-main {
    padding-left: 0.5rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem;
    width: 100%;
}
.notes-name {
    font-size: 11px;
    font-weight: 600;
}
.notes-date {
    font-size: 10px;
    color: #6a7c89;
}
.notes-name-container {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.notes-field-info {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.notes-content {
    line-height: 1.5;
}
.notes-screen-content {
    line-height: 1.5;
}

.revisions-field-info {
    display: flex;
    flex-direction: column;
    width: 100%;
    align-items: flex-start;
    gap: 1rem;
}
.document-screens.hide-screen{
    display: none;
}

.document-screens {
    font-size: 13px;
    height: 100%;
}
.contents-screen{
    display: flex;
    flex-direction: column;
    gap: .5rem;
}
span#screen-title {
    font-size: 15px;
    font-weight: 600;
}
.doc-screen-container{
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
    height: 100%;
}
.notes-screen .doc-screen-container{
    justify-content: space-between;
    position: relative;
}

.notes-field-container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
    overflow-y: scroll;
    height: 88%;
}
/*NOTES SCREEN*/

#comment-field {
    resize: none;
    box-sizing: border-box;
    width: 100%;
    height: 28px;
    min-height: 28px;
    max-height: 100px;
    border: none;
    text-align: left;
    font-family: 'Montserrat';
    line-height: 1.5;
    overflow-y: hidden;
    font-weight: 500;
}
#comment-field:focus-visible{
    outline: none;
}

.comment-field-container{
    width: 100%;
    padding: 5px 1rem 0px 1rem;
    overflow: hidden;
    border: 2px solid #6a7c89;
    border-radius: 10px;
    box-sizing: border-box;
    display: flex;
    gap: 1rem;
    align-items: center;
    justify-content: space-between;
}

.comment-field-container:focus-within{
    border-color: #1068c9;
}
.add-comment{
    cursor: pointer;
    font-size: 20px;
    margin-bottom: 5px;
}
.comment-field-wrapper {
    display: flex;
    align-items: center;
    gap: 1rem;
width: 100%;
}

/* revision button */
.revision-content a{
    text-decoration: none;
    color: black;
    cursor: pointer;
}
.revision-content a:hover{
    color:#1068c9;
}
#revisions-highlight {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    background-color: #a9d2ff85;
}