.fjdir{margin:15px 0;color:inherit;font:inherit}.fjdir[hidden],.fjdir [hidden]{display:none!important}.fjdir__heading{font-size:1.08rem;font-weight:750;margin:0 0 12px}.fjdir__filters{display:grid;gap:9px;margin:0 0 10px}.fjdir__search,.fjdir__select{border:1px solid #d0e1e4;border-radius:10px;padding:10px 12px;background:#fff;color:#173c43;font:inherit;width:100%;min-width:0}.fjdir__selectors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fjdir__selectors .fjdir__select:last-child{grid-column:1/-1}.fjdir__checkbox{display:flex;align-items:center;gap:6px;font-size:.84rem;color:#516d72}.fjdir__count{font-size:.78rem;color:#577279;margin:6px 0 10px}.fjdir__grid{display:grid;grid-template-columns:1fr;gap:9px}.fjdir__card{display:flex;align-items:center;border:1px solid #deeaec;border-radius:13px;background:#fff;min-width:0;overflow:hidden;box-shadow:0 2px 9px rgba(20,50,60,.04)}.fjdir__card-main{background:transparent;border:0;text-align:left;display:flex;gap:10px;align-items:center;min-width:0;flex:1;cursor:pointer;padding:8px;color:#203b41;font:inherit}.fjdir__card .fjdir__image,.fjdir__card .fjdir__placeholder{width:92px;height:92px;flex-shrink:0;border-radius:9px;object-fit:cover;margin:0}.fjdir__card-info{min-width:0;flex:1}.fjdir__name{display:block;font-size:.96rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.fjdir__meta{display:block;font-size:.78rem;color:#60787f;margin:5px 0}.fjdir__badge{display:inline-block;font-size:.72rem;font-weight:650;background:#e6f9f4;color:#167763;border-radius:20px;padding:4px 8px}.fjdir__save{font-size:.75rem!important;white-space:nowrap;padding:8px!important;margin:0 7px!important;align-self:center}.fjdir__button{appearance:none;border:1px solid #5ec6d6;border-radius:10px;background:#fff;color:#258b9b;padding:10px 12px;cursor:pointer;font:inherit;font-weight:650;text-decoration:none;display:inline-block;margin:4px 6px 4px 0}.fjdir__button--secondary{margin-top:13px}.fjdir__button:hover,.fjdir__card:hover{border-color:#5ec6d6}.fjdir__button:focus-visible,.fjdir__card-main:focus-visible,.fjdir__select:focus-visible,.fjdir__search:focus-visible{outline:3px solid #5ec6d6;outline-offset:2px}.fjdir__detail{border:1px solid #deeaec;border-radius:14px;background:#fff;padding:14px}.fjdir__detail> .fjdir__image,.fjdir__detail>.fjdir__placeholder{width:100%;height:180px;object-fit:cover;border-radius:11px;margin:9px 0}.fjdir__detail h4{font-size:1.13rem;margin:7px 0}.fjdir__detail p{overflow-wrap:anywhere;white-space:pre-wrap}.fjdir__place-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.fjdir__place-head h4{min-width:0}.fjdir__links{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}.fjdir__offer{background:#effafa;border-left:3px solid #5ec6d6;padding:12px;border-radius:9px;margin-top:13px}.fjdir__offer h5{font-size:1rem;margin:7px 0}.fjdir__offer p{font-size:.9rem;margin:7px 0}.fjdir__offer strong{font-size:.86rem}.fjdir__status{font-size:.85rem;color:#62787f}.fjdir__offer-list-card{display:block;width:100%;text-align:left}.fjdir__placeholder{display:grid;place-items:center;background:#e7f5f7;color:#438192}@media(min-width:800px){.fjdir__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fjdir__selectors{grid-template-columns:repeat(3,minmax(0,1fr))}.fjdir__selectors .fjdir__select:last-child{grid-column:auto}}

/* v1.0.1: scope active/pressed card styling to prevent inherited Shell/WordPress dark button fills. */
.fjdir .fjdir__card-main,
.fjdir .fjdir__card-main:hover,
.fjdir .fjdir__card-main:focus,
.fjdir .fjdir__card-main:active {
  background:#fff; color:#203b41; box-shadow:none; text-decoration:none;
}
.fjdir .fjdir__card-main:hover,
.fjdir .fjdir__card-main:focus,
.fjdir .fjdir__card-main:active { background:#eaf8fb; }
.fjdir .fjdir__card-main .fjdir__name { color:#17324d; }
.fjdir .fjdir__card-main .fjdir__meta { color:#476b7b; }
.fjdir .fjdir__card-main .fjdir__badge { color:#167763; }
/* Existing Save visual retained; only ensure pressed state remains legible. */
.fjdir .fjdir__save[aria-pressed="true"] { background:#5ec6d6; color:#fff; border-color:#5ec6d6; }
.fjdir .fjdir__save[aria-pressed="true"]:hover,
.fjdir .fjdir__save[aria-pressed="true"]:focus { background:#49b3c4; color:#fff; }


/* v1.0.2: shared Directory link-as-button style. Scoped: does not touch Learning Apps or WP links. */
.fjdir {
  --fjdir-button-outline: #5EC6D6;
  --fjdir-button-text: #24899B;
  --fjdir-button-hover: #EAF8FB;
  --fjdir-button-active: #5EC6D6;
}
.fjdir a.fjdir__button:link,
.fjdir a.fjdir__button:visited,
.fjdir a.fjdir__button:hover,
.fjdir a.fjdir__button:focus,
.fjdir a.fjdir__button:active {
  text-decoration: none !important;
  border: 1px solid var(--fjdir-button-outline);
  color: var(--fjdir-button-text);
  font-weight: 650;
  box-shadow: none;
}
.fjdir a.fjdir__button:link,
.fjdir a.fjdir__button:visited { background: #fff; }
.fjdir a.fjdir__button:hover,
.fjdir a.fjdir__button:focus-visible { background: var(--fjdir-button-hover); }
.fjdir a.fjdir__button:active { background: var(--fjdir-button-active); color: #fff; }
/* Button labels retain a clear focus indicator for keyboard navigation. */
.fjdir a.fjdir__button:focus-visible { outline: 3px solid var(--fjdir-button-outline); outline-offset: 2px; }


/* v1.0.3: one shared visual state contract for Directory buttons AND links.
   Scoped to .fjdir; does not affect PWA13 shell or Learning Apps. */
.fjdir {
  --fjdir-btn-border: #5EC6D6;
  --fjdir-btn-label: #24899B;
  --fjdir-btn-hover: #EAF8FB;
  --fjdir-btn-pressed: #5EC6D6;
  --fjdir-btn-pressed-label: #FFFFFF;
}
.fjdir button.fjdir__button,
.fjdir a.fjdir__button,
.fjdir a.fjdir__button:link,
.fjdir a.fjdir__button:visited {
  background: #FFFFFF;
  color: var(--fjdir-btn-label);
  border: 1px solid var(--fjdir-btn-border);
  text-decoration: none !important;
  box-shadow: none;
}
.fjdir button.fjdir__button:hover,
.fjdir button.fjdir__button:focus,
.fjdir a.fjdir__button:hover,
.fjdir a.fjdir__button:focus {
  background: var(--fjdir-btn-hover);
  color: #176B80;
  border-color: var(--fjdir-btn-border);
  text-decoration: none !important;
  box-shadow: none;
}
.fjdir button.fjdir__button:active,
.fjdir a.fjdir__button:active {
  background: var(--fjdir-btn-pressed);
  color: var(--fjdir-btn-pressed-label);
  border-color: var(--fjdir-btn-border);
  text-decoration: none !important;
  box-shadow: none;
}
.fjdir button.fjdir__button:focus-visible,
.fjdir a.fjdir__button:focus-visible {
  outline: 3px solid var(--fjdir-btn-border);
  outline-offset: 2px;
}
/* Toggle state must remain selected after pointer/key release. */
.fjdir button.fjdir__button.fjdir__save[aria-pressed="true"],
.fjdir button.fjdir__button.fjdir__save[aria-pressed="true"]:hover,
.fjdir button.fjdir__button.fjdir__save[aria-pressed="true"]:focus,
.fjdir button.fjdir__button.fjdir__save[aria-pressed="true"]:active {
  background: var(--fjdir-btn-pressed);
  color: var(--fjdir-btn-pressed-label);
  border-color: var(--fjdir-btn-border);
}

/* v1.0.8: Shared recommendations presentation; existing Shell article cards and button tokens. */
.fjdir__recommendations{margin:18px 0 12px}
.fjdir__recommendations[hidden]{display:none!important}
.fjdir__recommendations-title{text-align:center;font-size:1.18rem;font-weight:750;margin:16px 0 12px}
.fjdir__sponsored{display:inline-block;font-size:.74rem;font-weight:700;color:#176b80;background:#eaf8fb;border-radius:6px;padding:3px 7px;margin-bottom:7px}
.fjdir__reader-proxy{display:none}
.fjdir .fjdir__recommendations-jump{margin:0 0 13px}

/* v1.0.12: suppress stale Shell article-feed cards while Directory owns this detail. */
.fjdir--owns-feed [data-fj-article-feed]{display:none !important;}
