/* A single visual system for hubs, small/large collections and resource details. */
.directory-heading{padding-block-end:2rem}.directory-heading .lede{max-inline-size:58ch}.directory-heading h1{max-inline-size:26ch}
.directory-hub,.directory-list{padding-block-end:3rem}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}
.category-card{display:grid;grid-template-rows:auto auto 1fr auto;gap:1rem;min-inline-size:0;padding:1.5rem;color:var(--ink);background:var(--warm);border:1px solid var(--line);border-radius:.375rem}
.category-card p{margin:0;max-width:46ch}.directory-icon{inline-size:2rem;block-size:2rem;color:var(--red)}
.category-bottom{display:flex;align-items:end;justify-content:space-between;gap:1rem;font-size:var(--meta);color:var(--muted);padding-block-start:.5rem}.category-bottom>span:last-child{font-size:1.375rem;color:var(--red)}
.category-card:hover,.category-card:focus-visible{border-color:var(--red);background:#f2eae2;color:var(--ink);box-shadow:0 2px 8px #261c1910}
.directory-home{border-block:1px solid var(--line)}.home-categories{grid-template-columns:repeat(3,minmax(0,1fr))}.home-categories .category-bottom{font-size:var(--meta)}
.directory-filters{padding:1.25rem 1.5rem;background:var(--warm);border:1px solid var(--line);border-radius:.375rem}
.directory-query{max-inline-size:42rem}.directory-query>label{font-size:var(--body)}
.directory-filter-groups{display:flex;flex-wrap:wrap;gap:1rem 2.5rem;margin-block-start:1.25rem}.directory-filter-groups fieldset{padding:0;margin:0;border:0;min-inline-size:0}.directory-filter-groups legend{font-size:var(--meta);font-weight:700;margin-block-end:.5rem}
.directory-result-line{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-block:2rem 1.25rem}.directory-result-line p{margin:0;color:var(--muted);font-size:var(--meta)}
.resource-grid,.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}
.resource-card{display:grid;grid-template-rows:auto auto 1fr auto;gap:.875rem;min-inline-size:0;padding:1.5rem;border:1px solid var(--line);border-radius:.375rem;color:var(--ink);background:var(--paper)}
.resource-card p{margin:0;max-width:55ch}.resource-card h3{text-wrap:initial;max-width:32ch}.resource-card .card-action{padding-block-start:.5rem;font-size:var(--body)}
.resource-meta{display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:baseline;color:var(--muted);font-size:var(--meta)}.resource-meta>span:first-child{font-weight:700;color:var(--red)}
.resource-card:hover,.resource-card:focus-visible{color:var(--ink);border-color:var(--red);background:var(--warm);box-shadow:0 2px 8px #261c1910}
.resource-detail{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:clamp(1.5rem,5vw,4rem);align-items:start;padding-block-end:2.5rem}.resource-facts h2{margin-block-end:1.5rem}
.resource-facts dl{margin:0}.resource-facts dl>div{border-block-start:1px solid var(--line);padding-block:1.25rem}.resource-facts dt{font-weight:700;font-size:var(--body);margin-block-end:.5rem}.resource-facts dd{margin:0;max-width:64ch}
.resource-next{background:var(--warm);border:1px solid var(--line);border-radius:.375rem;padding:1.5rem;min-inline-size:0}.resource-next h2{margin-block-end:1.5rem}.resource-quickfacts{display:grid;gap:1rem;margin:0 0 1.5rem}.resource-quickfacts dt{font-size:var(--meta);color:var(--muted);margin-bottom:.25rem}.resource-quickfacts dd{margin:0;font-weight:700}.resource-next .button{width:100%}.destination{font-size:var(--meta);color:var(--muted);text-align:center;margin-top:.75rem}
.resource-decision-note{padding:1rem 1.25rem;background:var(--warm);border-inline-start:3px solid var(--red);margin-block:1rem 0}

.team-record{display:grid;grid-template-rows:auto auto 1fr auto;gap:.875rem;padding:1.5rem;border:1px solid var(--line);border-radius:.375rem;min-inline-size:0}.team-record header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.team-record h3{text-wrap:initial}.league-tag{font-size:var(--meta);font-weight:700;color:var(--red)}.team-area{margin:0}.team-area>span{display:block;color:var(--muted);font-size:var(--meta);margin-bottom:.25rem}.team-joining{margin:0}.team-note{font-size:var(--meta);color:var(--muted);margin:.375rem 0 0}.team-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding-block-start:.5rem}.team-actions .button{font-size:var(--meta)}.team-record:focus-within{border-color:var(--red)}
.directory-list .empty-state{background:var(--warm);padding:1.5rem;border:1px solid var(--line);border-radius:.375rem;max-width:none}
@supports(grid-template-rows:subgrid){.category-card,.resource-card,.team-record{grid-row:span 4;grid-template-rows:subgrid;grid-template-columns:minmax(0,1fr)}}
@media(max-width:48rem){.category-grid,.resource-grid,.team-grid,.resource-detail{grid-template-columns:minmax(0,1fr)}.directory-filters{padding:1.25rem}.directory-filter-groups{gap:1rem}.resource-detail{gap:1rem}.category-card,.resource-card,.team-record,.resource-next{padding:1.25rem}.directory-result-line{margin-top:1.5rem}}
@media print{.directory-filters,.directory-next,.directory-result-line p{display:none}.category-grid,.resource-grid,.team-grid,.resource-detail{display:block}.category-card,.resource-card,.team-record{display:block;break-inside:avoid;margin-bottom:1rem}.category-card>*,.resource-card>*,.team-record>*{margin-block:.5rem}.directory-icon{display:none}.resource-next{break-inside:avoid}}

/* Align the two detail headings on their text baselines, including the panel inset. */
.resource-detail{--detail-inset:1.5rem}.resource-facts{padding-block-start:calc(var(--detail-inset) + 1px)}.resource-next{padding:var(--detail-inset)}
@media(max-width:48rem){.resource-detail{--detail-inset:1.25rem}.resource-facts{padding-block-start:0}}

.resource-next .button{display:block;padding-inline:.75rem}.resource-next .button>span{display:inline;white-space:nowrap}
