body {
    background: rgb(var(--color-background));
    color: rgb(var(--color-text));
    font-family: 'Source Code Pro';
}

:root {
    --color-accent: var(--color-default-teal);
}

* {
    box-sizing: border-box;
}

/* Link */

a {
    color: rgb(var(--color-text));
    text-decoration: underline;
    font-size: 14px;
}

a .link-text {
    text-decoration: underline; 
}

a:hover:not(disabled) {
    color: rgb(var(--color-text), .6);
}

a:active:not(disabled), a:focus:not(disabled){
    color: rgb(var(--color-accent), .2);
}

/* Text boxes and areas */

.anvil-text-box, .anvil-text-area, .form-control {
    color: rgb(var(--text-color));
    background: none;
    border: 1px solid rgba(var(--color-text), .5);
    border-radius: 0;
    box-shadow: none;
}

.anvil-text-box:focus, .anvil-text-area:focus, .form-control:focus {
    border: 1px solid rgb(var(--color-text));
    box-shadow: none;
    -webkit-box-shadow: none;
    /* -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(var(--color-text), 0.6); */
    /* box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(var(--color-text), 0.6); */
}

.anvil-text-box[disabled], .anvil-text-area[disabled], .form-control[disabled] {
    background: rgba(var(--color-text), .025);
    color: rgba(var(--color-text), .5);
    border: 1px solid rgba(var(--color-text), .2);
}

.anvil-text-box[disabled]::placeholder, .anvil-text-area[disabled]::placeholder, .form-control[disabled]::placeholder {
    color: rgba(var(--color-text), .3);
}

/* Buttons */

.btn, .btn-default, .file-loader > label { 
    color: rgba(var(--color-text));
    font-size: 14px;
    text-transform: uppercase;
    /* letter-spacing: 2px; */
    border: 1px solid rgba(var(--color-text), .5);
    border-radius: 0;
    background: none;
    text-shadow: none;
    box-shadow: none;
    -webkit-box-shadow: none;
    position: relative;
}

.file-loader {
    display: inline-block;
}

.file-loader > label {
    font-weight: normal;
}

.file-loader > label > i,
.btn > i {
    margin-right: 5px;
}

.file-loader > label.anvil-inlinable {
    padding: 6px 12px;
}

.btn:hover, .btn-default:hover {
    color: rgba(var(--color-text));
    border: 1px solid rgba(var(--color-text));
    background: none;
    outline: none;
    box-shadow: none;
    -webkit-box-shadow: none;
}

.file-loader:hover > label {
    border: 1px solid rgba(var(--color-text));
}

.btn:focus, .btn:active, .btn:active:focus, .btn:active:hover, .btn.active:focus, .btn.focus, .btn:active.focus, .btn.active.focus, .file-loader > label:active {
    box-shadow: none;
    -webkit-box-shadow: none;
    border-color: transparent;
    color: rgb(var(--color-background));
    background-color: rgb(var(--color-text));
    outline: none;
}

.btn[disabled], .btn[disabled]:hover, .btn[disabled]:focus, .file-loader.anvil-disabled > label, .file-loader.anvil-disabled > label:hover {
    opacity: 1;
    background: rgba(var(--color-text), .025);
    color: rgba(var(--color-text), .3);
    border: 1px solid rgba(var(--color-text), .2);
    box-shadow: none;
    -webkit-box-shadow: none;
}

/* Inputs */

input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus {
  outline: 0;
}

.checkbox input, .radio input {
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    border-radius: 1px;
    border: 1px solid rgb(var(--color-text));
}

.radio input {
    border-radius : 50%;
}

.checkbox input[disabled], .radio input[disabled] {
    border: 1px solid rgba(var(--color-text), .3);
}

input[disabled] ~ span {
    color: rgba(var(--color-text), .3);
    cursor: not-allowed;
}

.checkbox input:checked:before,
.radio input:checked:before {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    width: 100%;
}

.checkbox input:checked:before {
    font-family: "FontAwesome";
    content: "\f00c";
    font-size: 10px;
}

.radio input:checked:before {
    font-family: "FontAwesome";
    content: "\f111";
    font-size: 8px;
}

/* modal  */

.modal-content {
    background-color: rgb(var(--color-background));
    box-shadow: none;
    -webkit-box-shadow: none;
    border: 1px solid rgb(var(--color-text), .4);
    border-radius: 0;
}

.modal-dialog:focus {
  outline: none !important;
}

.modal-body {
    color: rgb(var(--color-text));
}

.close {
    color: rgb(var(--color-text));
    text-shadow: none;
    opacity: 1;
}

.close:hover, .close:focus  {
    color: rgba(var(--color-text), .5);
    opacity: 1;
}

.modal-footer, .modal-header {
    border-color: rgb(var(--color-text), .3);
}

/* table styling  */
/* .table-striped > tbody > tr:nth-of-type(odd) {
    background-color: rgba(var(--color-text), .1);
}
.table-striped > tbody > tr:nth-of-type(even) {
    background-color: rgba(var(--color-text), .025);
} */

.table-striped > tbody > tr {
    background: none !important;
}

.table > thead > tr > th, .table > tbody > tr > th, .table > tfoot > tr > th, .table > thead > tr > td, .table > tbody > tr > td, .table > tfoot > tr > td {
    border-top: 1px solid rgba(var(--color-text), .2);
}

.table > thead > tr > th {
    border-bottom: 2px solid rgba(var(--color-text), .2);
}