.directory-shell {
  --directory-ink: #eef1df;
  --directory-muted: #c4d4c5;
  --directory-accent: #f1c77f;
  --directory-line: #69877a;
  color: var(--directory-ink);
  background:
    linear-gradient(120deg, rgba(10, 31, 33, .97), rgba(20, 49, 45, .93)),
    url('assets/istrazivacki-grad.png') center / cover;
  border: 1px solid #54766b;
  overflow: hidden;
}

html.scene-mode #app > header.wrap,
html.scene-mode #app > .nav-shell { display: none; }
html.scene-mode #main.wrap { max-width: none; width: 100%; padding: 0 1rem; }
.directory-shell .chronicle { color: #eef1df; }
.directory-shell .chronicle-results-head,
.directory-shell .chronicle-date,
.directory-shell .chronicle-note,
.directory-shell .chronicle-body .chronicle-date-note { color: #c4d4c5; }
.directory-shell .chronicle-date strong,
.directory-shell .chronicle-case { color: #f1c77f; }
.directory-shell .chronicle-sources,
.directory-shell .chronicle-empty { color: #1e302c; }
.directory-shell .signals-intro { display: none; }
.directory-shell .signals-filter-head,
.directory-shell .signals-results-head { color: #eef1df; }
.directory-shell .signals-filter-head span,
.directory-shell .signals-results-head span,
.directory-shell .signals-filter-head p,
.directory-shell .signals-results-head p,
.directory-shell .signals-pages span,
.directory-shell .signals-footnote { color: #c4d4c5; }
.directory-shell .signals-card,
.directory-shell .signals-caution,
.directory-shell .signals-empty { color: #233632; }
.directory-shell .signals-sources a { color: #245a43; }
.directory-shell .network-heading { display:none; }
.directory-shell .network-scene { color:#eef1df; padding:0; }
.directory-shell .network-note,.directory-shell .network-footnote,
.directory-shell .network-list-heading p,.directory-shell .network-result-count { color:#c4d4c5; }
.directory-shell .network-list-heading span { color:#f1c77f; }
.directory-shell .network-detail,.directory-shell .network-row,.directory-shell .network-empty { color:#252522; }
.directory-shell .network-detail a { color:#285a43; }
.directory-shell .source-scene { color:#eef1df; }
.directory-shell .source-scene-summary span,.directory-shell .source-scene-summary small,
.directory-shell .source-scene-summary p,.directory-shell .source-scene-scope { color:#c4d4c5; }
.directory-shell .source-scene-card,.directory-shell .source-scene-empty { color:#203b31; }
.directory-shell .source-scene-card a { color:#1f4936; }
.directory-shell .research-board { color:#eef1df; padding:0 0 3rem; }
.directory-shell .research-board-intro { display:none; }
.directory-shell .research-board-heading span,.directory-shell .research-board-results span,
.directory-shell .research-board-heading p,.directory-shell .research-board-results p,
.directory-shell .research-board-steps small { color:#c4d4c5; }
.directory-shell .research-board-card,.directory-shell .research-board-caution,
.directory-shell .research-board-note,.directory-shell .research-board-empty { color:#202d2b; }

.directory-shell *, .directory-shell *::before, .directory-shell *::after {
  box-sizing: border-box;
}

.directory-shell a { color: inherit; }
.directory-shell button, .directory-shell input, .directory-shell select { font: inherit; }
.directory-shell button, .directory-shell select, .directory-shell summary { cursor: pointer; }
.directory-shell :focus-visible { outline: 3px solid #ffda91; outline-offset: 3px; }
.directory-shell .scope-badge { color:#d9e8d8; font-size:.78rem; line-height:1.5; }
.directory-shell .field-search { margin:0; background:#23433e; border:1px solid #8ba99a; }
.directory-shell .cases-scene-top { border-color:#789786; }
.directory-shell .cases-scene-top h2,.directory-shell .cases-scene-top p,.directory-shell .cases-scene-count,.directory-shell .cases-scene-note { color:#e1eddd; }
.directory-shell .cases-file { color:#173a34; }
.directory-shell .results-count { color:#d9e8d8; margin-top:1rem; }
.directory-shell .media-lens { margin:0; background:transparent; border:0; padding:0; }
.directory-shell .media-lens>header { display:none; }

.directory-shell-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1rem clamp(1rem, 3vw, 2.5rem);
  background: #142d2f;
  border-bottom: 1px solid #54766b;
}

.directory-shell-head .scene-brand { text-decoration:none;color:#fff;font:900 2rem/1 'Source Serif 4',Georgia,serif;letter-spacing:-.07em;white-space:nowrap; }
.directory-shell-head .scene-brand b { color:#bd322d; }
.directory-shell-nav {
  display: flex;
  flex-wrap: wrap;
  gap: .35rem;
  align-items: center;
}
.directory-shell-nav a {
  padding: .55rem .7rem;
  color: #d2e2d3;
  font-size: .8rem;
  font-weight: 700;
  text-decoration: none;
  border-radius: 3px;
}
.directory-shell-nav a:hover, .directory-shell-nav a[aria-current="page"] {
  color: #152e2b;
  background: #d4e9ce;
}
.directory-shell-nav button { color:#f1c77f; white-space:nowrap; font-weight:800; padding:.45rem .65rem; border:1px solid #789786; }

.directory-shell-body { padding: clamp(1rem, 3vw, 2.5rem); }
.directory-shell-intro {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
  margin-bottom: 1.4rem;
}
.directory-shell-intro h1 {
  max-width: 20ch;
  margin: .35rem 0 .55rem;
  color: var(--directory-ink);
  font: 800 clamp(2rem, 4vw, 3.7rem)/1.02 system-ui, sans-serif;
  letter-spacing: -.04em;
}
.directory-shell-intro p { max-width: 66ch; margin: 0; color: var(--directory-muted); line-height: 1.5; }
.directory-shell-kicker { color: #b2d9b9; font-size: .7rem; font-weight: 800; letter-spacing: .12em; }

.directory-controls {
  display: grid;
  grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(150px, 1fr));
  gap: .75rem;
  padding: 1rem;
  background: #102b2be8;
  border: 1px solid var(--directory-line);
  border-top: 3px solid var(--directory-accent);
}
.directory-control { display: grid; align-content: start; gap: .4rem; min-width: 0; }
.directory-control > span, .directory-control > label, .directory-control-label {
  color: #d2e4d2;
  font-size: .73rem;
  font-weight: 700;
  line-height: 1.3;
}
.directory-control input, .directory-control select,
.directory-controls input, .directory-controls select {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: .65rem .75rem;
  color: #f2f3e5;
  background: #23433e;
  border: 1px solid #8ba99a;
  border-radius: 3px;
}
.directory-control input::placeholder, .directory-controls input::placeholder { color: #ccdbca; opacity: 1; }
.directory-control select option, .directory-controls select option { color: #172f2b; background: #f6f6e9; }
.directory-control input:hover, .directory-control select:hover { border-color: #f1c77f; }
.directory-controls button, .directory-shell .directory-reset {
  min-height: 44px;
  padding: .6rem .8rem;
  color: #f5e0ae;
  background: #23433e;
  border: 1px solid #8ba99a;
  border-radius: 3px;
  font-weight: 700;
}
.directory-controls button:hover, .directory-shell .directory-reset:hover { background: #365c50; border-color: #f1c77f; }

.directory-results-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: .5rem 1rem;
  margin: 1.25rem 0 .75rem;
  padding-bottom: .7rem;
  color: #d3e3d2;
  border-bottom: 1px solid var(--directory-line);
  font-size: .8rem;
}
.directory-results-bar strong { color: #f2d495; font-size: 1rem; }
.directory-shell .directory-scene { margin: 0; padding: 0; color: inherit; background: none; border: 0; }
.directory-shell .directory-scene-heading { display: none; }
.directory-shell .directory-scene-context { margin: 0 0 .75rem; padding: .65rem 0; border-top: 0; color: #d3e3d2; }
.directory-shell .directory-board {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: .7rem;
}
.directory-shell .directory-board::before { display: none; }
.directory-shell .directory-unit {
  min-width: 0;
  color: var(--directory-ink);
  background: #173633f2;
  border: 1px solid #698a7a;
  box-shadow: none;
  animation: none;
  transition: border-color .15s, background-color .15s;
}
.directory-shell .directory-unit:hover, .directory-shell .directory-unit:focus-within {
  background: #23463e;
  border-color: #f1c77f;
  transform: none;
}
.directory-shell .directory-unit-link {
  display: flex;
  align-items: center;
  gap: .8rem;
  min-height: 100px;
  padding: .85rem;
  text-decoration: none;
}
.directory-shell .directory-emblem {
  display: grid;
  flex: 0 0 62px;
  width: 62px;
  height: 62px;
  overflow: hidden;
  place-items: center;
  color: #f0f4e4;
  background: #41655a;
  border: 1px solid #b3d4b8;
}
.directory-shell .directory-emblem.person { border-radius: 50%; font-size: 1.05rem; }
.directory-shell .directory-emblem img { width: 100%; height: 100%; object-fit: cover; }
.directory-shell .directory-unit-copy { display: grid; gap: .25rem; min-width: 0; }
.directory-shell .directory-unit-copy small { color: #b9dabb; font-size: .65rem; letter-spacing: .08em; }
.directory-shell .directory-unit-copy strong { color: #f3f3e3; font-size: 1rem; line-height: 1.2; overflow-wrap: anywhere; }
.directory-shell .directory-unit-copy > span { color: #d1ded0; font-size: .78rem; line-height: 1.35; white-space: normal; }
.directory-shell .directory-unit-open { margin-left: auto; color: #f1c77f; font-size: 1.2rem; }
.directory-shell .directory-unit-context { padding: .65rem .85rem; border-top: 1px solid #54766b; }
.directory-shell .directory-unit-context summary { color: #f4d89f; font-size: .7rem; font-weight: 800; letter-spacing: .06em; }
.directory-shell .directory-unit-context p, .directory-shell .directory-unit-context li { color: #d8e5d6; font-size: .78rem; line-height: 1.5; }
.directory-shell .directory-unit-context a { color: #d1eed2; text-decoration: underline; }
.directory-shell .directory-empty { grid-column: 1 / -1; padding: 1.3rem; color: #eff1df; border: 1px dashed #a8c5ae; }
.directory-shell .directory-empty span, .directory-shell .directory-scene-note { color: #cfdfce; line-height: 1.5; }
.directory-shell .directory-scene-note { margin: 1rem 0 0; font-size: .75rem; }

.directory-shell .directory-pagination, .directory-shell .live-pagination {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.25rem;
  padding-top: 1rem;
  color: #d7e5d4;
  border-top: 1px solid var(--directory-line);
  font-size: .8rem;
}
.directory-shell .directory-pagination button, .directory-shell .live-pagination button {
  min-height: 44px;
  padding: .6rem .8rem;
  color: #17332f;
  background: #d6e8d0;
  border: 1px solid #d6e8d0;
  border-radius: 3px;
  font-weight: 700;
}
.directory-shell .directory-pagination button:hover:not(:disabled), .directory-shell .live-pagination button:hover:not(:disabled) { background: #f1c77f; border-color: #f1c77f; }
.directory-shell .directory-pagination button:disabled, .directory-shell .live-pagination button:disabled { opacity: .5; cursor: default; }

@media (max-width: 950px) {
  .directory-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .directory-shell-head { align-items: flex-start; flex-direction: column; }
  .directory-shell-nav { flex-wrap: nowrap; max-width: 100%; overflow-x: auto; padding-bottom: .25rem; }
  .directory-shell-nav a { flex: none; }
  .directory-shell-intro { align-items: flex-start; flex-direction: column; gap: .6rem; }
  .directory-controls { grid-template-columns: 1fr; }
  .directory-shell .directory-unit-link { min-height: 88px; }
  .directory-shell .directory-emblem { flex-basis: 54px; width: 54px; height: 54px; }
}
@media (prefers-reduced-motion: reduce) { .directory-shell * { transition: none !important; animation: none !important; } }
