/* ---------------------------

BASE TEMPLATE

--------------------------- */

a {
    box-shadow: 0 .2rem lightgreen;
    color: cornflowerblue;
    text-decoration: none;
}

a:hover {
    text-decoration: underline wavy orange;
}

a:visited {
    color: steelblue;
}

a.skiplink {
    background: white;
    padding: 1rem;
}

a.skiplink:not(:active):not(:focus) {
    background: none;
    height: 0;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 0;
}

body {
    background: url("/images/bgs/forest.png");
    font-family: "Verdana", sans-serif;
    margin-top: 0;
    margin-bottom: 0;
}

details {
    border-left: 0.5rem solid lightgray;
    padding-left: 0.5rem;
    margin-bottom: 0.5rem;
}

details summary {
    font-weight: bold;
}

h1 {
    color: darkslategrey;
    filter: drop-shadow(.2rem .2rem beige);
    margin-top: .5rem;
    width: 100%;
}

h2 {
    color: darkslategrey;
}

img {
    max-width: 100%;
}

table {
    width: 100%;
}

table, th, td {
    border: 1px solid black;
}

th {
    padding: .5rem;
    text-align: left;
}

td {
    padding: .5rem;
}

ul li {
    padding-bottom: 0.3rem;
}

ul li:last-child {
    padding-bottom: 0;
}

.visually-hidden:not(:focus):not(:active) {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/* ---------------------------

STRUCTURE

--------------------------- */

div.container {
    background-color: white;
    margin: auto;
    max-width: 60rem;
}

div#header {
    background: darkslategrey;
    padding-top: 1.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 1.5rem;
}

div#header a {
    box-shadow: none;
    color: white;
    font-size: 2rem;
    font-weight: bold;
    text-transform: uppercase;
}

div#header a:hover {
    text-decoration: underline lightgreen;
}

div.flex-wrapper {
    padding: 1rem;
}

@media all and (min-width: 800px) {
    div.flex-wrapper {
        column-gap: 2rem;
        display: flex;
    }
}

div#main-content {
    flex: 1;
}

div#sidebar {
    flex: 3;
}

div#footer {
    background: beige url("/images/rat-footer.png");
    background-position: 130% 35%;
    background-repeat: no-repeat;
    font-size: .8rem;
    padding-top: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 2rem;
    text-align: center;
}

div#footer p {
    padding-top: .5rem;
    padding-bottom: .5rem;
}

/* ---------------------------

NAV

--------------------------- */

nav ul {
    padding: 0;
}

nav li {
    border-top: 2px solid beige;
    list-style-type: none;
    padding: 0;
}

nav li:first-child {
    border-top: 5px solid beige;
}

nav li:last-child {
    border-bottom: 5px solid beige;
}

nav li.separator-below {
    border-bottom: 5px solid beige;
}

nav li a {
    box-shadow: none;
    display: block;
    /* font-weight: bold; */
    padding-top: .5rem;
    padding-bottom: .5rem;
    padding-right: .5rem;
    text-decoration: none;
}

nav li a:hover {
    background-color: aliceblue;
    text-decoration: none;
}

nav span.nav-emoji {
    display: inline-block;
    padding-right: .5rem;
}

/* ---------------------------

BUTTONS

--------------------------- */

div.buttons a {
    text-decoration: none;
    box-shadow: none;
}

/* ---------------------------

PROJECT/PAGE LIST

--------------------------- */

.project .status {
    color: white;
    float: right;
    padding: .2rem .5rem;
    text-transform: uppercase;
}

.project-list {
    margin-top: 1rem;
    margin-bottom: 2rem;
}

.project-list dd {
    margin-top: .2rem;
    margin-bottom: 1.5rem;
}

.project-list dd:last-child {
    margin-bottom: 0;
}

.project-list .status {
    display: inline-block;
    color: white;
    margin-left: .8rem;
    font-size: .8rem;
    padding: .2rem .5rem;
    text-transform: uppercase;
}

.status-active {
    background-color: green;
}

.status-complete {
    background-color: cornflowerblue;
}

.status-paused {
    background-color: orange;
}
