@font-face {
    font-family: 'Noto Sans';
    src: url('/assets/fonts/NotoSans/NotoSans-Regular.ttf') format('truetype');
    font-weight: 400; /* Regular weight */
    font-style: normal;
}

@font-face {
    font-family: 'Noto Sans';
    src: url('/assets/fonts/NotoSans/NotoSans-Bold.ttf') format('truetype');
    font-weight: 700; /* Bold weight */
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/assets/fonts/Montserrat/Montserrat-Regular.ttf') format('truetype');
    font-weight: 400; /* Regular weight */
    font-style: normal;
}

@font-face {
    font-family: 'Montserrat';
    src: url('/assets/fonts/Montserrat/Montserrat-Bold.ttf') format('truetype');
    font-weight: 700; /* Bold weight */
    font-style: normal;
}

* {
    margin: 0;
    padding: 0;
    font-family: "Noto Sans", sans-serif;
    text-decoration: none;
    color: inherit;
}

body {
    background-color: #F5F5F5;
}

.flex {
    display: flex;
}

.flex.column {
    flex-flow: column;
}

.flex.row {
    flex-flow: row;
}

#header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 16px;

    background-color: #2a3047;
    color: #FEFEFE;
}

#header .title {
    display: flex;
    gap: 8px;

    font-size: 26px;
    font-weight: bold;
}

#header .title img {
    width: 32px;
}

nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}

nav img {
    width: 20px;
}

#content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 64px;
}

#meeting {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

#meeting-documents-container {
    padding: 4px 32px 16px;
    background-color: #FEFEFE;

    border: solid 2px #ebebeb;
    border-radius: 12px;
    box-shadow: 0 0 25px rgba(black, 0.06);
}

#meeting-documents {
    display: flex;
    flex-direction: column;
    gap: 12px;
    min-width: 300px;
    margin-top: 10px;
}

.document {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 32px;
    padding: 8px 16px;
    border-bottom: solid 1px #2a3047;

    font-family: "Montserrat", sans-serif;
}

.document-name {
    cursor: pointer;
}

.document-actions {
    display: flex;
    gap: 18px;
}

.document-actions img {
    height: 18px;
    cursor: pointer;
}

.modal {
    display: none; 
    justify-content: center;
    align-items: center;
    position: fixed; 
    z-index: 1; 
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    overflow: auto; 
    background-color: rgba(0,0,0,0.4); 
}

.modal-content {
    display: flex;
    flex-direction: column;
    align-items: end;
    width: 70%;
    height: 80%;

    
}

.pdf-viewer {
    width: 100%;
    height: 100%;
    border-radius: 4px;
}

.close {
    margin-right: 8px;
    color: white;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

.close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}


/* Login Page */

#login {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 50px;

    height: 100vh;
    background-color: #2a3047;

    font-family: "Noto Sans", sans-serif;
}

#login form {
    display: flex;
    flex-flow: column;
    gap: 20px;
    
    width: 300px;
    padding: 35px;

    background-color: #fefefe;
    border-radius: 12px;
    box-shadow: 0 0 25px rgba(black, 0.06);
}

#login form button {
    display: inline-block;
    height: 45px;
    padding-block: 1px;
    padding-inline: 6px;

    background-color: #fdb913;
    border: 1px solid #fdb913;
    border-radius: 8px;
    
    font-family: inherit;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 0.802rem;
    letter-spacing: 0.075rem;
    cursor: pointer;
}

.form-title {
    font-size: 1.424rem;
    font-weight: bold;
    cursor: default;
}

.form-field {
    display: inline-block;
    border-radius: 8px;
    cursor: pointer;
    padding-block: 5px;
    padding-inline: 10px;
}

input[type="checkbox"] {
    transform: scale(1.25);
    margin: 0 5px; 
}

.checkbox {
    display:flex;
    align-items: center;
    gap: 5px;
}

.form-field-label {
    margin-bottom: 4px;
    font-family: "Montserrat", sans-serif;
    font-weight: bold;
}

.form-field-label.small {
    margin: 0;
    font-size: 0.85rem;
    font-weight: bold;
}

.form-error {
    padding-top: 4px;

    color: #D32F2F;
    font-size: 0.85rem;
    font-weight: bold;
}

@media screen and (min-width: 1025px) {
    /* styles for standard desktop screens */

    #meeting-documents {
        min-width: 700px
    }
}
