:root {
        --crust: #292626;
        --mantle: #392d2e;
        --surface: #5E3B34;
        --outline: #a75841;

        --text: #d1c8c2;
        --subtext: #cea292;

        --accent-bright: #fb5346;
        --accent-muted: #d08a6a;

        --body-font: 'NeverMind Rounded'; /* declare fonts properly */
        --border-style: 2px solid var(--outline);

        /* film status colors */
        --expired: #913434;
        --unknown: #837e7b;

        --loaded: #f1c944;
        --shot: #fba646;
        --developed: #50f55d;
    }

@font-face {
    font-family: 'NeverMind Rounded';
    src: url(../fonts/NeverMindRounded-Medium.ttf);
    font-weight: normal;
}
@font-face {
    font-family: 'NeverMind Rounded';
    src: url(../fonts/NeverMindRounded-MediumItalic.ttf);
    font-weight: normal;
    font-style: italic;
}
@font-face {
    font-family: 'NeverMind Rounded';
    src: url(../fonts/NeverMindRounded-Bold.ttf);
    font-weight: bold;
}
@font-face {
    font-family: 'NeverMind Rounded';
    src: url(../fonts/NeverMindRounded-BoldItalic.ttf);
    font-weight: bold;
    font-style: italic;
}

body {
    background: var(--crust);
    color: var(--text);
    font-weight: 500;
}

h1 {
    color: var(--accent-bright);
}
h2 {
    color: var(--accent-muted);
}


a, a:visited {
    color: var(--subtext);
    font-weight: 700;
    text-decoration: none;
}

a.link-button, a.link-button:visited {
    background: var(--mantle);
    border-radius: 1rem;
    font-weight: 700;
    color: var(--text);
}

p.subheading {
    font-style: italic;
    color: var(--subtext);
}

p.tips {
    color: var(--subtext);
}

code {
    color: var(--subtext);
    background: var(--crust);
    padding: 0.1rem 0.25rem;
    border-radius: 0.25rem;
}
pre {
    background: var(--crust);
    padding: 0.25rem;
}

/* Lists */
li::marker {
    color: var(--accent-bright);
}
ul {
    ul {
        list-style-type: disc;
    }
    ul li::marker {
        color: var(--accent-muted);
    }
}

ol li {
    padding-bottom: 0.5rem;
}

/* Forms */

fieldset {
    border-radius: 1rem;
    background: var(--mantle);
}
fieldset legend {
    font-weight: 700;
}

input, textarea, button {
    background: var(--surface);
    color: var(--text);
    border: var(--border-style);
    border-radius: 1rem;
    padding: 0.25rem 0.25rem 0.25rem 0.75rem;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}
input::placeholder {
    color: var(--subtext);
    font-style: italic;
}


textarea {
    margin-top: 0.25rem;
}

button {
    background: var(--mantle);
    font-weight: 700;
    padding: 0.5rem 0.75rem;
    width: fit-content;
    align-self: center;
}

select {
    background: var(--surface);
    color: var(--text);
    border: var(--border-style);
    border-radius: 1rem;
    padding: 0.25rem 0.5rem;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

input {
    accent-color: var(--accent-bright);
}

/* Edit Film Form */
#edit-film-form-box {
    border-radius: 1rem;
}

/* Tables */

table#films th:not(:first-of-type), table:not(#films) th {
    background: var(--mantle);
}

td:not(.status, .expired, .unknown) {
    background: var(--surface);
}

/* Table Rounding */

/* Films Table specifically */
table#films tr:first-child th:nth-child(2) { border-top-left-radius: 1rem; }
table#films tr:last-child td:nth-child(2) { border-bottom-left-radius: 1rem; }

/* All/Other Tables */
table:not(#films) tr:first-child th:first-child { border-top-left-radius: 1rem; }
table tr:first-child th:last-child { border-top-right-radius: 1rem; }
table:not(#films) tr:last-child td:first-child { border-bottom-left-radius: 1rem; }
table tr:last-child td:last-child { border-bottom-right-radius: 1rem; }

/* Camera Page */
img.camera-icon {
    filter: brightness(0) saturate(100%) invert(63%) sepia(11%) saturate(1637%) hue-rotate(334deg) brightness(94%) contrast(87%);
}

/* Messages */
div.message {
    background: var(--mantle);
    border-radius: 1rem;
}