/* purgecss start ignore */

.login-form {
  grid-column-start: 5;
}

.login-form input[type=text],
.login-form input[type=password] {
  width: 100%;
  border-radius: 4px;
  border: 1px solid #ccc;
  padding: 10px;
}

.login-form input {
  margin: 0.5em 0;
}

.login-form .error {
  margin: 1em 0;
  color: #a00000;
  font-weight: bold;
}

.toolbar {
  margin: 1em 0;
  display: flex;
  align-items: center;
  padding-bottom: 1em;
  border-bottom: 1px solid #ccc;
}

.toolbar--item {
  margin: 0 0.5em;
}

.toolbar--item:first-child {
  margin-left: 0;
}

.toolbar--item:last-child {
  margin-right: 0;
}

.toolbar--item img {
  width: 32px;
  height: 32px;
}

.toolbar--button {
  display: block;
  border-radius: 4px;
  padding: 4px;
}

.toolbar a.toolbar--button:hover {
  background-color: #eee;
}

.toolbar--right {
  margin-left: auto;
}

.toolbar .cd {
  font-weight: bold;
}

.toolbar .dir-breadcrumbs {
  font-weight: normal;
}

.toolbar .dir-breadcrumbs a,
.toolbar .dir-breadcrumbs span {
  padding: 4px 6px;
  text-align: center;
  display: inline-block;
  min-width: 30px;
  border: 1px solid transparent;
}

.toolbar .dir-breadcrumbs a {
  border-radius: 4px;
  border: 1px solid #eee;
}

.toolbar .dir-breadcrumbs a:hover {
  background-color: #036865;
  color: white;
  border: 1px solid #036865;
}

.toolbar select {
  border-radius: 4px;
}

.toolbar--search input {
  background-image: url("../images/portal_search.svg");
  background-repeat: no-repeat;
  background-position: 4px center;
  background-size: 30px;
  border-radius: 4px;
  padding-left: 40px;
}

.toolbar--search input:active, .toolbar--search input:focus {
  opacity: 1;
}

.toolbar .disabled {
  opacity: 0.25;
}

.no-files {
  margin: 3em 0;
  text-align: center;
}

.dir {
  display: grid;
}

.dir.layout--grid {
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  grid-gap: 1rem;
  margin-top: 3em;
}

.dir.layout--grid li {
  text-align: center;
}

.dir.layout--grid li a {
  margin: 0 auto;
}

.dir.layout--list {
  grid-gap: 0.5rem;
  justify-items: start;
  justify-content: start;
}

.dir.layout--list img,
.dir.layout--list object {
  width: 32px;
  -o-object-fit: contain;
     object-fit: contain;
  height: 32px;
  display: inline-block;
}

.dir.layout--list br {
  display: none;
}

.dir.layout--list li {
  display: grid;
  text-align: left;
  grid-template-columns: 50px minmax(100px, 1000px) 120px 80px 120px;
  align-items: center;
  grid-gap: 1em;
  width: 100%;
}

.dir.layout--list li:nth-child(even) {
  background-color: #eee;
}

.dir.layout--list .header p:nth-child(2) {
  padding: 2px 8px;
}

.dir.layout--list .file {
  width: 100%;
}

.dir li a {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.dir li a:hover, .dir li a:focus {
  outline: none;
}

.dir li a:hover img, .dir li a:focus img {
  background-color: rgba(3, 104, 101, 0.1);
}

.dir li a:hover .folder--title,
.dir li a:hover .file--title, .dir li a:focus .folder--title,
.dir li a:focus .file--title {
  color: white;
  background-color: rgba(160, 0, 0, 0.1);
  background-color: #036865;
}

.dir li img,
.dir li object {
  display: inline-block;
  margin: 0 auto;
  width: 64px;
  -o-object-fit: contain;
     object-fit: contain;
  padding: 4px;
  box-sizing: content-box;
}

.dir li .folder--title,
.dir li .file--title {
  margin: 0.5em 0;
  padding: 2px 8px;
  display: inline-block;
}

.dir li img,
.dir li .folder--title,
.dir li .file--title {
  border-radius: 4px;
}

.portal_footer {
  margin: 3em 0 1em;
  text-align: center;
  padding-top: 1em;
  border-top: 1px solid #ccc;
  opacity: 0.25;
}

.portal_footer img {
  display: inline-block;
  margin: 1em;
}

/* purgecss end ignore */
