/*
Theme Name: Plano Político
Theme URI: https://planopolitico.com
Author: Plano Político
Description: Tema a medida para Plano Político: portada de diario, secciones de Congreso, Provincias, Elecciones, Finanzas, La Semana Política y Plano Político TV, tablero de datos en vivo y espacios para AdSense.
Version: 1.0.0
Requires at least: 6.2
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: planopolitico
*/

:root {
	--pp-accent: #0E4D5C;
	--pp-accent-dark: #0A3842;
	--pp-amber: #F2B33D;
	--pp-amber-soft: #FFF1D6;
	--pp-ink: #16181D;
	--pp-ink-2: #3C434B;
	--pp-muted: #4B5159;
	--pp-soft: #9AA0A8;
	--pp-line: #DDE1E5;
	--pp-line-2: #C9CDD3;
	--pp-mist: #EEF3F3;
	--pp-photo: #D3DADF;
	--pp-dark-2: #20242B;
	--pp-dark-3: #2A2F37;
	--pp-dark-line: #343A43;
	--pp-against: #8A4B0A;
	--pp-serif: 'Newsreader', Georgia, 'Times New Roman', serif;
	--pp-sans: 'Instrument Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--pp-max: 1280px;
	--pp-gutter: 24px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #FFFFFF; color: var(--pp-ink); font-family: var(--pp-sans); font-size: 16px; line-height: 1.5; }
img { max-width: 100%; height: auto; display: block; }
a { color: var(--pp-ink); text-decoration: none; }
a:hover, a:focus-visible { color: var(--pp-accent); text-decoration: underline; }
:focus-visible { outline: 3px solid var(--pp-amber); outline-offset: 2px; }
h1, h2, h3, h4 { font-family: var(--pp-serif); margin: 0; line-height: 1.15; }
p { margin: 0 0 1em; }
button, input, select, textarea { font: inherit; color: inherit; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }
.skip-link:focus { position: fixed; top: 8px; left: 8px; z-index: 1000; width: auto; height: auto; clip: auto; background: #fff; padding: 12px 16px; }

.pp-wrap { max-width: var(--pp-max); margin: 0 auto; padding-left: var(--pp-gutter); padding-right: var(--pp-gutter); }
.pp-main { padding-top: 28px; }
.pp-section { margin-top: 48px; }
.pp-row { display: flex; flex-wrap: wrap; gap: 32px; align-items: flex-start; }
.pp-col-main { flex: 999 1 560px; min-width: 0; }
.pp-col-side { flex: 1 1 300px; min-width: 0; }
.pp-grid { display: grid; gap: 24px; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.pp-grid--wide { grid-template-columns: repeat(auto-fill, minmax(360px, 1fr)); }
.pp-grid--narrow { grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); }

/* Etiquetas y textos chicos */
.pp-kicker { font-family: var(--pp-sans); font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--pp-accent); }
.pp-kicker a { color: inherit; }
.pp-meta { font-size: 14px; color: var(--pp-muted); }
.pp-meta strong, .pp-meta a { color: var(--pp-ink); }
.pp-label-amber { display: inline-block; background: var(--pp-amber); color: var(--pp-ink); font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; padding: 5px 10px; border-radius: 3px; }
.pp-more { font-size: 14px; font-weight: 600; color: var(--pp-accent); }
.pp-note { font-size: 13px; color: var(--pp-muted); }

/* Encabezados de sección */
.pp-section-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 8px 16px; border-bottom: 2px solid var(--pp-ink); padding-bottom: 8px; margin-bottom: 20px; }
.pp-section-head h2 { font-size: 30px; font-weight: 700; }
.pp-section-head nav { display: flex; flex-wrap: wrap; gap: 16px; font-size: 14px; font-weight: 600; }
.pp-page-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end; gap: 16px; border-bottom: 3px double var(--pp-ink); padding-bottom: 18px; }
.pp-page-head h1 { font-size: 52px; font-weight: 700; line-height: 1; }
.pp-page-head p { margin: 6px 0 0; font-size: 17px; color: var(--pp-ink-2); }

/* Cabecera */
.pp-header { background: #fff; }
.pp-header__top { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between; padding-top: 18px; font-size: 14px; color: var(--pp-muted); }
.pp-header__date { flex: 1 1 240px; display: flex; flex-direction: column; gap: 2px; }
.pp-header__date strong { color: var(--pp-ink); }
.pp-brand { flex: 0 1 auto; display: flex; flex-direction: column; align-items: center; gap: 8px; text-decoration: none; }
.pp-brand:hover { text-decoration: none; }
.pp-brand img { height: 60px; width: auto; }
.pp-brand__tagline { font-size: 12px; font-weight: 600; letter-spacing: 3px; text-transform: uppercase; color: var(--pp-muted); text-align: center; }
.pp-header__actions { flex: 1 1 240px; display: flex; gap: 10px; align-items: center; justify-content: flex-end; }
.pp-icon-btn { width: 44px; height: 44px; border: 1px solid var(--pp-line-2); background: #fff; border-radius: 22px; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.pp-tv-btn { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 16px; border-radius: 22px; background: var(--pp-accent); color: #fff; font-weight: 600; font-size: 14px; }
.pp-tv-btn:hover { color: #fff; background: var(--pp-accent-dark); text-decoration: none; }
.pp-dot { width: 8px; height: 8px; border-radius: 4px; background: var(--pp-amber); display: inline-block; }
.pp-menu-btn { display: none; }
.pp-nav { margin-top: 18px; }
.pp-nav ul { list-style: none; margin: 0; padding: 0; border-top: 3px double var(--pp-ink); border-bottom: 1px solid var(--pp-ink); display: flex; flex-wrap: wrap; justify-content: center; gap: 2px; font-size: 15px; font-weight: 600; }
.pp-nav a { display: block; padding: 13px 14px; }
.pp-nav .current-menu-item > a, .pp-nav .current-category-ancestor > a, .pp-nav .pp-nav__tv > a { color: var(--pp-accent); }
.pp-nav ul ul { display: none; }
.pp-search { display: none; padding: 14px 0; border-bottom: 1px solid var(--pp-line); }
.pp-search.is-open { display: block; }
.pp-searchform { display: flex; gap: 10px; max-width: 640px; margin: 0 auto; }
.pp-searchform input[type=search] { flex: 1; min-width: 0; height: 46px; padding: 0 14px; border: 1px solid var(--pp-soft); border-radius: 4px; }
.pp-btn { display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 0 20px; border: 0; border-radius: 4px; background: var(--pp-accent); color: #fff; font-weight: 700; cursor: pointer; text-decoration: none; }
.pp-btn:hover { background: var(--pp-accent-dark); color: #fff; text-decoration: none; }
.pp-btn--amber { background: var(--pp-amber); color: var(--pp-ink); }
.pp-btn--amber:hover { background: #E0A126; color: var(--pp-ink); }
.pp-btn--ghost { background: transparent; color: #fff; border: 1px solid #4B525C; }

/* Cabecera compacta (notas y secciones) */
.pp-header--compact { border-bottom: 1px solid var(--pp-ink); }
.pp-header--compact .pp-header__bar { display: flex; flex-wrap: wrap; gap: 12px 16px; align-items: center; justify-content: space-between; padding-top: 12px; padding-bottom: 12px; }
.pp-header--compact .pp-brand img { height: 36px; }
.pp-header--compact .pp-nav { margin-top: 0; flex: 1 1 auto; }
.pp-header--compact .pp-nav ul { border: 0; justify-content: flex-end; font-size: 14px; }
.pp-header--compact .pp-nav a { padding: 12px 10px; }

/* Ticker */
.pp-ticker { display: flex; gap: 14px; align-items: center; padding: 10px 0; border-bottom: 1px solid var(--pp-line); font-size: 14px; overflow: hidden; }
.pp-ticker__items { display: flex; gap: 22px; white-space: nowrap; min-width: 0; overflow: hidden; }
.pp-ticker__sep { color: var(--pp-soft); }

/* Fotos y tarjetas */
.pp-media { background: var(--pp-photo); aspect-ratio: 3 / 2; overflow: hidden; }
.pp-media img { width: 100%; height: 100%; object-fit: cover; }
.pp-media--wide { aspect-ratio: 16 / 9; }
.pp-media--thumb { flex: 0 0 112px; height: 76px; aspect-ratio: auto; }
.pp-credit { font-size: 12px; color: var(--pp-muted); margin-top: 6px; }
.pp-card { display: flex; flex-direction: column; gap: 10px; }
.pp-card__title { font-size: 21px; font-weight: 600; line-height: 1.22; }
.pp-card--lead .pp-card__title { font-size: 26px; font-weight: 700; line-height: 1.15; }
.pp-list-item { display: flex; gap: 12px; padding: 14px 0; border-bottom: 1px solid var(--pp-line); }
.pp-list-item h3 { font-size: 18px; font-weight: 600; line-height: 1.25; }
.pp-list-item__time { flex: 0 0 46px; font-size: 13px; font-weight: 600; color: var(--pp-muted); }
.pp-link-row { display: block; font-size: 15px; padding: 10px 0; border-top: 1px solid var(--pp-line); }

/* Tapa */
.pp-tapa { display: flex; flex-wrap: wrap; gap: 32px; align-items: flex-start; }
.pp-tapa__latest { flex: 1 1 240px; min-width: 0; order: 1; display: flex; flex-direction: column; }
.pp-tapa__latest > .pp-kicker { padding-bottom: 8px; border-bottom: 2px solid var(--pp-ink); }
.pp-tapa__hero { flex: 999 1 560px; min-width: 0; order: 2; display: flex; flex-direction: column; gap: 14px; }
.pp-tapa__hero .pp-media { aspect-ratio: 3 / 2; }
.pp-tapa__hero h1 { font-size: 50px; font-weight: 700; line-height: 1.04; letter-spacing: -0.6px; }
.pp-tapa__hero .pp-dek { font-family: var(--pp-serif); font-size: 21px; line-height: 1.45; color: var(--pp-ink-2); margin: 0; }
.pp-tapa__also { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 8px; padding-top: 16px; border-top: 1px solid var(--pp-line); }
.pp-tapa__also a { font-family: var(--pp-serif); font-weight: 600; font-size: 19px; line-height: 1.25; }
.pp-tapa__columns { flex: 1 1 260px; min-width: 0; order: 3; background: var(--pp-mist); padding: 20px; display: flex; flex-direction: column; gap: 18px; }

/* Columnistas */
.pp-columnist { display: flex; gap: 12px; align-items: flex-start; padding-bottom: 16px; border-bottom: 1px solid #C9D4D6; }
.pp-avatar { flex: 0 0 auto; border-radius: 50%; background: #C2CDD0; object-fit: cover; }
.pp-columnist__name { font-size: 13px; font-weight: 700; }
.pp-opinion-title { font-family: var(--pp-serif); font-style: italic; font-weight: 500; font-size: 19px; line-height: 1.25; }

/* Publicidad */
.pp-ad { display: flex; flex-direction: column; align-items: center; gap: 6px; margin: 32px auto; width: 100%; }
.pp-ad__label { font-size: 11px; letter-spacing: 1px; text-transform: uppercase; color: #5A6068; }
.pp-ad__slot { width: 100%; display: flex; justify-content: center; }
.pp-ad--leaderboard .pp-ad__slot { max-width: 970px; min-height: 90px; }
.pp-ad--rectangle .pp-ad__slot { max-width: 336px; min-height: 250px; }
.pp-ad--skyscraper .pp-ad__slot { max-width: 300px; min-height: 600px; }
.pp-ad-top .pp-ad { margin: 12px auto 0; }
.pp-ad__placeholder { width: 100%; height: 100%; min-height: inherit; border: 1px dashed #9AA6AA; background: #F7F8F9; display: flex; align-items: center; justify-content: center; color: #5A6068; font-size: 13px; text-align: center; padding: 8px; }

/* Tablero */
.pp-board { margin-top: 44px; border-top: 2px solid var(--pp-ink); padding-top: 18px; }
.pp-board__head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 8px; margin-bottom: 16px; }
.pp-board__head h2 { font-size: 28px; font-weight: 700; }
.pp-board__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 16px; }
.pp-tile { border: 1px solid var(--pp-line); border-radius: 6px; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.pp-tile__title { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--pp-accent); margin: 0; font-family: var(--pp-sans); }
.pp-tile__row { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; font-size: 15px; padding-bottom: 6px; border-bottom: 1px solid #EEF0F2; }
.pp-tile__row:last-child { border-bottom: 0; }
.pp-tile__row small { font-size: 13px; color: var(--pp-muted); }
.pp-tile--dark { background: var(--pp-ink); border-color: var(--pp-ink); color: #fff; }
.pp-tile--dark .pp-tile__title { color: var(--pp-amber); }
.pp-tile--dark a { color: var(--pp-amber); }
.pp-weather { display: flex; align-items: center; gap: 14px; }
.pp-weather__temp { font-size: 34px; font-weight: 700; line-height: 1; }
.pp-weather__days { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; font-size: 13px; text-align: center; color: var(--pp-muted); }
.pp-weather__days strong { color: var(--pp-ink); display: block; }
.pp-select { height: 40px; padding: 0 8px; border: 1px solid var(--pp-line-2); border-radius: 4px; background: #fff; }
.pp-countdown { font-family: var(--pp-serif); font-size: 40px; font-weight: 700; line-height: 1; }
.pp-stale { font-size: 12px; color: var(--pp-muted); }

/* Bloque TV en portada */
.pp-tv { background: var(--pp-ink); color: #fff; border-radius: 8px; padding: 28px; display: flex; flex-wrap: wrap; gap: 28px; }
.pp-tv a { color: #fff; }
.pp-tv a:hover { color: var(--pp-amber); }
.pp-tv h2 { font-size: 30px; font-weight: 700; }
.pp-tv__player { aspect-ratio: 16 / 9; background: var(--pp-dark-3); border-radius: 6px; overflow: hidden; display: flex; align-items: center; justify-content: center; color: #B9C0C8; }
.pp-tv__player iframe { width: 100%; height: 100%; border: 0; display: block; }
.pp-tv__label { font-size: 12px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--pp-amber); }
.pp-tv__slot { display: flex; gap: 14px; padding: 10px 0; border-bottom: 1px solid var(--pp-dark-line); font-size: 15px; }
.pp-tv__slot time { flex: 0 0 52px; color: #B9C0C8; }
.pp-tv__slot.is-now time { color: var(--pp-amber); font-weight: 700; }

/* Finanzas recuadro */
.pp-box-accent { border: 2px solid var(--pp-accent); border-radius: 8px; padding: 20px; display: flex; flex-direction: column; gap: 12px; }
.pp-box-mist { background: var(--pp-mist); border-radius: 8px; padding: 28px; }
.pp-converter { display: flex; flex-direction: column; gap: 10px; }
.pp-converter label { display: flex; flex-direction: column; gap: 4px; font-size: 13px; font-weight: 600; }
.pp-converter input, .pp-converter select, .pp-field { height: 46px; padding: 0 12px; border: 1px solid var(--pp-soft); border-radius: 4px; background: #fff; font-weight: 400; }
.pp-converter__result { background: var(--pp-mist); border-radius: 6px; padding: 14px; display: flex; justify-content: space-between; align-items: baseline; }
.pp-converter__result strong { font-size: 24px; }

/* Opinión */
.pp-opinion-card { background: #fff; border-radius: 6px; padding: 20px; display: flex; flex-direction: column; gap: 12px; }
.pp-opinion-card h3 { font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.25; }
.pp-opinion-card__author { display: flex; align-items: center; gap: 10px; margin-top: auto; font-size: 14px; font-weight: 600; }

/* Boletín */
.pp-newsletter { margin-top: 48px; border-top: 3px double var(--pp-ink); border-bottom: 1px solid var(--pp-ink); padding: 28px 0; display: flex; flex-wrap: wrap; gap: 24px; align-items: center; justify-content: space-between; }
.pp-newsletter h2 { font-size: 28px; font-weight: 700; }
.pp-newsletter form { flex: 1 1 420px; display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-end; }
.pp-newsletter label { flex: 1 1 240px; display: flex; flex-direction: column; gap: 4px; font-size: 13px; font-weight: 600; }
.pp-newsletter input { height: 46px; padding: 0 12px; border: 1px solid var(--pp-soft); border-radius: 4px; font-weight: 400; }

/* Pie */
.pp-footer { margin-top: 56px; background: var(--pp-ink); color: #D6DADF; font-size: 14px; }
.pp-footer a { color: #D6DADF; }
.pp-footer a:hover { color: #fff; }
.pp-footer__cols { display: flex; flex-wrap: wrap; gap: 36px; padding-top: 40px; padding-bottom: 28px; }
.pp-footer__about { flex: 1 1 280px; display: flex; flex-direction: column; gap: 10px; line-height: 1.5; }
.pp-footer__about img { width: 180px; height: auto; }
.pp-footer__col { flex: 1 1 180px; }
.pp-footer__col h2 { font-family: var(--pp-sans); color: var(--pp-amber); font-size: 12px; letter-spacing: 1px; text-transform: uppercase; margin-bottom: 10px; }
.pp-footer__col ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.pp-footer__social { display: flex; flex-wrap: wrap; gap: 16px; font-weight: 600; }
.pp-footer__social a { color: #fff; }
.pp-footer__bottom { border-top: 1px solid var(--pp-dark-line); padding-top: 16px; padding-bottom: 16px; color: var(--pp-soft); font-size: 13px; display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; }
.pp-footer__bottom button { background: none; border: 0; color: var(--pp-soft); text-decoration: underline; cursor: pointer; padding: 0; font-size: 13px; }

/* Nota */
.pp-breadcrumb { font-size: 13px; color: var(--pp-muted); display: flex; flex-wrap: wrap; gap: 8px; }
.pp-breadcrumb a { color: var(--pp-muted); }
.pp-article-head { max-width: 860px; margin: 22px auto 0; display: flex; flex-direction: column; gap: 16px; text-align: center; align-items: center; }
.pp-article-head h1 { font-size: 54px; font-weight: 700; line-height: 1.05; letter-spacing: -0.6px; }
.pp-article-head .pp-dek { font-family: var(--pp-serif); font-size: 22px; line-height: 1.45; color: var(--pp-ink-2); margin: 0; }
.pp-byline { display: flex; flex-wrap: wrap; gap: 8px 14px; align-items: center; justify-content: center; font-size: 14px; color: var(--pp-muted); padding-top: 6px; }
.pp-figure { margin: 28px auto 0; max-width: 1100px; }
.pp-figure figcaption { font-size: 13px; color: var(--pp-muted); margin-top: 8px; }
.pp-article-layout { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; }
.pp-share { flex: 0 0 52px; display: flex; flex-direction: column; gap: 10px; align-items: center; position: sticky; top: 24px; }
.pp-share span { font-size: 11px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; color: var(--pp-muted); }
.pp-share a, .pp-share button { width: 44px; height: 44px; border-radius: 22px; border: 1px solid var(--pp-line-2); background: #fff; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; padding: 0; }
.pp-article { flex: 999 1 560px; min-width: 0; max-width: 700px; }
.pp-content { font-family: var(--pp-serif); font-size: 20px; line-height: 1.65; color: #22262C; }
.pp-content p { margin: 0 0 22px; }
.pp-content h2 { font-size: 28px; font-weight: 700; margin: 34px 0 14px; }
.pp-content h3 { font-size: 23px; font-weight: 700; margin: 28px 0 12px; }
.pp-content a { color: var(--pp-accent); text-decoration: underline; }
.pp-content blockquote { margin: 8px 0 30px; padding: 0; border: 0; font-style: italic; font-size: 30px; line-height: 1.3; color: var(--pp-ink); }
.pp-content blockquote::before { content: ""; display: block; width: 48px; height: 4px; background: var(--pp-accent); margin-bottom: 14px; }
.pp-content blockquote cite { display: block; margin-top: 10px; font-family: var(--pp-sans); font-style: normal; font-size: 14px; color: var(--pp-muted); }
.pp-content figure { margin: 0 0 26px; }
.pp-content figcaption { font-family: var(--pp-sans); font-size: 13px; color: var(--pp-muted); margin-top: 6px; }
.pp-content ul, .pp-content ol { margin: 0 0 22px; padding-left: 1.3em; }
.pp-content table { width: 100%; border-collapse: collapse; font-family: var(--pp-sans); font-size: 15px; }
.pp-content th, .pp-content td { border: 1px solid var(--pp-line); padding: 10px 12px; text-align: left; }
.pp-content .pp-ad { font-family: var(--pp-sans); }
.pp-sources { font-size: 14px; color: var(--pp-muted); border-top: 1px solid var(--pp-line); padding-top: 16px; margin-top: 8px; }
.pp-sources strong { color: var(--pp-ink); }
.pp-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.pp-tags a { padding: 8px 12px; border: 1px solid var(--pp-line-2); border-radius: 18px; font-size: 13px; }
.pp-author-box { margin-top: 28px; background: var(--pp-mist); border-radius: 8px; padding: 20px; display: flex; gap: 16px; align-items: flex-start; }
.pp-author-box p { margin: 4px 0; font-size: 14px; color: var(--pp-ink-2); }
.pp-aside { flex: 1 1 300px; min-width: 0; display: flex; flex-direction: column; gap: 28px; }
.pp-ranking__item { display: flex; gap: 14px; padding: 14px 0; border-bottom: 1px solid var(--pp-line); }
.pp-ranking__n { flex: 0 0 28px; font-family: var(--pp-serif); font-weight: 800; font-size: 30px; line-height: 1; color: var(--pp-accent); }
.pp-ranking__item a { font-family: var(--pp-serif); font-weight: 600; font-size: 17px; line-height: 1.3; }
.pp-correction { margin-top: 18px; font-family: var(--pp-sans); font-size: 14px; color: var(--pp-muted); }

/* Comentarios */
.pp-comments { margin-top: 40px; }
.pp-comments h2 { font-size: 24px; margin-bottom: 14px; }
.pp-comments ol { list-style: none; padding: 0; }
.pp-comments .comment-body { border-bottom: 1px solid var(--pp-line); padding: 14px 0; }
.pp-comments input[type=text], .pp-comments input[type=email], .pp-comments input[type=url], .pp-comments textarea { width: 100%; padding: 10px 12px; border: 1px solid var(--pp-soft); border-radius: 4px; }
.pp-comments .submit { height: 46px; padding: 0 20px; border: 0; border-radius: 4px; background: var(--pp-accent); color: #fff; font-weight: 700; cursor: pointer; }

/* Archivo */
.pp-archive-lead { display: flex; flex-wrap: wrap; gap: 32px; margin-top: 28px; }
.pp-pagination { margin-top: 36px; display: flex; flex-wrap: wrap; gap: 8px; }
.pp-pagination .page-numbers { min-width: 44px; height: 44px; padding: 0 12px; border: 1px solid var(--pp-line-2); border-radius: 22px; display: inline-flex; align-items: center; justify-content: center; font-weight: 600; }
.pp-pagination .current { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff; }

/* Pestañas */
.pp-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.pp-tab { height: 44px; padding: 0 18px; border-radius: 22px; border: 1px solid var(--pp-line-2); background: #fff; color: var(--pp-ink); font-weight: 600; cursor: pointer; }
.pp-tab[aria-selected="true"] { background: var(--pp-accent); border-color: var(--pp-accent); color: #fff; }
.pp-tabpanel[hidden] { display: none; }
.pp-chip { display: inline-block; padding: 10px 14px; border: 1px solid var(--pp-line-2); border-radius: 22px; font-size: 14px; font-weight: 600; }

/* Plano TV (página oscura) */
.pp-dark { background: var(--pp-ink); color: #fff; }
.pp-dark a { color: #fff; }
.pp-dark a:hover { color: var(--pp-amber); }
.pp-dark .pp-header--compact { background: var(--pp-ink); border-bottom-color: var(--pp-dark-line); }
.pp-dark .pp-nav a { color: #fff; }
.pp-dark .pp-icon-btn { background: transparent; border-color: #4B525C; }
.pp-dark .pp-page-head { border-bottom-color: var(--pp-dark-line); }
.pp-dark .pp-page-head p { color: #B9C0C8; }
.pp-dark .pp-tab { background: transparent; color: #fff; border-color: #4B525C; }
.pp-dark .pp-tab[aria-selected="true"] { background: var(--pp-amber); border-color: var(--pp-amber); color: var(--pp-ink); }
.pp-dark .pp-ad__placeholder { background: transparent; border-color: #4B525C; color: var(--pp-soft); }
.pp-dark .pp-ad__label { color: var(--pp-soft); }
.pp-dark .pp-footer { border-top: 1px solid var(--pp-dark-line); }
.pp-panel-dark { background: var(--pp-dark-2); border-radius: 8px; padding: 20px; }
.pp-grid-schedule { overflow-x: auto; border: 1px solid var(--pp-dark-line); border-radius: 8px; }
.pp-grid-schedule__row { min-width: 760px; display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.pp-grid-schedule__cell { padding: 16px; border-right: 1px solid var(--pp-dark-line); display: flex; flex-direction: column; gap: 6px; min-height: 110px; }
.pp-grid-schedule__cell time { font-size: 13px; font-weight: 700; color: var(--pp-amber); }
.pp-program { background: var(--pp-dark-2); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; }
.pp-program__embed { aspect-ratio: 16 / 9; background: #262B33; }
.pp-program__embed iframe { width: 100%; height: 100%; border: 0; display: block; }
.pp-program__empty { width: 100%; height: 100%; border-bottom: 2px dashed #4B525C; display: flex; align-items: center; justify-content: center; color: #B9C0C8; font-size: 14px; text-align: center; padding: 16px; }
.pp-program__body { padding: 16px 18px; display: flex; flex-direction: column; gap: 6px; }
.pp-program__body h3 { font-size: 22px; font-weight: 700; }
.pp-program__body p { margin: 0; font-size: 14px; color: #B9C0C8; }

/* Tablas de datos */
.pp-table-wrap { overflow-x: auto; border: 1px solid var(--pp-line); border-radius: 8px; }
.pp-table { width: 100%; min-width: 560px; border-collapse: collapse; font-size: 16px; }
.pp-table th { background: var(--pp-mist); text-align: left; font-size: 13px; text-transform: uppercase; letter-spacing: 0.8px; color: var(--pp-ink-2); padding: 12px 16px; font-weight: 700; }
.pp-table td { border-top: 1px solid var(--pp-line); padding: 13px 16px; }
.pp-table tbody th { background: none; border-top: 1px solid var(--pp-line); padding: 13px 16px; text-transform: none; letter-spacing: 0; font-size: 16px; color: var(--pp-ink); font-weight: 600; }
.pp-table .num { text-align: right; font-variant-numeric: tabular-nums; }
.pp-up { color: #0B6A50; }
.pp-down { color: var(--pp-against); }

/* Bloques editables (patrones) */
.pp-pattern-thermo { border: 1px solid var(--pp-ink); border-radius: 8px; padding: 20px; }
.pp-pattern-thermo h3, .pp-page-content .pp-pattern-thermo h3 { font-size: 13px; letter-spacing: 1px; text-transform: uppercase; font-family: var(--pp-sans); margin: 12px 0 6px; }
.pp-pattern-thermo .pp-sube { color: var(--pp-accent); }
.pp-pattern-thermo .pp-baja { color: var(--pp-against); }
.pp-pattern-debate { border: 1px solid var(--pp-ink); border-radius: 8px; overflow: hidden; }
.pp-pattern-debate > h2, .pp-pattern-debate > .wp-block-group__inner-container > h2 { background: var(--pp-ink); color: #fff; padding: 18px 22px; font-size: 26px; margin: 0; }
.pp-pattern-debate .wp-block-columns { margin: 0; gap: 0; }
.pp-pattern-debate .wp-block-column { padding: 22px; }
.pp-pattern-debate .wp-block-column + .wp-block-column { border-left: 1px solid var(--pp-line); }
.pp-pattern-agenda .wp-block-column { border: 1px solid var(--pp-line); border-radius: 8px; padding: 16px; }
.pp-stage { display: inline-block; font-size: 12px; font-weight: 700; padding: 4px 8px; border-radius: 3px; background: var(--pp-mist); }
.pp-explainer { background: var(--pp-mist); border-radius: 8px; padding: 20px; }
.pp-explainer h3 { font-size: 22px; margin-bottom: 10px; }
.pp-explainer p { font-size: 15px; line-height: 1.55; color: var(--pp-ink-2); }

/* Página genérica */
.pp-page { max-width: 760px; margin: 0 auto; }
.pp-page h1 { font-size: 46px; font-weight: 700; margin: 10px 0 24px; }
.pp-page-content { margin-top: 32px; }
.pp-page-content > * { max-width: 100%; }
.pp-page-content > * + * { margin-top: 28px; }
.pp-page-content h2 { font-size: 28px; font-weight: 700; margin-bottom: 14px; }
.pp-page-content h3 { font-size: 21px; }
.pp-page-content .wp-block-table { margin: 0; }
.pp-page-content .wp-block-table th { background: var(--pp-mist); text-align: left; font-size: 13px; text-transform: uppercase; letter-spacing: .8px; }
.pp-page-content .wp-block-columns { display: flex; flex-wrap: wrap; gap: 16px; }
.pp-page-content .wp-block-column { flex: 1 1 200px; min-width: 0; }
.pp-page-content p { margin: 0 0 8px; }

/* Gutenberg básico */
.alignwide { max-width: 1100px; }
.alignfull { width: 100%; }
.wp-block-image figcaption { font-size: 13px; color: var(--pp-muted); }
.wp-block-table table { width: 100%; border-collapse: collapse; }
.wp-block-table td, .wp-block-table th { border: 1px solid var(--pp-line); padding: 10px 12px; }

/* Responsive */
@media (max-width: 900px) {
	.pp-tapa__hero { order: 1; }
	.pp-tapa__latest { order: 2; }
	.pp-tapa__hero h1 { font-size: 34px; }
	.pp-article-head h1 { font-size: 36px; }
	.pp-page-head h1 { font-size: 40px; }
	.pp-share { position: static; flex: 1 1 100%; flex-direction: row; order: 2; }
}
@media (max-width: 760px) {
	:root { --pp-gutter: 14px; }
	.pp-header__top { padding-top: 10px; justify-content: space-between; flex-wrap: nowrap; }
	.pp-header__date, .pp-tv-btn, .pp-brand__tagline { display: none; }
	.pp-header__date { flex: 0 0 auto; }
	.pp-brand img { height: 30px !important; }
	.pp-header__actions { flex: 0 0 auto; }
	.pp-menu-btn { display: inline-flex; border: 0; }
	.pp-nav { margin-top: 10px; }
	.pp-nav ul { flex-wrap: nowrap; justify-content: flex-start; overflow-x: auto; border-top: 1px solid var(--pp-ink); font-size: 14px; scrollbar-width: none; }
	.pp-nav a { padding: 12px 10px; white-space: nowrap; }
	.pp-nav.is-open ul { flex-direction: column; flex-wrap: wrap; overflow: visible; }
	.pp-header--compact .pp-nav { flex: 1 1 100%; }
	.pp-header--compact .pp-nav ul { justify-content: flex-start; }
	.pp-tapa__also { grid-template-columns: 1fr; }
	.pp-tapa__hero h1 { font-size: 30px; }
	.pp-section-head h2, .pp-tv h2 { font-size: 24px; }
	.pp-tv { padding: 18px 14px; border-radius: 0; margin-left: calc(-1 * var(--pp-gutter)); margin-right: calc(-1 * var(--pp-gutter)); }
	.pp-article-head h1 { font-size: 30px; }
	.pp-article-head .pp-dek { font-size: 19px; }
	.pp-content { font-size: 18px; }
	.pp-content blockquote { font-size: 24px; }
	.pp-page-head h1 { font-size: 34px; }
	.pp-grid, .pp-grid--wide { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }
