/*
 * JEWITCH — Tabula Rasa
 * Dark theme v2
 */

:root {
    --jw-bg: #111216;
    --jw-surface: #17171d;
    --jw-surface-raised: #1d1c23;

    --jw-text: #eee9df;
    --jw-text-soft: #c8c1ba;
    --jw-muted: #aaa2a3;

    --jw-plum: #b47aa3;
    --jw-plum-bright: #d39ac3;
    --jw-plum-dark: #754b69;

    --jw-gold: #c49a62;
    --jw-line: #55424f;
}


/* ---------- Base ---------- */

html,
body {
    background: var(--jw-bg);
    color: var(--jw-text);
}

body {
    font-weight: 400 !important;
}

p,
li,
.idno-content p {
    color: var(--jw-text);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--jw-text);
}


/* ---------- Links ---------- */

a {
    color: var(--jw-plum-bright);
}

a:hover,
a:focus,
p a:hover,
p a:focus {
    color: var(--jw-gold);
}


/* ---------- Header ---------- */

.navbar-fixed-top {
    background: var(--jw-bg);
    border-bottom: 2px solid var(--jw-plum-dark);
}

.navbar-default .navbar-brand {
    color: var(--jw-text);

    font-family:
        "Calisto MT",
        "Bookman Old Style",
        Bookman,
        "Goudy Old Style",
        Garamond,
        Georgia,
        serif;

    font-weight: 600;
}

.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
    color: var(--jw-gold);
}

.navbar-default .navbar-nav > li > a {
    color: var(--jw-text);
}

.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
    color: var(--jw-plum-bright);
}


/* ---------- Search ---------- */

.navbar-form .form-control.search-query {
    background: var(--jw-surface);
    border: 1px solid #716a72;
    color: var(--jw-text);
    box-shadow: none;
}

.navbar-form .form-control.search-query::placeholder {
    color: var(--jw-muted);
}


/* ---------- Dropdowns ---------- */

.dropdown-menu {
    background: var(--jw-surface-raised);
    border-color: var(--jw-line);
}

.dropdown-menu > li > a {
    color: var(--jw-text);
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
    background: var(--jw-plum-dark);
    color: #fff;
}


/* ---------- Publishing circles ---------- */

a.contentTypeButton {
    background: transparent;
    border: 2px solid var(--jw-plum);
    color: var(--jw-text);

    transition:
        background-color 150ms ease,
        border-color 150ms ease,
        color 150ms ease,
        transform 150ms ease;
}

a.contentTypeButton i,
a.contentTypeButton span {
    color: var(--jw-text);
}

a.contentTypeButton:hover,
a.contentTypeButton:focus {
    background: var(--jw-plum-dark);
    border-color: var(--jw-plum-bright);
    color: #fff;
    transform: translateY(-2px);
}

a.contentTypeButton:hover i,
a.contentTypeButton:focus i,
a.contentTypeButton:hover span,
a.contentTypeButton:focus span {
    color: #fff;
}


/* ---------- Content ---------- */

.idno-content,
.idno-object,
.idno-entry,
.well,
.hero-unit {
    background: transparent;
    color: var(--jw-text);
    box-shadow: none;
}

.idno-entry h2,
.idno-entry h2 a,
h2.p-name,
h2.p-name a,
h2.photo-title,
h2.photo-title a,
h2.idno-bookmark,
h2.idno-bookmark a {
    color: var(--jw-text);

    font-family:
        "Calisto MT",
        "Bookman Old Style",
        Bookman,
        "Goudy Old Style",
        Garamond,
        Georgia,
        serif;

    font-weight: 500;
}

.idno-entry h2 a:hover,
h2.p-name a:hover,
h2.photo-title a:hover,
h2.idno-bookmark a:hover {
    color: var(--jw-gold);
}


/* ---------- Post metadata ---------- */

.idno-object .footer {
    border-top: 1px solid var(--jw-line);
    color: var(--jw-text-soft);
}

.idno-object .footer p {
    color: var(--jw-text-soft);
}

.idno-object .footer a {
    color: var(--jw-plum-bright);
}

.idno-object .footer a:hover,
.idno-object .footer a:focus {
    color: var(--jw-gold);
}


/* ---------- Status posts ---------- */

.idno-statusupdates .idno-body p {
    color: var(--jw-text);
}


/* ---------- Blockquotes ---------- */

blockquote {
    border-left: 3px solid var(--jw-gold);
    color: var(--jw-text-soft);
}

.idno-body blockquote,
.idno-body blockquote p {
    color: var(--jw-text-soft);
}


/* ---------- Forms ---------- */

textarea,
select,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"] {
    background: var(--jw-surface);
    border-color: #716a72;
    color: var(--jw-text);
}


/* ---------- Buttons ---------- */

.btn-primary,
.btn-save,
.btn-signin {
    background: transparent;
    border: 2px solid var(--jw-plum);
    color: var(--jw-text);
    text-shadow: none;
    box-shadow: none;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-save:hover,
.btn-save:focus,
.btn-save:active,
.btn-signin:hover,
.btn-signin:focus,
.btn-signin:active {
    background: var(--jw-plum-dark);
    border-color: var(--jw-plum-bright);
    color: #fff;
}


/* ---------- Pager ---------- */

.pager li > a,
.pager li > span {
    background: transparent;
    border-color: var(--jw-plum);
    color: var(--jw-text);
}

.pager li > a:hover,
.pager li > a:focus {
    background: var(--jw-plum-dark);
    border-color: var(--jw-plum-bright);
    color: #fff;
}


/* ---------- Selection / keyboard accessibility ---------- */

::selection {
    background: var(--jw-plum-dark);
    color: #fff;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
    outline: 3px solid var(--jw-gold);
    outline-offset: 3px;
}


/* ---------- Spacing ---------- */

.idno-object {
    margin-bottom: 3rem;
}
/*
 * JEWITCH — Dark composer / editor patch
 */


/* Main editor and form surfaces */

form,
.form-horizontal,
.control-group,
.controls,
.idno-create,
.idno-create-content,
.idno-body,
.idno-content,
.well,
.hero-unit {
    color: var(--jw-text);
}


/* Common Bootstrap/Idno white panels */

.modal,
.modal-body,
.modal-header,
.modal-footer,
.popover,
.dropdown-menu {
    background-color: var(--jw-surface);
    color: var(--jw-text);
    border-color: var(--jw-line);
}


/* Form fields */

textarea,
select,
input,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
.uneditable-input {
    background-color: var(--jw-surface) !important;
    color: var(--jw-text) !important;
    border-color: #716a72 !important;
    box-shadow: none !important;
}


/* Placeholder text, still readable */

input::placeholder,
textarea::placeholder {
    color: var(--jw-muted) !important;
    opacity: 1;
}


/* Labels and form help */

label,
.help-block,
.help-inline,
.help-text,
.description,
small {
    color: var(--jw-text-soft);
}


/* Input addons */

.input-prepend .add-on,
.input-append .add-on {
    background-color: var(--jw-surface-raised);
    color: var(--jw-text);
    border-color: #716a72;
}


/* Tabs used by some publishing interfaces */

.nav-tabs {
    border-bottom-color: var(--jw-line);
}

.nav-tabs > li > a {
    color: var(--jw-text-soft);
}

.nav-tabs > li > a:hover,
.nav-tabs > li > a:focus {
    background-color: var(--jw-surface-raised);
    border-color: var(--jw-line);
    color: var(--jw-text);
}

.nav-tabs > .active > a,
.nav-tabs > .active > a:hover,
.nav-tabs > .active > a:focus {
    background-color: var(--jw-surface);
    border-color: var(--jw-line);
    color: var(--jw-plum-bright);
}


/* Cancel / secondary buttons */

.btn-cancel,
.btn-default {
    background-color: transparent;
    color: var(--jw-text-soft);
    border-color: #716a72;
    text-shadow: none;
    box-shadow: none;
}

.btn-cancel:hover,
.btn-cancel:focus,
.btn-default:hover,
.btn-default:focus {
    background-color: var(--jw-surface-raised);
    color: var(--jw-text);
    border-color: var(--jw-plum);
}


/* Horizontal separators */

hr {
    border-color: var(--jw-line);
}


/* Tables, useful for some editor/config interfaces */

table,
.table {
    color: var(--jw-text);
}

.table th,
.table td {
    border-color: var(--jw-line);
}


/* Make native browser controls cooperate with dark mode */

html {
    color-scheme: dark;
}