/* Nasze koty — wersja testowa 1.16 */
.ac-cats-body{margin:0;background:#0e1722;color:#edf3fa;font-family:Arial,sans-serif}
.ac-cats-main{max-width:1240px;margin:auto;padding:48px 26px 90px;min-height:70vh}
.ac-cats-hero{text-align:center;padding:36px 0 34px}.ac-cats-eyebrow{font-size:11px;letter-spacing:.24em;color:#b2c9e4}
.ac-cats-hero h1{font:normal 48px Georgia,serif;margin:14px 0;color:white}.ac-cats-hero p{color:#bdcce0}
.ac-cats-tabs{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 24px}
.ac-cats-tabs button{background:transparent;color:#d5e2f0;border:1px solid #526782;padding:13px 24px;border-radius:30px;cursor:pointer;font-size:14px}
.ac-cats-tabs button.is-active,.ac-cats-tabs button:hover{background:#334f71;border-color:#7999bc;color:white}
.ac-cats-note{font-size:12px;color:#aebbd0;text-align:center;margin:0 0 30px}
.ac-cats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.ac-cats-card{overflow:hidden;background:#1a2a3b;border:1px solid #2d4156;border-radius:12px;transition:transform .2s}
.ac-cats-card:hover{transform:translateY(-3px)}.ac-cats-card[hidden]{display:none}
.ac-cats-card a{color:inherit;text-decoration:none;display:block}
.ac-cats-card img,.ac-cats-no-photo{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#253448}
.ac-cats-no-photo{display:grid;place-items:center;color:#9caec0;font-size:13px}
.ac-cats-card-content{padding:19px 18px 23px}.ac-cats-card h2{font:normal 22px Georgia,serif;margin:0 0 10px;color:white}
.ac-cats-card p{font-size:13px;color:#c1cfe0;margin:5px 0}.ac-cats-card-content span{display:inline-block;margin-top:15px;color:#b7d8f5;font-size:13px}
.ac-cats-titles{color:#d8c2dd!important}.ac-cats-empty{text-align:center;color:#b8c9da;margin:50px auto}
.ac-cats-back{display:inline-block;color:#c0d8f1;text-decoration:none;margin:0 0 38px}
.ac-cats-profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:50px;align-items:center}
.ac-cats-profile-photo{width:100%;max-height:650px;object-fit:cover;border-radius:12px}
.ac-cats-profile-data h1{font:normal 43px Georgia,serif;line-height:1.15;margin:15px 0 18px}
.ac-cats-profile-data dl{display:grid;grid-template-columns:150px 1fr;gap:14px;border-top:1px solid #405873;padding-top:28px}
.ac-cats-profile-data dt{color:#99adc5}.ac-cats-profile-data dd{margin:0}
.ac-cats-section{margin-top:65px;padding-top:30px;border-top:3px solid #466589}.ac-cats-section h2{font:normal 30px Georgia,serif}
.ac-cats-section p{line-height:1.6;color:#bac8d9}.ac-cats-exhibitions{color:#c6ddf8}
@media(max-width:900px){.ac-cats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ac-cats-profile{grid-template-columns:1fr}}
@media(max-width:560px){.ac-cats-grid{grid-template-columns:1fr}.ac-cats-hero h1{font-size:38px}.ac-cats-main{padding:26px 16px 60px}}

/* v1.17 — czytelność i mniejsze kafelki */
body.ac-cats-body,.ac-cats,.ac-cats-main{background:#f7f9fc!important;color:#18283a!important}
.ac-cats-main{max-width:1180px!important;padding-top:26px!important}
.ac-cats-hero{padding:20px 0 24px!important}
.ac-cats-eyebrow{color:#506b88!important;font-size:12px!important}
.ac-cats-hero h1,.ac-cats-profile-data h1,.ac-cats-section h2{color:#17283c!important}
.ac-cats-hero h1{font-size:40px!important;margin:8px 0!important}
.ac-cats-hero p,.ac-cats-note{color:#465a71!important;font-size:14px!important}
.ac-cats-tabs{margin-bottom:18px!important}
.ac-cats-tabs button{color:#243b54!important;border-color:#607996!important;background:#fff!important;font-size:14px!important;font-weight:600!important}
.ac-cats-tabs button.is-active,.ac-cats-tabs button:hover{color:#fff!important;background:#29476b!important}
.ac-cats-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:17px!important}
.ac-cats-card{background:#fff!important;border-color:#d8e1eb!important;box-shadow:0 3px 12px rgba(20,35,50,.07)}
.ac-cats-card img,.ac-cats-no-photo{aspect-ratio:1/1!important}
.ac-cats-card-content{padding:13px 13px 16px!important}
.ac-cats-card h2{color:#17283c!important;font-size:18px!important;line-height:1.25!important}
.ac-cats-card p{color:#43576d!important;font-size:13px!important}
.ac-cats-card-content span,.ac-cats-back,.ac-cats-exhibitions{color:#1c4e80!important;font-weight:600}
.ac-cats-profile-data dt{color:#52677c!important}
.ac-cats-profile-data dd,.ac-cats-section p,.ac-cats-empty{color:#243b53!important}
.ac-cats-section{border-color:#476b94!important}
@media(max-width:900px){.ac-cats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:650px){.ac-cats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:400px){.ac-cats-grid{grid-template-columns:1fr!important}}

/* v1.18: kolejność daty i EMS, galeria profilu */
.ac-cats-card-content p{margin:6px 0!important;line-height:1.4!important}
.ac-cats-card-content p strong{font-weight:600;color:#263e58}
.ac-cats-gallery{min-width:0}.ac-cats-gallery-large{display:block;cursor:zoom-in}
.ac-cats-thumbnails{display:flex;overflow-x:auto;gap:9px;margin-top:12px;padding-bottom:8px;scroll-snap-type:x proximity}
.ac-cats-thumb{flex:0 0 82px;height:82px;overflow:hidden;padding:0;border:2px solid transparent;border-radius:6px;background:#fff;cursor:pointer;scroll-snap-align:start}
.ac-cats-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ac-cats-thumb.is-current,.ac-cats-thumb:hover,.ac-cats-thumb:focus-visible{border-color:#325e92}
.ac-cats-profile-data dd{line-height:1.5}

/* v1.19: symetryczne karty, tytuły nad imieniem */
.ac-cats-card a{height:100%;display:flex!important;flex-direction:column}
.ac-cats-card-content{display:flex;flex-direction:column;flex:1;min-width:0}
.ac-cats-title-slot{min-height:31px;display:flex;align-items:flex-start;flex-wrap:wrap;gap:5px;margin-bottom:7px}
.ac-cats-title-badge{display:inline-flex;align-items:center;padding:4px 7px;border-radius:4px;background:#263e60;color:#fff;font-size:11px;font-weight:700;line-height:1.25;white-space:nowrap;cursor:help}
.ac-cats-title-badge:focus-visible{outline:2px solid #78a9e3;outline-offset:2px}
.ac-cats-card h2{margin:0 0 7px!important;min-height:2.5em;line-height:1.25!important}
.ac-cats-card .ac-cats-dob{margin:0 0 8px!important}
.ac-cats-card .ac-cats-ems{margin:0 0 10px!important;flex:1}
.ac-cats-card .ac-cats-profile-link{margin-top:auto!important;padding-top:13px;display:block!important}

/* Kategoria kotów emerytowanych — bez zmiany zaakceptowanej typografii. */
.ac-cats-retired-label{color:#415a79;font-weight:600;margin:17px 0;}

.ac-cats-adopt{font-size:12px;color:#194d83;font-weight:700;margin:5px 0}

/* v1.22: pełne tytuły dla odwiedzających, bez zmiany zapisanych skrótów */
.ac-cats-title-slot{display:flex!important;align-items:flex-start!important;flex-wrap:wrap!important;gap:6px!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}
.ac-cats-title-slot .ac-cats-title-badge{display:inline-block!important;flex:0 1 auto!important;width:auto!important;max-width:100%!important;white-space:normal!important;overflow-wrap:break-word!important;line-height:1.35!important;padding:5px 9px!important;margin:0!important;color:#fff!important;background:#263e60!important;font-size:12px!important;font-weight:600!important}
.ac-cats-profile-data .ac-cats-titles{font-weight:600;line-height:1.5;color:#243a62}

/* V1.23: wyrównana strefa tytułów oraz imiona w jednym wierszu */
.ac-cats-card .ac-cats-title-slot{height:58px!important;min-height:58px!important;max-height:58px!important;align-content:flex-start!important;align-items:flex-start!important;overflow:hidden!important;margin-bottom:5px!important;box-sizing:border-box!important}
.ac-cats-card h2{font-family:Georgia,serif!important;font-size:19px!important;font-weight:700!important;line-height:1.2!important;white-space:nowrap!important;min-height:25px!important;max-height:25px!important;overflow:visible!important;letter-spacing:-.2px!important;margin:0 0 9px!important}

/* V1.24: compact badges; show complete full pedigree name on ONE line */
.ac-cats-card .ac-cats-title-slot{height:32px!important;min-height:32px!important;max-height:32px!important;margin-bottom:3px!important;gap:4px!important;overflow:visible!important;align-items:flex-start!important;align-content:flex-start!important}
.ac-cats-card .ac-cats-title-slot:has(.ac-cats-title-badge:nth-child(2)){height:58px!important;min-height:58px!important;max-height:58px!important}
.ac-cats-card h2{white-space:nowrap!important;display:block!important;width:max-content!important;max-width:none!important;overflow:visible!important;transform-origin:left center!important;line-height:1.2!important;min-height:24px!important;height:24px!important;max-height:24px!important;letter-spacing:-.35px!important;margin:0 0 8px!important;font-size:19px!important}

/* V1.25 — pełne nazwy mieszczące się wewnątrz kart, równe położenie imion.
   Strefa tytułów wyrównana do DOŁU: jedno odznaczenie nie tworzy przerwy nad imieniem. */
.ac-cats-card .ac-cats-title-slot,
.ac-cats-card .ac-cats-title-slot:has(.ac-cats-title-badge:nth-child(2)){
  height:57px!important;min-height:57px!important;max-height:57px!important;
  display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;
  justify-content:flex-end!important;align-items:flex-start!important;
  gap:3px!important;align-content:normal!important;overflow:visible!important;
  padding:0!important;margin:0 0 6px!important;
}
.ac-cats-card .ac-cats-title-slot .ac-cats-title-badge{
  display:block!important;max-width:100%!important;white-space:nowrap!important;
  font-size:11px!important;line-height:1.2!important;padding:4px 7px!important;
}
.ac-cats-card h2{
  display:block!important;width:100%!important;max-width:100%!important;
  box-sizing:border-box!important;white-space:nowrap!important;
  overflow:visible!important;text-overflow:clip!important;
  font-family:Georgia,serif!important;font-size:19px!important;letter-spacing:-.25px!important;
  font-weight:700!important;transform:none!important;
  height:auto!important;min-height:24px!important;max-height:none!important;
  line-height:1.25!important;margin:0 0 8px!important;
}

/* V1.26: bezpieczne położenie etykiet i pełne nazwy bez wyjścia poza kartę. */
.ac-cats-card .ac-cats-title-slot{height:50px!important;min-height:50px!important;max-height:50px!important;justify-content:flex-end!important;gap:3px!important;margin-bottom:2px!important;}
.ac-cats-card h2{max-width:100%!important;overflow:hidden!important;white-space:nowrap!important;min-height:22px!important;height:22px!important;margin:0 0 8px!important;letter-spacing:-.4px!important;}

/* V1.27 — approved 3-column layout. Override legacy experiments. */
.ac-cats .ac-cats-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:23px!important}
.ac-cats .ac-cats-card{min-width:0!important;overflow:hidden!important}
.ac-cats .ac-cats-card-content{padding:16px 20px 20px!important;min-width:0!important}
.ac-cats .ac-cats-card .ac-cats-title-slot,
.ac-cats .ac-cats-card .ac-cats-title-slot:has(.ac-cats-title-badge:nth-child(2)){
 height:54px!important;min-height:54px!important;max-height:none!important;
 display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;
 align-content:flex-end!important;align-items:flex-end!important;justify-content:flex-start!important;
 overflow:visible!important;gap:5px!important;margin:0 0 4px!important;padding:0!important}
.ac-cats .ac-cats-card .ac-cats-title-badge{white-space:normal!important;font-size:11px!important;line-height:1.2!important;max-width:100%!important}
.ac-cats .ac-cats-card h2{font:700 22px/1.18 Georgia,serif!important;letter-spacing:0!important;
 width:100%!important;max-width:100%!important;height:auto!important;min-height:52px!important;max-height:none!important;
 white-space:normal!important;overflow:visible!important;overflow-wrap:normal!important;word-break:normal!important;
 text-overflow:clip!important;transform:none!important;margin:4px 0 9px!important}
@media(max-width:930px){.ac-cats .ac-cats-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.ac-cats .ac-cats-grid{grid-template-columns:1fr!important}}

/* V1.28: zwarta galeria katalogu, wyraźny tytuł profilu. */
.ac-cats .ac-cats-grid{max-width:1170px!important;margin-left:auto!important;margin-right:auto!important;gap:18px!important}
.ac-cats .ac-cats-card-content{padding:11px 15px 15px!important}
.ac-cats .ac-cats-card > a > img{height:215px!important;max-height:215px!important;object-fit:cover!important}
.ac-cats .ac-cats-card h2{font-size:18px!important;line-height:1.22!important;min-height:44px!important;margin:3px 0 6px!important}
.ac-cats .ac-cats-card .ac-cats-title-slot{height:auto!important;min-height:32px!important;max-height:none!important;margin:0 0 3px!important}
.ac-cats .ac-cats-card p{margin-top:4px!important;margin-bottom:5px!important}
.ac-cats-profile-data .ac-cats-titles{color:#982D78!important;font-weight:700!important}
.ac-cats-show-history{border-left:3px solid #982D78;padding-left:16px;margin:12px 0 18px}
.ac-cats-show-history p{line-height:1.6;margin:0 0 8px}
@media(max-width:800px){.ac-cats .ac-cats-card > a > img{height:205px!important}}

/* v1.29: tabele wyników i słownik */
.ac-cats-exhibition-wrap{overflow-x:auto;width:100%;margin-top:12px;border:1px solid #dbe1ed;border-radius:10px;background:#fff}
.ac-cats-exhibition-table{width:100%;min-width:660px;border-collapse:collapse;font:14px/1.5 Arial,sans-serif;color:#26344d}
.ac-cats-exhibition-table th,.ac-cats-exhibition-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e4e8f0;vertical-align:top}
.ac-cats-exhibition-table thead th{background:#242c56;color:white;font-size:13px;white-space:nowrap}
.ac-cats-exhibition-table tbody tr:nth-child(even):not(.ac-cats-exhibition-heading){background:#f8f9fd}
.ac-cats-exhibition-table .ac-cats-exhibition-heading th{background:#e9edf9;color:#222c54;font-size:13px;font-weight:700}
.ac-cats-exhibition-note td{font-style:italic;color:#65718a}
.ac-cats-glossary-ref{margin:10px 0 14px!important;font-size:14px}
.ac-cats-glossary-ref a{color:#4059a6;text-decoration:underline;text-underline-offset:3px}
.ac-cats-glossary{max-width:850px;margin:40px auto 90px;padding:24px;color:#26344d}
.ac-cats-glossary h1{font:normal clamp(30px,4vw,47px) Georgia,serif;color:#222b4a}
.ac-cats-glossary dl{display:grid;grid-template-columns:minmax(100px,200px) 1fr;gap:0;margin:24px 0}
.ac-cats-glossary dt,.ac-cats-glossary dd{padding:15px 10px;margin:0;border-bottom:1px solid #dce2eb}
.ac-cats-glossary dt{font-weight:700;color:#982d78}
@media(max-width:600px){.ac-cats-glossary dl{grid-template-columns:1fr}.ac-cats-glossary dt{border-bottom:0;padding-bottom:0}.ac-cats-glossary dd{padding-top:6px}}

/* v1.85 – jednolinijkowe imiona kotów, Open Sans i kadr preferujący głowę */
.ac-cats .ac-cats-card h2{font-family:'Open Sans',Arial,sans-serif!important;font-size:clamp(14px,1.05vw,17px)!important;font-weight:700!important;line-height:1.3!important;white-space:nowrap!important;overflow:visible!important;min-height:25px!important;height:25px!important;max-height:25px!important;letter-spacing:-.3px!important;}
.ac-cats .ac-cats-card-content{overflow:visible!important}
.ac-cats .ac-cats-card>a>img{object-fit:cover!important;object-position:center 20%!important}
@media(max-width:600px){.ac-cats .ac-cats-card h2{font-size:16px!important}}

.ac-cats-exhibition-table .ac-cats-federation-divider th{background:#293c63!important;color:white!important;text-align:left!important;font-size:17px!important;padding:15px 18px!important;border-top:15px solid #fff!important}

/* v1.87: osobne barwy dla federacji w historii wystaw. */
.ac-cats-exhibition-table .ac-cats-federation-divider.ac-federation-wcf th{background:#293c63!important;color:#fff!important}
.ac-cats-exhibition-table .ac-cats-federation-divider.ac-federation-fife th{background:#8c426d!important;color:#fff!important}

/* v1.88: stała linia imion niezależnie od liczby odznak wystawowych. */
.ac-cats .ac-cats-grid .ac-cats-card-content {display:flex!important;flex-direction:column!important;align-items:stretch!important;}
.ac-cats .ac-cats-grid .ac-cats-card .ac-cats-title-slot,
.ac-cats .ac-cats-grid .ac-cats-card .ac-cats-title-slot:has(.ac-cats-title-badge:nth-child(2)) {
  height:58px!important;min-height:58px!important;max-height:58px!important;
  display:flex!important;align-content:flex-end!important;align-items:flex-end!important;
  justify-content:flex-start!important;flex-wrap:wrap!important;overflow:hidden!important;
  margin:0 0 5px!important;padding:0!important;gap:4px!important;
}
.ac-cats .ac-cats-grid .ac-cats-card h2 {
  display:block!important;flex:0 0 29px!important;width:100%!important;
  height:29px!important;min-height:29px!important;max-height:29px!important;
  margin:0 0 8px!important;padding:0!important;
  font-family:'Open Sans',Arial,sans-serif!important;font-weight:700!important;
  line-height:29px!important;white-space:nowrap!important;overflow:visible!important;
  text-overflow:clip!important;letter-spacing:-.25px!important;transform-origin:left center!important;
}
@media(max-width:600px){
.ac-cats .ac-cats-grid .ac-cats-card .ac-cats-title-slot{height:58px!important;min-height:58px!important;max-height:58px!important;}
}
