/* ============================================================
   Linki w treści — globalny styl (poza Astro scoped CSS)
   --------------------------------------------------------------
   Rozróżnienie:
   - ZEWNĘTRZNE (badania, źródła): tekst inherit, font-weight 600,
     żółta linia akcentu (var(--primary)) 2px, mała ikona ↗
   - WEWNĘTRZNE (inne podstrony szkolapromptowania): kolor primary,
     font-weight 500, cienka linia 1px w currentColor, bez ikony

   Selektor :is() obejmuje wszystkie content classes z [slug].astro
   oraz innych podstron tej witryny.
   ============================================================ */

/* Wspólny reset (wszystkie linki w treści) */
:is(
  .szk-story-p,
  .szk-intro,
  .szk-lead,
  .szk-lead-credits,
  .szk-realism-block,
  .szk-realism-block p,
  .szk-case-result,
  .szk-case-result p,
  .szk-pullquote-text,
  .szk-program-desc,
  .szk-tematy-name,
  .szk-tematy-desc,
  .szk-list,
  .szk-list li
) a {
  transition: text-decoration-thickness 0.15s ease,
              color 0.15s ease,
              filter 0.15s ease;
}

/* =========================================================
   ZEWNĘTRZNE (href zaczyna się od http/https i nie zawiera
   "szkolapromptowania")
   ========================================================= */
:is(
  .szk-story-p,
  .szk-intro,
  .szk-lead,
  .szk-lead-credits,
  .szk-realism-block,
  .szk-realism-block p,
  .szk-case-result,
  .szk-case-result p,
  .szk-pullquote-text,
  .szk-program-desc,
  .szk-tematy-name,
  .szk-tematy-desc,
  .szk-list,
  .szk-list li
) a[href^="http"]:not([href*="szkolapromptowania"]) {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-color: var(--primary);
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

/* Ikona ↗ po treści linka zewnętrznego (sygnał „opuszczasz stronę") */
:is(
  .szk-story-p,
  .szk-intro,
  .szk-lead,
  .szk-lead-credits,
  .szk-realism-block,
  .szk-realism-block p,
  .szk-case-result,
  .szk-case-result p,
  .szk-pullquote-text,
  .szk-program-desc,
  .szk-tematy-name,
  .szk-tematy-desc,
  .szk-list,
  .szk-list li
) a[href^="http"]:not([href*="szkolapromptowania"])::after {
  content: " ↗";
  font-size: 0.85em;
  opacity: 0.7;
  font-weight: 500;
  margin-left: 1px;
}

/* Hover dla zewnętrznych */
:is(
  .szk-story-p,
  .szk-intro,
  .szk-lead,
  .szk-lead-credits,
  .szk-realism-block,
  .szk-realism-block p,
  .szk-case-result,
  .szk-case-result p,
  .szk-pullquote-text,
  .szk-program-desc,
  .szk-tematy-name,
  .szk-tematy-desc,
  .szk-list,
  .szk-list li
) a[href^="http"]:not([href*="szkolapromptowania"]):hover {
  color: var(--primary);
  text-decoration-thickness: 3px;
}

/* =========================================================
   WEWNĘTRZNE (relatywne, anchor, lub szkolapromptowania.com)
   ========================================================= */
:is(
  .szk-story-p,
  .szk-intro,
  .szk-lead,
  .szk-lead-credits,
  .szk-realism-block,
  .szk-realism-block p,
  .szk-case-result,
  .szk-case-result p,
  .szk-pullquote-text,
  .szk-program-desc,
  .szk-tematy-name,
  .szk-tematy-desc,
  .szk-list,
  .szk-list li
) a:where([href^="/"], [href^="#"], [href*="szkolapromptowania"]) {
  color: var(--primary);
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: currentColor;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

/* Hover dla wewnętrznych */
:is(
  .szk-story-p,
  .szk-intro,
  .szk-lead,
  .szk-lead-credits,
  .szk-realism-block,
  .szk-realism-block p,
  .szk-case-result,
  .szk-case-result p,
  .szk-pullquote-text,
  .szk-program-desc,
  .szk-tematy-name,
  .szk-tematy-desc,
  .szk-list,
  .szk-list li
) a:where([href^="/"], [href^="#"], [href*="szkolapromptowania"]):hover {
  filter: brightness(0.85);
  text-decoration-thickness: 2px;
}
