/* Black mourning dress. Loaded after style.css; delete this file and its
   enqueue line in inc/include-css.php to revert. */
html:root {
    --brand: #f2f2f2;
    --brand-600: #d9d9d9;
    --brand-700: #bdbdbd;
    --brand-300: #8a8a8a;
    --brand-100: #1a1a1a;
    --brand-050: #101010;
    --accent: #cfcfcf;
    --accent-600: #ffffff;
    --ink: #f1f1f1;
    --muted: #a3a3a3;
    --line: #2b2b2b;
    --surface: #0c0c0c;
    --bg: #000;
    --shadow-sm: 0 0 0 1px #222;
    --shadow: 0 0 0 1px #262626;
    --shadow-lg: 0 0 0 1px #3a3a3a;
    --brand-gradient: linear-gradient(135deg, #1b1b1b 0%, #0b0b0b 100%);
}
html, body { background: #000 !important; color: var(--ink); color-scheme: dark; }
::selection { background: #fff; color: #000; }

/* photographs and photo backgrounds go to black and white, a little darker */
img, .tantalizer .img, .course-media, [style*="background-image"] { filter: grayscale(1) brightness(.85) contrast(1.05); }
#welcome-banner, #course-header { filter: grayscale(1); }
#tantalizers::before { background: linear-gradient(180deg, rgba(0,0,0,.9), rgba(0,0,0,.96)); }
#welcome-banner::after { background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.85)); }
.darkener { background: linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.8) 100%); }
#course-header #filter { background: linear-gradient(0deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.4) 60%, transparent 100%); }
.course-media::after { background: linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.6) 100%); }

/* header, footer: black with a hairline */
header { background: #000 !important; border-bottom: 1px solid #333; }
header nav ul li a { color: #d8d8d8; }
header nav ul li a:hover, header nav ul li.current-menu-item a { color: #000; background: #fff; }
.nav-toggle { background: #1a1a1a; color: #fff; border: 1px solid #444; }
footer { background: #000 !important; border-top: 1px solid #333; color: #cfcfcf; }
.footer-bottom { border-top-color: #2b2b2b; color: #8a8a8a; }
.footer-social a { background: #1a1a1a; border: 1px solid #333; }
.footer-social a:hover { background: #fff; color: #000; }

/* hero box, cards, panels */
#welcome-banner .text { background: rgba(0,0,0,.78); border: 1px solid #3a3a3a; }
.tantalizer-left, .tantalizer-right { background: #0c0c0c; border: 1px solid #2b2b2b; }
.tantalizer-right { background: #151515; }
.tantalizer-right h2, .tantalizer-right p { color: #f1f1f1 !important; }

/* buttons: white outline on black, invert on hover */
.button, .apply, #course-header .text .apply, form input[type="submit"], .apply-submit-btn {
    background: #000 !important; background-image: none !important;
    color: #fff !important; border: 1px solid #fff; box-shadow: none;
}
.button:hover, .apply:hover, form input[type="submit"]:hover, .apply-submit-btn:hover,
.button-ghost:hover { background: #fff !important; color: #000 !important; box-shadow: none; filter: none; }
.button-ghost { background: transparent; color: #fff; border-color: #fff; }

/* accents that were purple/orange gradients become white rules */
.text-banner h2::after, .course-group-head h2::before, .duweb-person::before { background: #fff; }
.duweb-person-monogram, .course-media-blank, .apply-course-card, #course-header { background-image: none; background-color: #141414; }
.apply-course-card { border: 1px solid #333; }
.apply-status { background: #222; color: #fff; }

/* forms and notices */
input, select, textarea { background: #0c0c0c; color: #f1f1f1; border-color: #3a3a3a; }
.checkmark { background: #0c0c0c; border-color: #555; }
.apply-choice-opt:has(input:checked), .apply-total, .apply-robot-left { background: #141414; color: #f1f1f1; }
.success, .apply-result-ok { background: #0d1a12; border-color: #1e3a2a; color: #8fd4a8; }
.apply-result p { color: #8fd4a8; }
.error { background: #1e0d0d; border-color: #4a1d1d; color: #f0a3a3; }
.duweb-enroll-banner { background: #1e0d0d; border-color: #8a2a24; color: #f0b3b0; }
.badge-almost, .apply.almost-button, .apply-status-almost { background: #3a3a3a !important; color: #fff !important; }
.badge-soon { background: #2b2b2b; }
a { color: #fff; }

/* status colours go grey; form errors keep a muted red so they stay noticeable */
html:root { --ok: #e6e6e6; --warn: #9c9c9c; }
.capacity-bar > span, .course-full .capacity-bar > span { background: #e6e6e6; }
.course-almost .capacity-bar > span { background: #9c9c9c; }
.course-full .capacity-bar > span { background: #5c5c5c; }
.badge-free, .apply-status-free, #course-header .text .apply { background: #000; color: #fff; }
.badge-full, .apply-status-full, #course-header .text .full-button { background: #333 !important; color: #ddd !important; border-color: #555; }
.badge-free, .badge-almost, .badge-full, .badge-soon, .badge-followup { border: 1px solid #555; }
