/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */

*,
*::before,
*::after {
    box-sizing: border-box;
}

h1 {
    font-family: 'Helvetica Neue';
}

body {
    color: var(--900);
    height: 100vh;
    font-family: 'Helvetica Neue';
    font-kerning: auto;
    font-optical-sizing: auto;
    --50: #f9f7f8;
    --100: #e5e8eb;
    --200: #cbd1d8;
    --300: #b9c2ca;
    --400: #a2adb9;
    --500: #8b96a2;
    --600: #74808b;
    --700: #5d6974;
    --800: #424d57;
    --900: #28333e;
    --primary: #009CF9;
    background-color: var(--100);
}

a {
    color: var(--primary);
    text-decoration: none;
}

.grey-link {
    text-decoration: none;
    color: var(--500);
}

.select {
    display: flex;
    align-items: center;
    width: 100%;
    height: auto;
    position: relative;
}
.select-arrow {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin: auto;
    right:8px;
}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    border: transparent solid 1px;
    border-radius: 2px;
    padding: 8px 16px;
    outline: none;
    display: flex;
    align-items: center;
    justify-content: center;
    vertical-align: unset;
    position: relative;
    margin: 0;
    cursor: pointer;
    background: var(--50);
    color: var(--900);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.input {
    display: flex;
    align-items: center;
    width: 100%;
    height: 32px;
    position: relative;
}

input[type=submit] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--primary);
    color: var(--50);
    cursor: pointer;
    width: auto;
}

.button, input {
    -webkit-appearance: none;
    -moz-appearance: none;
    width: 100%;
    border: transparent solid 1px;
    border-radius: 2px;
    padding: 8px 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--50);
    color: var(--700);
    outline: none;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.button:hover, select:hover, input:hover, .button:focus, select:focus, input:focus {
    border: var(--900) solid 1px;
}

.primary-button {
    background-color: var(--primary);
    color: var(--50);
}

.inline-row {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
    column-gap: 16px;
}

/**
Folders
*/

.folders {
    display: flex;
    padding: 16px 0;
}

.tab {
    padding: 8px;
    margin-right: 8px;
    align-self: center;
    text-decoration: none;
    border-radius: 2px;
    color: var(--900);
    background: var(--50);
    box-shadow: rgba(0, 0, 0, 0.02) 0px 1px 3px 0px, rgba(27, 31, 35, 0.15) 0px 0px 0px 1px;
    border: transparent solid 1px;
}
.tab:hover {
    border: var(--900) solid 1px;
}

.container {
    width: 90%;
    margin: 0 auto;
}

/*
 Table (move to own file)
*/

table {
    margin-top: 16px;
    background-color: var(--50);
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border-radius: 2px;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 4px 12px;
}

table a {
    color: var(--900);
}

td {
    border: none;
    padding: 8px 4px;
}

td:first-child {
    padding-left: 16px;
}

tr:last-child {
    border: none;
}

tr {
    border-bottom: 1px solid var(--300);
    line-height: 40px;
}

.title-col {
    width: auto;
}

.title {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 16px;
}

.title-details-link {
    text-decoration: none;
    color: inherit;
    cursor: pointer;
}

.move-col {
    width: 104px;
}

.item-move-select {
    width: 100px;
}

.link-col {
    width: 30px;
}

.modal-col {
    width: 50px;
}

/**
Modal
*/

.modal {
    --gutter: 14px;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 2000;
    position: fixed;
    background-color: rgba(0, 0, 0, .7);
    padding-top: 2%;
}

.modal-content {
    width: 95vw;
    max-width: 900px;
    max-height: 700px;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    margin: 0 auto;
    background-color: #ffffff;
    display: flex;
    flex-direction: column;
}

/* Modal Header */
.modal-header {
    min-height: 60px;
    height: 60px;
    color: var(--900);
    background-color: var(--100);
    display: grid;
    padding-left: 16px;
    align-items: center;
    grid-template-columns: auto 60px;
    border-bottom: solid 1px #cccccc;
}

.modal-header .modal-title {
    width: 90%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Modal Body */
.modal-body {
    flex: 1;
    text-align: left;
    overflow: auto;
    background: var(--50);
    padding: 8px 16px;
}

.modal-body img {
    width: auto;
    max-height: 350px;
    display: block;
    margin: auto;
}

/* Modal Footer */
.modal-footer {
    height: auto;
    border-top: solid 1px #cccccc;
    padding: 8px 16px;
    color: var(--900);
    background-color: var(--100);
    display: flex;
    justify-content: space-between;
    align-items: center;
}
