/* The directory owns its open cards and controls in each site palette. */
:root {
  --directory-ink: #e5edf5;
  --directory-muted: #aeb9c7;
  --directory-mark-bg: #151c26;
  --directory-control-bg: #090d13;
  --directory-control-line: #414b57;
  --directory-focus: #a5dfff;
  --directory-edge: #e5edf5;
  --directory-edge-end: #e5edf5;
  --directory-edge-opacity: .62;
  --directory-edge-blur: 3px;
  --directory-edge-spread: 8px;
  --directory-wash: rgba(118,161,201,.105);
  --directory-halo-rest: 0 0 22px 6px rgba(160,180,198,.10), 0 0 42px 12px rgba(106,133,157,.07);
  --directory-halo-active: 0 0 22px 8px rgba(191,211,227,.32), 0 0 48px 16px rgba(132,164,187,.20);
  --directory-text-shade: 0 2px 3px #030609, 0 0 8px rgba(4,7,10,.9);
  --directory-text-glow: 0 0 10px rgba(199,224,243,.45), 0 0 22px rgba(144,186,214,.28);
}

html[data-colour-scheme="white-teal"] {
  --directory-ink: #0a1110;
  --directory-muted: #142522;
  --directory-mark-bg: #e1f3ed;
  --directory-control-bg: #f1faf7;
  --directory-control-line: #729b92;
  --directory-focus: #006d68;
  --directory-edge: #006d68;
  --directory-edge-end: #209d8c;
  --directory-edge-opacity: .8;
  --directory-edge-blur: .5px;
  --directory-edge-spread: 1px;
  --directory-wash: rgba(248,255,252,.34);
  --directory-halo-rest: 0 0 20px 5px rgba(0,109,104,.12);
  --directory-halo-active: 0 0 24px 7px rgba(0,109,104,.28), 0 0 42px 10px rgba(53,215,199,.22);
  --directory-text-shade: none;
  --directory-text-glow: 0 0 12px rgba(0,109,104,.22);
}

html[data-colour-scheme="atomic"] {
  --directory-ink: #182b28;
  --directory-muted: #162a23;
  --directory-mark-bg: #d5e8df;
  --directory-control-bg: #fff9e9;
  --directory-control-line: #85998c;
  --directory-focus: #07535b;
  --directory-edge: #07535b;
  --directory-edge-end: #bd9235;
  --directory-edge-opacity: .85;
  --directory-edge-blur: .5px;
  --directory-edge-spread: 1px;
  --directory-wash: rgba(255,249,233,.36);
  --directory-halo-rest: 0 0 22px 5px rgba(7,83,91,.12);
  --directory-halo-active: 0 0 24px 7px rgba(7,83,91,.24), 0 0 38px 10px rgba(214,96,73,.18);
  --directory-text-shade: none;
  --directory-text-glow: 0 0 12px rgba(214,96,73,.24);
}
html[data-colour-scheme="atomic"] :is(.witness-directory-card,.events-index-card):nth-child(3n+2) {
  --directory-edge: #b54b37;
  --directory-edge-end: #07535b;
}
html[data-colour-scheme="atomic"] :is(.witness-directory-card,.events-index-card):nth-child(3n) {
  --directory-edge: #987021;
  --directory-edge-end: #b54b37;
}

html[data-colour-scheme="cybergoth"] {
  --directory-ink: #f0f2f4;
  --directory-muted: #ccd4de;
  --directory-mark-bg: #171c24;
  --directory-control-bg: #161b23;
  --directory-control-line: #778594;
  --directory-focus: #83eaff;
  --directory-edge: #ff5674;
  --directory-edge-end: #50b9ff;
  --directory-wash: rgba(255,86,116,.09);
  --directory-halo-rest: 0 0 22px 5px rgba(80,185,255,.15), 0 0 38px 10px rgba(255,86,116,.09);
  --directory-halo-active: 0 0 22px 7px rgba(131,255,167,.36), 0 0 44px 14px rgba(80,185,255,.28);
  --directory-text-shade: 0 2px 5px #08090b;
  --directory-text-glow: 0 0 12px rgba(131,255,167,.52), 0 0 23px rgba(80,185,255,.3);
}
html[data-colour-scheme="cybergoth"] :is(.witness-directory-card,.events-index-card):nth-child(3n+2) {
  --directory-edge: #83ffa7;
  --directory-edge-end: #ff5674;
  --directory-wash: rgba(131,255,167,.08);
}
html[data-colour-scheme="cybergoth"] :is(.witness-directory-card,.events-index-card):nth-child(3n) {
  --directory-edge: #50b9ff;
  --directory-edge-end: #83ffa7;
  --directory-wash: rgba(80,185,255,.1);
}
html[data-colour-scheme="cybergoth"] :is(.witness-directory-card,.events-index-card):hover {
  --directory-edge-opacity: .95;
}

:is(.directory-panel,.directory-reader,.events-index-page) {
  color: var(--directory-ink);
}
:is(.directory-panel .witness-directory-card,.events-index-card)::before {
  background: radial-gradient(ellipse 8.5rem 3.4rem at 8.5rem 3.4rem, var(--directory-wash), transparent);
}
:is(.directory-panel .witness-directory-card,.events-index-card)::after {
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(to bottom, transparent, var(--directory-edge) 28%, var(--directory-edge)) left bottom / 1px 100% no-repeat,
    linear-gradient(to right, var(--directory-edge), var(--directory-edge-end) 58%, transparent) left bottom / 100% 1px no-repeat;
  filter: drop-shadow(0 0 var(--directory-edge-blur) var(--directory-edge)) drop-shadow(0 0 var(--directory-edge-spread) var(--directory-edge-end));
  opacity: var(--directory-edge-opacity);
  content: "";
  pointer-events: none;
}
html[data-colour-scheme] .directory-panel :is(.card__name,.organisation-card__name,.witness-directory-card h2),
.directory-reader-card__name,
.events-index-card__title {
  color: var(--directory-ink) !important;
}
html[data-colour-scheme] .directory-panel :is(.card__title,.witness-directory-role,.witness-directory-members,.organisations-index__note),
.directory-reader-card__role,
.events-index-card__meta {
  color: var(--directory-muted) !important;
}
.directory-header :is(input,select),.events-index-page :is(input,select),.directory-reader__back {
  color: var(--directory-ink);
  background-color: var(--directory-control-bg);
  border-color: var(--directory-control-line);
}
.directory-header :is(input,select)::placeholder,.events-index-page input::placeholder {
  color: var(--directory-muted);
  opacity: .85;
}
.directory-header select option,.events-index-page select option {
  background: var(--directory-control-bg);
  color: var(--directory-ink);
}
.directory-header select,.events-index-page select {
  appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--directory-muted) 50%),
    linear-gradient(135deg, var(--directory-muted) 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-inline-end: 2.1rem;
}
.directory-header :is(input,select):focus-visible,.events-index-page :is(input,select):focus-visible {
  outline: 2px solid var(--directory-focus);
  outline-offset: 3px;
}
.directory-header :is(label,.results-count),.directory-header .directory-control__label,
.events-index-field__label,.events-index-page .results-count {
  color: var(--directory-muted);
}
.directory-tab { color: var(--directory-muted); text-align: center; }
.directory-tab:is(:hover,:focus-visible,[aria-selected="true"]) { color: var(--directory-ink); }
.directory-reader__back:hover { background: var(--directory-mark-bg); }
.directory-reader__status,.directory-reader-opening { color: var(--directory-muted); }
.directory-reader__status a,.directory-reader-opening a { color: var(--directory-focus); }
.directory-reader-card__mark,.directory-panel #cardsGrid .avatar--initials,.directory-panel .organisation-card__mark {
  background: var(--directory-mark-bg) !important;
  color: var(--directory-ink) !important;
}
.directory-reader-card--public-record .directory-reader-card__mark,
.directory-reader-card--timeline-events .directory-reader-card__mark { display: none; }
.directory-reader-card:is(.directory-reader-card--public-record,.directory-reader-card--timeline-events) {
  align-items: stretch;
  padding: 1.25rem;
  text-align: start;
}
.directory-reader__back:focus-visible,.directory-related-card:focus-visible,
.events-index-card:focus-visible,.directory-tab:focus-visible {
  outline: 2px solid var(--directory-focus);
  outline-offset: 4px;
}
