/**
 * Directory page shell + shared hero primitives.
 *
 * Route-specific filters, grids, and art direction stay in
 * blackoute-*-directory.css. Load via blackoute-directory-shell.
 */

/* Block theme: full-bleed directory views */
:where(
  body.blackoute-role-directory-page,
  body.blackoute-goal-directory-page,
  body.blackoute-creator-directory-page,
  body.blackoute-community-directory-page,
  body.blackoute-profession-directory-page,
  body.blackoute-life-area-directory-page,
  body.blackoute-playbook-directory-page,
  body.blackoute-collection-directory-page,
  body.blackoute-organization-directory-page
) main.wp-block-group {
  max-width: none;
  margin-inline: 0;
  padding-inline: 0;
}

/* Directory root shells */
:where(
  .blackoute-role-directory,
  .blackoute-goal-directory,
  .blackoute-creator-directory,
  .blackoute-community-directory,
  .blackoute-profession-directory,
  .blackoute-life-area-directory,
  .blackoute-playbook-directory,
  .blackoute-organization-directory,
  .blackoute-collection-directory
) {
  width: 100%;
  color: var(--color-text-primary, var(--gmap-text));
  font-family: var(--font-ui, var(--gmap-font-ui));
  -webkit-font-smoothing: antialiased;
}

:where(
  .blackoute-role-directory,
  .blackoute-goal-directory,
  .blackoute-creator-directory,
  .blackoute-community-directory,
  .blackoute-profession-directory,
  .blackoute-life-area-directory,
  .blackoute-playbook-directory,
  .blackoute-organization-directory,
  .blackoute-collection-directory
) :where(h1, h2, h3, h4) {
  font-family: var(--font-display, var(--gmap-font-display));
  font-weight: 700;
  letter-spacing: -0.04em;
  line-height: 1.08;
  margin: 0;
  overflow-wrap: anywhere;
}

/* Standard split hero grids */
:is(
  .gmap-roles-hero__grid,
  .gmap-goals-hero__grid,
  .gmap-creators-hero__grid,
  .gmap-communities-hero__grid,
  .gmap-prof-dir-hero__grid,
  .gmap-la-hero__grid,
  .gmap-playbooks-hero__grid
) {
  display: grid;
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: center;
}

/* Hero support copy */
:is(
  .gmap-roles-hero__support,
  .gmap-goals-hero__support,
  .gmap-creators-hero__support,
  .gmap-communities-hero__support,
  .gmap-prof-dir-hero__support,
  .gmap-la-hero__support,
  .gmap-playbooks-hero__support
) {
  margin: 1rem 0 0;
  max-width: 42rem;
  color: var(--color-text-muted, var(--gmap-text-secondary));
  font-size: clamp(1.05rem, 1.3vw, 1.2rem);
  line-height: 1.55;
}

/* Directory hero titles (size only; em accent in design-system) */
:is(
  .gmap-roles-hero__title,
  .gmap-goals-hero__title,
  .gmap-creators-hero__title,
  .gmap-communities-hero__title
) {
  font-size: clamp(2rem, 4.4vw, 3.35rem);
  max-width: 18ch;
}

/* Directory personalization badges and hints */
.gmap-badge--yours {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.15rem 0.55rem;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--gmap-copper, #c4783f);
  background: color-mix(in srgb, var(--gmap-copper, #c4783f) 12%, transparent);
  border: 1px solid color-mix(in srgb, var(--gmap-copper, #c4783f) 30%, transparent);
  border-radius: 999px;
  vertical-align: middle;
  margin-left: 0.45rem;
  white-space: nowrap;
}

.blackoute-directory__personalized-hint {
  display: inline-flex;
  align-items: center;
  margin-left: 0.75rem;
  padding: 0.2rem 0.65rem;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--gmap-copper, #c4783f);
  background: color-mix(in srgb, var(--gmap-copper, #c4783f) 10%, transparent);
  border: 1px solid color-mix(in srgb, var(--gmap-copper, #c4783f) 25%, transparent);
  border-radius: 999px;
  vertical-align: middle;
  white-space: nowrap;
}
