/* CPU pages inherit the global shell, typography, theme and ad geometry. */
.database-categories { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--layout-grid-gap); }
.database-categories article { border-top: 1px solid var(--color-borde); padding-block: 18px; }
.database-categories h3 { margin: 0 0 8px; }
.database-categories p { color: var(--color-texto-secundario); }
.database-categories a, .pagina-processors a { color: var(--color-acento); }
.pagina-processors { overflow-wrap: anywhere; min-width: 0; }
.processor-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; font-size: .9rem; margin-bottom: 24px; }
.processor-catalog-nav { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; margin-block: 24px; font-size: .9rem; }
.processor-catalog-nav a { padding-block: 8px; }
.processor-format { font-size: .9rem; }
.processor-heading h1 { margin: 8px 0 16px; font-size: clamp(1.9rem, 3vw, 3rem); line-height: 1.12; }
.processor-heading p, .processor-note { color: var(--color-texto-secundario); line-height: 1.65; }
.processors-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-block: 28px; }
.processors-filters label { display: grid; gap: 8px; min-width: 0; font-weight: 600; }
.processors-filters .processors-query { grid-column: 1 / -1; }
.processors-filters input, .processors-filters select { width: 100%; min-width: 0; padding: 10px; border: 1px solid var(--color-borde); border-radius: 6px; color: var(--color-contenido); background: var(--color-fondo); font: inherit; }
.pagina-processors button { min-height: 42px; padding: 10px 16px; border: 1px solid var(--color-borde); border-radius: 6px; background: var(--color-botones); color: #fff; font: inherit; cursor: pointer; }
.pagina-processors button:disabled { opacity: .55; cursor: default; }
.pagina-processors :focus-visible, .database-categories a:focus-visible { outline: 3px solid var(--color-acento); outline-offset: 3px; }
.processors-results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--layout-grid-gap); }
.processor-card { min-width: 0; border-top: 1px solid var(--color-borde); padding-block: 20px; }
.processor-card h2 { margin: 8px 0 12px; font-size: 1.15rem; line-height: 1.45; }
.processor-card p { margin-block: 6px; line-height: 1.55; }
.processor-card > p:first-child { color: var(--color-texto-secundario); font-size: .85rem; }
.processors-pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 16px; margin-top: 28px; }
.processors-pagination[hidden], .pagina-processors [hidden] { display: none; }
.processor-specs, .processor-sources, .processor-related { margin-top: 32px; }
.processor-specs h2, .processor-sources h2, .processor-related h2 { font-size: 1.35rem; margin: 0 0 16px; }
.processor-specs table { border-collapse: collapse; width: 100%; table-layout: fixed; line-height: 1.6; }
.processor-specs th, .processor-specs td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--color-borde); overflow-wrap: anywhere; }
.processor-specs th { width: 45%; font-weight: 600; }
.processor-sources p, .processor-related li { line-height: 1.6; }
@media (max-width: 1024px) { .processors-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) {
  .database-categories, .processors-results, .processors-filters { grid-template-columns: minmax(0, 1fr); }
  .processor-specs th, .processor-specs td { padding: 10px 6px; font-size: .9rem; }
}
