/*
Theme Name: Alföldhír
Theme URI: https://alfoldhir.hu
Author: Jarvis
Description: Alföldhír közéleti hírportál témája – sötét magazin arculat. Claude Design "Alföldhír Design System" (magazin-sötét) alapján, tokenekre építve.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: alfoldhir
*/

/* ============================================================
   TOKENS  — Alföldhír Design System (verbatim a handoffból)
   ============================================================ */

/* fonts betöltése functions.php-ből (Google Fonts enqueue) */

:root{
/* ── Base palette ─────────────────────────────── */
--blue-900:#03395a;--blue-800:#055682;--blue-700:#066a9d;--blue-600:#077bb7;--blue-500:#2b93c9;--blue-300:#90c4df;--blue-200:#c3e0ee;--blue-100:#e0eff7;--blue-50:#f0f8fc;
--orange-800:#a83513;--orange-700:#cd451c;--orange-600:#f15a29;--orange-500:#f5764c;--orange-300:#fab79f;--orange-100:#fde8e0;--orange-50:#fef4f0;
--ink-900:#101519;--ink-800:#1d262d;--ink-700:#33414b;--ink-600:#4e6070;--ink-500:#6b7d8b;--ink-400:#93a3ae;--ink-300:#c2ced6;--ink-200:#dde5ea;--ink-100:#eaf0f3;--ink-50:#f4f7f9;--paper:#ffffff;
--red-600:#c62828;--red-100:#fbe9e9;--green-600:#1e7d4f;--green-100:#e6f4ec;--amber-600:#b26a00;--amber-100:#fdf1dd;

/* ── Semantic aliases (light) ─────────────────── */
--brand-primary:var(--blue-600);--brand-primary-hover:var(--blue-700);--brand-primary-active:var(--blue-800);
--brand-accent:var(--orange-600);--brand-accent-hover:var(--orange-700);--brand-accent-active:var(--orange-800);
--text-headline:var(--ink-900);--text-body:var(--ink-800);--text-secondary:var(--ink-600);--text-muted:var(--ink-500);--text-inverse:var(--paper);--text-link:var(--blue-700);--text-link-hover:var(--orange-600);--text-kicker:var(--blue-600);
--surface-page:var(--paper);--surface-card:var(--paper);--surface-sunken:var(--ink-50);--surface-inverse:var(--ink-900);--surface-brand:var(--blue-600);--surface-accent:var(--orange-600);--surface-highlight:var(--blue-50);
--border-hairline:var(--ink-200);--border-strong:var(--ink-300);--border-brand:var(--blue-600);--border-accent:var(--orange-600);
--focus-ring:var(--orange-600);--rule-section:var(--ink-900);
--rovat-kozelet:var(--blue-600);--rovat-kek-hirek:var(--blue-800);--rovat-sport:var(--green-600);--rovat-egeszseg:var(--blue-500);--rovat-kultura:var(--orange-600);--rovat-portre:var(--ink-700);--rovat-szines:var(--amber-600);--rovat-belfold:var(--ink-800);
--state-danger:var(--red-600);--state-danger-surface:var(--red-100);--state-success:var(--green-600);--state-success-surface:var(--green-100);--state-warning:var(--amber-600);--state-warning-surface:var(--amber-100);

/* Fonts */
--font-serif:"Newsreader",Georgia,"Times New Roman",serif;
--font-sans:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
--font-mono:"IBM Plex Mono",ui-monospace,monospace;
--font-wordmark:"Nunito","IBM Plex Sans",sans-serif;
--font-display:var(--font-serif);--font-headline:var(--font-serif);--font-article:var(--font-serif);--font-ui:var(--font-sans);--font-meta:var(--font-sans);

/* Sizes */
--size-3xs:11px;--size-2xs:12px;--size-xs:13px;--size-sm:14px;--size-base:16px;--size-md:18px;--size-lg:20px;--size-xl:24px;--size-2xl:28px;--size-3xl:34px;--size-4xl:42px;--size-5xl:52px;--size-6xl:64px;
--lh-tight:1.08;--lh-headline:1.18;--lh-snug:1.35;--lh-body:1.62;--lh-loose:1.75;
--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;
--tracking-tight:-0.02em;--tracking-normal:0;--tracking-wide:0.04em;--tracking-label:0.09em;
--type-display:var(--weight-semibold) var(--size-5xl)/var(--lh-tight) var(--font-serif);
--type-headline-1:var(--weight-semibold) var(--size-4xl)/var(--lh-headline) var(--font-serif);
--type-headline-2:var(--weight-semibold) var(--size-2xl)/var(--lh-headline) var(--font-serif);
--type-headline-3:var(--weight-semibold) var(--size-lg)/var(--lh-snug) var(--font-serif);
--type-lead:var(--weight-regular) var(--size-lg)/var(--lh-snug) var(--font-serif);
--type-article:var(--weight-regular) var(--size-md)/var(--lh-body) var(--font-serif);
--type-ui:var(--weight-medium) var(--size-sm)/1.4 var(--font-sans);
--type-meta:var(--weight-regular) var(--size-2xs)/1.4 var(--font-sans);
--type-label:var(--weight-semibold) var(--size-3xs)/1 var(--font-sans);

/* Spacing */
--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;
--gutter:32px;--gutter-tight:16px;
--measure-article:66ch;--measure-lead:40ch;
--width-content:1240px;--width-narrow:720px;--width-rail:320px;

/* Borders / radii */
--radius-0:0;--radius-1:2px;--radius-2:4px;--radius-3:6px;--radius-pill:999px;
--radius-card:8px;--radius-control:var(--radius-2);--radius-tag:var(--radius-1);--radius-image:6px;

/* Motion */
--ease-out:cubic-bezier(.2,.7,.35,1);
--dur-fast:140ms;--dur-base:220ms;
--transition-hover:color var(--dur-fast) var(--ease-out),background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),text-decoration-color var(--dur-fast) var(--ease-out);
}

/* ── Sötét mód: a szemantikus aliasok flippelnek (a .ah hordozza a data-theme=dark-ot) ── */
[data-theme="dark"]{
--ink-night:#0d1319;--ink-night-raised:#161e26;--ink-night-line:#26313a;
--brand-primary:var(--blue-500);--brand-primary-hover:var(--blue-300);--brand-primary-active:var(--blue-200);
--brand-accent:var(--orange-500);--brand-accent-hover:var(--orange-300);--brand-accent-active:var(--orange-100);
--text-headline:#f2f6f8;--text-body:#dfe8ee;--text-secondary:#a8b8c4;--text-muted:#7d8f9c;--text-inverse:var(--ink-900);--text-link:var(--blue-300);--text-link-hover:var(--orange-500);--text-kicker:var(--blue-500);
--surface-page:var(--ink-night);--surface-card:var(--ink-night-raised);--surface-sunken:#111820;--surface-inverse:var(--paper);--surface-brand:var(--blue-800);--surface-accent:var(--orange-700);--surface-highlight:#132434;
--border-hairline:var(--ink-night-line);--border-strong:#36444f;--border-brand:var(--blue-500);--border-accent:var(--orange-500);
--focus-ring:var(--orange-500);--rule-section:#f2f6f8;
--rovat-kozelet:var(--blue-500);--rovat-kek-hirek:var(--blue-300);--rovat-sport:#4caf7d;--rovat-egeszseg:var(--blue-300);--rovat-kultura:var(--orange-500);--rovat-portre:#a8b8c4;--rovat-szines:#e0a33c;--rovat-belfold:#c2ced6;
--state-danger:#ef6b6b;--state-danger-surface:#3a1e1e;--state-success:#4caf7d;--state-success-surface:#12301f;--state-warning:#e0a33c;--state-warning-surface:#33260f;
}

/* ============================================================
   BASE
   ============================================================ */
html{ -webkit-text-size-adjust:100%; }
body{ margin:0; background:#0d1319; }
.ah *,.ah *::before,.ah *::after{ box-sizing:border-box; }
.ah{
  font-family:var(--font-sans);
  background:var(--surface-page);
  color:var(--text-body);
  min-height:100vh;
  overflow-x:hidden;
}
.ah img{ max-width:100%; display:block; }
.ah a{ color:inherit; text-decoration:none; transition:var(--transition-hover); }
.ah h1,.ah h2,.ah h3,.ah h4{ margin:0; font-family:var(--font-serif); color:var(--text-headline); font-weight:var(--weight-semibold); line-height:var(--lh-headline); text-wrap:pretty; }
.ah p{ margin:0; }
.ah :focus-visible{ outline:2px solid var(--focus-ring); outline-offset:2px; }
.ah ::selection{ background:rgba(245,118,76,.3); }
.ah-wrap{ max-width:var(--width-content); margin:0 auto; padding:0 var(--gutter); }
.ah-icon{ display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; vertical-align:middle; }
.ah-sr{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }

/* ============================================================
   HEADER / MASTHEAD  (magazin-sötét)
   ============================================================ */
.ah-header{
  position:sticky; top:0; z-index:30;
  background:rgba(13,19,25,.92);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  border-bottom:1px solid var(--ink-night-line);
}
.ah-header__inner{
  max-width:var(--width-content); margin:0 auto; padding:14px var(--gutter);
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:20px;
}
.ah-logo{ display:block; flex:0 0 auto; }
.ah-logo img{ height:28px; width:auto; display:block; }
.ah-nav{ display:flex; flex-wrap:wrap; gap:22px; font-size:14px; font-weight:500; color:var(--text-secondary); }
.ah-nav a{ color:var(--text-secondary); }
.ah-nav a:hover,.ah-nav a.is-active{ color:var(--brand-accent); }
.ah-nav a.ah-nav--accent{ color:var(--brand-accent); }
.ah-header__tools{ display:flex; align-items:center; gap:14px; }
.ah-search-toggle{ font-size:14px; color:var(--text-secondary); background:none; border:none; cursor:pointer; display:inline-flex; align-items:center; gap:6px; font-family:var(--font-sans); }
.ah-search-toggle:hover{ color:var(--text-headline); }
.ah-pill{ border:1px solid var(--border-strong); border-radius:999px; padding:8px 18px; font-size:13px; font-weight:600; color:var(--text-headline); }
.ah-pill:hover{ border-color:var(--brand-accent); color:var(--brand-accent); }
.ah-pill--muted{ padding:8px 14px; font-weight:500; color:var(--text-secondary); }
.ah-navtoggle{ display:none; }

/* kereső panel (rejtett, JS nyitja) */
.ah-searchbar{ display:none; border-top:1px solid var(--ink-night-line); background:rgba(13,19,25,.96); }
.ah-searchbar.is-open{ display:block; }
.ah-searchbar form{ max-width:var(--width-content); margin:0 auto; padding:16px var(--gutter); display:flex; gap:10px; }
.ah-searchbar input[type=search]{ flex:1; background:var(--surface-sunken); border:1px solid var(--border-strong); color:var(--text-headline); border-radius:999px; padding:11px 18px; font-family:var(--font-sans); font-size:15px; }
.ah-searchbar button{ border:none; border-radius:999px; background:var(--brand-accent); color:var(--ink-900); padding:0 22px; font-weight:600; cursor:pointer; font-family:var(--font-sans); }

/* ============================================================
   HERO / LEAD STORY
   ============================================================ */
.ah-hero{ position:relative; height:620px; overflow:hidden; background:#111820; }
.ah-hero__img{ position:absolute; inset:0; }
.ah-hero__img img{ width:100%; height:100%; object-fit:cover; object-position:center 30%; }
.ah-hero__ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-size:12px; letter-spacing:.09em; text-transform:uppercase; color:rgba(255,255,255,.35); }
.ah-hero__scrim{ position:absolute; inset:0; background:linear-gradient(180deg,rgba(13,19,25,0) 0%,rgba(13,19,25,.25) 38%,rgba(13,19,25,.8) 66%,#0d1319 100%); pointer-events:none; }
.ah-hero__body{ position:absolute; left:0; right:0; bottom:0; }
.ah-hero__body .ah-wrap{ padding-bottom:52px; padding-top:0; }
.ah-hero__kickers{ display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:18px; }
.ah-hero__title{ font-family:var(--font-serif); font-weight:500; font-size:60px; line-height:1.06; letter-spacing:-.02em; color:#f2f6f8; margin:0 0 18px; max-width:19ch; }
.ah-hero__title a{ color:#f2f6f8; }
.ah-hero:hover .ah-hero__title a{ text-decoration:underline; text-decoration-color:var(--brand-accent); text-decoration-thickness:3px; text-underline-offset:5px; }
.ah-hero__excerpt{ font-family:var(--font-serif); font-size:20px; line-height:1.55; color:#c2ced6; margin:0 0 20px; max-width:58ch; }
.ah-hero__meta{ font-size:13px; letter-spacing:.04em; color:#7d8f9c; }

/* kickers / tag chips */
.ah-chip-solid{ background:var(--brand-accent); color:#101519; border-radius:999px; font-size:11px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; padding:6px 14px; display:inline-block; }
.ah-kicker{ font-size:12px; font-weight:500; letter-spacing:.09em; text-transform:uppercase; }

/* tag (rovat felirat) */
.ah-tag{ font:var(--type-label); text-transform:uppercase; letter-spacing:var(--tracking-label); color:var(--text-kicker); display:inline-block; }
.ah-tag--solid{ padding:4px 7px; border-radius:var(--radius-tag); background:var(--brand-accent); color:var(--text-inverse); }
.ah-tag--muted{ color:var(--text-muted); }

/* badge */
.ah-badge{ display:inline-flex; align-items:center; gap:5px; font:var(--type-label); text-transform:uppercase; letter-spacing:var(--tracking-label); padding:4px 8px; border-radius:var(--radius-tag); background:var(--surface-sunken); color:var(--text-secondary); }
.ah-badge--analysis{ background:var(--surface-highlight); color:var(--blue-300); }
.ah-badge--accent{ background:var(--state-warning-surface); color:var(--state-warning); }

/* ============================================================
   SECTIONS / HEADINGS
   ============================================================ */
.ah-section{ max-width:var(--width-content); margin:0 auto; padding:64px var(--gutter) 0; }
.ah-section--tight{ padding-top:0; }
.ah-secthead{ display:flex; align-items:baseline; justify-content:space-between; gap:16px; border-bottom:2px solid var(--rule-section); padding-bottom:12px; margin-bottom:32px; }
.ah-secthead h2{ font-family:var(--font-serif); font-weight:400; font-size:28px; margin:0; color:var(--text-headline); letter-spacing:var(--tracking-tight); }
.ah-secthead__more{ display:inline-flex; align-items:center; gap:4px; font:var(--type-label); text-transform:uppercase; letter-spacing:var(--tracking-label); color:var(--text-link); white-space:nowrap; }
.ah-secthead__more:hover{ color:var(--brand-accent); }

/* ============================================================
   CARD GRID  (ArticleCard)
   ============================================================ */
.ah-cardgrid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:40px; }
.ah-cardgrid--2{ grid-template-columns:1fr 1fr; }
.ah-card{ background:var(--surface-card); border-radius:var(--radius-card); overflow:hidden; display:flex; flex-direction:column; }
.ah-card__imgwrap{ position:relative; width:100%; aspect-ratio:16/9; overflow:hidden; background:var(--ink-800); }
.ah-card__imgwrap img{ width:100%; height:100%; object-fit:cover; object-position:center 30%; }
.ah-card__ph{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-size:11px; letter-spacing:.09em; text-transform:uppercase; color:var(--ink-500); }
.ah-card__body{ padding:22px 24px 26px; display:flex; flex-direction:column; gap:10px; }
.ah-card__rovat{ font-size:11px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; }
.ah-card__title{ font-family:var(--font-serif); font-weight:500; font-size:24px; line-height:1.2; margin:0; color:var(--text-headline); letter-spacing:var(--tracking-tight); }
.ah-card:hover .ah-card__title{ color:var(--brand-primary); }
.ah-card__excerpt{ font-size:15px; line-height:1.6; color:var(--text-secondary); margin:0; }
.ah-card__meta{ font-size:12px; color:var(--text-muted); }

/* sponsored strip */
.ah-sponsored{ display:flex; flex-wrap:wrap; gap:26px; align-items:center; background:var(--state-warning-surface); border-radius:8px; padding:22px 26px; margin-top:44px; }
.ah-sponsored__img{ position:relative; flex:0 0 180px; height:120px; border-radius:6px; overflow:hidden; background:var(--ink-800); }
.ah-sponsored__img img{ width:100%; height:100%; object-fit:cover; }
.ah-sponsored__body{ flex:1 1 300px; }
.ah-sponsored__labels{ display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-bottom:10px; }
.ah-sponsored__tag{ border:1px solid #e0a33c; color:#e0a33c; border-radius:3px; font-size:10px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; padding:4px 8px; }
.ah-sponsored__adv{ font-size:12px; color:#c9a86a; }
.ah-sponsored__title{ font-family:var(--font-serif); font-weight:500; font-size:22px; line-height:1.25; margin:0; color:var(--text-headline); }

/* ============================================================
   ARTICLE COLUMN + SIDEBAR  (single/rovat)
   ============================================================ */
.ah-layout{ max-width:var(--width-content); margin:0 auto; padding:56px var(--gutter) 0; display:grid; grid-template-columns:minmax(0,1fr) var(--width-rail); gap:56px; align-items:start; }
.ah-layout--article{ padding-top:40px; }

/* breadcrumb */
.ah-crumbs{ display:flex; align-items:center; gap:6px; flex-wrap:wrap; font:var(--type-meta); color:var(--text-muted); margin-bottom:20px; }
.ah-crumbs a{ color:var(--text-link); }
.ah-crumbs a:hover{ color:var(--brand-accent); }
.ah-crumbs__sep{ color:var(--ink-600); }

/* single article */
.ah-article{ display:flex; flex-direction:column; gap:24px; max-width:760px; }
.ah-article__tags{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; }
.ah-article__title{ font:var(--type-headline-1); font-size:42px; letter-spacing:var(--tracking-tight); color:var(--text-headline); }
.ah-article__lead{ font:var(--type-lead); font-size:20px; color:var(--text-secondary); max-width:52ch; }
.ah-article__bar{ display:flex; align-items:center; justify-content:space-between; gap:16px; border-top:1px solid var(--border-hairline); border-bottom:1px solid var(--border-hairline); padding:12px 0; }
.ah-meta{ display:flex; flex-wrap:wrap; align-items:center; gap:12px; font:var(--type-meta); color:var(--text-muted); }
.ah-meta span{ display:inline-flex; align-items:center; gap:5px; }
.ah-share{ display:flex; gap:2px; }
.ah-iconbtn{ width:34px; height:34px; display:inline-flex; align-items:center; justify-content:center; border-radius:var(--radius-control); color:var(--text-secondary); background:none; border:none; cursor:pointer; }
.ah-iconbtn:hover{ background:var(--surface-sunken); color:var(--text-headline); }
.ah-figure{ margin:0; display:flex; flex-direction:column; gap:8px; }
.ah-figure__img{ aspect-ratio:16/9; background:var(--ink-800); border-radius:var(--radius-image); overflow:hidden; }
.ah-figure__img img{ width:100%; height:100%; object-fit:cover; object-position:center 25%; }
.ah-figure figcaption{ font:var(--type-meta); color:var(--text-muted); }

/* article body (WP content) */
.ah-body{ max-width:var(--measure-article); font:var(--type-article); font-size:19px; line-height:1.75; color:var(--text-body); }
.ah-body > * + *{ margin-top:22px; }
.ah-body p{ font-family:var(--font-serif); }
.ah-body h2{ font-family:var(--font-serif); font-size:30px; margin-top:40px; letter-spacing:var(--tracking-tight); }
.ah-body h3{ font-family:var(--font-serif); font-size:24px; margin-top:32px; }
.ah-body a{ color:var(--text-link); text-decoration:underline; text-decoration-color:var(--brand-accent); text-underline-offset:3px; }
.ah-body a:hover{ color:var(--brand-accent); }
.ah-body img{ border-radius:var(--radius-image); margin:12px 0; }
.ah-body figure{ margin:24px 0; }
.ah-body figcaption{ font:var(--type-meta); color:var(--text-muted); margin-top:6px; }
.ah-body ul,.ah-body ol{ padding-left:1.4em; }
.ah-body li{ margin:8px 0; }
.ah-body blockquote{ margin:32px 0; padding:0 0 0 24px; border-left:3px solid var(--brand-accent); max-width:46ch; font-family:var(--font-serif); font-weight:500; font-size:24px; line-height:1.35; letter-spacing:var(--tracking-tight); color:var(--text-headline); }
.ah-body blockquote cite{ display:block; margin-top:10px; font:var(--type-label); text-transform:uppercase; letter-spacing:var(--tracking-label); color:var(--text-muted); font-style:normal; }

/* tag pills row */
.ah-tagpills{ display:flex; flex-wrap:wrap; gap:8px; padding-top:22px; border-top:1px solid var(--border-hairline); }
.ah-tagpills a{ background:var(--surface-card); border-radius:999px; font-size:13px; color:var(--text-secondary); padding:8px 15px; }
.ah-tagpills a:hover{ color:var(--brand-accent); }

/* ============================================================
   SIDEBAR / RAIL
   ============================================================ */
.ah-rail{ display:flex; flex-direction:column; gap:32px; }
.ah-rail__head{ font:var(--type-label); text-transform:uppercase; letter-spacing:var(--tracking-label); color:var(--text-headline); padding-bottom:12px; border-bottom:1px solid var(--text-headline); margin-bottom:2px; }
.ah-rank a{ display:flex; gap:12px; padding:13px 0; border-bottom:1px solid var(--border-hairline); align-items:flex-start; }
.ah-rank a:last-child{ border-bottom:none; }
.ah-rank__n{ font-family:var(--font-serif); font-size:22px; color:var(--border-strong); line-height:1; flex:none; width:24px; }
.ah-rank__t{ font-family:var(--font-serif); font-size:16px; line-height:1.35; color:var(--text-headline); }
.ah-rank a:hover .ah-rank__t{ color:var(--brand-primary); }
.ah-adbox{ border:1px dashed var(--border-strong); border-radius:6px; background:var(--surface-sunken); padding:24px; text-align:center; }
.ah-adbox__label{ font-size:10px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--text-muted); margin-bottom:6px; }
.ah-adbox__size{ font-size:13px; color:var(--text-secondary); }
.ah-newsletter{ background:var(--surface-highlight); border-radius:8px; padding:24px; }
.ah-newsletter__k{ font-size:11px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--blue-300); margin-bottom:10px; }
.ah-newsletter p{ font-size:14px; line-height:1.6; color:var(--text-secondary); margin:0 0 14px; }
.ah-newsletter input{ width:100%; border:1px solid var(--border-strong); background:var(--surface-page); color:var(--text-headline); border-radius:999px; padding:11px 16px; font-family:var(--font-sans); font-size:14px; margin-bottom:10px; }
.ah-newsletter button{ width:100%; border:none; border-radius:999px; background:var(--brand-accent); color:#101519; padding:12px; font-family:var(--font-sans); font-size:14px; font-weight:600; cursor:pointer; }
.ah-newsletter button:hover{ background:var(--brand-accent-hover); }

/* ============================================================
   LISTA / ROVAT / ARCHÍVUM
   ============================================================ */
.ah-pagehead{ max-width:var(--width-content); margin:0 auto; padding:40px var(--gutter) 0; display:flex; flex-direction:column; gap:16px; }
.ah-pagehead h1{ font:var(--type-headline-1); font-size:42px; letter-spacing:var(--tracking-tight); }
.ah-pagehead__lead{ font:var(--type-lead); font-size:20px; color:var(--text-secondary); max-width:52ch; }
.ah-sectionnav{ max-width:var(--width-content); margin:24px auto 0; padding:0 var(--gutter); display:flex; gap:24px; flex-wrap:wrap; border-bottom:1px solid var(--border-hairline); }
.ah-sectionnav a{ font:var(--type-ui); text-transform:uppercase; letter-spacing:var(--tracking-wide); color:var(--text-muted); padding:0 0 10px; border-bottom:3px solid transparent; }
.ah-sectionnav a:hover,.ah-sectionnav a.is-active{ color:var(--text-headline); border-bottom-color:var(--brand-accent); }

/* story rows (korábbi anyagok / archívum) */
.ah-rows{ display:flex; flex-direction:column; }
.ah-row{ display:flex; gap:14px; align-items:flex-start; padding:14px 0; border-bottom:1px solid var(--border-hairline); }
.ah-row:last-child{ border-bottom:none; }
.ah-row__thumb{ width:96px; height:68px; flex:0 0 auto; border-radius:var(--radius-image); overflow:hidden; background:var(--ink-800); }
.ah-row__thumb img{ width:100%; height:100%; object-fit:cover; object-position:center 30%; }
.ah-row__body{ display:flex; flex-direction:column; gap:5px; min-width:0; }
.ah-row__title{ font-family:var(--font-serif); font-weight:600; font-size:16px; line-height:var(--lh-snug); color:var(--text-headline); }
.ah-row:hover .ah-row__title{ color:var(--brand-primary); }
.ah-row__date{ font:var(--type-meta); color:var(--text-muted); }

/* pagination */
.ah-pager{ display:flex; justify-content:center; padding:48px 0; }
.ah-pager .nav-links{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.ah-pager .page-numbers{ min-width:36px; height:36px; padding:0 8px; display:inline-flex; align-items:center; justify-content:center; border-radius:var(--radius-control); border:1px solid var(--border-hairline); background:var(--surface-card); color:var(--text-body); font:var(--type-ui); }
.ah-pager .page-numbers:hover{ background:var(--surface-sunken); }
.ah-pager .page-numbers.current{ background:var(--brand-primary); border-color:var(--brand-primary); color:var(--text-inverse); }
.ah-pager .page-numbers.dots{ border:none; background:none; }

/* ============================================================
   HIRDETÉS-HELYEK
   ============================================================ */
/* .ah-adzone = a tema pozicionalo wrappere; .ah-ad = a plugin sajat divje */
.ah-adzone{ margin:16px 0; display:flex; justify-content:center; }
.ah-adzone--home-mid{ margin:40px 0 0; }
.ah-adzone--sidebar{ margin:0; }
.ah-adzone .ah-wrap{ display:flex; justify-content:center; }
.ah-ad{ max-width:100%; }
.ah-ad img{ max-width:100%; height:auto; display:block; }

/* ============================================================
   FOOTER  (magazin-sötét)
   ============================================================ */
.ah-footer{ background:var(--surface-page); border-top:1px solid var(--border-hairline); margin-top:80px; }
.ah-footer__grid{ padding-top:64px; padding-bottom:24px; display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px; }
.ah-footer__logo{ display:inline-flex; align-self:flex-start; margin-bottom:16px; }
.ah-footer__logo img{ height:28px; width:auto; display:block; }
.ah-footer__mission{ font-size:13px; line-height:1.7; color:var(--text-muted); margin:0; max-width:42ch; }
.ah-footer__social{ display:flex; gap:2px; margin-top:16px; margin-left:-6px; }
.ah-footer__social .ah-iconbtn{ color:var(--text-secondary); }
.ah-footer__social .ah-iconbtn:hover{ color:var(--text-headline); background:var(--surface-card); }
.ah-footer__h{ font-size:11px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--text-headline); margin-bottom:14px; }
.ah-footer__links{ display:flex; flex-direction:column; gap:10px; font-size:13px; list-style:none; margin:0; padding:0; }
.ah-footer__links li{ margin:0; }
.ah-footer__links a{ color:var(--text-secondary); }
.ah-footer__links a:hover{ color:var(--brand-accent); }
.ah-footer__bar{ margin-top:8px; border-top:1px solid var(--border-hairline); padding-top:18px; padding-bottom:8px; display:flex; justify-content:space-between; gap:16px; font-size:12px; color:var(--text-muted); flex-wrap:wrap; }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:960px){
  .ah-layout{ grid-template-columns:1fr; gap:48px; }
  .ah-hero__title{ font-size:44px; }
  .ah-article__title,.ah-pagehead h1{ font-size:34px; }
}
@media(max-width:640px){
  :root{ --gutter:16px; }
  .ah-header__inner{ padding:12px 16px; gap:12px; }
  .ah-hero{ height:480px; }
  .ah-hero__scrim{ background:linear-gradient(180deg,rgba(13,19,25,.38) 0%,rgba(13,19,25,.5) 32%,rgba(13,19,25,.84) 64%,#0d1319 100%); }
  .ah-hero__title{ font-size:32px; text-shadow:0 1px 16px rgba(13,19,25,.6); }
  .ah-hero__excerpt{ font-size:17px; text-shadow:0 1px 12px rgba(13,19,25,.5); }
  .ah-section{ padding-top:48px; }
  .ah-cardgrid,.ah-cardgrid--2{ grid-template-columns:1fr; gap:28px; }
  .ah-body{ font-size:18px; }
  .ah-sponsored__img{ flex-basis:100%; }
  .ah-secthead h2{ font-size:24px; }
  .ah-footer__grid{ grid-template-columns:1fr 1fr; gap:32px; padding-top:48px; }
  .ah-footer__brand{ grid-column:1 / -1; }
}

/* Mobil menü (hamburger) */
@media(max-width:768px){
  .ah-navtoggle{
    display:inline-flex; align-items:center; justify-content:center;
    width:42px; height:42px; padding:0; flex:0 0 auto;
    background:none; border:1px solid var(--border-strong); border-radius:10px;
    color:var(--text-headline); cursor:pointer;
  }
  .ah-navtoggle:hover{ border-color:var(--brand-accent); color:var(--brand-accent); }
  .ah-navtoggle__bars,
  .ah-navtoggle__bars::before,
  .ah-navtoggle__bars::after{
    display:block; width:20px; height:2px; border-radius:2px; background:currentColor;
    transition:transform .2s ease, background-color .2s ease, top .2s ease;
  }
  .ah-navtoggle__bars{ position:relative; }
  .ah-navtoggle__bars::before,
  .ah-navtoggle__bars::after{ content:""; position:absolute; left:0; }
  .ah-navtoggle__bars::before{ top:-6px; }
  .ah-navtoggle__bars::after{ top:6px; }
  .ah-navtoggle[aria-expanded="true"] .ah-navtoggle__bars{ background:transparent; }
  .ah-navtoggle[aria-expanded="true"] .ah-navtoggle__bars::before{ top:0; transform:rotate(45deg); }
  .ah-navtoggle[aria-expanded="true"] .ah-navtoggle__bars::after{ top:0; transform:rotate(-45deg); }

  .ah-header__tools{ gap:10px; }
  .ah-nav{
    order:4; width:100%; flex-basis:100%;
    flex-direction:column; flex-wrap:nowrap; gap:0;
    max-height:0; overflow:hidden; opacity:0;
    transition:max-height .3s ease, opacity .2s ease;
  }
  .ah-nav.is-open{
    max-height:75vh; overflow-y:auto; opacity:1;
    margin-top:8px; border-top:1px solid var(--ink-night-line);
  }
  .ah-nav a{
    display:block; padding:14px 2px; font-size:16px;
    border-bottom:1px solid var(--ink-night-line);
  }
  .ah-nav a:last-child{ border-bottom:0; }
}

@media(max-width:640px){
  .ah-pill{ padding:7px 14px; font-size:12px; }
  .ah-search-toggle span,.ah-search-toggle{ font-size:13px; }
}
