:root {
    --bg: #17151a;
    --text: #ddd6cb;
    --heading: #f3ece1;
    --muted: #9a9188;
    --accent: #e0a458;
    --field: #221f26;
    --rule: #2e2a31;
}

html, body {
    background: var(--bg) !important;
    color: var(--text) !important;
    font-family: 'Newsreader', Georgia, serif !important;
    font-size: 1.1rem;
    line-height: 1.6;
    margin: 0;
}
h1 { display: none !important; }
h1, h2, h3, h4 {
    color: var(--heading) !important;
    font-weight: 600;
}

a { color: var(--accent) !important; }

/* Form */
input, textarea, select {
    background: var(--field) !important;
    color: var(--text) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 0 !important;
    font-family: inherit !important;
    font-size: 1rem !important;
    padding: 0.5em 0.6em !important;
    width: 100%;
    box-sizing: border-box;
}
input:focus, textarea:focus {
    outline: none;
    border-color: var(--accent) !important;
}
::placeholder { color: var(--muted); }

button, input[type="submit"] {
    width: auto;
    background: transparent !important;
    color: var(--accent) !important;
    border: 1px solid var(--accent) !important;
    padding: 0.4em 1em !important;
    cursor: pointer;
}
button:hover, input[type="submit"]:hover {
    background: var(--accent) !important;
    color: var(--bg) !important;
}

/* Entries */
time, small, .date, .timestamp { color: var(--muted) !important; font-style: italic; }
hr { border: 0; border-top: 1px solid var(--rule); }

input[type="checkbox"],
input[type="radio"] {
    width: auto !important;
    padding: 0 !important;
    margin: 0 0.5em 0 0 !important;
    vertical-align: middle;
    accent-color: var(--accent);
}

label:has(input[type="checkbox"]),
label:has(input[type="radio"]) {
    display: inline-flex;
    align-items: center;
}