/* URI Directory v2: page overrides on citi-default v1. Tokens only, no hex. */

/* search form */
.dir-search { margin: 0 0 1rem; }
.search-row { display: flex; flex-wrap: wrap; gap: 0.6rem 1rem; align-items: center; }
.search-row input[type=search] { flex: 1 1 22rem; min-width: 0; font-size: var(--fs-body); padding: 0.5rem 0.7rem; }
.scope { display: flex; gap: 0.9rem; border: 0; margin: 0; padding: 0; }
.scope label { display: inline-flex; align-items: center; gap: 0.3rem; cursor: pointer; white-space: nowrap; }
details.more { margin-top: 0.6rem; }
.filters { display: grid; grid-template-columns: 2fr 1fr; gap: 1.5rem; }
.filters fieldset { border: 1px solid var(--rule); border-radius: var(--radius); padding: 0.6rem 0.9rem 0.8rem; margin: 0;
                    display: grid; grid-template-columns: max-content 1fr; gap: 0.4rem 0.8rem; align-items: center; align-content: start; }
.filters legend { font-family: var(--font-head); color: var(--brand); padding: 0 0.3rem; }
.filters input, .filters select { width: 100%; min-width: 0; }
.filters .hint { grid-column: 1 / -1; margin: 0.2rem 0 0; }

/* A-Z browse */
.az { display: flex; flex-wrap: wrap; align-items: center; gap: 0.2rem; margin: 0.4rem 0 1.2rem; }
.az-label { color: var(--muted); margin-right: 0.5rem; }
.az-l { display: inline-block; min-width: 1.7rem; text-align: center; padding: 0.15rem 0.2rem; border-radius: var(--radius-sm);
        font-family: var(--font-head); text-decoration: none; }
a.az-l { color: var(--brand); background: var(--brand-tint); }
a.az-l:hover, a.az-l:focus-visible { background: var(--brand); color: var(--on-fill); }
.az-l.on { background: var(--brand); color: var(--on-fill); }
.az-l.off { color: var(--muted-3); }

/* results */
.results { margin-bottom: 1.5rem; }
h2 .count { font-family: var(--font-num); font-size: var(--fs-body); color: var(--muted); margin-left: 0.3rem; vertical-align: middle; }
table.people { width: 100%; }
table.people td { vertical-align: top; }
table.people td.pname { min-width: 14rem; }
details.person > summary { cursor: pointer; list-style: none; }
details.person > summary::-webkit-details-marker { display: none; }
details.person > summary strong { color: var(--brand); }
details.person > summary::after { content: ' +'; color: var(--muted-2); }
details.person[open] > summary::after { content: ' \2212'; }
dl.pdet { margin: 0.4rem 0 0.3rem; }
dl.pdet dd, dl.contact dd { font-family: var(--font-body); color: var(--ink); word-break: normal; overflow-wrap: anywhere; white-space: normal; }

details.card.dept .card-title { font-size: var(--fs-h4); }
details.card.dept .card-body { padding: 0.2rem 0.6rem 0.4rem; }
.slug { font-family: var(--font-num); font-size: var(--fs-min); color: var(--muted); margin-left: 0.3rem; }
.part-of { color: var(--muted); margin: 0 0 0.4rem; }
dl.contact { max-width: 52rem; }
.card-body h4 { margin: 0.9rem 0 0.3rem; }
ul.children { list-style: none; margin: 0; padding: 0 0 0 0.2rem; }
ul.children ul.children { padding-left: 1.2rem; border-left: 2px solid var(--rule-light); margin: 0.3rem 0 0.3rem 0.3rem; }
ul.children > li { padding: 0.25rem 0; border-bottom: 1px solid var(--rule-light); }
ul.children > li:last-child { border-bottom: 0; }
ul.children > li.leaf { padding-left: 1.05rem; }
details.sub > summary { cursor: pointer; }
details.sub > summary::marker { color: var(--brand); }
details.sub > dl.contact { margin: 0.3rem 0 0.2rem 1rem; }

.pager { display: flex; gap: 0.6rem; align-items: center; justify-content: flex-end; margin: 0.6rem 0; }
.pg-info { color: var(--muted); margin-right: auto; font-family: var(--font-num); }

.intro { margin-top: 1rem; }
.intro h2 { margin-top: 0.5rem; }

@media (max-width: 800px) {
  .filters { grid-template-columns: 1fr; }
  .scope { width: 100%; }
  table.people thead { display: none; }
  table.people tr { display: block; padding: 0.4rem 0; border-bottom: 1px solid var(--rule-light); }
  table.people td { display: block; border: 0; padding: 0.1rem 0; }
}
@media print {
  .dir-search, .az, .tabs, .filter-bar .fb-clear, .pager { display: none; }
}
