/* Ogloszenia: wspolny komponent szablonow starego ISP (application/core/view/_ogloszenia).
   Reguly przeniesione z CSS szablonu Mateusz z nowego ISP (front-base.css, front-mateusz.css) i zawezone do .isp-ogl.
   Kolory i kroje biora tokeny nowego ISP (--pri, --sec, --ink, --font-serif...) ustawione na :root (Mateusz). Bez nich
   akcent --pri bierze kolor linku szablonu (skrypt w _wspolne.php), kroj naglowkow dziedziczy z szablonu, reszta
   ma wpisane wartosci Mateusza. */
.isp-ogl .front-section { background: var(--section-bg, transparent); color: var(--section-text, var(--ink, #2F2925)); }
.isp-ogl .front-section .section-title { color: var(--section-heading, var(--pri, #844115)); }
.isp-ogl .serif { font-family: var(--font-serif, inherit); }
.isp-ogl .kicker { font-size: 13px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--section-accent-ink, var(--sec-strong, var(--sec, #C99C00))); font-weight: 700; }
.isp-ogl .section-title { font-family: var(--font-serif, inherit); font-size: clamp(28px, 4.5cqi, 40px); font-weight: 600; color: var(--section-link, var(--pri, #844115)); margin: 0; line-height: 1.15; }
.isp-ogl .front-breadcrumbs { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; color: var(--ink-3, #6C6763); font-size: 13px; line-height: 1.4; }
.isp-ogl .front-breadcrumbs a { color: var(--pri, #844115); text-decoration: none; text-underline-offset: 0.2em; transition: color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)); }
.isp-ogl .front-breadcrumbs a:hover { text-decoration: underline; }
.isp-ogl .front-breadcrumbs a:active { opacity: 0.75; }
.isp-ogl .front-breadcrumbs .sep { opacity: 0.55; }
.isp-ogl .btn { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; font-weight: 700; font-size: 16px; letter-spacing: 0.06em; padding: 13px 26px; border-radius: var(--radius-sm, 0px); border: 1px solid transparent; cursor: pointer; transition: background var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), border-color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)); }
.isp-ogl .btn--action-quiet { border-radius: var(--radius-sm, 0px); transition: background-color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), border-color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)); }
.isp-ogl .btn--action-quiet { background: transparent; color: var(--section-action-quiet-ink, var(--pri, #844115)); border-color: var(--section-action-quiet-border, var(--pri, #844115)); }
.isp-ogl .btn--action-quiet:hover { background: var(--section-action-quiet-bg-hover, var(--surface-2, #EEEAE6)); color: var(--section-action-quiet-ink-hover, var(--pri, #844115)); }
.isp-ogl .btn__arrow { flex: 0 0 auto; transition: margin-left var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)); }
.isp-ogl .btn--action-quiet:hover .btn__arrow { margin-left: 4px; }
.isp-ogl .btn--action-back:hover .btn__arrow { margin-left: 0; margin-right: 4px; }
.isp-ogl .front-empty { margin: 0; padding: var(--space-2xl, 3rem) var(--space-lg, 1.5rem); text-align: center; color: var(--section-muted, var(--muted, #6C6763)); background: var(--card-bg-alt, var(--surface-2, #EEEAE6)); border: 1px dashed var(--section-border, var(--border, #D5D1CD)); border-radius: var(--radius-xl, 0px); }
.isp-ogl .liturgical-dot { display: inline-block; width: 11px; height: 11px; border-radius: var(--radius-circle, 50%); box-shadow: 0 0 0 var(--section-dot-ring-width, 0) var(--section-dot-ring, transparent); border: 1px solid rgba(0, 0, 0, 0.18); vertical-align: middle; margin-right: 6px; }
.isp-ogl .ann-head { display: flex; align-items: baseline; gap: 16px; flex-wrap: wrap; margin-bottom: 16px; }
.isp-ogl .ann-date { font-size: 16px; color: var(--muted, #6C6763); white-space: nowrap; }
.isp-ogl .ann-body { font-size: 17px; }
.isp-ogl .ann-current { padding-bottom: 34px; margin-bottom: 34px; border-bottom: 1px solid var(--border, #D5D1CD); }
.isp-ogl .ann-archive__list { list-style: none; margin: 0; padding: 0; }
.isp-ogl .ann-archive__row { border-bottom: 1px solid var(--border-3, #D5D1CD); }
.isp-ogl .ann-archive__link { display: flex; align-items: center; gap: 12px; padding: 11px 4px; text-decoration: none; color: var(--ink-2, #2F2925); transition: color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)); }
.isp-ogl .ann-archive__link:hover { color: var(--pri, #844115); }
.isp-ogl .ann-archive__date { color: var(--muted, #6C6763); font-variant-numeric: tabular-nums; flex: 0 0 auto; min-width: 42px; }
.isp-ogl .ann-archive__name { font-weight: 700; }
.isp-ogl .front-section { margin: 44px 0; }
.isp-ogl .front-section:first-child { margin-top: 0; }
.isp-ogl section.front-section { --section-content: var(--tresc-max, 1440px); margin: 0; padding-block: var(--band-space, clamp(2.25rem, 4.5vw, 4rem)); padding-inline: var(--tresc-wciecie, max(var(--tresc-pad, 24px), calc((100% - var(--tresc-max, 1440px)) / 2))); container-type: inline-size; }
.isp-ogl section.front-section { padding-block: 0; margin-block: 28px; }
.isp-ogl section.front-section:first-child { margin-top: 0; }
.isp-ogl section.front-section:last-child { margin-bottom: 0; }
.isp-ogl .section-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 24px; }
.isp-ogl .section-foot { display: flex; justify-content: flex-end; margin-top: 24px; }
.isp-ogl .front-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.isp-ogl .rich-text { font-size: 16px; color: var(--section-text-soft, var(--ink-2, #2F2925)); line-height: 1.6; }
.isp-ogl .rich-text :is(p, ul, ol) { margin: 0 0 10px; }
.isp-ogl .rich-text :is(ul, ol) { padding-left: 20px; }
.isp-ogl .rich-text > :last-child { margin-bottom: 0; }
.isp-ogl .rich-text strong { color: var(--section-text, var(--ink, #2F2925)); }
.isp-ogl .rich-text a { color: var(--section-link, var(--pri, #844115)); font-weight: 700; }
.isp-ogl .rich-text::after { content: ""; display: table; clear: both; }
.isp-ogl .rich-text img { max-width: 100%; height: auto; }
.isp-ogl .rich-text table { width: 100%; border-collapse: collapse; margin: var(--space-lg, 1.5rem) 0; font-size: 0.95em; }
.isp-ogl .rich-text :is(th, td) { padding: 6px 10px; border: 1px solid var(--section-border, var(--border, #D5D1CD)); text-align: left; vertical-align: top; }
.isp-ogl .rich-text :is(th, td) p { margin: 0; }
.isp-ogl .rich-text th { font-weight: 700; color: var(--section-text, var(--ink, #2F2925)); }
.isp-ogl .rich-text iframe { display: block; max-width: 100%; margin: var(--space-lg, 1.5rem) 0; border: 0; }
@media (max-width: 900px) {
  .isp-ogl .rich-text table { display: block; overflow-x: auto; }
}
.isp-ogl .btn--action-sm { font-size: 13px; padding: 8px 16px; gap: 6px; letter-spacing: 0.05em; }
.isp-ogl .front-section > *:not(.front-pattern):not(.front-section-photo) { position: relative; z-index: 1; }
.isp-ogl .btn { transition: background-color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), border-color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)); }
.isp-ogl .btn:active { filter: brightness(0.92); }
.isp-ogl .news-archive-years, .isp-ogl .news-archive-months { scrollbar-width: none; }
.isp-ogl .news-archive-years::-webkit-scrollbar, .isp-ogl .news-archive-months::-webkit-scrollbar { display: none; }
.isp-ogl .news-archive-years, .isp-ogl .news-archive-months { display: flex; flex-wrap: nowrap; overflow-x: auto; overscroll-behavior-x: contain; gap: var(--space-xs, 0.5rem); margin: 0 0 var(--space-md, 1rem); padding-bottom: var(--space-xs, 0.5rem); }
.isp-ogl .news-archive-years { border-bottom: 1px solid var(--section-border, var(--border-2, #D5D1CD)); }
.isp-ogl .news-archive-years__item, .isp-ogl .news-archive-months__item { flex: 0 0 auto; text-decoration: none; white-space: nowrap; color: var(--section-text, var(--ink, #2F2925)); transition: color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), border-color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)), background-color var(--motion-state, 200ms) var(--motion-ease-state, cubic-bezier(0.25, 0.1, 0.25, 1)); }
.isp-ogl .news-archive-years__item { font-family: var(--font-serif, inherit); font-size: 20px; font-weight: 600; padding: 6px 12px; border-bottom: 3px solid transparent; margin-bottom: -1px; }
.isp-ogl .news-archive-years__item:hover { border-bottom-color: var(--section-border, var(--border, #D5D1CD)); }
.isp-ogl .news-archive-years__item.is-active { color: var(--section-heading, var(--pri, #844115)); border-bottom-color: var(--section-accent-ink, var(--sec-strong, var(--sec, #C99C00))); }
.isp-ogl .news-archive-months__item { font-size: 13px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 6px 10px; border-radius: var(--radius-pill, 0px); border: 1px solid transparent; }
.isp-ogl .news-archive-months__item:hover { border-color: var(--section-border, var(--border, #D5D1CD)); }
.isp-ogl .news-archive-months__item.is-active { background: var(--pri, #844115); border-color: var(--pri, #844115); color: var(--surface, #FFFFFF); }
.isp-ogl .news-archive-months__item.is-empty { color: var(--section-muted, var(--muted, #6C6763)); opacity: 0.45; cursor: default; }
.isp-ogl .news-empty { display: grid; gap: var(--space-sm, 0.75rem); justify-items: center; text-align: center; }
.isp-ogl .news-empty__lead { margin: 0; font-size: 17px; color: var(--section-text, var(--ink, #2F2925)); }
.isp-ogl .news-empty__hint { margin: 0; font-size: 15px; color: var(--section-muted, var(--muted, #6C6763)); }
.isp-ogl .news-empty__ways { display: flex; flex-wrap: wrap; gap: var(--space-md, 1rem); justify-content: center; }
.isp-ogl .ann-previous { margin-top: 40px; padding-top: 28px; border-top: 1px solid var(--section-border, var(--border, #D5D1CD)); }
.isp-ogl .ann-current + .ann-previous { margin-top: 0; padding-top: 0; border-top: 0; }
.isp-ogl .ann-previous__title { margin: 0 0 12px; font-size: clamp(20px, 2.2vw, 26px); color: var(--section-heading, var(--ink, #2F2925)); }
.isp-ogl .front-footnav { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px 24px; margin-top: 8px; padding-top: 20px; border-top: 1px solid var(--section-border, var(--border, #D5D1CD)); }
.isp-ogl .front-footnav__side { min-width: 0; }
.isp-ogl .front-footnav__side--end { justify-self: end; }
.isp-ogl .front-footnav__neighbour { min-width: 0; max-width: 100%; text-align: left; }
.isp-ogl .front-footnav__text { min-width: 0; display: block; }
.isp-ogl .front-footnav__role { display: block; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; opacity: 0.8; }
.isp-ogl .front-footnav__title { display: block; max-width: 22ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 400; }
.isp-ogl .front-footnav__exits { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 12px; }
@media (max-width: 640px) {
  .isp-ogl .front-footnav { grid-template-columns: 1fr 1fr; grid-template-areas: "start end" "exits exits"; }
  .isp-ogl .front-footnav__side--start { grid-area: start; }
  .isp-ogl .front-footnav__side--end { grid-area: end; }
  .isp-ogl .front-footnav__exits { grid-area: exits; justify-content: flex-start; }
  .isp-ogl .front-footnav__title { max-width: 14ch; }
}
.isp-ogl .news-search { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-xs, 0.5rem); margin: 0 0 var(--space-md, 1rem); }
.isp-ogl .news-search__field { flex: 1 1 220px; min-width: 0; padding: .55rem .8rem; font: inherit; color: var(--ink, #2F2925); background: var(--surface, #FFFFFF); border: 1px solid var(--section-border, var(--border-2, #D5D1CD)); border-radius: var(--radius-sm, 6px); }
.isp-ogl .news-search__field::placeholder { color: var(--muted, #6C6763); }
.isp-ogl .news-search__submit { flex: 0 0 auto; padding: .55rem 1rem; font: inherit; font-weight: 600; color: var(--section-on-accent, #fff); cursor: pointer; background: var(--section-accent, var(--pri, #844115)); border: 1px solid transparent; border-radius: var(--radius-sm, 6px); }
.isp-ogl .news-search__clear { flex: 0 0 auto; font-size: .9rem; color: var(--muted, #6C6763); }
.isp-ogl section.front-section[style*="--section-bg"] { padding-inline: var(--tresc-pad, 24px); }
.isp-ogl .section-title { font-family: var(--font-serif, inherit); font-size: 38px; font-weight: 300; color: var(--section-text, var(--ink, #2F2925)); }
.isp-ogl .section-head { margin-bottom: 14px; }
.isp-ogl #aktualnosci .section-foot .btn { border-color: var(--sec, #C99C00); background: var(--sec, #C99C00); color: var(--ink, #2F2925); }
.isp-ogl #aktualnosci .section-foot .btn:hover { border-color: var(--pri, #844115); background: var(--pri, #844115); color: var(--surface, #FFFFFF); }
.isp-ogl .news-search__submit { color: var(--ink, #2F2925); }
.isp-ogl .kicker { display: none; }
.isp-ogl .news-archive-years { margin-bottom: 0; padding-bottom: 0; border-bottom: 0; }
.isp-ogl .news-archive-months { gap: 0; padding: 0; background: var(--pri, #844115); }
.isp-ogl .news-archive-months__item { flex: 1 0 auto; padding: 11px 12px; border: 0; color: var(--surface, #FFFFFF); text-align: center; }
.isp-ogl a.news-archive-months__item:hover { background: var(--pri-strong, #623010); }
.isp-ogl .news-archive-months a.news-archive-months__item { color: var(--surface, #FFFFFF); }
.isp-ogl .news-archive-months a.news-archive-months__item.is-active { background: var(--sec, #C99C00); color: var(--ink, #2F2925); }
.isp-ogl .news-archive-months__item.is-empty { color: var(--surface, #FFFFFF); opacity: 0.55; }
.isp-ogl .ann-body { max-width: var(--proza-max, 68ch); font-size: 18px; line-height: 1.75; }
.isp-ogl .ann-body li { margin-bottom: 10px; }
.isp-ogl .ann-archive__date { flex: 0 0 11em; margin-right: 0; }
@media (max-width: 560px) {
  .isp-ogl .ann-archive__link { flex-wrap: wrap; row-gap: 2px; }
  .isp-ogl .ann-archive__date { flex: 1 1 auto; }
  .isp-ogl .ann-archive__name { flex: 0 0 100%; }
}

/* Dodatki starego ISP: podtytul ogloszenia (w nowym ISP go nie ma) i odstep przycisku PDF. */
.isp-ogl .ann-subtitle { margin: 0 0 14px; color: var(--ink-3, #6C6763); font-style: italic; }
.isp-ogl .ann-pdf { margin: 22px 0 0; }
.isp-ogl .ann-body img { max-width: 100%; height: auto; }
/* Tresc ogloszenia na cala szerokosc pola tresci (w nowym ISP waska kolumna 68ch). */
.isp-ogl .ann-body { max-width: none; }
/* Podpis pod ogloszeniem (pole Podpis w panelu). */
.isp-ogl .ann-signature { margin: 18px 0 0; text-align: right; font-style: italic; color: var(--ink-2, #2F2925); }
/* Menu boczne w ogloszeniach (Ustawienia: menu w ogloszeniach), po prawej, na telefonie pod trescia. */
.isp-ogl--z-menu { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 30%); gap: 32px; }
.isp-ogl__tresc { min-width: 0; }
@media (max-width: 767px) { .isp-ogl--z-menu { grid-template-columns: minmax(0, 1fr); } }
