@font-face {
  font-family: "Titillium Web";
  src: url("../fonts/TitilliumWeb-ExtraLight.ttf") format("truetype");
  font-weight: 200;
  font-style: normal;
}

body {
  max-width: 1200px;
  margin: 0;
  padding: 0;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-size: 20px;
  background-color: #f0f0f0;
  color: #444;
}

body.blank main {
  background-color: transparent;
}

main {
  background-color: white;
  margin: 0;
  padding: 10px;
}

@media (min-width: 576px) {
  main {
    padding: 20px;
  }
}

a {
  color: #36277a;
}

header {
  background: linear-gradient(135deg, #36277a 0%, #e84a61 100%);
  color: white;
}

header a {
  color: white;
}

@media (min-width: 576px) {
  header {
    padding: 10px;
    display: flex;
  }
}

header .logo {
  flex: 0 0;
  width: 50px;
  margin: 10px;
  vertical-align: -35%;
}

header h1 {
  font-family: 'Titillium Web', sans-serif;
  font-weight: 200;
  margin: 0;
  flex-grow: 1;
}

header #userbox {
  padding: 10px;
}

@media (min-width: 576px) {
  header #userbox {
    text-align: right;
  }
}

footer {
  margin-top: 20px;
  font-size: 75%;
  text-align: center;
  color: #888;
}

footer .config {
  color: #eee;
}

div.flash {
  color: white;
  margin: 5px 0;
  padding: 4px;
}

div.flash.success {
  background-color: #2ecc71;
}

div.flash.fail {
  background-color: #e74c3c;
}

form.login {
  padding: 10px;
  background: linear-gradient(135deg, #36277a 0%, #e84a61 100%);
  border-radius: 10px;
  color: white;
  margin: 40px auto 0;
  max-width: 300px;
  text-align: center;
}

form.login fieldset {
  border: solid 2px #ffffff80;
}

form.login fieldset legend {
  opacity: 75%;
}

form.login .form_line {
  margin-bottom: 10px;
}

form.login .form_line label:first-child {
  font-size: 80%;
  font-style: italic;
  display: block;
}

form.login .actions {
  margin-top: 10px;
  text-align: left;
}

form.login .actions input {
  padding: 4px 10px;
  color: white;
  border: solid 2px white;
  border-radius: 5px;
  background-color: transparent;
}

form.login input {
  font-size: 100%;
}

form.login fieldset {
  text-align: left;
  border: none;
}

form.login fieldset legend {
  display: none;
}

form.login input[type=text], form.login input[type=password] {
  width: 100%;
}

form.login .logo {
  width: 75px;
  margin: 10px auto;
}

form.password {
  padding: 10px;
  background: linear-gradient(135deg, #36277a 0%, #e84a61 100%);
  border-radius: 10px;
  color: white;
  margin-top: 20px;
  max-width: 600px;
}

form.password fieldset {
  border: solid 2px #ffffff80;
}

form.password fieldset legend {
  opacity: 75%;
}

form.password .form_line {
  margin-bottom: 10px;
}

form.password .form_line label:first-child {
  font-size: 80%;
  font-style: italic;
  display: block;
}

form.password .actions {
  margin-top: 10px;
  text-align: left;
}

form.password .actions input {
  padding: 4px 10px;
  color: white;
  border: solid 2px white;
  border-radius: 5px;
  background-color: transparent;
}

form.password input {
  font-size: 100%;
}

form.mailbox {
  padding: 10px;
  background: linear-gradient(135deg, #36277a 0%, #e84a61 100%);
  border-radius: 10px;
  color: white;
  margin-top: 20px;
  max-width: 800px;
}

form.mailbox fieldset {
  border: solid 2px #ffffff80;
}

form.mailbox fieldset legend {
  opacity: 75%;
}

form.mailbox .form_line {
  margin-bottom: 10px;
}

form.mailbox .form_line label:first-child {
  font-size: 80%;
  font-style: italic;
  display: block;
}

form.mailbox .actions {
  margin-top: 10px;
  text-align: left;
}

form.mailbox .actions input {
  padding: 4px 10px;
  color: white;
  border: solid 2px white;
  border-radius: 5px;
  background-color: transparent;
}

form.mailbox input {
  font-size: 100%;
}

form.mailbox.new {
  color: #444;
  background: inherit;
  background-color: #f0f0f0;
  margin: 0;
}

form.mailbox.new fieldset {
  border: solid 2px #44444480;
}

form.mailbox.new .actions input {
  color: #36277a;
  border: solid 2px #36277a;
  border-radius: 5px;
  background-color: transparent;
}

form.mailbox ul#folders {
  list-style: none;
  margin: 0;
  padding: 0;
}

form.mailbox ul#folders li {
  margin: 5px 0;
}

form.mailbox ul#folders li input[type=text] {
  width: 180px;
}

form.mailbox ul#folders li button {
  margin-left: 10px;
}

table.mailboxes {
  font-size: 100%;
}

table.mailboxes td {
  padding: 5px;
}

table.mailboxes td.actions form {
  margin: 0;
}

table.mailboxes td.actions div.actions {
  font-size: 60%;
  padding: 5px 10px;
  color: #36277a;
  background-color: transparent;
  border: solid 2px #36277a;
  border-radius: 5px;
  float: left;
  margin-right: 5px;
}

table.mailboxes td.actions div.actions input {
  border: none;
  color: #36277a;
  font-size: 100%;
  margin: 0 0 -4px 0;
}

table.mailboxes td.actions div.actions a {
  text-decoration: none;
}

table.mailboxes .host {
  display: none;
}

@media (min-width: 576px) {
  table.mailboxes .host {
    display: table-cell;
  }
}

table.mailboxes .type {
  display: none;
}

@media (min-width: 992px) {
  table.mailboxes .type {
    display: table-cell;
  }
}

table.mailboxes .user {
  display: none;
}

@media (min-width: 768px) {
  table.mailboxes .user {
    display: table-cell;
  }
}
