:root {
    --primary: #A11BD6;
    --red: #ac4141;
    --green: #8aa45c;
    --body: #333;
}

.message {
    padding: 10px;
    border: 1px solid #CCC;
    border-left: 10px solid #CCC;

}

.message--success {
    border-color: var(--green);
}

.message--error {
    background: var(--red);
}

body {
    color: var(--body);
    font-family: Arial;
    padding: 0;
    margin: 0;
}

a {
    color: var(--primary);
}

.input {
    padding: 5px;
    border-width: 1px;
    border-style: solid;
}

.button {
    display: inline-block;
    border: 1px solid #CCC;
    margin: 0 1px;
    font-size: 16px;
    line-height: 30px;
    font-weight: normal;
    border-radius: 2px;
}

button:first-child {  
    margin: 0 1px 0 0;
}

.button--primary {
    background: var(--primary);
    color: #FFF;
    border: 1px solid var(--primary);
}

.button--positive svg {
    color: var(--green);
}

.button--negative svg {
    color: var(--red);
}

.mention-list {
    padding: 0;
    list-style: none;
    margin: 0;
}

.mention {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #CCC;
}

@media all and (min-width: 500px) {
    .mention {
        display: grid;
        grid-template-columns: 2em auto 300px;
    }
}

.mention__icon {
    text-align: center;
}

.mention__icon,
.mention__info,
.mention__actions {
    padding: 10px 0;
}


.mention__content {
    margin: 10px 0;
    font-size: 12px;
    line-height: 16px;
}

.mention-filters__status {
    border-bottom: 1px solid #AAA;
}

.mention-filters__status a {
    position: relative;
    bottom: -1px;
    display: inline-block;
    background: #EFEFEF;
    text-decoration: none;
    padding: 5px;
    border: 1px solid #EFEFEF;
    border-bottom: 1px solid #AAA;
    color: #AAA;
}

.mention-filters__status a.active {
    font-weight: bold;
    color: var(--primary);
    background: #FFF;
    border: 1px solid #AAA;
    border-bottom: 1px solid #FFF;
}

.mention__actions {
    display: block;
    text-align: right;
}

.mention__created_at,
.mention__source {
    display: block;
}

.mention__created_at,
.mention__target,
.mention__to {
    font-size: 12px;
    opacity: 0.6;
}

.form__actions {
    margin-top: 20px;
    border-top: 1px solid #CCC;
    padding-top: 20px;
    text-align: right;
}

.loading {
    padding: 10px;
    text-align: center;
}

.topbar {
    background: #000;
    color: #FFF;
}

.topnav,
.main,
.title {
    max-width: 800px;
    margin: auto;
}

.topnav {
    padding: 5px;
    display: flex;
    flex-direction: columns;
    justify-content: space-between;
}

.topnav__right {
    text-align: right;
}

.topnav__left {
    text-align: left;
}

.topnav__left a {
    display: inline-block;
    padding: 5px 10px;
    border-left: 1px solid #666;
    font-weight: bold;
    text-decoration: none;
}

.topnav__left a:first-child {
    border-left: none;
}

.topnav a {
    font-size: 14px;
    color: #FFF;
}

.topnav__right a {
    display: inline-block;
    line-height: 24px;
}

.main {
    padding: 10px;
}

.title {
    padding: 0 10px;
    line-height: 55px;
    background: #EFEFEF;
    color: var(--primary);
}

.title img {
    height: 36px;
    vertical-align: middle;
}

.sendreport {
  list-style: none;
  padding: 0;
}

.sendreport__item {
  padding: 5px;
  background: #EFEFEF;
  margin-bottom: 2px;
}
.sendreport__item--success {
  background: var(--green);
}
.sendreport__item--failure {
  background: var(--red);
}
.sendreport__item__url,
.sendreport__item__error,
.sendreport__item__endpoint {
  display: block;
}
.sendreport__item__error,
.sendreport__item__endpoint {
  font-size: 70%;
}

.form-field {
    display: grid;
    grid-template-areas: "label input";
    grid-template-columns: 100px auto;
    margin-bottom: 10px;
}

.form-field__label {
    grid-area: label;
}

.form-field__control {
    grid-area: input;
}

.policy-listing {
    list-style: none;
    padding: 0;
    margin: 0 0 10px 0;
}

.policy {
    border-bottom: 1px solid #CCC;
    display: grid;
    grid-template-areas: "pattern pattern pattern"
                         "policy weight action";
    grid-template-columns: auto auto 100px;
    padding: 5px 0;
    line-height: 30px;
}

.policy span {
    display: block;
    padding: 5px;
}

.policy svg {
    display: inline-block;
    margin-right: 5px;
}

.policy__pattern {
    grid-area: pattern;
    background: #EFEFEF;
}

.policy button {
    grid-area: action;
}

.policy__policy {
    grid-area: policy;
}

.policy__weight {
    grid-area: weight;
}

.error {
    background: var(--red);
    color: #FFF;
    padding: 5px;
    margin-bottom: 5px;
}

.paging {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.paging__next {
    text-align: right;
}

.paging__previous {
    text-align: left;
}

.paging__next--disabled,
.paging__previous--disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.paging__status {
    text-align: center;
}