/* PAEDZ v2 0.12.0 — company profiles and the companies directory (loaded on those pages only). */
.co-page { padding: 18px 0 56px; }
.co-crumbs ol { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0 0 18px; padding: 0; font-size: .875rem; color: var(--d-meta); }
.co-crumbs li + li::before { content: "‹"; margin-inline-end: 6px; color: var(--d-meta); }
.co-crumbs a { color: var(--d-text); text-decoration: none; }
.co-crumbs a:hover, .co-crumbs a:focus-visible { color: var(--d-head); text-decoration: underline; }
.co-editor-note { margin: 0 0 18px; padding: 10px 14px; border: 1px dashed var(--d-control); border-radius: var(--c-radius); color: var(--d-text); font-size: .9rem; }
.co-editor-note a { color: var(--d-accent-text); }

.co-head { display: flex; gap: 22px; align-items: center; padding: 22px; border: 1px solid var(--c-border); border-radius: var(--c-radius); background: var(--c-surface); }
.co-head-b { min-width: 0; display: grid; gap: 8px; }
.co-name { margin: 0; overflow-wrap: anywhere; }
.co-alt { margin: 0; color: var(--d-text); font-size: 1rem; }
.co-logo { flex: 0 0 auto; width: 112px; height: 112px; display: grid; place-items: center; border-radius: 14px; background: #fff; padding: 10px; box-sizing: border-box; overflow: hidden; }
.co-logo img, .co-logo-img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; display: block; }
.co-logo.is-text { background: linear-gradient(145deg, #1a1d1f, #0f1112); border: 1px solid var(--d-border); color: var(--d-head); font-family: var(--f-head); font-weight: 800; font-size: 2.1rem; letter-spacing: .02em; padding: 0; }
.co-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 0; }
.co-chip { display: inline-flex; align-items: center; padding: 4px 10px; border: 1px solid var(--d-border-h); border-radius: 999px; font-size: .8125rem; font-weight: 700; color: var(--d-head); }
.co-chip.is-muted { color: var(--d-meta); border-style: dashed; }
.co-chip.is-num { border-color: transparent; background: rgba(255,255,255,.06); }
.co-links { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 4px 0 0; }
.co-site { display: inline-flex; gap: 6px; align-items: center; }
.co-soc { display: inline-grid; place-items: center; width: 38px; height: 38px; border: 1px solid var(--d-control); border-radius: 999px; color: var(--d-head); }
.co-soc:hover, .co-soc:focus-visible { border-color: var(--d-head); }

.co-sec { margin-top: 34px; }
.co-about { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 22px; align-items: start; }
.co-about > :only-child { grid-column: 1 / -1; }
.co-desc { color: var(--d-text); line-height: 1.9; font-size: 1.0625rem; }
.co-desc p { margin: 0 0 12px; }
.co-facts, .co-rel { margin: 0; display: grid; gap: 0; border: 1px solid var(--c-border); border-radius: var(--c-radius); background: var(--c-surface); }
.co-facts > div, .co-rel > div { display: grid; grid-template-columns: 9.5em minmax(0, 1fr); gap: 12px; padding: 11px 16px; border-top: 1px solid var(--c-border); }
.co-facts > div:first-child, .co-rel > div:first-child { border-top: 0; }
.co-facts dt, .co-rel dt { color: var(--d-meta); font-size: .875rem; font-weight: 700; }
.co-facts dd, .co-rel dd { margin: 0; color: var(--d-head); overflow-wrap: anywhere; }
.co-facts a, .co-rel a { color: var(--d-head); text-decoration: underline; text-decoration-color: var(--d-control); text-underline-offset: 3px; }
.co-rel dd { display: flex; flex-wrap: wrap; gap: 6px; }
.co-tag { display: inline-block; padding: 4px 10px; border: 1px solid var(--d-border-h); border-radius: 999px; font-size: .875rem; text-decoration: none !important; }
.co-tag.is-plain { color: var(--d-text); border-style: dashed; }

.co-search, .co-filter { display: flex; flex-wrap: wrap; gap: 10px; align-items: end; margin-top: 26px; }
.co-search input, .co-filter input, .co-filter select { min-height: 44px; padding: 8px 12px; border: 1px solid var(--d-control); border-radius: 10px; background: #0b0c0d; color: var(--d-head); font: inherit; min-width: 0; }
.co-search input { flex: 1 1 260px; }
.co-f { display: grid; gap: 4px; flex: 1 1 180px; font-size: .8125rem; color: var(--d-meta); font-weight: 700; }
.co-f:first-child { flex-basis: 260px; }
.co-clear { color: var(--d-text); font-size: .9rem; align-self: center; }
.co-none { color: var(--d-meta); }

.co-games { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 16px; }
.co-game a { display: grid; gap: 6px; text-decoration: none; color: var(--d-head); }
.co-game-art { display: block; aspect-ratio: 2 / 3; border-radius: 10px; overflow: hidden; background: #111; border: 1px solid var(--c-border); }
.co-game-art img, .co-game-art .paedz-image-placeholder { width: 100%; height: 100%; object-fit: cover; display: block; }
.co-game-art .paedz-image-placeholder { display: grid; place-items: center; color: var(--d-meta); font-size: .75rem; letter-spacing: .1em; }
.co-game-t { font-weight: 800; line-height: 1.45; font-size: .95rem; }
.co-game-m { color: var(--d-meta); font-size: .8125rem; }
.co-game a:hover .co-game-art, .co-game a:focus-visible .co-game-art { border-color: var(--d-border-h); }
.co-game a:hover .co-game-t { color: var(--title-h); }
.co-pager { margin-top: 18px; }

.co-posts { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 16px; }
.co-post { display: grid; gap: 6px; align-content: start; }
.co-post .rc { height: 100%; }
.co-via { font-size: .75rem; font-weight: 800; color: var(--d-meta); }
.co-via.is-direct { color: var(--d-accent-text); }
.co-sources { margin-top: 36px; padding-top: 14px; border-top: 1px solid var(--c-border); color: var(--d-meta); font-size: .8125rem; }
.co-sources a { color: var(--d-text); }

/* directory */
.co-az ul { list-style: none; display: flex; flex-wrap: wrap; gap: 4px; margin: 18px 0 8px; padding: 0; }
.co-az a, .co-az span { display: inline-grid; place-items: center; min-width: 36px; height: 36px; padding: 0 8px; border: 1px solid var(--d-border); border-radius: 8px; color: var(--d-head); text-decoration: none; font-weight: 700; font-size: .875rem; }
.co-az a[aria-current] { background: var(--d-head); color: #000; border-color: var(--d-head); }
.co-az a:hover, .co-az a:focus-visible { border-color: var(--d-head); }
.co-az .is-off { color: #5d6262; border-style: dashed; }
.co-cards { list-style: none; margin: 18px 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.co-card a { display: flex; gap: 14px; align-items: center; padding: 14px; border: 1px solid var(--c-border); border-radius: var(--c-radius); background: var(--c-surface); text-decoration: none; height: 100%; box-sizing: border-box; }
.co-card a:hover, .co-card a:focus-visible { border-color: var(--d-border-h); background: var(--c-surface-h, #121517); }
.co-card .co-logo { width: 60px; height: 60px; border-radius: 10px; padding: 6px; }
.co-card .co-logo.is-text { font-size: 1.2rem; }
.co-card-b { display: grid; gap: 3px; min-width: 0; }
.co-card-t { color: var(--d-head); font-weight: 800; overflow-wrap: anywhere; }
.co-card-m, .co-card-n { color: var(--d-meta); font-size: .8125rem; }
.co-card-n { color: var(--d-text); }

@media (max-width: 760px) {
  .co-head { flex-direction: column; align-items: flex-start; padding: 18px; gap: 14px; }
  .co-logo { width: 88px; height: 88px; }
  .co-about { grid-template-columns: 1fr; }
  .co-facts > div, .co-rel > div { grid-template-columns: 1fr; gap: 2px; }
  .co-games { grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 12px; }
  .co-posts { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .co-card a, .co-soc { transition: none; } }
