/* ═══════════════════════════════════════════════════════════
   AEROVANIA — shadcn/ui-style tags and cards
   Chosen from _preview/shadcn-options.html:
     tags  = option C, Badge "secondary" with rounded-md corners
     cards = option F, Card (rounded border, soft shadow, header/content/footer)
   Uses only the site's existing --fx-* colours and fonts.
   Loads after field.css / interact.css / blog.css. Remove the
   <link> to this file to go back to the previous tags and cards.
   ═══════════════════════════════════════════════════════════ */

/* ── Tags: Badge, secondary, rounded square (option C) ─────── */
.fx-tags { gap: 6px; }
.fx-tags span,
.fx-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border: 0;
  border-radius: 6px;
  font: 500 13px/1.4 var(--fx-sans);
  letter-spacing: 0;
  text-transform: none;
  color: var(--fx-cyan);
  background: color-mix(in srgb, var(--fx-cyan) 10%, var(--fx-solid));
}
.fx-tag.ok { color: var(--fx-good); background: color-mix(in srgb, var(--fx-good) 12%, var(--fx-solid)); border: 0; }
.fx-tag.ok::before { box-shadow: none; }
.fx-tag.warn { color: var(--fx-orange); background: color-mix(in srgb, var(--fx-orange) 11%, var(--fx-solid)); border: 0; }
.fx-tag.cy { color: var(--fx-cyan); border: 0; }
.fx-tag.vi { color: var(--fx-violet); background: color-mix(in srgb, var(--fx-violet) 11%, var(--fx-solid)); border: 0; }

/* tags sitting on the dark reveal panel of a tile */
.fx-tile-more .fx-tag { color: #a7f3ff; background: rgba(109, 247, 255, .12); }
.fx-tile-more .fx-tag.ok { color: #5dffb0; background: rgba(93, 255, 176, .12); }
@media (max-width: 560px) { .fx-tile-more .fx-tag { padding: 4px 8px; font-size: 12.5px; } }

/* small tags inside news meta lines */
.fx-news-meta .fx-tag { padding: 3px 8px; font-size: 12.5px; }

/* ── Cards: shadcn Card (option F) ─────────────────────────── */
.fx-card,
.fx-tile,
.fx-news-card {
  border: 1px solid var(--fx-line);
  border-radius: 14px;
  background: var(--fx-solid);
  box-shadow: 0 1px 2px rgba(7, 17, 31, .06);
}
html[data-theme="dark"] :is(.fx-card, .fx-tile, .fx-news-card) { box-shadow: none; }

/* no lift, no gradient sweep line, no photo zoom on hover */
.fx-card:hover,
.fx-tile:hover,
.fx-news-card:hover { transform: none; border-color: var(--fx-line2); }
.fx-card::after,
.fx-news-card::after { display: none; }
.fx-card:hover .fx-card-media img,
.fx-news-card:hover .fx-photo img { transform: none; }

/* photo header bleeds to the rounded top edge */
.fx-card-media { border-bottom: 0; border-radius: 13px 13px 0 0; }

/* header: plain title, muted meta line in normal case */
body .fx .fx-card h3 { font-size: clamp(19px, 1.6vw, 22px) !important; line-height: 1.2; font-weight: 600; letter-spacing: -.015em; }
.fx-card h3 em, .fx-card h4 em { color: inherit; }
.fx-card p { color: var(--fx-mut); font-size: 15px; }
.fx-card .fx-idx {
  font: 500 13.5px/1.4 var(--fx-sans);
  letter-spacing: 0;
  text-transform: none;
  color: var(--fx-mut);
}
.fx-card .fx-idx b { font-weight: 600; color: var(--fx-cyan); }

/* footer: a plain text link, no rule, no arrow glyph */
.fx-card .fx-foot {
  padding-top: 0;
  border-top: 0;
  font: 600 14.5px/1.4 var(--fx-sans);
  letter-spacing: 0;
  text-transform: none;
  justify-content: flex-start;
}
.fx-card .fx-foot > span:last-child:not(:first-child) { display: none; }
.fx-card .fx-foot a { color: var(--fx-cyan); }
.fx-card .fx-foot a:hover { text-decoration: underline; }

/* fact strips inside cards (instructor hours etc.): normal-case labels */
.fx-card .fx-meta { border-radius: 8px; overflow: hidden; }
.fx-card .fx-meta span { font: 500 12.5px/1.3 var(--fx-sans); letter-spacing: 0; text-transform: none; }

/* tiles keep their tap/hover detail panel, inside the rounded card */
.fx-tile-k,
.fx-tile-more .fx-tile-echo { font: 500 13px/1.35 var(--fx-sans); letter-spacing: 0; text-transform: none; }
.fx-tile-ico { border-radius: 8px; }

/* news cards */
.fx-news-media { border-right: 0; }
.fx-news-card.is-feature .fx-news-media { border-bottom: 0; }
.fx-news-meta { font: 500 13px/1.3 var(--fx-sans); letter-spacing: 0; text-transform: none; }
.fx-news-more { font: 600 14.5px/1 var(--fx-sans); letter-spacing: 0; text-transform: none; }
.fx-news-more i { display: none; }

/* ── Small labels inside cards, matched to the Card header style ── */
.fx-card .fx-role { font: 500 13.5px/1.4 var(--fx-sans); letter-spacing: 0; text-transform: none; color: var(--fx-mut); }
.fx-card .fx-avatar { border-radius: 10px; }
.fx-card .fx-avatar::before, .fx-card .fx-avatar::after { display: none; }
.fx-card .fx-more > summary,
.fx-more > summary { font: 600 14.5px/1.4 var(--fx-sans); letter-spacing: 0; text-transform: none; color: var(--fx-cyan); }

/* enterprise photo tiles: label and pilot count as badges on the photo */
.fx-tile.photo .fx-tile-k,
.fx-tile.photo .fx-chip { border-radius: 6px; font: 500 13px/1.3 var(--fx-sans); letter-spacing: 0; text-transform: none; }
