
/* ===== Tokens (z księgi znaku Husfarm 2.2) ===== */
:root{
  --navy:#203766; --navy-2:#162E5F; --navy-3:#314672;
  --gold:#F0B945; --wheat:#F8D348; --amber:#CE9338; --cta:#F4B43E; --cta-hover:#D99C2B; --cta-ink:#203766;
  --bg:#F5F6F8; --surface:#FFFFFF; --surface-2:#F4F4F4; --line:#E3E7EF; --line-2:#D3D9E6;
  --ink:#203766; --ink-2:#49536E; --muted:#5E6A85; --faint:#8A93A8;
  --up:#2E7D32; --down:#B3163F; --flat:#5E6A85;
  --up-dark:#7FD898; --down-dark:#FF9DB0;
  --wheat-bg:#FBF3DF; --navy-bg:#EAF0FA;
  --hero-bg:#203766; --hero-ink:#FFFFFF; --hero-muted:rgba(255,255,255,.78);
  --r-ctl:4px; --r-card:8px; --r-panel:14px;
  --shadow:0 12px 28px rgba(32,55,102,.14);
  --font:'Open Sans','Segoe UI',system-ui,-apple-system,sans-serif;
  --fs:16px;
  --heat-rgb:32,55,102; --heat-ink:#fff; --amber-text:#8A5A14;
  color-scheme:light;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0F1A33; --surface:#16233F; --surface-2:#1B2A4A; --line:#2A3A5E; --line-2:#36486F;
    --ink:#EEF2FA; --ink-2:#C6CFE2; --muted:#9FAAC4; --faint:#7D89A6;
    --up:#7FD898; --down:#FF9DB0; --flat:#9FAAC4;
    --wheat-bg:#2E2A1A; --navy-bg:#1F2E52; --hero-bg:#121F3D; --shadow:0 12px 28px rgba(0,0,0,.35);
    --heat-rgb:248,211,72; --heat-ink:#0F1A33; --amber-text:#F0B945;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --heat-rgb:248,211,72; --heat-ink:#0F1A33; --amber-text:#F0B945;
  --bg:#0F1A33; --surface:#16233F; --surface-2:#1B2A4A; --line:#2A3A5E; --line-2:#36486F;
  --ink:#EEF2FA; --ink-2:#C6CFE2; --muted:#9FAAC4; --faint:#7D89A6;
  --up:#7FD898; --down:#FF9DB0; --flat:#9FAAC4;
  --wheat-bg:#2E2A1A; --navy-bg:#1F2E52; --hero-bg:#121F3D; --shadow:0 12px 28px rgba(0,0,0,.35);
  color-scheme:dark;
}
:root[data-contrast="high"]{ --ink-2:var(--ink); --muted:var(--ink); --line:var(--ink-2); --faint:var(--ink-2); }
:root[data-underline="on"] a{ text-decoration:underline !important; }
html{ scroll-padding-top:calc(env(safe-area-inset-top,0px) + 84px); font-size:var(--fs); }
*,*::before,*::after{ box-sizing:border-box; }
body{ margin:0; font-family:var(--font); color:var(--ink); background:var(--bg); line-height:1.55; -webkit-font-smoothing:antialiased; }
body::before{ content:""; position:fixed; inset:0 0 auto; height:env(safe-area-inset-top,0px); z-index:60; background:var(--surface); }
img{ max-width:100%; }
a{ color:inherit; text-decoration:none; }
a:hover{ text-decoration:underline; text-underline-offset:3px; }
button{ font:inherit; color:inherit; cursor:pointer; }
:focus-visible{ outline:3px solid var(--navy); outline-offset:2px; box-shadow:0 0 0 6px var(--surface); border-radius:3px; }
.hero :focus-visible,.dark :focus-visible{ outline-color:var(--wheat); box-shadow:none; }
h1,h2,h3{ font-stretch:84%; letter-spacing:-.01em; line-height:1.12; margin:0; }
h1{ font-size:clamp(2rem,4.2vw,3.25rem); font-weight:800; }
h2{ font-size:clamp(1.5rem,2.6vw,2rem); font-weight:780; }
h3{ font-size:1.15rem; font-weight:720; }
p{ margin:0 0 .9em; }
.num{ font-variant-numeric:tabular-nums; }
.wrap{ width:min(1200px,100% - 40px); margin-inline:auto; }
.sr{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }

/* ===== Paski górne ===== */
.testbar{ background:var(--wheat-bg); color:var(--ink); border-bottom:1px solid var(--cta); font-size:.85rem; }
.testbar .wrap{ display:flex; gap:16px; align-items:center; padding:7px 0; }
.testbar b{ font-weight:700; }
.testbar button{ margin-left:auto; border:1.5px solid var(--ink); background:transparent; border-radius:var(--r-ctl); padding:3px 12px; font-size:.8rem; font-weight:700; white-space:nowrap; }
.ticker{ background:var(--navy-2); color:#fff; font-size:.84rem; overflow:hidden; white-space:nowrap; }
.ticker-in{ display:inline-flex; gap:34px; padding:8px 0; animation:tick 70s linear infinite; }
.ticker:hover .ticker-in{ animation-play-state:paused; }
.ticker a{ color:#fff; }
.ticker .q{ display:inline-flex; gap:8px; align-items:baseline; }
.ticker .q b{ font-weight:650; }
.ticker .lbl{ color:var(--wheat); font-weight:700; padding-left:20px; }
@keyframes tick{ to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce){ .ticker-in{ animation:none; } }

.offlinebar{ background:var(--navy-2); color:#fff; font-size:.86rem; border-bottom:2px solid var(--cta); }
.offlinebar .wrap{ padding:7px 0; }
.offlinebar b{ color:var(--wheat); }
.panel .rowp select{ font:inherit; font-size:.86rem; padding:5px 8px; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); background:var(--surface); color:var(--ink); }

.tag.stale{ background:#FBEAEA; color:#8A1C2B; border-color:#F3C9CF; }
:root[data-theme="dark"] .tag.stale{ background:#3A1A20; color:#FF9DB0; border-color:#5A2A33; }
tr.noterow td{ border-top:0; }

/* ===== Nagłówek ===== */
.top{ position:sticky; top:env(safe-area-inset-top,0px); z-index:50; background:var(--surface); border-bottom:1px solid var(--line); }
.top .wrap{ display:flex; align-items:center; gap:22px; height:68px; }
.brand{ display:flex; align-items:center; gap:9px; flex-shrink:0; }
.brand img.s{ height:34px; } .brand img.n{ height:15px; margin-top:6px; }
.brand:hover{ text-decoration:none; }
.mainnav{ display:flex; gap:4px; }
.mainnav a{ padding:8px 11px; border-radius:var(--r-ctl); font-weight:620; font-size:.95rem; color:var(--ink-2); position:relative; }
.mainnav a:hover{ background:var(--surface-2); text-decoration:none; color:var(--ink); }
.mainnav a.on{ color:var(--ink); }
.mainnav a.on::after{ content:""; position:absolute; left:11px; right:11px; bottom:-15px; height:3px; background:var(--cta); border-radius:2px; }
.mainnav .new{ font-size:.68rem; font-weight:800; background:var(--cta); color:var(--cta-ink); border-radius:10px; padding:1px 6px; margin-left:4px; vertical-align:2px; }
.top .tools{ margin-left:auto; display:flex; gap:10px; align-items:center; }
.searchbtn{ display:flex; align-items:center; gap:10px; border:1.5px solid var(--line-2); background:var(--surface); border-radius:var(--r-ctl); padding:7px 10px 7px 12px; color:var(--muted); min-width:210px; }
.searchbtn kbd{ margin-left:auto; font:600 .72rem var(--font); border:1px solid var(--line-2); border-radius:3px; padding:1px 5px; }
.iconbtn{ width:40px; height:40px; display:grid; place-items:center; border:1.5px solid var(--line-2); background:var(--surface); border-radius:var(--r-ctl); }
.menubtn{ display:none; }
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:var(--r-ctl); padding:11px 20px; font-weight:750; font-size:.92rem; border:2px solid transparent; white-space:nowrap; line-height:1.1; }
.btn:hover{ text-decoration:none; }
.btn-cta{ background:var(--cta); color:var(--cta-ink); }
.btn-cta:hover{ background:var(--cta-hover); }
.btn-line{ border-color:var(--ink); color:var(--ink); background:transparent; }
.btn-line:hover{ background:var(--surface-2); }
.btn-ghost-light{ border-color:rgba(255,255,255,.55); color:#fff; background:transparent; }
.btn-ghost-light:hover{ background:rgba(255,255,255,.08); }
.btn-sm{ padding:7px 13px; font-size:.84rem; }

/* ===== Hero ===== */
.hero{ background:var(--hero-bg); color:var(--hero-ink); position:relative; overflow:hidden; }
.hero .wm{ position:absolute; right:-80px; top:-40px; height:540px; opacity:.07; pointer-events:none; }
.hero .wrap{ position:relative; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:48px; padding:64px 0 56px; align-items:center; }
.hero h1{ color:#fff; max-width:19ch; }
.hero .lead{ color:var(--hero-muted); font-size:1.08rem; max-width:52ch; margin:18px 0 26px; }
.ask{ background:#fff; border-radius:var(--r-panel); padding:8px; display:flex; gap:8px; align-items:center; box-shadow:0 16px 40px rgba(0,0,0,.25); }
.ask label{ color:var(--navy); font-weight:700; padding-left:12px; white-space:nowrap; font-stretch:88%; font-size:1.15rem; }
.ask input{ flex:1; min-width:0; border:0; outline:0; font:700 1.15rem var(--font); color:var(--navy); padding:12px 6px; background:transparent; border-bottom:2px dashed var(--cta); }
.ask .tail{ color:var(--navy); font-weight:700; font-stretch:88%; font-size:1.15rem; padding-right:6px; white-space:nowrap; }
.ask input::placeholder{ color:#9AA5BF; }
.chips{ display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.chip{ border:1.5px solid rgba(255,255,255,.35); color:#fff; background:transparent; border-radius:20px; padding:5px 13px; font-size:.86rem; font-weight:600; }
.chip:hover{ background:rgba(255,255,255,.1); text-decoration:none; }
.answer{ background:var(--surface); color:var(--ink); border-radius:var(--r-panel); padding:22px 24px; box-shadow:0 20px 50px rgba(0,0,0,.28); }
.answer .meta{ font-size:.82rem; color:var(--muted); }
.answer .prod{ font-weight:750; font-size:1.12rem; line-height:1.3; margin:4px 0 2px; font-stretch:90%; }
.answer .price{ font-size:2.6rem; font-weight:800; font-stretch:82%; margin:10px 0 0; line-height:1; }
.answer .unit{ font-size:1rem; font-weight:650; color:var(--ink-2); }
.answer .row2{ display:flex; gap:14px; align-items:center; margin:8px 0 14px; flex-wrap:wrap; }
.answer .acts{ display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.answer .empty{ padding:24px 0; color:var(--muted); }
.delta{ font-weight:750; font-size:.92rem; white-space:nowrap; }
.delta.up{ color:var(--up); } .delta.down{ color:var(--down); } .delta.flat{ color:var(--flat); }
.ticker .delta.up{ color:var(--up-dark); } .ticker .delta.down{ color:var(--down-dark); } .ticker .delta.flat{ color:rgba(255,255,255,.72); }
.tag{ display:inline-flex; align-items:center; gap:5px; font-size:.74rem; font-weight:700; border-radius:20px; padding:2px 9px; border:1px solid var(--line-2); color:var(--muted); background:var(--surface); white-space:nowrap; }
.tag.sample{ border-style:dashed; border-color:var(--amber-text); color:var(--amber-text); background:transparent; }
.tag.real{ border-color:var(--up); color:var(--up); }
.tag.verified{ background:var(--navy-bg); border-color:var(--navy-3); color:var(--ink); }
.tag.gold{ background:var(--cta); border-color:var(--cta); color:var(--cta-ink); }
.tag.new{ background:var(--wheat-bg); border-color:var(--cta); color:var(--ink); }

/* ===== Sekcje ===== */
section.block{ padding:64px 0; }
section.block.alt{ background:var(--surface); border-block:1px solid var(--line); }
.head{ display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:26px; flex-wrap:wrap; }
.head p{ color:var(--muted); margin:8px 0 0; max-width:60ch; }
.grid2{ display:grid; grid-template-columns:1fr 1fr; gap:36px; }
.grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.card{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:20px; transition:box-shadow .25s, transform .25s; }
a.card:hover{ text-decoration:none; box-shadow:var(--shadow); transform:translateY(-3px); }
@media (prefers-reduced-motion:reduce){ a.card:hover{ transform:none; } }
.muted{ color:var(--muted); } .small{ font-size:.88rem; } .xs{ font-size:.78rem; }
.src{ font-size:.8rem; color:var(--muted); margin-top:10px; }
.callout{ border-left:4px solid var(--cta); background:var(--wheat-bg); padding:16px 18px; border-radius:0 var(--r-card) var(--r-card) 0; }
.callout h3{ margin-bottom:6px; }

/* Wire (wiadomości i alerty) */
.wire{ list-style:none; margin:0; padding:0; }
.wire li{ display:grid; grid-template-columns:64px 1fr; gap:14px; padding:14px 0; border-bottom:1px solid var(--line); }
.wire li:last-child{ border-bottom:0; }
.wire time{ font-size:.82rem; font-weight:700; color:var(--muted); padding-top:2px; }
.wire .t{ font-weight:700; line-height:1.35; }
.wire .d{ font-size:.88rem; color:var(--ink-2); margin-top:3px; }
.wire .k{ display:flex; gap:6px; margin-top:7px; flex-wrap:wrap; }
.wire .alert-ico{ display:inline-block; width:9px; height:9px; border-radius:50%; background:var(--cta); margin-right:7px; vertical-align:1px; }

/* Kafle kategorii */
.cats{ display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); background:var(--surface); border:1px solid var(--line); border-radius:var(--r-card); overflow:hidden; }
.cats a{ background:var(--surface); padding:18px 18px 16px; display:block; box-shadow:inset -1px -1px 0 var(--line); }
.cats a:hover{ background:var(--surface-2); text-decoration:none; }
.cats b{ display:block; font-size:1.05rem; font-stretch:88%; font-weight:750; }
.cats span{ font-size:.82rem; color:var(--muted); }

/* Tabele */
.tablewrap{ overflow-x:auto; border:1.5px solid var(--line); border-radius:var(--r-card); background:var(--surface); }
table.data{ width:100%; border-collapse:collapse; font-size:.92rem; }
table.data th{ text-align:left; font-size:.76rem; letter-spacing:.04em; text-transform:uppercase; color:var(--muted); font-weight:750; padding:11px 14px; border-bottom:2px solid var(--line-2); white-space:nowrap; position:sticky; top:0; background:var(--surface); }
table.data th button{ border:0; background:none; padding:0; font:inherit; color:inherit; text-transform:inherit; letter-spacing:inherit; }
table.data th button[aria-sort]::after{ content:" ↕"; color:var(--faint); }
table.data th button[aria-sort="ascending"]::after{ content:" ▲"; color:var(--amber-text); }
table.data th button[aria-sort="descending"]::after{ content:" ▼"; color:var(--amber-text); }
table.data td{ padding:11px 14px; border-bottom:1px solid var(--line); vertical-align:middle; }
table.data tr:last-child td{ border-bottom:0; }
table.data tbody tr:hover{ background:var(--surface-2); }
table.data td.r,table.data th.r{ text-align:right; white-space:nowrap; }
table.data .p{ font-weight:700; }
table.data a.prodlink{ font-weight:650; }
.cur{ color:var(--muted); font-size:.8rem; font-weight:600; }

/* Filtry */
.filters{ display:flex; gap:10px; flex-wrap:wrap; align-items:end; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px; margin-bottom:12px; }
.field{ display:flex; flex-direction:column; gap:4px; min-width:150px; flex:1; }
.field label{ font-size:.78rem; font-weight:700; color:var(--ink-2); }
.field select,.field input,.field textarea{ font:inherit; font-size:.92rem; color:var(--ink); background:var(--surface); border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:9px 10px; min-height:42px; }
.field select:focus,.field input:focus,.field textarea:focus{ border-color:var(--navy); outline:none; box-shadow:0 0 0 3px var(--navy-bg); }
.activechips{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin:0 0 16px; font-size:.84rem; }
.fchip{ display:inline-flex; gap:6px; align-items:center; background:var(--navy-bg); border:1px solid var(--navy-3); color:var(--ink); border-radius:20px; padding:3px 6px 3px 11px; font-weight:650; }
.fchip button{ border:0; background:none; width:24px; height:24px; border-radius:50%; }
.fchip button:hover{ background:var(--line); }
.switch{ display:flex; align-items:center; gap:8px; font-size:.86rem; font-weight:650; min-height:42px; }
.switch input{ width:18px; height:18px; accent-color:var(--navy); }

/* Szczegół notowania */
.crumbs{ font-size:.84rem; color:var(--muted); margin:22px 0 14px; display:flex; flex-wrap:wrap; gap:6px; }
.crumbs a{ color:var(--ink-2); }
.detail{ display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:32px; align-items:start; padding-bottom:64px; }
.aside{ position:sticky; top:96px; display:flex; flex-direction:column; gap:16px; }
.bigprice{ display:flex; flex-wrap:wrap; align-items:baseline; gap:12px 20px; margin:18px 0 6px; }
.bigprice .v{ font-size:clamp(2.4rem,5vw,3.6rem); font-weight:800; font-stretch:80%; line-height:1; }
.facts{ display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1.5px solid var(--line); border-radius:var(--r-card); overflow:hidden; margin:22px 0; }
.facts div{ background:var(--surface); padding:14px 16px; }
.facts dt{ font-size:.78rem; color:var(--muted); font-weight:650; }
.facts dd.xs, .facts.kpi dd.xs{ font-size:.78rem; font-weight:600; margin-top:2px; font-stretch:100%; }
.facts dd{ margin:3px 0 0; font-weight:750; font-size:1.05rem; }
.chartbox{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:18px 18px 10px; }
.chartbox .ch{ display:flex; justify-content:space-between; gap:10px; align-items:center; margin-bottom:6px; flex-wrap:wrap; }
.seg{ display:inline-flex; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); overflow:hidden; }
.seg button{ border:0; background:var(--surface); padding:6px 12px; font-size:.82rem; font-weight:700; color:var(--ink-2); }
.seg button[aria-pressed="true"]{ background:var(--navy); color:#fff; }
svg.chart{ width:100%; height:auto; display:block; }
svg.chart text{ font:600 11px var(--font); fill:var(--muted); }
.legend{ display:flex; gap:16px; font-size:.8rem; color:var(--muted); margin-top:4px; flex-wrap:wrap; }
.legend i{ display:inline-block; width:14px; height:8px; border-radius:2px; margin-right:6px; vertical-align:0; }

/* Proza (artykuły, strony informacyjne) */
.prose{ max-width:70ch; font-size:1.04rem; }
.prose h2{ margin:1.6em 0 .5em; font-size:1.5rem; }
.prose ul{ padding-left:1.2em; } .prose li{ margin:.3em 0; }
.author{ display:flex; gap:14px; align-items:center; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:14px 0; margin:18px 0 26px; }
.avatar{ width:48px; height:48px; border-radius:50%; background:var(--navy); color:#fff; display:grid; place-items:center; font-weight:800; flex-shrink:0; }
.bio{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:20px; display:flex; gap:16px; margin-top:32px; }

/* Oferty */
.offer{ display:flex; flex-direction:column; gap:8px; }
.offer .t{ font-weight:750; font-size:1.02rem; line-height:1.35; }
.offer .pr{ font-weight:800; font-size:1.15rem; }
.offer .f{ margin-top:auto; display:flex; justify-content:space-between; align-items:center; gap:8px; padding-top:10px; border-top:1px solid var(--line); font-size:.84rem; color:var(--muted); }
.steps{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; counter-reset:s; }
.steps div{ counter-increment:s; padding-top:14px; border-top:3px solid var(--line-2); }
.steps div.done{ border-top-color:var(--cta); }
.steps div::before{ content:counter(s); display:inline-grid; place-items:center; width:26px; height:26px; border-radius:50%; background:var(--navy); color:#fff; font-weight:800; font-size:.8rem; margin-bottom:8px; }
.steps b{ display:block; }

/* Pasma (alerty, aplikacja) */
.dark{ background:var(--hero-bg); color:#fff; position:relative; overflow:hidden; }
.dark .muted,.dark .small{ color:var(--hero-muted); }
.dark .wm{ position:absolute; height:420px; opacity:.07; right:-60px; bottom:-120px; pointer-events:none; }
.mock-alert{ background:var(--surface); color:var(--ink); border-radius:var(--r-panel); padding:18px; box-shadow:0 18px 44px rgba(0,0,0,.3); }
.mock-alert .row{ display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--line); font-size:.92rem; }
.mock-alert .row:last-child{ border-bottom:0; }
.dark .mock-alert .muted{ color:var(--muted); }

/* Modale */
.overlay{ position:fixed; inset:0; background:rgba(15,26,51,.55); z-index:80; display:none; align-items:flex-start; justify-content:center; padding:calc(env(safe-area-inset-top,0px) + 8vh) 16px 16px; }
.overlay.open{ display:flex; }
.modal{ background:var(--surface); color:var(--ink); width:min(640px,100%); border-radius:var(--r-panel); box-shadow:0 30px 80px rgba(0,0,0,.35); max-height:84vh; overflow:auto; }
.modal header{ display:flex; align-items:center; gap:10px; padding:14px 16px; border-bottom:1px solid var(--line); }
.modal header input{ flex:1; border:0; outline:0; font:600 1.05rem var(--font); background:transparent; color:var(--ink); min-height:40px; }
.modal .close{ border:0; background:var(--surface-2); border-radius:var(--r-ctl); width:40px; height:40px; font-size:1.1rem; }
.results{ list-style:none; margin:0; padding:8px; }
.results a{ display:flex; justify-content:space-between; gap:10px; padding:10px 12px; border-radius:var(--r-ctl); }
.results a:hover,.results a.sel{ background:var(--navy-bg); text-decoration:none; }
.results small{ color:var(--muted); white-space:nowrap; }
.results .grp{ font-size:.74rem; font-weight:800; color:var(--muted); padding:10px 12px 4px; text-transform:uppercase; letter-spacing:.05em; }
.wz{ padding:20px 22px 22px; }
.wz .bar{ display:flex; gap:6px; margin-bottom:18px; }
.wz .bar i{ flex:1; height:4px; border-radius:2px; background:var(--line); }
.wz .bar i.on{ background:var(--cta); }
.opts{ display:grid; gap:10px; margin:14px 0; }
.opt{ display:flex; gap:12px; align-items:flex-start; border:1.5px solid var(--line-2); border-radius:var(--r-card); padding:12px 14px; background:var(--surface); text-align:left; width:100%; }
.opt[aria-pressed="true"]{ border-color:var(--navy); background:var(--navy-bg); }
.opt b{ display:block; }
.opt small{ color:var(--muted); }
.wz .nav{ display:flex; justify-content:space-between; gap:10px; margin-top:20px; }

/* Panel dostępności, cookies, toast, pasek mobilny */
.panel{ position:fixed; right:16px; top:calc(env(safe-area-inset-top,0px) + 80px); z-index:70; width:300px; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-panel); box-shadow:var(--shadow); padding:16px; display:none; }
.panel.open{ display:block; }
.panel .rowp{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--line); font-size:.9rem; font-weight:650; }
.cookies{ position:fixed; left:16px; bottom:calc(env(safe-area-inset-bottom,0px) + 16px); z-index:75; width:min(420px,100% - 32px); background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-panel); box-shadow:var(--shadow); padding:18px; display:none; }
.cookies.open{ display:block; }
.cookies .b{ display:flex; gap:8px; margin-top:12px; flex-wrap:wrap; }
.toast{ position:fixed; left:50%; bottom:calc(env(safe-area-inset-bottom,0px) + 84px); transform:translateX(-50%); background:var(--navy); color:#fff; padding:12px 18px; border-radius:var(--r-card); font-weight:650; z-index:90; display:none; box-shadow:var(--shadow); }
.toast.open{ display:block; }
.mbar{ display:none; }

/* Stopka */
footer.foot{ background:var(--navy-2); color:rgba(255,255,255,.82); padding:56px 0 calc(env(safe-area-inset-bottom,0px) + 28px); position:relative; overflow:hidden; }
footer.foot .wm{ position:absolute; right:-40px; top:-60px; height:300px; opacity:.06; }
footer.foot .cols{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:36px 28px; position:relative; }
footer.foot h3{ color:#fff; font-size:1rem; margin-bottom:12px; }
footer.foot ul{ list-style:none; margin:0; padding:0; font-size:.9rem; line-height:2; }
footer.foot a:hover{ color:#fff; }
footer.foot .mail{ color:var(--wheat); font-weight:700; }
footer.foot .bottom{ border-top:1px solid var(--navy-3); margin-top:36px; padding-top:18px; display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:.82rem; }


/* ===== Widok produktu ===== */
.aka{ margin:10px 0 0; display:flex; gap:12px; flex-wrap:wrap; align-items:baseline; }
.aka span[lang]{ white-space:nowrap; }
.typetabs{ display:flex; gap:4px; border-bottom:2px solid var(--line); margin:22px 0 0; overflow-x:auto; }
.typetabs a{ padding:10px 14px 12px; font-weight:700; font-size:.92rem; color:var(--muted); white-space:nowrap; border-bottom:3.5px solid transparent; margin-bottom:-2px; }
.typetabs a span{ font-weight:600; font-size:.78rem; color:var(--muted); margin-left:3px; }
.typetabs a:hover{ color:var(--ink); text-decoration:none; }
.typetabs a.on{ color:var(--ink); border-bottom-color:var(--cta); }
.prodbar{ display:flex; justify-content:space-between; gap:14px; align-items:center; flex-wrap:wrap; margin:14px 0 6px; }
.segl{ display:inline-block; padding:6px 12px; font-size:.82rem; font-weight:700; color:var(--ink-2); background:var(--surface); }
.segl+.segl{ border-left:1.5px solid var(--line-2); }
.segl.on{ background:var(--navy); color:#fff; }
.segl:hover{ text-decoration:none; }
.facts.kpi dd{ font-size:1.5rem; font-stretch:84%; }
.facts.kpi div{ display:flex; flex-direction:column; gap:2px; }
.ladder{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); overflow:hidden; }
.lad-row{ display:grid; grid-template-columns:minmax(0,270px) minmax(0,1fr) 190px; gap:18px; align-items:center; padding:9px 18px; border-top:1px solid var(--line); }
.lad-row:hover{ background:var(--surface-2); text-decoration:none; }
.lad-axis{ border-top:0; padding-top:14px; padding-bottom:4px; }
.lad-axis .lad-t{ height:16px; }
.lad-l b{ display:block; font-size:.92rem; line-height:1.3; }
.lad-l small,.lad-r small{ display:block; font-size:.78rem; color:var(--muted); line-height:1.35; }
.lad-r{ text-align:right; }
.lad-r b{ font-size:.98rem; }
.lad-t{ position:relative; height:28px; }
.lad-tick{ position:absolute; top:0; bottom:0; border-left:1px solid var(--line); }
.lad-tick em{ position:absolute; top:-2px; left:4px; font-style:normal; font-size:.72rem; font-weight:650; color:var(--muted); white-space:nowrap; }
.lad-med{ position:absolute; top:-10px; bottom:-10px; border-left:2px dashed var(--amber); }
.lad-bar{ position:absolute; top:10px; height:8px; border-radius:4px; background:var(--navy); opacity:.3; }
:root[data-theme="dark"] .lad-bar{ background:var(--wheat); opacity:.35; }
.lad-dot{ position:absolute; top:7px; width:14px; height:14px; margin-left:-7px; border-radius:50%; background:var(--ink); box-shadow:0 0 0 2.5px var(--surface); }
.lad-lab{ position:absolute; top:-9px; transform:translateX(-50%); font-style:normal; font-size:.68rem; font-weight:800; color:var(--amber-text); white-space:nowrap; line-height:1; }
.lad-medlab{ position:absolute; bottom:-20px; transform:translateX(-50%); font-size:.72rem; font-weight:800; color:var(--amber-text); white-space:nowrap; background:var(--surface); padding:0 4px; }
.lad-axis{ padding-bottom:22px !important; }
.lad-foot{ padding:10px 18px 12px; border-top:1px solid var(--line); background:var(--surface-2); }
.flagdot{ color:var(--amber-text); font-weight:700; }
table.data tr.excluded td{ opacity:.6; }
table.heat td{ padding:9px 6px; font-size:.82rem; }
table.heat td.empty{ color:var(--faint); background:repeating-linear-gradient(45deg, transparent 0 5px, var(--surface-2) 5px 10px); }
table.heat th{ padding:9px 6px; }
@media (max-width:760px){
  .lad-row{ grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; }
  .lad-row .lad-t{ grid-column:1 / -1; grid-row:2; }
  .lad-axis{ display:none; }
}


/* ===== Widok kraju: porównanie ze światem ===== */
.dv-row{ display:grid; grid-template-columns:minmax(0,270px) minmax(0,1fr) 190px; gap:18px; align-items:center; padding:9px 18px; border-top:1px solid var(--line); }
a.dv-row:hover{ background:var(--surface-2); text-decoration:none; }
.dv-axis{ border-top:0; padding-top:12px; padding-bottom:6px; }
.dv-t{ position:relative; height:28px; }
.dv-axis .dv-t{ height:16px; }
.dv-axis .dv-t i{ position:absolute; top:0; font-style:normal; font-size:.72rem; font-weight:700; color:var(--muted); transform:translateX(-50%); white-space:nowrap; }
.dv-axis .dv-t i:first-child{ transform:none; } .dv-axis .dv-t i:last-child{ transform:translateX(-100%); }
.dv-mid{ position:absolute; left:50%; top:-10px; bottom:-10px; border-left:2px dashed var(--amber); }
.dv-bar{ position:absolute; top:8px; height:12px; border-radius:3px; }
.dv-bar.neg{ background:var(--navy); opacity:.75; }
.dv-bar.pos{ background:var(--amber); }
:root[data-theme="dark"] .dv-bar.neg{ background:var(--wheat); opacity:.6; }
.dv-lab{ position:absolute; top:5px; font-style:normal; font-size:.8rem; font-weight:800; white-space:nowrap; }
@media (max-width:760px){
  .dv-row{ grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; }
  .dv-row .dv-t{ grid-column:1 / -1; grid-row:2; }
  .dv-axis{ display:none; }
}

.only-m{ display:none; }
@media (max-width:640px){ table.data .hm{ display:none; } table.data .only-m{ display:block; } }


/* ===== Wiadomości ===== */
.news-grid{ display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:36px; align-items:start; margin:22px 0 64px; }
.kicker{ font-size:.78rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; color:var(--amber-text); }
.kicker a{ color:inherit; }
.story .k,.lead-story .k{ display:flex; gap:10px; align-items:center; margin-bottom:8px; flex-wrap:wrap; }
.story h3{ font-size:1.22rem; line-height:1.25; margin:0 0 8px; }
.story .standfirst{ font-size:.95rem; color:var(--ink-2); margin:0 0 10px; }
.story .meta{ display:flex; justify-content:space-between; align-items:center; gap:10px; flex-wrap:wrap; }
.lead-story{ padding:0 0 26px; border-bottom:1px solid var(--line); margin-bottom:26px; }
.lead-story h2{ font-size:clamp(1.7rem,3vw,2.4rem); line-height:1.15; max-width:26ch; margin:0 0 12px; }
.lead-story .standfirst{ font-size:1.12rem; color:var(--ink-2); max-width:62ch; margin:0 0 16px; }
.lead-foot{ display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; }
.story-grid{ display:grid; grid-template-columns:1fr 1fr; gap:28px; padding-bottom:26px; border-bottom:1px solid var(--line); margin-bottom:26px; }
.byline{ display:flex; gap:10px; align-items:center; }
.byline .avatar{ font-size:.72rem; }
.byline a:hover{ text-decoration:underline; }
.datachip{ display:inline-flex; flex-direction:column; gap:2px; border:1.5px solid var(--line); border-radius:var(--r-card); padding:8px 12px; font-size:.85rem; margin:0 0 10px; }
.datachip:hover{ text-decoration:none; border-color:var(--line-2); }
.datachip .num b{ font-size:1.05rem; }
.brief{ background:var(--wheat-bg); border-left:4px solid var(--cta); border-radius:0 var(--r-card) var(--r-card) 0; padding:18px 20px; margin:0 0 30px; }
.brief .k{ display:flex; justify-content:space-between; gap:10px; margin-bottom:6px; }
.brief h3{ font-size:1.15rem; margin:0 0 8px; }
.brief ul{ margin:0 0 12px; padding-left:1.1em; line-height:1.6; }
.date-h{ font-size:.82rem; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); border-bottom:2px solid var(--line-2); padding-bottom:6px; margin:26px 0 0; }
.pager{ display:flex; gap:6px; margin-top:22px; }
.pager a{ min-width:38px; height:38px; display:grid; place-items:center; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); font-weight:700; }
.pager a.on{ background:var(--navy); color:#fff; border-color:var(--navy); }
.article-grid article{ max-width:760px; }
.art-h1{ font-size:clamp(1.9rem,3.4vw,2.6rem); margin:10px 0 14px; max-width:30ch; }
.standfirst.big{ font-size:1.18rem; color:var(--ink-2); line-height:1.55; max-width:62ch; }
.art-by{ display:flex; justify-content:space-between; align-items:center; gap:14px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:14px 0; margin:18px 0 24px; flex-wrap:wrap; }
.numbers{ margin:0 0 26px; }
.numbers h2{ font-size:.82rem; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); margin-bottom:8px; }
.article-body{ font-size:1.06rem; line-height:1.7; max-width:66ch; }
.article-body p{ margin:0 0 1.1em; }
.article-body h2{ font-size:1.35rem; margin:1.5em 0 .5em; }
.article-body ul{ padding-left:1.2em; margin:0 0 1.1em; } .article-body li{ margin:.35em 0; }
.article-body .samplep{ color:var(--muted); }
.embed-q{ display:flex; justify-content:space-between; gap:16px; align-items:center; border:1.5px solid var(--line); border-left:4px solid var(--cta); border-radius:var(--r-card); padding:14px 18px; margin:0 0 1.4em; background:var(--surface); }
.embed-q .t{ font-weight:750; font-size:1rem; line-height:1.3; margin:3px 0 4px; }
.embed-q .p{ font-size:1.35rem; font-weight:800; }
.embed-q .p .cur{ font-size:.85rem; }
.embed-q .a{ text-align:right; display:flex; flex-direction:column; gap:8px; align-items:flex-end; }
.embed-c{ margin:0 0 1.4em; }
.art-foot{ border-top:1px solid var(--line); padding-top:14px; color:var(--ink-2); }
.prevnext{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:28px; }
.prevnext a{ border:1.5px solid var(--line); border-radius:var(--r-card); padding:12px 14px; font-size:.9rem; line-height:1.35; }
.prevnext a span{ display:block; margin-bottom:3px; }
@media (max-width:860px){ .news-grid{ grid-template-columns:minmax(0,1fr); } .story-grid{ grid-template-columns:1fr; } .embed-q{ flex-direction:column; align-items:stretch; } .embed-q .a{ align-items:flex-start; text-align:left; } .prevnext{ grid-template-columns:1fr; } }

/* Responsywność */
@media (max-width:1500px){
  .top .wrap{ gap:12px; } .mainnav{ gap:0; } .mainnav a{ padding:8px 7px; font-size:.88rem; } .searchbtn{ min-width:130px; } .top .tools{ gap:8px; } .top .tools .btn-cta{ padding:10px 12px; }
}
.searchbtn{ white-space:nowrap; }
@media (max-width:1500px){ .searchbtn kbd{ display:none; } }
@media (max-width:1320px){ .mainnav a{ padding:8px 6px; font-size:.84rem; } .mainnav .new{ display:none; } .searchbtn span{ display:none; } .searchbtn{ min-width:0; } }
@media (max-width:1080px){
  .mainnav{ display:none; } .menubtn{ display:grid; }
  .mainnav.open{ display:flex; flex-direction:column; position:absolute; top:68px; left:0; right:0; background:var(--surface); border-bottom:1px solid var(--line); padding:10px 20px 16px; }
  .mainnav.open a.on::after{ display:none; }
  .searchbtn{ min-width:0; } .searchbtn span,.searchbtn kbd{ display:none; }
}
@media (max-width:860px){
  .hero .wrap,.grid2,.detail{ grid-template-columns:minmax(0,1fr); }
  .bigprice .v{ font-size:2.4rem; }
  .grid3,.steps{ grid-template-columns:1fr 1fr; }
  .facts{ grid-template-columns:1fr 1fr; }
  footer.foot .cols{ grid-template-columns:1fr 1fr; }
  footer.foot .cols > div:first-child{ grid-column:1 / -1; }
  .aside{ position:static; }
  .top .tools .btn-cta{ display:none; }
  .mbar{ display:flex; position:fixed; left:0; right:0; bottom:0; z-index:60; background:var(--surface); border-top:1px solid var(--line); padding:10px 16px calc(env(safe-area-inset-bottom,0px) + 10px); gap:10px; }
  .mbar .btn{ flex:1; }
  body{ padding-bottom:72px; }
  .ask{ flex-wrap:wrap; } .ask .tail{ display:none; } .ask label{ width:100%; padding:6px 8px 0; }
}
@media (max-width:560px){
  .grid3,.steps{ grid-template-columns:1fr; }
  footer.foot .cols{ grid-template-columns:1fr 1fr; gap:28px 18px; }
  footer.foot ul{ line-height:1.5; }
  footer.foot li{ margin-bottom:9px; }
  .testbar .wrap{ font-size:.78rem; }
  .brand img.n{ display:none; }
}
/* 3.99: stopka */
footer.foot .fdata{ display:flex; justify-content:space-between; align-items:center; gap:20px 32px; flex-wrap:wrap; padding:0 0 32px; margin-bottom:36px; border-bottom:1px solid var(--navy-3); position:relative; }
footer.foot .fstats{ list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:18px 40px; }
footer.foot .fstats li{ display:flex; flex-direction:column; gap:2px; }
footer.foot .fstats b{ color:#fff; font-size:1.6rem; line-height:1.1; font-weight:800; letter-spacing:-.01em; }
footer.foot .fstats span{ font-size:.82rem; color:rgba(255,255,255,.7); }
footer.foot .fcta{ display:flex; gap:10px; flex-wrap:wrap; }
footer.foot .fcta .btn{ text-decoration:none; }
footer.foot .btn-ghost{ border:1px solid rgba(255,255,255,.45); color:#fff; background:transparent; }
footer.foot .btn-ghost:hover{ border-color:#fff; background:rgba(255,255,255,.08); }
footer.foot .cols{ grid-template-columns:minmax(0,1.35fr) repeat(5, minmax(0,1fr)); gap:32px 26px; }
footer.foot details.fcol > summary{ list-style:none; cursor:default; }
footer.foot details.fcol > summary::-webkit-details-marker{ display:none; }
footer.foot details.fcol > summary h3{ display:inline; }
footer.foot ul{ line-height:1.9; }
footer.foot .fctry{ margin-top:36px; padding-top:28px; border-top:1px solid var(--navy-3); position:relative; }
footer.foot .fctry h3{ margin-bottom:14px; }
footer.foot .fctry ul{ display:flex; flex-wrap:wrap; gap:8px; line-height:1.3; }
footer.foot .fctry a{ display:inline-flex; align-items:center; gap:6px; padding:7px 12px; border:1px solid var(--navy-3); border-radius:999px; font-size:.86rem; }
footer.foot .fctry a:hover{ border-color:rgba(255,255,255,.6); }
footer.foot .fctry a.all{ border-color:var(--wheat); color:var(--wheat); font-weight:700; }
footer.foot .fsrc{ margin:24px 0 0; max-width:96ch; color:rgba(255,255,255,.66); position:relative; }
footer.foot .fsrc a{ color:var(--wheat); text-decoration:underline; }
footer.foot .blinks{ display:flex; flex-wrap:wrap; gap:6px 18px; align-items:center; }
footer.foot .blinks button{ background:none; border:0; color:inherit; padding:0; font:inherit; cursor:pointer; }
footer.foot .blinks button:hover, footer.foot .blinks a:hover{ color:#fff; text-decoration:underline; }
footer.foot .totop{ color:var(--wheat); font-weight:700; }
@media (max-width:1200px){ footer.foot .cols{ grid-template-columns:repeat(3, minmax(0,1fr)); } footer.foot .cols > .fbrand{ grid-column:1 / -1; } }
@media (max-width:760px){
  footer.foot .fstats{ display:grid; grid-template-columns:1fr 1fr; gap:16px 20px; width:100%; }
  footer.foot .fstats b{ font-size:1.35rem; }
  footer.foot .fcta{ width:100%; } footer.foot .fcta .btn{ flex:1 1 140px; justify-content:center; }
  footer.foot .cols{ grid-template-columns:1fr; gap:0; }
  footer.foot .cols > .fbrand{ margin-bottom:18px; }
  footer.foot details.fcol{ border-top:1px solid var(--navy-3); }
  footer.foot details.fcol:last-of-type{ border-bottom:1px solid var(--navy-3); }
  footer.foot details.fcol > summary{ cursor:pointer; display:flex; justify-content:space-between; align-items:center; min-height:52px; padding:4px 0; }
  footer.foot details.fcol > summary h3{ margin:0; }
  footer.foot details.fcol > summary::after{ content:''; width:9px; height:9px; border-right:2px solid rgba(255,255,255,.75); border-bottom:2px solid rgba(255,255,255,.75); transform:rotate(45deg); margin-right:6px; transition:transform .15s; }
  footer.foot details.fcol[open] > summary::after{ transform:rotate(-135deg); }
  footer.foot details.fcol ul{ padding-bottom:14px; }
  footer.foot ul{ line-height:1.5; } footer.foot li{ margin-bottom:10px; }
  footer.foot .fctry a{ padding:8px 12px; }
  footer.foot .bottom{ flex-direction:column; }
}
@media print{ .testbar,.ticker,.top,.mbar,footer.foot,.cookies,.aside .acts{ display:none !important; } body{ background:#fff; } }


/* ===== WordPress ===== */
body.admin-bar .top{ top:32px; }
@media (max-width:782px){ body.admin-bar .top{ top:46px; } }
.entry-content > *:first-child{ margin-top:0; }
.screen-reader-text{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }

/* ===== Dossier rynkowy produktu ===== */
.dnav{ position:sticky; top:calc(env(safe-area-inset-top, 0px) + 0px); z-index:5; display:flex; gap:4px; align-items:center; overflow-x:auto; background:var(--bg); border-bottom:1px solid var(--line); padding:8px 0; margin:14px 0 4px; scrollbar-width:thin; }
.dnav .xs{ white-space:nowrap; margin-right:6px; }
.dnav button{ white-space:nowrap; background:none; border:1.5px solid var(--line-2); border-radius:999px; padding:5px 12px; font:inherit; font-size:.82rem; font-weight:700; color:var(--ink); cursor:pointer; }
.dnav button:hover{ border-color:var(--navy); }
.dossier{ border-top:3px solid var(--navy); margin:12px 0 40px; padding-top:28px; }
.dreport{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:start; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:22px 24px; }
.dreport h2{ font-size:clamp(1.5rem,2.6vw,2rem); margin:6px 0 10px; }
.dreport .standfirst{ font-size:1.05rem; color:var(--ink-2); max-width:70ch; margin:0; }
.dreport-a{ display:flex; flex-direction:column; gap:8px; }
.dhead{ margin:44px 0 16px; scroll-margin-top:72px; }
.dhead h2{ font-size:clamp(1.35rem,2.2vw,1.7rem); margin:4px 0 6px; }
.dhead p{ color:var(--ink-2); max-width:72ch; margin:0; }
#ladh{ scroll-margin-top:72px; }
.dsignals{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.dsignals .card{ display:flex; flex-direction:column; gap:3px; padding:16px 18px; }
.dsignals b{ font-size:1.55rem; font-weight:800; line-height:1.15; }
.dbench{ margin-top:22px; }
.dsrc{ display:inline-flex; gap:3px; margin-left:4px; vertical-align:super; }
.srcref{ font:inherit; font-size:.62rem; font-weight:800; line-height:1; padding:2px 4px; border-radius:4px; border:1px solid var(--line-2); background:var(--surface); color:var(--ink); cursor:pointer; }
.srcref:hover{ border-color:var(--navy); }
.dvar .card h3{ margin:0; }
.hbars{ display:flex; flex-direction:column; gap:7px; }
.hb{ display:grid; grid-template-columns:110px minmax(0,1fr) 120px; gap:10px; align-items:center; font-size:.88rem; }
.hb-t{ height:12px; background:var(--surface-2); border-radius:3px; overflow:hidden; }
.hb-t i{ display:block; height:100%; background:var(--navy); opacity:.75; border-radius:3px; }
:root[data-theme="dark"] .hb-t i{ background:var(--wheat); opacity:.6; }
.hb-v{ text-align:right; white-space:nowrap; }
.gantt{ display:flex; flex-direction:column; gap:3px; font-size:.82rem; }
.g-row{ display:grid; grid-template-columns:130px repeat(12, minmax(0,1fr)); gap:2px; align-items:center; }
.g-head span{ font-size:.68rem; font-weight:700; color:var(--muted); text-align:center; }
.g-head span:first-child{ text-align:left; }
.g-o{ font-weight:700; white-space:nowrap; }
.g-c{ height:18px; border-radius:3px; background:var(--surface-2); }
.g-c.mk{ background:rgba(var(--heat-rgb),.35); }
.g-c.h{ background:var(--cta); }
.g-c.h.mk{ background:linear-gradient(90deg, var(--cta) 50%, rgba(var(--heat-rgb),.45) 50%); }
.g-note{ padding:0 0 6px 132px; }
.g-key{ display:inline-block; width:14px; height:10px; border-radius:2px; margin-right:4px; vertical-align:middle; }
.g-key.h{ background:var(--cta); } .g-key.mk{ background:rgba(var(--heat-rgb),.35); }
.dcalc .facts.kpi dd{ font-size:1.35rem; }
#kc_matrix td.hl{ background:var(--wheat-bg); font-weight:800; }
.ranges{ display:flex; flex-direction:column; gap:9px; }
.rg{ display:grid; grid-template-columns:130px minmax(0,1fr) 110px; gap:10px; align-items:center; font-size:.88rem; }
.rg-t{ position:relative; height:12px; background:var(--surface-2); border-radius:3px; }
.rg-t i{ position:absolute; top:0; bottom:0; background:var(--amber); border-radius:3px; }
.rg-v{ text-align:right; }
.rg-axis .rg-t{ background:none; height:14px; }
.rg-axis em{ position:absolute; transform:translateX(-50%); font-style:normal; font-size:.7rem; color:var(--muted); }
.dsources{ columns:2; column-gap:32px; font-size:.86rem; line-height:1.5; padding-left:1.6em; margin:0 0 20px; }
.dsources li{ break-inside:avoid; margin:0 0 6px; scroll-margin-top:90px; border-radius:4px; transition:background .4s; }
.dsources li.flash{ background:var(--wheat-bg); }
.dsources a{ text-decoration:underline; }
@media (max-width:860px){
  .dreport{ grid-template-columns:1fr; } .dsignals{ grid-template-columns:1fr 1fr; } .dsources{ columns:1; }
  .dcalc .grid3{ grid-template-columns:1fr 1fr !important; }
  .g-row{ grid-template-columns:96px repeat(12, minmax(0,1fr)); } .g-note{ padding-left:98px; } .g-head span{ font-size:.58rem; }
  .hb{ grid-template-columns:90px minmax(0,1fr) 108px; } .rg{ grid-template-columns:104px minmax(0,1fr) 84px; }
}
@media (max-width:520px){ .dsignals{ grid-template-columns:1fr; } }
.dossier table.data td:first-child b{ white-space:nowrap; }
.dcalc .facts.kpi dd.xs{ font-size:.78rem; font-weight:600; }
@media (max-width:860px){ .dcalc .facts.kpi{ grid-template-columns:1fr 1fr !important; } }

@media (max-width:560px){ .g-row{ grid-template-columns:repeat(12, minmax(0,1fr)); } .g-row .g-o{ grid-column:1 / -1; margin-top:6px; } .g-head span:first-child{ display:none; } .g-note{ padding-left:0; } }

/* ===== Strona rynku produktu (raport bez notowań) ===== */
.dsignals.rkpis{ grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:18px; }
.rpairs{ display:flex; flex-direction:column; gap:6px; margin-top:4px; }
.rp-row{ display:grid; grid-template-columns:76px minmax(0,1fr) 92px; gap:10px; align-items:center; font-size:.88rem; }
.rp-grp{ margin-top:8px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.rp-t{ position:relative; height:14px; background:var(--surface-2); border-radius:3px; }
.rp-line{ position:absolute; top:6px; height:2px; background:var(--line-2); }
.rp-a, .rp-b, .rp-key{ position:absolute; top:1px; width:12px; height:12px; border-radius:50%; transform:translateX(-50%); }
.rp-a, .rp-key.a{ background:var(--navy); }
.rp-b, .rp-key.b{ background:var(--amber); border:2px solid var(--surface); }
.rp-key{ position:static; display:inline-block; transform:none; margin-right:5px; vertical-align:-1px; }
:root[data-theme="dark"] .rp-a, :root[data-theme="dark"] .rp-key.a{ background:var(--wheat); }
.rp-v{ text-align:right; white-space:nowrap; }
.rp-axis .rp-t{ background:none; height:16px; }
.rp-axis em{ position:absolute; transform:translateX(-50%); font-style:normal; font-size:.7rem; color:var(--muted); }
.rshare{ display:inline-block; width:56px; height:7px; background:var(--surface-2); border-radius:3px; margin-right:8px; vertical-align:1px; overflow:hidden; }
.rshare i{ display:block; height:100%; background:var(--navy); opacity:.7; }
:root[data-theme="dark"] .rshare i{ background:var(--wheat); }
table.rweeks{ margin-top:12px; font-size:.82rem; }
table.rweeks th, table.rweeks td{ padding-left:6px; padding-right:6px; }
.rfaq{ display:grid; grid-template-columns:1fr 1fr; gap:10px; align-items:start; }
.rfaq details{ padding:14px 18px; }
.rfaq summary{ font-weight:700; cursor:pointer; }
.rfaq p{ margin:10px 0 0; }
.rmore{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:28px 0 0; padding:16px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.rmore .xs{ margin-right:6px; }

.rstack{ display:flex; flex-direction:column; gap:16px; }
.rstack .prose{ columns:2; column-gap:36px; max-width:none; }
.rstack .prose p{ break-inside:avoid; margin-top:0; }
.rstack .prose.rone{ columns:1; max-width:80ch; }
.rp-bar{ position:absolute; left:0; top:5px; height:4px; background:var(--navy); opacity:.25; border-radius:2px; }
#re_tab tr.hl td{ background:var(--wheat-bg); font-weight:800; }
.dcalc .facts.kpi dd .cur{ font-size:.8rem; }
@media (max-width:860px){
  .dsignals.rkpis{ grid-template-columns:1fr 1fr; } .rfaq{ grid-template-columns:1fr; } .rstack .prose{ columns:1; }
  .rp-row{ grid-template-columns:64px minmax(0,1fr) 84px; }
  table.rweeks{ font-size:.74rem; }
}

/* ===== Strona główna: raporty rynków owoców ===== */
.hr-grid{ align-items:stretch; }
.hr-card{ display:flex; flex-direction:column; gap:8px; text-decoration:none; transition:border-color .15s, transform .15s; }
.hr-card:hover{ border-color:var(--cta); transform:translateY(-2px); }
.hr-top{ display:flex; justify-content:space-between; gap:8px; align-items:baseline; }
.hr-card h3{ margin:0; font-size:1.2rem; }
.hr-lead{ margin:0; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.hr-stats{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:auto; padding-top:10px; border-top:1px solid var(--line); }
.hr-st{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.hr-st b{ font-size:1.25rem; font-weight:800; line-height:1.2; }
.hr-st .cur{ font-size:.75rem; font-weight:600; }
.hr-st .up{ color:var(--up); } .hr-st .down{ color:var(--down); }
.hr-spark{ width:100%; max-width:120px; height:30px; color:var(--navy); margin-top:4px; }
:root[data-theme="dark"] .hr-spark{ color:var(--wheat); }
.hr-more{ font-size:.85rem; font-weight:700; color:var(--ink); }
@media (max-width:520px){ .hr-stats{ grid-template-columns:1fr 1fr; } }

/* ===== Imprezy rolnicze 2027 ===== */
.ev-hero{ background:var(--hero-bg); color:var(--hero-ink); padding-bottom:40px; }
.ev-hero .crumbs, .ev-hero .crumbs a{ color:var(--hero-muted); }
.ev-herogrid{ display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr); gap:40px; align-items:end; }
.ev-eyebrow{ margin:6px 0 10px; color:var(--wheat); font-weight:750; font-size:.85rem; letter-spacing:.08em; text-transform:uppercase; }
.ev-hero h1{ color:#fff; max-width:18ch; }
.ev-lead{ margin:14px 0 0; color:var(--hero-muted); font-size:1.08rem; max-width:62ch; }
.ev-stats{ display:flex; flex-wrap:wrap; gap:10px 34px; margin:26px 0 0; }
.ev-stats dt{ font-size:.78rem; color:var(--hero-muted); font-weight:600; }
.ev-stats dd{ margin:0; font-size:1.9rem; font-weight:800; color:#fff; font-stretch:84%; }
.ev-next{ display:flex; flex-direction:column; gap:4px; background:var(--surface); color:var(--ink); border-radius:var(--r-panel); padding:20px 22px; box-shadow:var(--shadow); border-top:5px solid var(--cta); transition:transform .2s; }
.ev-next:hover{ transform:translateY(-2px); }
.ev-next .k{ font-size:.75rem; font-weight:750; text-transform:uppercase; letter-spacing:.07em; color:var(--amber-text); }
.ev-next .t{ font-size:1.5rem; font-weight:800; font-stretch:84%; line-height:1.15; }
.ev-next .w{ font-weight:700; }
.ev-next .p{ color:var(--muted); font-size:.92rem; margin-bottom:6px; }
.ev-next .ev-when{ align-self:flex-start; }
.ev-goals{ margin:30px 0 8px; }
.ev-goals h2{ font-size:1.15rem; margin-bottom:12px; }
.ev-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.ev-chip{ border:1.5px solid var(--line-2); background:var(--surface); color:var(--ink); border-radius:22px; padding:7px 14px; font-weight:650; font-size:.9rem; cursor:pointer; }
.ev-chip span{ color:var(--muted); font-weight:600; margin-left:3px; }
.ev-chip:hover{ border-color:var(--ink); }
.ev-chip[aria-pressed="true"]{ background:var(--navy); border-color:var(--navy); color:#fff; }
.ev-chip[aria-pressed="true"] span{ color:var(--wheat); }
.ev-goaltip{ min-height:1.4em; margin:10px 0 0; color:var(--ink-2); }
.ev-bar{ position:sticky; top:68px; z-index:20; display:flex; flex-wrap:wrap; gap:8px; align-items:center; background:var(--bg); padding:12px 0; margin-top:14px; border-bottom:1.5px solid var(--line); }
.ev-q{ flex:1 1 220px; display:flex; align-items:center; gap:8px; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); background:var(--surface); padding:0 10px; color:var(--muted); }
.ev-q input{ border:0; background:transparent; padding:10px 0; font:inherit; color:var(--ink); width:100%; outline:none; }
.ev-q:focus-within{ border-color:var(--ink); }
.ev-selw select{ font:inherit; font-size:.9rem; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); background:var(--surface); color:var(--ink); padding:9px 10px; max-width:190px; }
.ev-view button{ padding:9px 14px; }
.ev-planbtn{ padding:9px 14px; }
.ev-plancount{ background:var(--cta); color:var(--cta-ink); border-radius:12px; padding:0 7px; font-size:.78rem; }
.ev-count{ margin:16px 0 4px; color:var(--ink-2); }
.linkbtn{ border:0; background:none; color:var(--ink); text-decoration:underline; font:inherit; font-weight:650; cursor:pointer; padding:0 0 0 8px; }
.ev-month{ margin:22px 0 10px; scroll-margin-top:150px; }
.ev-month h2, .ev-watch h2{ font-size:1.35rem; display:flex; align-items:baseline; gap:12px; margin-bottom:10px; }
.ev-month h2 span{ font-size:.85rem; font-weight:600; color:var(--muted); font-stretch:100%; }
.ev-list{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.ev-row{ position:relative; }
.ev-link{ display:grid; grid-template-columns:76px minmax(0,1fr) auto; gap:18px; align-items:center; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px 56px 14px 14px; transition:border-color .2s, box-shadow .2s; }
.ev-link:hover{ border-color:var(--line-2); box-shadow:var(--shadow); }
.ev-link:hover .ev-t{ text-decoration:underline; }
.ev-date{ display:flex; flex-direction:column; align-items:center; justify-content:center; background:var(--navy-bg); border-radius:var(--r-card); padding:9px 4px; text-align:center; min-height:64px; }
.ev-date b{ font-size:1.25rem; font-weight:800; line-height:1; font-stretch:84%; white-space:nowrap; }
.ev-date small{ text-transform:uppercase; font-weight:750; font-size:.72rem; letter-spacing:.05em; color:var(--muted); margin-top:4px; }
.ev-date.tba{ background:var(--surface-2); }
.ev-main{ display:flex; flex-direction:column; gap:4px; min-width:0; }
.ev-t{ font-weight:780; font-size:1.08rem; line-height:1.25; }
.ev-meta{ display:flex; flex-wrap:wrap; gap:4px 14px; font-size:.86rem; color:var(--ink-2); }
.ev-s{ font-size:.88rem; color:var(--muted); }
.ev-sector{ display:inline-flex; align-items:center; gap:6px; }
.ev-dot{ width:9px; height:9px; border-radius:50%; display:inline-block; flex:none; }
.ev-side{ display:flex; flex-direction:column; align-items:flex-end; gap:6px; text-align:right; }
.ev-when{ font-size:.78rem; font-weight:700; color:var(--ink-2); background:var(--surface-2); border-radius:12px; padding:2px 9px; white-space:nowrap; }
.ev-when.soon{ background:var(--wheat-bg); color:var(--amber-text); }
.ev-when.live{ background:var(--up); color:#fff; }
.ev-when.past{ color:var(--faint); }
.ev-clash{ font-size:.76rem; color:var(--amber-text); max-width:190px; }
.ev-save{ position:absolute; right:12px; top:50%; transform:translateY(-50%); width:38px; height:38px; display:grid; place-items:center; border:1.5px solid var(--line-2); background:var(--surface); color:var(--faint); border-radius:50%; cursor:pointer; }
.ev-save svg path{ fill:none; stroke:currentColor; stroke-width:2; }
.ev-save[aria-pressed="true"]{ color:var(--cta-ink); background:var(--cta); border-color:var(--cta); }
.ev-save[aria-pressed="true"] svg path{ fill:currentColor; }
.ev-save.btn{ position:static; transform:none; width:auto; height:auto; border-radius:var(--r-ctl); border-color:var(--ink); color:var(--ink); display:inline-flex; }
.ev-save.btn[aria-pressed="true"]{ background:var(--cta); border-color:var(--cta); color:var(--cta-ink); }
.ev-list.compact .ev-link{ grid-template-columns:58px minmax(0,1fr); gap:12px; padding:10px 50px 10px 10px; }
.ev-list.compact .ev-date{ min-height:52px; padding:6px 2px; }
.ev-list.compact .ev-date b{ font-size:1rem; }
.ev-list.compact .ev-side{ display:none; }
.ev-list.compact .ev-t{ font-size:.98rem; }
.ev-list.compact .ev-s .tag + *{ display:none; }
.ev-list.compact .ev-save{ width:32px; height:32px; right:9px; }
.tag.ev-exp{ background:var(--wheat-bg); color:var(--amber-text); border-color:transparent; }
.tag.ev-tba{ background:var(--surface-2); border-color:transparent; }
.ev-watch{ margin:44px 0 10px; padding-top:28px; border-top:1.5px dashed var(--line-2); }
.ev-empty{ background:var(--surface); border:1.5px dashed var(--line-2); border-radius:var(--r-card); padding:28px; text-align:center; margin:16px 0; }
/* widok roku */
.ev-year{ display:grid; grid-template-columns:repeat(auto-fill,minmax(270px,1fr)); gap:14px; margin-top:12px; }
.ev-mcard{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:16px; }
.ev-mcard h3{ display:flex; justify-content:space-between; font-size:1.1rem; margin-bottom:10px; }
.ev-mcard h3 span{ background:var(--navy); color:#fff; border-radius:12px; padding:1px 9px; font-size:.8rem; font-stretch:100%; }
.ev-mcard.empty-m{ opacity:.6; }
.ev-mcard ul{ list-style:none; padding:0; margin:12px 0 0; display:grid; gap:4px; }
.ev-mcard li a{ display:flex; align-items:center; gap:8px; font-size:.88rem; padding:3px 0; }
.ev-mcard li a span{ flex:1; min-width:0; font-weight:650; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ev-mcard li a small{ color:var(--muted); white-space:nowrap; flex:none; }
.ev-mcard li a:hover span{ text-decoration:underline; }
.ev-cal{ display:grid; grid-template-columns:repeat(7,1fr); gap:2px; font-size:.72rem; text-align:center; }
.ev-cal .wd{ color:var(--faint); font-weight:700; padding-bottom:2px; }
.ev-cal .d{ padding:3px 0; border-radius:4px; color:var(--ink-2); position:relative; }
.ev-cal .d.l1{ background:rgba(var(--heat-rgb),.18); color:var(--ink); font-weight:700; }
.ev-cal .d.l2{ background:rgba(var(--heat-rgb),.38); color:var(--ink); font-weight:700; }
.ev-cal .d.l3{ background:rgba(var(--heat-rgb),.6); color:var(--heat-ink); font-weight:700; }
.ev-cal .d.l4{ background:rgba(var(--heat-rgb),.85); color:var(--heat-ink); font-weight:700; }
.ev-cal .d.today{ outline:2px solid var(--cta); }
.ev-cal.big{ font-size:.85rem; gap:3px; }
.ev-cal.big .d{ padding:6px 0; }
.ev-cal.big .d.l1{ background:var(--navy); color:#fff; }
.ev-cal.big .d i{ position:absolute; left:30%; right:30%; bottom:2px; height:3px; border-radius:2px; }
/* sekcje katalogu */
.ev-sec{ margin:56px 0 0; }
.ev-sec > h2{ margin-bottom:6px; }
.ev-sec > p.muted{ margin:0 0 18px; }
.ev-trips{ display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:14px; }
.ev-trips.one{ grid-template-columns:1fr; }
.ev-trip{ display:flex; flex-direction:column; }
.ev-trip h3{ font-size:1.08rem; margin-bottom:12px; }
.ev-trip > .btn{ margin-top:auto; align-self:flex-start; }
.ev-tl{ position:relative; height:10px; background:var(--surface-2); border-radius:5px; }
.ev-tl span{ position:absolute; top:0; bottom:0; border-radius:5px; }
.ev-tip{ background:var(--surface-2); border-radius:var(--r-ctl); padding:8px 10px; }
.ev-tripev{ display:grid; gap:4px; margin:10px 0 14px; }
.ev-tripev a{ display:flex; flex-wrap:wrap; align-items:center; gap:2px 8px; font-weight:700; font-size:.92rem; }
.ev-tripev a small{ font-weight:500; color:var(--muted); white-space:nowrap; }
.ev-tripev a:hover{ text-decoration:underline; }
.ev-else{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:14px; }
.ev-else h3{ font-size:1.1rem; }
.ev-nextd{ margin:0 0 6px; }
.ev-alt, .ev-ext, .ev-more{ display:block; margin-top:8px; font-weight:650; text-decoration:underline; }
.ev-ctry{ display:flex; flex-wrap:wrap; gap:8px; }
.ev-ctry a{ display:inline-flex; align-items:center; gap:7px; border:1.5px solid var(--line); background:var(--surface); border-radius:22px; padding:6px 13px; font-weight:650; font-size:.9rem; }
.ev-ctry a span{ color:var(--muted); font-weight:600; font-size:.82rem; }
.ev-ctry a:hover, .ev-ctry a.on{ border-color:var(--ink); }
.ev-org{ display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; background:var(--navy-bg); border-radius:var(--r-panel); padding:28px 30px; margin-bottom:64px; }
.ev-org p{ margin:8px 0 0; max-width:60ch; }
/* strona imprezy */
.ev-head{ display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:40px; align-items:start; margin-top:6px; }
.ev-tags{ display:flex; flex-wrap:wrap; gap:8px 14px; align-items:center; font-size:.88rem; font-weight:650; color:var(--ink-2); margin-bottom:12px; }
.ev-fmt{ color:var(--muted); }
.ev-sub{ font-size:1.12rem; margin:12px 0 0; }
.ev-short{ color:var(--ink-2); margin:10px 0 0; max-width:60ch; }
.ev-acts{ display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; align-items:flex-start; }
.ev-add{ position:relative; }
.ev-add summary{ list-style:none; cursor:pointer; }
.ev-add summary::-webkit-details-marker{ display:none; }
.ev-addmenu{ position:absolute; z-index:15; top:calc(100% + 6px); left:0; background:var(--surface); border:1.5px solid var(--line-2); border-radius:var(--r-card); box-shadow:var(--shadow); padding:6px; min-width:230px; display:grid; }
.ev-addmenu button, .ev-addmenu a{ text-align:left; border:0; background:none; font:inherit; color:var(--ink); padding:10px 12px; border-radius:var(--r-ctl); cursor:pointer; font-weight:650; }
.ev-addmenu button:hover, .ev-addmenu a:hover{ background:var(--surface-2); }
.ev-headcal{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:16px; }
.ev-headcal .k{ font-weight:750; margin:0 0 8px; }
.ev-headcal .k + .ev-cal + .k{ margin-top:14px; }
.ev-facts{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1px; background:var(--line); border:1.5px solid var(--line); border-radius:var(--r-card); overflow:hidden; margin:28px 0 8px; }
.ev-facts div{ background:var(--surface); padding:14px 16px; }
.ev-facts dt{ font-size:.78rem; color:var(--muted); font-weight:650; }
.ev-facts dd{ margin:4px 0 0; font-weight:750; }
.ev-facts dd small{ display:block; font-weight:500; color:var(--muted); font-size:.84rem; margin-top:2px; }
.ev-body{ display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:48px; margin-top:24px; }
.ev-mainc section{ margin-bottom:38px; }
.ev-mainc h2{ font-size:1.45rem; margin-bottom:12px; }
.ev-mainc h3{ font-size:1.02rem; margin:16px 0 4px; }
.ev-mainc p{ margin:0 0 10px; max-width:70ch; }
.ev-note{ background:var(--wheat-bg); border-left:4px solid var(--cta); padding:12px 16px; border-radius:0 var(--r-card) var(--r-card) 0; }
.ev-tabs{ display:inline-flex; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); overflow:hidden; margin-bottom:6px; }
.ev-tabs button{ border:0; background:var(--surface); padding:9px 16px; font:inherit; font-weight:700; color:var(--ink-2); cursor:pointer; }
.ev-tabs button[aria-selected="true"]{ background:var(--navy); color:#fff; }
.ev-panel{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:4px 18px 10px; }
.ev-out{ margin-top:14px !important; }
.ev-qs{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:20px 22px; }
.ev-qh{ display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:6px; }
.ev-qh h2{ margin:0 !important; }
.ev-qs ol{ list-style:none; padding:0; margin:12px 0; display:grid; gap:8px; counter-reset:q; }
.ev-qs li label{ display:flex; gap:12px; align-items:flex-start; background:var(--surface-2); border-radius:var(--r-ctl); padding:10px 12px; cursor:pointer; }
.ev-qs li input{ margin-top:4px; width:18px; height:18px; accent-color:var(--navy); flex:none; }
.ev-qs li input:checked + span{ text-decoration:line-through; color:var(--muted); }
.ev-ovl{ margin:6px 0 0 !important; }
.ev-aside{ display:grid; gap:16px; align-content:start; }
.ev-aside .ev-sector{ display:none; }
.ev-aside h3{ font-size:1.05rem; margin-bottom:12px; }
.ev-prices a{ display:block; padding:10px 0; border-top:1px solid var(--line); }
.ev-prices a:first-of-type{ border-top:0; padding-top:0; }
.ev-prices a b{ display:block; }
.ev-prices a small{ color:var(--muted); }
.ev-prices a:hover b{ text-decoration:underline; }
.ev-fix p{ margin:0 0 12px; }
.ev-notify form{ display:flex; gap:8px; flex-wrap:wrap; margin-top:12px; }
.ev-notify input[type=email]{ flex:1 1 220px; font:inherit; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:10px 12px; background:var(--surface); color:var(--ink); }
.ev-ok{ color:var(--up); font-weight:650; }
.hp{ position:absolute !important; left:-9999px !important; width:1px; height:1px; }
.ev-back{ margin:20px 0 64px; font-weight:700; }
.ev-back a:hover{ text-decoration:underline; }
.ev-teaser{ margin:40px 0 56px; }
.ev-teaserh{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:14px; }
.ev-teaserh a{ font-weight:700; text-decoration:underline; }
.ev-teaser .ev-list{ grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); }
/* plan i formularz */
.ev-plan{ list-style:none; padding:0; margin:0 0 20px; }
.ev-gap{ margin:6px 0 14px 30px; padding-left:16px; border-left:2px dashed var(--line-2); color:var(--muted); font-size:.86rem; }
.ev-warn{ margin-bottom:20px; }
.ev-warn p{ margin:6px 0 0; }
.ev-warn a{ text-decoration:underline; font-weight:700; }
.ev-form form{ display:grid; gap:14px; margin:20px 0 64px; max-width:860px; }
.ev-form .grid2{ gap:14px 20px; }
.ev-form label{ display:grid; gap:5px; font-weight:650; font-size:.9rem; }
.ev-form input, .ev-form select, .ev-form textarea{ font:inherit; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:10px 12px; background:var(--surface); color:var(--ink); }
.ev-form button{ justify-self:start; }
@media (max-width:980px){
  .ev-herogrid, .ev-head, .ev-body{ grid-template-columns:minmax(0,1fr); }
  .ev-headcal{ max-width:340px; }
  .ev-bar{ top:56px; }
}
@media (max-width:640px){
  .ev-hero h1{ font-size:2rem; }
  .ev-stats dd{ font-size:1.5rem; }
  .ev-bar{ position:static; }
  .ev-selw{ flex:1 1 45%; } .ev-selw select{ max-width:none; width:100%; }
  .ev-link{ grid-template-columns:62px minmax(0,1fr); gap:12px; padding:12px 50px 12px 12px; }
  .ev-side{ grid-column:2; flex-direction:row; flex-wrap:wrap; align-items:center; text-align:left; }
  .ev-clash{ max-width:none; }
  .ev-org{ padding:22px; }
  .ev-teaser .ev-list{ grid-template-columns:minmax(0,1fr); }
  .ev-form .grid2{ grid-template-columns:minmax(0,1fr); }
  .ev-link{ align-items:start; }
  .ev-headcal{ display:none; }
  .ev-facts{ grid-template-columns:1fr 1fr; }
  .ev-facts div{ padding:12px; }
  .ev-acts .btn{ flex:1 1 auto; }
}
@media print{
  .ev-bar, .ev-save, .ev-acts, .ev-aside, .ev-org, .top, .testbar, footer{ display:none !important; }
  .ev-link{ break-inside:avoid; box-shadow:none; }
}

/* ===== Archiwum imprez (przegląd roku, edycje) ===== */
.ar-years{ display:flex; flex-wrap:wrap; gap:6px; margin:4px 0 14px; }
.ar-years a{ color:var(--hero-muted); border:1.5px solid rgba(255,255,255,.28); border-radius:20px; padding:4px 13px; font-weight:700; font-size:.86rem; }
.ar-years a small{ font-weight:600; opacity:.8; }
.ar-years a:hover{ color:#fff; border-color:#fff; }
.ar-years a.on{ background:var(--wheat); border-color:var(--wheat); color:var(--navy); }
.ar-img{ display:block; width:100%; height:100%; object-fit:cover; background:linear-gradient(135deg,var(--navy-bg),var(--wheat-bg)); }
.ar-img.noimg{ visibility:hidden; }
.ar-grid{ list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:16px; }
.ar-card a{ display:flex; flex-direction:column; height:100%; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); overflow:hidden; transition:box-shadow .2s, transform .2s; }
.ar-card a:hover{ box-shadow:var(--shadow); transform:translateY(-2px); }
.ar-card a:hover .ar-t{ text-decoration:underline; }
.ar-thumb{ position:relative; aspect-ratio:16/9; background:linear-gradient(135deg,var(--navy-bg),var(--wheat-bg)); overflow:hidden; }
.ar-dt{ position:absolute; left:10px; bottom:10px; background:var(--surface); color:var(--ink); font-weight:800; font-size:.8rem; border-radius:12px; padding:3px 10px; box-shadow:0 2px 8px rgba(0,0,0,.18); }
.ar-cb{ display:flex; flex-direction:column; gap:6px; padding:14px 16px 16px; flex:1; }
.ar-t{ font-weight:800; font-size:1.08rem; line-height:1.25; }
.ar-lead{ font-size:.9rem; color:var(--ink-2); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.ar-fig{ margin-top:auto; padding-top:6px; font-size:.84rem; color:var(--muted); }
.ar-fig b{ color:var(--ink); font-size:1rem; }
@media (prefers-reduced-motion:reduce){ .ar-card a:hover{ transform:none; } }
/* oś roku */
.ar-tlw{ overflow-x:auto; -webkit-overflow-scrolling:touch; margin-top:14px; }
.ar-tl{ min-width:720px; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px 16px 10px; }
.ar-months{ display:grid; grid-template-columns:repeat(12,1fr); margin-left:120px; font-size:.74rem; font-weight:700; color:var(--muted); text-transform:uppercase; }
.ar-months span{ border-left:1px solid var(--line); padding-left:5px; }
.ar-row{ display:flex; align-items:center; height:34px; border-top:1px dashed var(--line); }
.ar-rl{ width:120px; flex:none; font-size:.84rem; font-weight:700; color:var(--ink-2); }
.ar-track{ position:relative; flex:1; height:100%; background:repeating-linear-gradient(90deg, transparent 0 calc(100%/12 - 1px), var(--line) calc(100%/12 - 1px) calc(100%/12)); }
.ar-pt{ position:absolute; top:9px; height:16px; border-radius:8px; opacity:.85; border:2px solid var(--surface); transition:transform .15s; }
.ar-pt:hover, .ar-pt:focus{ opacity:1; transform:scaleY(1.25); z-index:2; }
.ar-legend{ display:flex; flex-wrap:wrap; gap:6px 16px; font-size:.82rem; color:var(--ink-2); margin:10px 0 0; }
.ar-legend span{ display:inline-flex; align-items:center; gap:6px; }
/* słupki frekwencji */
.ar-bars{ list-style:none; padding:0; margin:0; display:grid; gap:6px; }
.ar-bars a{ display:grid; grid-template-columns:minmax(150px,260px) minmax(0,1fr) minmax(120px,auto); gap:14px; align-items:center; padding:6px 8px; border-radius:var(--r-ctl); }
.ar-bars a:hover{ background:var(--surface); }
.ar-bars .n{ font-weight:750; font-size:.92rem; }
.ar-bars .n small{ display:block; font-weight:500; color:var(--muted); }
.ar-bars .b{ height:14px; background:var(--surface-2); border-radius:7px; overflow:hidden; }
.ar-bars .b i{ display:block; height:100%; border-radius:7px; }
.ar-bars .v{ font-weight:800; font-variant-numeric:tabular-nums; }
.ar-bars .v small{ display:block; font-weight:500; color:var(--muted); font-size:.76rem; }
/* strona edycji */
.ar-head{ max-width:860px; }
.ar-leadp{ font-size:1.15rem; color:var(--ink-2); margin:14px 0 0; line-height:1.55; }
.ar-hero-img{ position:relative; margin:24px 0 0; border-radius:var(--r-panel); overflow:hidden; aspect-ratio:21/9; background:linear-gradient(135deg,var(--navy-bg),var(--wheat-bg)); }
.ar-hero-img figcaption{ position:absolute; right:12px; bottom:12px; background:rgba(15,26,51,.72); color:#fff; font-size:.72rem; font-weight:700; letter-spacing:.04em; border-radius:10px; padding:2px 9px; }
.ar-figs{ display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); gap:12px; margin:20px 0 0; }
.ar-figs div{ background:var(--navy); color:#fff; border-radius:var(--r-card); padding:14px 16px; }
.ar-figs dt{ font-size:.78rem; color:rgba(255,255,255,.75); font-weight:650; }
.ar-figs dd{ margin:2px 0 0; font-size:1.7rem; font-weight:800; font-stretch:84%; font-variant-numeric:tabular-nums; }
.ar-figs small{ font-size:.74rem; color:rgba(255,255,255,.7); }
.ar-hl ul{ margin:0; padding:0; list-style:none; display:grid; gap:8px; }
.ar-hl li{ position:relative; padding:10px 14px 10px 38px; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); }
.ar-hl li::before{ content:""; position:absolute; left:15px; top:17px; width:9px; height:9px; border-radius:50%; background:var(--cta); }
.ar-biz dl{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:0; }
.ar-biz dl div{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px 16px; }
.ar-biz dt{ font-size:.78rem; font-weight:700; color:var(--muted); text-transform:uppercase; letter-spacing:.04em; }
.ar-biz dd{ margin:6px 0 0; }
.ar-scores{ list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.ar-scores li{ display:grid; grid-template-columns:150px auto 1fr; gap:14px; align-items:center; font-size:.92rem; }
.ar-scores small{ color:var(--muted); }
.ar-sb{ display:inline-flex; gap:4px; }
.ar-sb i{ width:34px; height:10px; border-radius:5px; background:var(--surface-2); border:1px solid var(--line-2); }
.ar-sb i.on{ background:var(--navy); border-color:var(--navy); }
.ar-mini{ list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.ar-mini a, .ar-pastc{ display:flex; gap:12px; align-items:center; }
.ar-mini a:hover b, .ar-pastc:hover b{ text-decoration:underline; }
.ar-mthumb{ width:84px; flex:none; aspect-ratio:16/9; border-radius:6px; overflow:hidden; background:linear-gradient(135deg,var(--navy-bg),var(--wheat-bg)); }
.ar-mini b, .ar-pastc b{ display:block; font-size:.95rem; }
.ar-mini small, .ar-pastc small{ display:block; color:var(--muted); font-size:.82rem; }
.ar-past{ margin-bottom:38px; }
.ar-pastc{ align-items:flex-start; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:12px; margin-bottom:10px; }
.ar-pastc .ar-mthumb{ width:140px; }
.ar-pastc .small{ display:block; margin-top:6px; color:var(--ink-2); }
.ar-src h3{ font-size:.9rem; color:var(--muted); margin-bottom:4px; }
.ar-src a{ text-decoration:underline; color:var(--ink-2); }
.ar-pn{ display:flex; justify-content:space-between; gap:12px; border-top:1.5px solid var(--line); padding-top:18px; }
.ar-pn a{ display:flex; flex-direction:column; max-width:48%; }
.ar-pn a.r{ text-align:right; margin-left:auto; }
.ar-pn small{ color:var(--muted); font-weight:650; }
.ar-pn a:hover b{ text-decoration:underline; }
.ar-nextc{ display:flex; flex-direction:column; gap:4px; border-top:5px solid var(--cta); }
.ar-nextc .k{ font-size:.74rem; font-weight:750; text-transform:uppercase; letter-spacing:.07em; color:var(--amber-text); }
.ar-nextc b{ font-size:1.2rem; }
.ar-nextc .ev-when{ align-self:flex-start; margin-top:4px; }
.ar-eds{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:8px 16px; }
.ar-eds a{ text-decoration:underline; font-weight:700; }
.ar-eds small{ color:var(--muted); }
.ar-look .ar-grid{ margin-top:6px; }
@media (max-width:760px){
  .ar-hero-img{ aspect-ratio:16/9; margin-left:-20px; margin-right:-20px; border-radius:0; }
  .ar-biz dl{ grid-template-columns:minmax(0,1fr); }
  .ar-bars a{ grid-template-columns:minmax(0,1fr) auto; }
  .ar-bars .b{ grid-column:1 / -1; grid-row:2; }
  .ar-scores li{ grid-template-columns:120px auto; } .ar-scores small{ display:none; }
  .ar-figs{ grid-template-columns:1fr 1fr; gap:8px; } .ar-figs div{ padding:12px; }
  .ar-figs dd{ font-size:1.35rem; }
  .ar-pastc .ar-mthumb{ width:96px; }
}

/* ===== Historia rolnictwa ===== */
.hi-herogrid{ align-items:center; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); }
.hi-hero h1{ max-width:20ch; }
.hi-stats{ display:grid; grid-template-columns:repeat(4,auto); gap:6px 26px; margin:24px 0 0; justify-content:start; }
.hi-stats dt{ font-size:.74rem; text-transform:uppercase; letter-spacing:.07em; color:var(--hero-muted); font-weight:700; }
.hi-stats dd{ margin:3px 0 0; color:#fff; font-weight:800; font-size:1.15rem; font-variant-numeric:tabular-nums; }
.hi-art{ margin:0; }
.hi-art img{ width:100%; height:auto; border-radius:var(--r-panel); display:block; box-shadow:0 18px 40px rgba(0,0,0,.28); aspect-ratio:800/590; object-fit:cover; }
.hi-art figcaption{ font-size:.78rem; color:var(--hero-muted); margin-top:8px; }
.hi-sec1{ margin-top:40px; }
/* oś czasu */
.hi-rib{ margin:16px 0 8px; padding:calc(36px + (var(--rows, 1) - 1) * 28px) 0 4px; position:relative; }
.hi-ribbar{ position:relative; display:flex; border-radius:var(--r-card); border:1.5px solid var(--line); background:var(--surface); }
.hi-ribera{ display:flex; flex-direction:column; gap:2px; padding:14px 12px 12px; border-left:1.5px solid var(--line); min-width:0; }
.hi-ribera:first-child{ border-left:0; }
.hi-ribera b{ font-size:.9rem; line-height:1.2; }
.hi-ribera small{ color:var(--muted); font-size:.76rem; }
a.hi-ribera:hover b{ text-decoration:underline; }
.hi-ribera.empty{ background:repeating-linear-gradient(135deg,transparent 0 6px,var(--surface-2) 6px 12px); }
.hi-ribera.empty b, .hi-ribera.empty small{ color:var(--faint); }
.hi-ribpt{ position:absolute; bottom:100%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; z-index:calc(5 - var(--r, 0)); }
.hi-ribpt span{ width:26px; height:26px; border-radius:50%; display:grid; place-items:center; background:var(--navy); color:#fff; font-size:.72rem; font-weight:800; border:2px solid var(--surface); box-shadow:0 2px 6px rgba(0,0,0,.18); transition:transform .15s; }
.hi-ribpt::after{ content:''; width:2px; height:calc(6px + var(--r, 0) * 28px); background:var(--navy); opacity:.6; }
.hi-ribpt:hover span, .hi-ribpt.on span{ background:var(--cta); color:var(--cta-ink); transform:scale(1.15); }
.hi-ribpt.on::after{ background:var(--cta); }
/* lista tematów */
.hi-libhead{ display:flex; justify-content:space-between; align-items:flex-end; gap:20px; flex-wrap:wrap; }
.hi-libhead > div:first-child{ flex:1 1 420px; }
.hi-tools{ display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center; width:100%; margin-top:6px; }
.hi-tools input{ width:min(360px,100%); padding:10px 14px; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); background:var(--surface); color:var(--ink); font:inherit; }
.hi-list{ list-style:none; padding:0; margin:14px 0 0; display:grid; gap:10px; }
.hi-item a{ display:grid; grid-template-columns:44px 200px minmax(0,1fr); gap:18px; align-items:start; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:18px 20px; transition:box-shadow .2s, border-color .2s; }
.hi-item a:hover{ box-shadow:var(--shadow); border-color:var(--line-2); }
.hi-item a:hover .hi-h{ text-decoration:underline; }
.hi-n{ font-weight:800; font-size:1.3rem; color:var(--amber-text, var(--amber)); font-variant-numeric:tabular-nums; }
.hi-when{ display:flex; flex-direction:column; gap:3px; }
.hi-when b{ font-size:.95rem; }
.hi-when small{ color:var(--muted); font-size:.8rem; font-weight:650; text-transform:uppercase; letter-spacing:.05em; }
.hi-what{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.hi-h{ font-size:1.12rem; line-height:1.3; }
.hi-b{ color:var(--ink-2); font-size:.95rem; }
.hi-meta{ display:flex; flex-wrap:wrap; gap:6px 16px; color:var(--muted); font-size:.84rem; }
.hi-meta span{ display:inline-flex; align-items:center; gap:4px; }
/* mapa */
.hi-map{ margin:0; }
.hi-mapin{ position:relative; aspect-ratio:800/385; background:var(--m-light) center/100% 100% no-repeat, var(--navy-bg); border-radius:var(--r-card); border:1.5px solid var(--line); overflow:hidden; }
:root[data-theme="dark"] .hi-mapin{ background-image:var(--m-dark); }
@media (prefers-color-scheme:dark){ :root:not([data-theme="light"]) .hi-mapin{ background-image:var(--m-dark); } }
.hi-map figcaption{ margin-top:8px; }
.hi-pt{ position:absolute; transform:translate(-50%,-50%); display:block; z-index:1; }
.hi-pt span{ width:24px; height:24px; border-radius:50%; display:grid; place-items:center; background:var(--navy); color:#fff; font-size:.7rem; font-weight:800; border:2px solid #fff; box-shadow:0 0 0 4px rgba(32,55,102,.18); flex:none; }
.hi-pt.sec span{ opacity:.7; }
.hi-pt b{ position:absolute; left:calc(100% + 6px); top:50%; transform:translateY(-50%); font-size:.74rem; background:var(--surface); color:var(--ink); padding:2px 7px; border-radius:10px; box-shadow:0 1px 4px rgba(0,0,0,.15); white-space:nowrap; opacity:0; transition:opacity .15s; pointer-events:none; }
.hi-pt:hover, .hi-pt:focus-visible{ z-index:3; }
.hi-pt:hover b, .hi-pt:focus-visible b, .hi-pt.on b{ opacity:1; }
.hi-pt:hover span, .hi-pt.on span{ background:var(--cta); color:var(--cta-ink); }
.hi-aside .hi-mapin{ border-radius:var(--r-ctl); }
/* tabela, linki */
.hi-chron td.hi-d{ white-space:nowrap; font-weight:650; }
.hi-links{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:12px; margin-top:14px; }
.hi-links .card{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px 18px; }
.hi-links .card:hover{ box-shadow:var(--shadow); }
.hi-links .card:hover b{ text-decoration:underline; }
.hi-cos{ margin-top:14px; } .hi-cos a{ text-decoration:underline; font-weight:650; }
/* artykuł */
.hi-head{ max-width:860px; }
.hi-kick{ display:flex; gap:8px; flex-wrap:wrap; margin:6px 0 10px; font-size:.84rem; font-weight:750; text-transform:uppercase; letter-spacing:.07em; color:var(--amber-text, var(--amber)); }
.hi-kick a:hover{ text-decoration:underline; }
.hi-head h1{ max-width:24ch; }
.hi-leadp{ font-size:1.16rem; line-height:1.6; color:var(--ink-2); max-width:68ch; margin:14px 0 0; }
.hi-facts{ grid-template-columns:repeat(5,minmax(0,1fr)); }
.hi-facts dd a:hover{ text-decoration:underline; }
@media (max-width:980px){ .hi-facts{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
.hi-art-page .hi-rib{ margin:34px 0 0; }
.hi-main{ font-size:1.04rem; }
.hi-main p{ line-height:1.72; }
.hi-toc{ margin-bottom:34px; }
.hi-toc h2{ font-size:1rem !important; margin-bottom:8px !important; }
.hi-toc ol{ margin:0; padding-left:20px; display:grid; gap:4px; font-size:.94rem; }
.hi-toc a:hover, .hi-toc a.on{ text-decoration:underline; font-weight:700; }
.hi-s{ scroll-margin-top:90px; }
.hi-ref{ display:inline-block; vertical-align:super; font-size:.68rem; font-weight:800; line-height:1; margin-left:3px; padding:2px 5px; border-radius:8px; background:var(--navy-bg); color:var(--ink); }
.hi-ref + .hi-ref{ margin-left:2px; }
.hi-ref:hover{ background:var(--navy); color:#fff; }
.hi-wid{ margin:0 0 38px; }
.hi-wid h3{ font-size:1.15rem; margin:0 0 4px; }
.hi-ey{ color:var(--amber-text, var(--amber)); margin:0 0 6px; font-size:.76rem; }
.hi-wid .ev-chips{ margin:12px 0 14px; }
.hi-bl{ margin:0 0 10px; font-weight:650; }
.hi-bar{ display:grid; grid-template-columns:130px minmax(0,1fr) 64px; gap:12px; align-items:center; margin:8px 0; font-size:.9rem; }
.hi-bar i{ height:16px; background:var(--surface-2); border-radius:8px; overflow:hidden; display:block; }
.hi-bar i b{ display:block; height:100%; background:var(--navy); border-radius:8px; transition:width .4s; }
.hi-bar strong{ text-align:right; font-variant-numeric:tabular-nums; }
.hi-ticks{ display:flex; justify-content:space-between; margin:4px 64px 8px 142px; font-size:.72rem; color:var(--muted); }
.hi-fields{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-bottom:12px; }
.hi-field{ border-radius:var(--r-card); padding:18px 14px; min-height:120px; display:flex; flex-direction:column; justify-content:flex-end; gap:3px; border:1.5px solid var(--line); transition:background .3s; }
.hi-field b{ font-size:.8rem; text-transform:uppercase; letter-spacing:.06em; }
.hi-field span{ font-weight:800; font-size:1.05rem; }
.hi-field small{ color:var(--ink-2); }
.hi-field.winter{ background:linear-gradient(180deg,#E9D9A8,#D9BF6E); color:#3d3205; }
.hi-field.spring{ background:linear-gradient(180deg,#CFE5B4,#9CC97A); color:#1f3a10; }
.hi-field.fallow{ background:repeating-linear-gradient(135deg,#E8DED0 0 8px,#DCCFBC 8px 16px); color:#4a3a22; }
.hi-field small{ color:inherit; opacity:.8; }
.hi-faq details{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px 18px; margin-bottom:10px; }
.hi-faq summary{ font-weight:750; cursor:pointer; }
.hi-faq p{ margin:10px 0 0; }
.hi-src ol{ padding-left:22px; display:grid; gap:8px; font-size:.92rem; }
.hi-src li{ scroll-margin-top:90px; border-radius:6px; transition:background .4s; }
.hi-src li a{ text-decoration:underline; }
.hi-src li small{ color:var(--muted); margin-left:4px; }
.hi-flash{ background:var(--wheat-bg); }
.hi-pn{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:28px; }
.hi-pn .card{ display:flex; flex-direction:column; gap:4px; }
.hi-pn .card small{ color:var(--muted); }
.hi-pn .card:hover b{ text-decoration:underline; }
.hi-nx{ text-align:right; }
.hi-aside{ position:sticky; top:84px; }
.hi-rel{ display:block; padding:9px 0; border-top:1px solid var(--line); }
.hi-rel:first-of-type{ border-top:0; padding-top:0; }
.hi-rel small{ display:block; color:var(--muted); }
.hi-rel:hover b{ text-decoration:underline; }
.hi-brz a{ font-size:.84rem; }
@media (max-width:980px){
  .hi-herogrid{ grid-template-columns:1fr; }
  .hi-aside{ position:static; }
  .hi-item a{ grid-template-columns:36px minmax(0,1fr); }
  .hi-item .hi-when{ grid-column:2; }
  .hi-item .hi-what{ grid-column:2; }
}
@media (max-width:640px){
  .hi-stats{ grid-template-columns:repeat(2,auto); }
  .hi-ribera small{ display:none; }
  .hi-ribera b{ font-size:.72rem; }
  .hi-ribera{ padding:10px 6px; }
  .hi-tools{ align-items:stretch; width:100%; }
  .hi-tools input{ width:100%; }
  .hi-pn{ grid-template-columns:1fr; }
  .hi-bar{ grid-template-columns:90px minmax(0,1fr) 40px; }
  .hi-ticks{ margin-left:102px; margin-right:40px; }
  .hi-fields{ grid-template-columns:1fr; }
  .hi-field{ min-height:70px; }
  .hi-pt span{ width:20px; height:20px; font-size:.62rem; }
}
@media print{ .hi-aside, .hi-toc, .hi-rib, .hi-today, .hi-pn{ display:none !important; } .ev-body{ display:block; } }

.hi-legend{ list-style:none; padding:0; margin:12px 0 0; display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:6px 14px; }
.hi-legend a{ display:grid; grid-template-columns:24px minmax(0,1fr); gap:0 8px; align-items:center; padding:6px 4px; border-radius:6px; }
.hi-legend a:hover{ background:var(--surface); } .hi-legend a:hover b{ text-decoration:underline; }
.hi-legend span{ grid-row:span 2; width:22px; height:22px; border-radius:50%; display:grid; place-items:center; background:var(--navy); color:#fff; font-size:.68rem; font-weight:800; }
.hi-legend b{ font-size:.88rem; } .hi-legend small{ color:var(--muted); font-size:.78rem; }

.hi-tot{ margin:2px 0 10px; font-weight:650; }
.hi-plots{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:14px 0 12px; }
.hi-plot{ border-radius:var(--r-card); padding:16px 14px; min-height:120px; display:flex; flex-direction:column; justify-content:flex-end; gap:4px; border:1.5px solid var(--line); }
.hi-plot b{ font-size:1rem; } .hi-plot small{ opacity:.85; }
.hi-plot.control{ background:#ECE6D8; color:#3f3423; }
.hi-plot.mineral{ background:radial-gradient(#cdbf9f 1.5px,transparent 1.6px) 0 0/10px 10px,#ECE6D8; color:#3f3423; }
.hi-plot.manure{ background:repeating-linear-gradient(135deg,#ECE6D8 0 7px,#DCCFB4 7px 10px); color:#3f3423; }
@media (max-width:640px){ .hi-plots{ grid-template-columns:1fr; } .hi-plot{ min-height:70px; } }

.hi-keyd{ margin:0 0 34px; }
.hi-keyd h2{ font-size:1rem !important; margin:0 0 10px !important; }
.hi-keyd ol{ list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.hi-keyd li{ display:grid; grid-template-columns:minmax(120px,190px) minmax(0,1fr); gap:12px; font-size:.94rem; padding-top:8px; border-top:1px solid var(--line); }
.hi-keyd li:first-child{ border-top:0; padding-top:0; }
.hi-attr{ margin-top:12px; }
.hi-qsvg{ width:100%; height:auto; display:block; margin:6px 0 4px; }
.hq-sky{ fill:var(--navy-bg); } .hq-ground{ fill:#E3D5B8; } .hq-aq{ fill:#9CC3E6; opacity:.75; }
.hq-gal{ stroke:#2F6FA7; stroke-width:6; stroke-linecap:round; fill:none; } .hq-out{ stroke:#2F6FA7; stroke-width:4; }
.hq-sh path{ stroke:#7A6340; stroke-width:4; } .hq-t{ font-size:13px; font-weight:700; fill:#3f3423; }
#hi-qanat[data-part="0"] .hq-aq{ opacity:1; stroke:var(--cta); stroke-width:3; }
#hi-qanat[data-part="1"] .hq-gal{ stroke:var(--cta); stroke-width:8; }
#hi-qanat[data-part="2"] .hq-sh path{ stroke:var(--cta); stroke-width:6; }
.hi-qtxt{ font-weight:650; margin:4px 0 8px; min-height:2.8em; }
@media (max-width:640px){
  .hi-rib{ padding-top:10px; } .hi-ribpt{ display:none; } .hi-ribpt.on{ display:flex; } .hi-ribpt.on::after{ height:6px; }
  .hi-art-page .hi-rib{ padding-top:36px; }
  .hi-keyd li{ grid-template-columns:1fr; gap:2px; }
}
.hi-bar{ grid-template-columns:130px minmax(0,1fr) minmax(64px,max-content); }
.hi-bar strong{ white-space:nowrap; }

/* ===== Agrobiznes: największe firmy rolnicze ===== */
.ag-tabs-light{ margin:0 0 18px; }
.ag-tabs-light a{ color:var(--ink-2); border-color:var(--line-2); }
.ag-tabs-light a:hover{ color:var(--ink); border-color:var(--ink); }
.ag-tabs-light a.on{ background:var(--navy); border-color:var(--navy); color:#fff; }
.ag-chain{ display:grid; gap:12px; align-items:stretch; margin-top:14px; }
.ag-link{ background:var(--surface); border:1.5px solid var(--line); border-top:5px solid var(--c); border-radius:var(--r-card); padding:14px 16px; }
.ag-link.on{ box-shadow:var(--shadow); border-color:var(--c); }
.ag-lh{ display:flex; flex-direction:column; gap:2px; margin-bottom:10px; }
.ag-lh:hover b{ text-decoration:underline; }
.ag-step{ font-size:.72rem; font-weight:750; text-transform:uppercase; letter-spacing:.06em; color:var(--muted); }
.ag-lh b{ font-size:1.02rem; line-height:1.25; }
.ag-lh small{ color:var(--muted); }
.ag-link ul{ list-style:none; padding:0; margin:0; display:grid; gap:3px; font-size:.88rem; }
.ag-link li a:hover, .ag-link li a[aria-current]{ text-decoration:underline; font-weight:700; }
.ag-farm{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; padding:0 4px; color:var(--muted); font-size:.82rem; }
.ag-farm span{ font-size:1.6rem; }
.ag-bar .ag-chips{ display:flex; flex-wrap:wrap; gap:6px; }
.ag-bar .ev-chip{ padding:6px 12px; font-size:.86rem; display:inline-flex; align-items:center; gap:6px; }
.ag-grid{ list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(270px,1fr)); gap:14px; }
.ag-card a{ display:flex; flex-direction:column; gap:6px; height:100%; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:16px 18px; transition:box-shadow .2s, transform .2s; }
.ag-card a:hover{ box-shadow:var(--shadow); transform:translateY(-2px); }
.ag-card a:hover .ag-n{ text-decoration:underline; }
.ag-top{ display:flex; justify-content:space-between; gap:8px; font-size:.8rem; font-weight:650; color:var(--ink-2); }
.ag-hq{ color:var(--muted); white-space:nowrap; }
.ag-n{ font-size:1.22rem; font-weight:800; font-stretch:88%; line-height:1.2; margin-top:4px; }
.ag-sp{ font-size:.86rem; font-weight:700; color:var(--amber-text); }
.ag-s{ font-size:.9rem; color:var(--ink-2); }
.ag-rev{ margin-top:auto; padding-top:8px; border-top:1px solid var(--line); font-size:.82rem; color:var(--muted); }
.ag-rev b{ color:var(--ink); font-size:1.02rem; font-variant-numeric:tabular-nums; }
@media (prefers-reduced-motion:reduce){ .ag-card a:hover{ transform:none; } }
.ag-table tr.ag-cur td{ background:var(--wheat-bg); }
.ag-bars li.ag-cur a{ background:var(--wheat-bg); }
.ag-other{ margin-top:12px; }
.ag-other a{ text-decoration:underline; font-weight:650; color:var(--ink); }
.ag-brands{ display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:12px; }
.ag-brands .card{ display:flex; flex-direction:column; gap:4px; }
.ag-brands .card:hover .ag-bo{ text-decoration:underline; }
.ag-bl{ display:flex; flex-wrap:wrap; gap:6px; }
.ag-bl b{ background:var(--navy-bg); border-radius:14px; padding:2px 10px; font-size:.9rem; }
.ag-bo{ font-weight:800; font-size:1.05rem; }
.ag-faq details{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px 18px; margin-bottom:10px; }
.ag-faq summary{ font-weight:750; cursor:pointer; }
.ag-faq p{ margin:10px 0 0; max-width:75ch; }
.ag-offer{ list-style:none; padding:0; margin:0 0 12px; display:flex; flex-wrap:wrap; gap:8px; }
.ag-offer li{ background:var(--surface); border:1.5px solid var(--line-2); border-radius:18px; padding:5px 13px; font-weight:650; font-size:.9rem; }
.ag-worth{ background:var(--navy-bg); border-radius:var(--r-card); padding:12px 16px; }
.ag-big{ display:flex; flex-direction:column; gap:4px; border-top:5px solid var(--cta); }
.ag-big .k{ font-size:.74rem; font-weight:750; text-transform:uppercase; letter-spacing:.07em; color:var(--amber-text); }
.ag-big b{ font-size:2rem; font-weight:800; font-stretch:84%; font-variant-numeric:tabular-nums; }
.ag-mini{ list-style:none; padding:0; margin:0; display:grid; gap:6px; counter-reset:s; }
.ag-mini li{ counter-increment:s; display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:var(--r-ctl); border:1.5px solid var(--line); font-size:.9rem; }
.ag-mini li::before{ content:counter(s); width:22px; height:22px; border-radius:50%; display:grid; place-items:center; background:var(--surface-2); font-weight:800; font-size:.78rem; flex:none; }
.ag-mini li.on{ border-color:var(--c); background:var(--surface-2); font-weight:800; }
.ag-mini li.on::before{ background:var(--c); color:#fff; }
.ag-mini a:hover{ text-decoration:underline; }
.ag-rel{ display:block; padding:8px 0; border-top:1px solid var(--line); }
.ag-rel:first-of-type{ border-top:0; padding-top:0; }
.ag-rel b{ display:block; } .ag-rel small{ color:var(--muted); }
.ag-rel:hover b{ text-decoration:underline; }
.ag-page #peers .tablewrap{ margin-top:16px; }
@media (max-width:980px){ .ag-chain{ grid-template-columns:1fr 1fr; } .ag-farm{ grid-column:1 / -1; flex-direction:row; padding:4px 0; } }
@media (max-width:560px){ .ag-chain{ grid-template-columns:minmax(0,1fr); } .ag-bar .ag-chips{ width:100%; } }

.ag-bars a{ grid-template-columns:minmax(150px,260px) minmax(0,1fr) 200px; }
@media (max-width:760px){ .ag-bars a{ grid-template-columns:minmax(0,1fr) auto; } }

.ag-curs{ margin:0 0 12px; flex-wrap:wrap; } .ag-curs small{ opacity:.7; font-weight:600; }
@media (max-width:980px){ .ag-chain{ grid-template-columns:1fr 1fr !important; } }
@media (max-width:560px){ .ag-chain{ grid-template-columns:minmax(0,1fr) !important; } }
.ag-link li.ag-more a{ color:var(--muted); font-weight:650; }
.ag-link li.ag-more a:hover{ color:var(--ink); }

/* ===== Katalog giełd i rynków hurtowych (/exchanges) ===== */
.gx-hero .ev-stats{ grid-template-columns:repeat(4, minmax(0, 1fr)); }
.gx-types{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:14px; margin-top:16px; }
.gx-tcard{ display:flex; flex-direction:column; gap:8px; border-top:4px solid var(--c); text-decoration:none; color:inherit; }
.gx-tcard:hover{ box-shadow:var(--shadow); }
.gx-tl{ display:flex; align-items:center; gap:10px; font-weight:750; }
.gx-tl b{ display:inline-grid; place-items:center; width:30px; height:30px; border-radius:8px; background:var(--c); color:#fff; font-size:.9rem; }
.gx-tn{ font-size:1.9rem; font-weight:800; letter-spacing:-.02em; line-height:1; }
.gx-id{ font-family:var(--mono, ui-monospace, monospace); font-size:.74rem; letter-spacing:.04em; color:var(--muted); }
.gx-type{ font-size:.78rem; }
.gx-st{ display:inline-flex; align-items:center; gap:5px; font-size:.74rem; font-weight:700; padding:2px 8px; border-radius:999px; border:1px solid var(--line); color:var(--ink-2); background:var(--surface); white-space:nowrap; }
.gx-st::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--muted); }
.gx-st-P::before{ background:#2E7D32; } .gx-st-R::before{ background:#3F6FD8; } .gx-st-A::before{ background:#CE9338; } .gx-st-N::before{ background:#9AA0A6; }
.gx-foot{ display:flex; justify-content:space-between; align-items:center; gap:8px; flex-wrap:wrap; }
.gx-foot b{ color:var(--cta-text, var(--ink)); }
.gx-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.gx-chip{ display:inline-block; padding:5px 11px; border-radius:999px; border:1px solid var(--line); background:var(--surface); font-size:.86rem; color:var(--ink-2); }
.gx-chip-l{ border-color:var(--cta); color:var(--ink); text-decoration:none; }
.gx-chip-l:hover{ background:var(--wheat-bg); }
.gx-ref{ font-size:.68em; line-height:0; vertical-align:super; } .gx-ref a{ color:var(--muted); text-decoration:none; padding:0 1px; } .gx-ref a:hover{ color:var(--ink); }
.gx-src{ padding-left:22px; margin:8px 0 0; font-size:.86rem; line-height:1.55; } .gx-src li{ margin:4px 0; overflow-wrap:anywhere; } .gx-src li:target{ background:var(--wheat-bg); }
.gx-glance ul{ list-style:none; padding:0; margin:0; } .gx-glance li{ padding:7px 0; border-top:1px solid var(--line); } .gx-glance li:first-child{ border-top:0; padding-top:0; }
.gx-callout{ display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; margin:14px 0 18px; }
.gx-how .card h3{ font-size:1.02rem; margin-bottom:6px; }
.gx-page .ev-facts dd small{ display:block; font-weight:400; }
.gx-quotes a small{ display:block; color:var(--muted); font-weight:400; }
.gx-table td.num{ font-variant-numeric:tabular-nums; }
@media (max-width:900px){ .gx-types{ grid-template-columns:1fr; } .gx-hero .ev-stats{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (min-width:1000px){ .grid3.grid4{ grid-template-columns:repeat(4, minmax(0, 1fr)); } }

.qmeta{margin-top:-6px}.qmeta dd{word-break:break-word}

.iconbtn.signed{ border-color:var(--cta); box-shadow:inset 0 0 0 1px var(--cta); }

/* Rynki i giełdy: strona zbiorcza */
.mk-kpi{ margin:18px 0 22px; }
.mk-kpi dd{ font-size:1.5rem; font-weight:800; margin:4px 0 0; }
.mk-kpi dd.xs{ font-size:.78rem; font-weight:500; }
.mk-map .hi-mapin{ aspect-ratio:800/385; }
.mk-pt{ position:absolute; transform:translate(-50%,-50%); z-index:1; display:block; }
.mk-pt span{ display:block; width:var(--s,10px); height:var(--s,10px); border-radius:50%; border:1.5px solid #fff; box-shadow:0 1px 3px rgba(0,0,0,.35); opacity:.88; transition:transform .15s; }
.mk-pt:hover span, .mk-pt:focus-visible span{ transform:scale(1.5); opacity:1; z-index:2; }
.mk-pt.dim{ opacity:.18; }
.mk-pt.mk-exchange span, .mk-leg i.mk-exchange{ background:var(--cta); }
.mk-pt.mk-wholesale span, .mk-leg i.mk-wholesale{ background:var(--navy); }
.mk-pt.mk-other span, .mk-leg i.mk-other{ background:var(--muted); }
.mk-pt.mk-reporting span, .mk-leg i.mk-reporting{ background:var(--amber); }
.lvltabs{ display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin:4px 0 6px; }
.lvltabs a{ border:1px solid var(--line); border-radius:999px; padding:3px 10px; font-size:.85rem; text-decoration:none; color:inherit; }
.lvltabs a.on{ background:var(--navy); border-color:var(--navy); color:#fff; }
.lvltabs a.on .xs{ color:#fff; opacity:.8; }
.lvl-note{ margin:0 0 10px; }
.lvl{ display:inline-block; font-size:.72rem; font-weight:600; padding:0 6px; border-radius:6px; background:var(--line); color:inherit; }
.lvl-farmgate{ background:#e3f1e3; color:#225c22; } .lvl-processor{ background:#efe6f7; color:#5a2d82; } .lvl-retail{ background:#fbe8e3; color:#8a3420; } .lvl-exchange{ background:#e5ecf8; color:#203766; } .lvl-benchmark{ background:#fff1d6; color:var(--amber-text); }
:root[data-theme="dark"] .lvl{ background:rgba(255,255,255,.12); color:inherit; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .lvl{ background:rgba(255,255,255,.12); color:inherit; } }
.mk-leg{ display:inline-flex; align-items:center; gap:6px; margin-right:12px; }
.mk-leg i{ width:10px; height:10px; border-radius:50%; display:inline-block; border:1px solid #fff; }
.mk-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:12px; }
.mk-card{ display:flex; flex-direction:column; gap:8px; padding:14px 16px; text-decoration:none; color:inherit; }
.mk-card:hover{ border-color:var(--cta); }
.mk-top{ display:flex; gap:10px; align-items:flex-start; line-height:1.3; }
.mk-flag{ font-size:1.4rem; line-height:1; }
.mk-tags{ display:flex; gap:6px; flex-wrap:wrap; }
.mk-tags .tag{ font-size:.7rem; }
.mk-num b{ font-size:1.25rem; }
.mk-prods, .mk-gx{ margin:0; }
.mk-gx{ color:var(--cta-text, var(--amber-text)); font-weight:700; }
.mk-filters{ margin-bottom:12px; }
.mk-chips{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin:0 0 18px; }
.chip{ border:1.5px solid var(--line); background:var(--surface); border-radius:999px; padding:6px 12px; font:inherit; font-size:.85rem; font-weight:650; cursor:pointer; color:inherit; }
.chip[aria-pressed="true"]{ background:var(--navy); color:#fff; border-color:var(--navy); }
.mk-sec{ margin:0 0 26px; }
.mk-sech{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap; margin:0 0 10px; }
.mk-sech h2{ font-size:1.25rem; margin:0; }
.mk-sech p{ margin:0; }
@media (max-width:700px){ .mk-kpi{ grid-template-columns:repeat(2,1fr); } .mk-grid{ grid-template-columns:1fr 1fr; } .mk-card{ padding:12px; } }
@media (max-width:480px){ .mk-grid{ grid-template-columns:1fr; } }

.pctbar{ position:relative; height:14px; border-radius:7px; background:var(--line); margin:10px 0 6px; }
.pctbar i{ position:absolute; top:0; height:100%; background:var(--wheat, #f3e3b4); border-radius:7px; }
.pctbar b{ position:absolute; top:-4px; width:22px; height:22px; margin-left:-11px; border-radius:50%; background:var(--cta); border:2px solid #fff; box-shadow:0 1px 3px rgba(0,0,0,.3); }

/* ===== Strona główna 2.0 ===== */
.hero .chip{ border:1.5px solid rgba(255,255,255,.35); color:#fff; background:transparent; border-radius:20px; padding:5px 12px; font-size:.85rem; }
.hero .chip:hover{ background:rgba(255,255,255,.1); }
.hero2 .wrap{ padding-bottom:36px; }
.hm-kicker{ font-size:.8rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--wheat); margin:0 0 12px; }
.hero .hm-kpis{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; padding:0 0 40px; position:relative; align-items:stretch; }
.hm-kpi{ background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); border-radius:var(--r-card); padding:14px 16px; display:flex; flex-direction:column; gap:2px; color:#fff; }
.hm-kpi b{ font-size:1.6rem; font-weight:800; font-stretch:85%; line-height:1.1; }
.hm-kpi span{ font-size:.86rem; color:var(--hero-muted); }
.hm-kpi .xs{ color:rgba(255,255,255,.6); }
.hm-pulse{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:start; }
.hm-col h3{ font-size:1.05rem; margin:0 0 10px; display:flex; gap:8px; align-items:center; }
.hm-list{ display:flex; flex-direction:column; }
.hm-row{ display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:6px 12px; align-items:center; padding:9px 0; border-top:1px solid var(--line); text-decoration:none; color:inherit; }
.hm-row:first-child{ border-top:0; }
.hm-row:hover{ background:var(--surface-2); text-decoration:none; margin:0 -10px; padding-inline:10px; border-radius:6px; }
.hm-n{ display:flex; flex-direction:column; min-width:0; }
.hm-n b{ font-weight:700; font-size:.92rem; line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.hm-p{ display:flex; flex-direction:column; align-items:flex-end; text-align:right; white-space:nowrap; }
.hm-p b{ font-weight:800; }
.hm-p .cur{ font-size:.78rem; color:var(--muted); font-weight:600; }
.hm-d{ min-width:70px; text-align:right; }
.hm-board .hm-row{ grid-template-columns:minmax(0,1fr) auto auto; }
.btn-ghost{ border-color:transparent; color:var(--ink); background:transparent; text-decoration:underline; text-underline-offset:3px; }
.btn-ghost:hover{ background:var(--surface-2); }
.hm-tabs{ display:flex; gap:4px; border-bottom:2px solid var(--line); margin:0 0 18px; overflow-x:auto; scrollbar-width:thin; }
.hm-tabs button{ border:0; background:none; font:inherit; padding:10px 14px 12px; font-weight:700; font-size:.92rem; color:var(--muted); white-space:nowrap; border-bottom:3.5px solid transparent; margin-bottom:-2px; cursor:pointer; }
.hm-tabs button span{ font-weight:600; font-size:.78rem; margin-left:3px; }
.hm-tabs button:hover{ color:var(--ink); }
.hm-tabs button[aria-selected="true"]{ color:var(--ink); border-bottom-color:var(--cta); }
.hm-panel .hm-list{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:4px 16px; }
.hm-panel .hm-row{ grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) 90px; }
.hm-panel .hm-row:hover{ margin:0 -16px; padding-inline:16px; border-radius:0; }
.hm-foot{ display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
.hm-mk{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.hm-mkc{ display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:12px; align-items:center; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px 16px; text-decoration:none; color:inherit; transition:border-color .15s, transform .15s; }
.hm-mkc:hover{ border-color:var(--cta); transform:translateY(-2px); text-decoration:none; }
.hm-flag{ font-size:1.5rem; line-height:1; }
.hm-mkn{ display:flex; flex-direction:column; min-width:0; }
.hm-mkn b{ font-weight:750; font-size:.98rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.hm-mkv{ display:flex; flex-direction:column; align-items:flex-end; white-space:nowrap; }
.hm-mkv b{ font-size:1.2rem; font-weight:800; line-height:1.1; }
.hm-tool{ display:flex; flex-direction:column; gap:8px; text-decoration:none; }
.hm-tool h3{ margin:0; font-size:1.08rem; }
.hm-tool p{ margin:0; flex:1; }
.hm-tool:hover{ border-color:var(--cta); text-decoration:none; }
@media (max-width:1080px){ .hm-pulse{ grid-template-columns:1fr; } .hero .hm-kpis{ grid-template-columns:repeat(2,1fr); } .hm-mk{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ .hm-mk{ grid-template-columns:1fr; } .hm-kpi b{ font-size:1.3rem; } .hm-kpi{ padding:10px 12px; } .hm-row, .hm-panel .hm-row, .hm-board .hm-row{ grid-template-columns:minmax(0,1fr) auto; } .hm-row .hm-n{ grid-column:1 / -1; } .hm-row .hm-p{ flex-direction:row; align-items:baseline; gap:6px; flex-wrap:wrap; white-space:normal; min-width:0; justify-content:flex-start; text-align:left; } .hm-row .hm-p .xs{ display:none; } .hm-row .hm-d{ min-width:0; } }

/* ===== Eksplorator cen 2.0 ===== */
.px-when{ display:flex; gap:8px; flex-wrap:wrap; margin:14px 0 10px; }
.px-when .chip span{ font-weight:600; font-size:.78rem; color:var(--muted); margin-left:4px; }
.px-when .chip[aria-pressed="true"] span{ color:rgba(255,255,255,.75); }
.px-groups{ display:flex; gap:4px; border-bottom:2px solid var(--line); margin:4px 0 12px; overflow-x:auto; scrollbar-width:thin; }
.px-groups a{ padding:8px 12px 10px; font-weight:700; font-size:.86rem; color:var(--muted); white-space:nowrap; border-bottom:3px solid transparent; margin-bottom:-2px; }
.px-groups a span{ font-weight:600; font-size:.76rem; margin-left:3px; }
.px-groups a:hover{ color:var(--ink); text-decoration:none; border-bottom-color:var(--line-2); }
.px-status{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin:0 0 14px; }
.px-size{ margin-left:auto; font-size:.82rem; color:var(--muted); display:flex; gap:4px; align-items:center; }
.px-size button{ border:1.5px solid var(--line-2); background:var(--surface); color:var(--ink); border-radius:var(--r-ctl); padding:3px 9px; font:inherit; font-size:.8rem; font-weight:700; cursor:pointer; }
.px-size button.on{ background:var(--navy); color:#fff; border-color:var(--navy); }
.px-pager{ justify-content:center; flex-wrap:wrap; margin:22px 0 8px; }
.px-pager a{ padding:0 12px; text-decoration:none; }
.px-gap{ min-width:24px; display:grid; place-items:center; color:var(--faint); }
@media (max-width:640px){ .px-size{ margin-left:0; } }

/* ===== Alerty 2.0 ===== */
.al-kpis{ display:grid; grid-template-columns:repeat(5,1fr); gap:12px; margin:0 0 28px; }
.al-kpi{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:12px 14px; display:flex; flex-direction:column; gap:2px; min-width:0; }
.al-kpi b{ font-size:1.45rem; font-weight:800; font-stretch:85%; line-height:1.1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.al-grid{ display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); gap:28px; align-items:start; }
.al-table td{ vertical-align:top; }
.al-table .al-acts{ white-space:nowrap; }
.al-table .al-acts .btn{ margin:0 0 4px 4px; padding:5px 9px; }
.al-table .al-del{ color:var(--down); border-color:var(--line-2); }
.al-table tr.al-paused td{ opacity:.6; }
.al-table tr.al-paused td.al-acts{ opacity:1; }
.al-st{ display:inline-block; font-size:.74rem; font-weight:800; letter-spacing:.03em; text-transform:uppercase; padding:3px 8px; border-radius:999px; border:1.5px solid var(--line-2); }
.al-st.armed{ color:var(--up); border-color:var(--up); }
.al-st.hit{ color:var(--amber-text); border-color:var(--amber); background:var(--wheat-bg); }
.al-st.paused{ color:var(--muted); background:var(--surface-2); }
.al-st.stale{ color:var(--down); border-color:var(--down); text-transform:none; letter-spacing:0; }
.al-empty{ text-align:center; padding:32px 24px; }
.al-builder{ padding:18px 20px 20px; position:sticky; top:84px; }
.al-builder-h{ display:flex; justify-content:space-between; align-items:baseline; gap:10px; margin-bottom:12px; }
.al-builder .wz h2{ font-size:1.05rem; }
.al-builder .opts{ gap:8px; }
.al-builder .opt{ padding:10px 12px; }
.al-log{ list-style:none; padding:0; margin:0; border:1.5px solid var(--line); border-radius:var(--r-card); background:var(--surface); }
.al-log li{ display:grid; grid-template-columns:118px minmax(0,1fr); gap:12px; padding:9px 14px; border-top:1px solid var(--line); font-size:.88rem; }
.al-log li:first-child{ border-top:0; }
.al-log time{ color:var(--muted); font-size:.8rem; white-space:nowrap; }
.al-ideas{ display:flex; flex-direction:column; border:1.5px solid var(--line); border-radius:var(--r-card); background:var(--surface); }
.al-idea{ display:grid; grid-template-columns:minmax(0,1fr) auto 80px auto; gap:12px; align-items:center; padding:9px 14px; border-top:1px solid var(--line); font-size:.9rem; }
.al-idea:first-child{ border-top:0; }
.al-idea a{ display:flex; flex-direction:column; min-width:0; text-decoration:none; color:inherit; }
.al-idea a b{ font-weight:700; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.al-idea .delta{ text-align:right; }
.al-mail{ border:1.5px solid var(--line); border-radius:var(--r-card); overflow:hidden; background:var(--surface); box-shadow:var(--shadow); }
.al-mail-h{ display:flex; justify-content:space-between; gap:10px; padding:8px 14px; background:var(--surface-2); font-size:.76rem; color:var(--muted); }
.al-mail-s{ padding:10px 14px 0; font-weight:750; font-size:.95rem; line-height:1.35; }
.al-mail-b{ padding:10px 14px 16px; }
.al-mail-p b{ font-size:1.6rem; font-weight:800; font-stretch:85%; }
.al-mail-p span{ color:var(--muted); font-weight:600; }
@media (max-width:1080px){ .al-kpis{ grid-template-columns:repeat(3,1fr); } .al-grid{ grid-template-columns:1fr; } .al-builder{ position:static; } }
@media (max-width:640px){ .al-kpis{ grid-template-columns:repeat(2,1fr); } .al-idea{ grid-template-columns:minmax(0,1fr) auto; } .al-idea .num{ grid-column:1; } .al-table .al-acts{ white-space:normal; } .al-log li{ grid-template-columns:1fr; gap:2px; } }

.tl-pop{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin:-6px 0 26px; }
.tl-pop .chip{ text-decoration:none; }
.tl-cat{ margin:0 0 34px; }
.tl-cat h2{ font-size:1.3rem; }

/* ===== Centrum danych 2.0 ===== */
.dt-grid{ display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:start; }
.dt-grid h2{ font-size:1.3rem; margin:0 0 16px; }
.dt-dls{ display:flex; flex-direction:column; gap:10px; }
.dt-dl{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px; align-items:center; padding:14px 16px; }
.dt-dl h3{ font-size:1rem; margin:0 0 3px; }
.dt-dl p{ margin:0; }
.dt-dl-a{ display:flex; flex-direction:column; align-items:flex-end; gap:6px; white-space:nowrap; }
.dt-bars{ display:grid; grid-auto-flow:column; grid-auto-columns:1fr; gap:6px; align-items:end; height:190px; padding:0 4px 34px; border-bottom:1.5px solid var(--line); position:relative; }
.dt-bar{ display:flex; flex-direction:column; justify-content:flex-end; height:100%; position:relative; }
.dt-bar b{ display:block; background:var(--navy); border-radius:4px 4px 0 0; min-height:3px; position:relative; }
.dt-bar b span{ position:absolute; top:-18px; left:50%; transform:translateX(-50%); font-size:.72rem; font-weight:700; color:var(--ink); white-space:nowrap; }
.dt-bar i{ position:absolute; bottom:-20px; left:0; right:0; text-align:center; font-style:normal; font-size:.76rem; color:var(--muted); font-weight:700; }
.dt-bar em{ position:absolute; bottom:-33px; left:0; right:0; text-align:center; font-style:normal; font-size:.68rem; color:var(--faint); }
:root[data-theme="dark"] .dt-bar b{ background:var(--wheat); }
.facts.kpi.dt6{ grid-template-columns:repeat(6,1fr); }
@media (max-width:1080px){ .dt-grid{ grid-template-columns:1fr; } .facts.kpi[style*="repeat(6"]{ grid-template-columns:repeat(3,1fr) !important; } }
@media (max-width:640px){ .facts.kpi[style*="repeat(6"]{ grid-template-columns:1fr 1fr !important; } .dt-dl{ grid-template-columns:1fr; } .dt-dl-a{ align-items:flex-start; } .dt-bar b span{ font-size:.6rem; } .dt-bar em{ display:none; } }

/* ===== Katalog giełd 2.0 ===== */
.gx-sig{ display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.gx-bgrid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.gx-bcard{ display:flex; flex-direction:column; gap:6px; padding:14px 16px; }
.gx-bx{ font-size:.8rem; font-weight:800; letter-spacing:.03em; text-transform:uppercase; color:var(--amber-text); text-decoration:none; }
.gx-bq{ display:flex; flex-direction:column; gap:4px; text-decoration:none; color:inherit; }
.gx-bq:hover .gx-bn{ text-decoration:underline; }
.gx-bn{ font-weight:700; font-size:.92rem; line-height:1.3; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.gx-bp b{ font-size:1.35rem; font-weight:800; font-stretch:85%; }
.gx-bp .cur{ font-size:.78rem; color:var(--muted); font-weight:600; }
.gx-feat{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.gx-fcard{ display:flex; flex-direction:column; gap:6px; text-decoration:none; color:inherit; }
.gx-fcard:hover{ border-color:var(--cta); text-decoration:none; }
.gx-fcard .ag-n{ font-size:1.1rem; font-weight:800; }
.gx-fcard .gx-foot{ display:flex; justify-content:space-between; align-items:center; gap:8px; margin-top:auto; padding-top:8px; border-top:1px solid var(--line); font-size:.82rem; }
.gx-more{ display:flex; gap:10px; align-items:center; justify-content:center; flex-wrap:wrap; margin:22px 0 8px; }
@media (max-width:1080px){ .gx-bgrid{ grid-template-columns:repeat(2,1fr); } .gx-feat{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px){ .gx-bgrid, .gx-feat{ grid-template-columns:1fr; } }

/* ===== Katalog giełd 3.0 ===== */
.gx-secs{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.gx-sec{ display:flex; flex-direction:column; gap:4px; padding:14px 16px; text-decoration:none; color:inherit; position:relative; }
.gx-sec:hover{ border-color:var(--cta); text-decoration:none; }
.gx-sec b{ font-size:1rem; padding-right:48px; }
.gx-sec .gx-tn{ position:absolute; right:14px; top:12px; font-size:1.3rem; font-weight:800; font-stretch:85%; color:var(--navy); }
.gx-secbar{ margin:-4px 0 10px; }
.gx-map .mk-pt b{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); font-size:.62rem; font-weight:800; color:#fff; pointer-events:none; text-shadow:0 1px 2px rgba(0,0,0,.5); }
.gx-az{ margin:28px 0 8px; border:1.5px solid var(--line); border-radius:var(--r-card); background:var(--surface); padding:12px 16px; }
.gx-az summary{ cursor:pointer; }
.gx-azin{ columns:3; column-gap:28px; margin-top:12px; }
.gx-azg{ break-inside:avoid; margin-bottom:14px; }
.gx-azg h3{ font-size:.95rem; margin:0 0 4px; color:var(--amber-text); }
.gx-azg a{ display:block; font-size:.86rem; padding:2px 0; }
@media (max-width:1080px){ .gx-secs{ grid-template-columns:repeat(2,1fr); } .gx-azin{ columns:2; } }
@media (max-width:640px){ .gx-secs{ grid-template-columns:1fr; } .gx-azin{ columns:1; } .gx-map .mk-pt b{ display:none; } }

/* ===== Grupy produktów 2.0 ===== */
.ct-lead{ max-width:70ch; }
.ct-sec{ margin:0 0 40px; }
.ct-bar{ display:flex; gap:12px; flex-wrap:wrap; align-items:end; margin:0 0 14px; }
.ct-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.ct-prod{ display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 12px; padding:12px 14px; text-decoration:none; color:inherit; transition:border-color .15s; }
.ct-prod:hover{ border-color:var(--cta); text-decoration:none; }
.ct-pn{ display:flex; flex-direction:column; min-width:0; }
.ct-pn b{ font-size:1rem; font-weight:750; }
.ct-pm{ display:flex; flex-direction:column; align-items:flex-end; text-align:right; white-space:nowrap; }
.ct-pm b{ font-size:1.15rem; font-weight:800; }
.ct-pm .cur{ font-size:.75rem; color:var(--muted); font-weight:600; }
.ct-ps{ grid-column:1 / -1; }
.ct-noq{ margin-top:14px; border:1.5px solid var(--line); border-radius:var(--r-card); background:var(--surface); padding:10px 14px; }
.ct-noq summary{ cursor:pointer; }
@media (max-width:1080px){ .ct-grid{ grid-template-columns:repeat(2,1fr); } .facts.kpi[style*="repeat(6"]{ grid-template-columns:repeat(3,1fr) !important; } }
@media (max-width:640px){ .ct-grid{ grid-template-columns:1fr; } .facts.kpi[style*="repeat(6"]{ grid-template-columns:1fr 1fr !important; } .rfaq{ grid-template-columns:1fr; } }

/* 3.56: spinner doładowania historii */
.spin{ width:34px; height:34px; border-radius:50%; border:3px solid var(--line); border-top-color:var(--amber, #c8872b); animation:hfspin .9s linear infinite; }
@keyframes hfspin{ to{ transform:rotate(360deg); } }

/* 3.56: fragment serwerowy przed startem aplikacji */
.ssr{ padding:28px 0 60px; }
.ssr h1{ margin-bottom:6px; }
.ssr .ssr-price{ font-size:1.6rem; margin:14px 0 6px; }
.ssr .ssr-price .up{ color:var(--green, #2f7d3a); font-size:1rem; }
.ssr .ssr-price .down{ color:var(--red, #b3342b); font-size:1rem; }
.ssr .ssr-note{ margin-top:18px; }

/* ===== 3.57: strona notowania 2.0, raport tygodniowy, mapa rynków, 404 ===== */
.q2-facts{ margin:0; }
.q2-range{ margin:12px 0 0; }
.q2-rbar{ position:relative; height:8px; border-radius:4px; background:linear-gradient(90deg, var(--up, #2f7d3a), #d9d9d9 50%, var(--down, #b3342b)); opacity:.85; }
.q2-rbar i{ position:absolute; top:-5px; width:4px; height:18px; margin-left:-2px; background:var(--ink); border-radius:2px; }
.q2-rlab{ display:flex; justify-content:space-between; margin-top:6px; }
.lad-list{ display:flex; flex-direction:column; gap:4px; }
.lad-list .lad-row{ display:grid; grid-template-columns:28px 1fr 160px 120px; gap:10px; align-items:center; padding:8px 10px; border:1px solid var(--line); border-radius:10px; text-decoration:none; color:inherit; background:var(--card, #fff); }
.lad-list .lad-row.me{ border-color:var(--cta); box-shadow:0 0 0 2px color-mix(in srgb, var(--cta) 30%, transparent); }
.lad-list .lad-row:hover{ border-color:var(--ink); }
.lad-list .lad-row .lad-n{ font-weight:800; color:var(--muted); text-align:center; }
.lad-list .lad-row .lad-l{ display:flex; flex-direction:column; min-width:0; }
.lad-list .lad-row .lad-l b{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lad-list .lad-row .lad-l small{ color:var(--muted); font-size:.78rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lad-list .lad-row .lad-b{ height:10px; background:var(--line); border-radius:5px; overflow:hidden; }
.lad-row .lad-b i{ display:block; height:100%; background:var(--navy); opacity:.7; }
.lad-row .lad-r{ text-align:right; display:flex; flex-direction:column; }
.lad-row .lad-r small{ color:var(--muted); font-size:.75rem; }
.wk-home .ladder .lad-row, .p_weekly .lad-row{ grid-template-columns:1fr 120px; }
.wk-chips{ display:flex; flex-wrap:wrap; gap:6px; }
.chip{ display:inline-flex; align-items:center; gap:6px; padding:5px 10px; border:1px solid var(--line); border-radius:999px; font-size:.85rem; text-decoration:none; color:inherit; background:var(--card, #fff); cursor:pointer; font-family:inherit; }
.chip b{ font-weight:800; }
.chip[aria-pressed="true"]{ background:var(--ink); color:#fff; border-color:var(--ink); }
.chip.muted{ color:var(--muted); }
.mk-when{ display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:18px 0 8px; }
.wk-nav{ display:flex; flex-wrap:wrap; gap:6px 10px; margin:6px 0 18px; font-size:.85rem; }
.wk-nav a{ text-decoration:none; padding:2px 6px; border-radius:6px; border:1px solid transparent; }
.wk-nav a.on{ border-color:var(--ink); font-weight:700; }
.wk-card{ display:flex; justify-content:space-between; align-items:center; gap:18px; flex-wrap:wrap; border-left:5px solid var(--cta); }
.q2-months{ display:grid; grid-template-columns:repeat(12, 1fr); gap:3px; height:120px; align-items:end; }
.q2-m{ display:flex; flex-direction:column; justify-content:flex-end; height:100%; text-align:center; font-size:.68rem; color:var(--muted); }
.q2-m i{ display:block; background:var(--navy); opacity:.55; border-radius:3px 3px 0 0; }
.q2-m.hi i{ background:var(--down, #b3342b); opacity:.8; }
.q2-m.lo i{ background:var(--up, #2f7d3a); opacity:.8; }
.q2-m.none span{ opacity:.5; }
.nf-search{ display:flex; gap:8px; max-width:560px; }
.nf-search input{ flex:1; padding:11px 14px; border:1px solid var(--line); border-radius:8px; font:inherit; }
body.embed header, body.embed footer, body.embed .ticker, body.embed #ticker, body.embed .cookies, body.embed .testbar, body.embed .skip, body.embed #search{ display:none !important; }
body.embed main{ padding:0; }
body.embed .embed-wrap{ padding:10px 12px; }
@media (max-width:640px){ .lad-row{ grid-template-columns:1fr 100px; } .lad-row .lad-n, .lad-row .lad-b{ display:none; } }

/* 3.58: profile social w stopce */
.foot .social{ display:flex; gap:10px; margin:14px 0 0; }
.foot .social a{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; border:1px solid currentColor; opacity:.8; color:inherit; }
.foot .social a:hover{ opacity:1; }

/* 3.59: statystyki produkcji */
.prod .lede{ max-width:78ch; }
.prod-groups{ display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:14px; }
.prod-groups .card h3{ font-size:1rem; margin:0 0 8px; }
.prod-groups ul{ list-style:none; padding:0; margin:0; columns:1; font-size:.9rem; line-height:1.75; }
.prod-countries{ display:grid; grid-template-columns:repeat(auto-fill, minmax(210px, 1fr)); gap:8px; }
.prod-countries .card{ display:flex; flex-direction:column; gap:2px; padding:10px 12px; text-decoration:none; color:inherit; }
.prod-countries .card:hover{ border-color:var(--ink); }
.pchart text{ font-size:11px; fill:var(--muted); }
.prod .src{ margin:28px 0 64px; }

/* 3.60: rolnictwo świata wg kontynentów */
.ag-jump{ display:flex; flex-wrap:wrap; gap:8px; margin:4px 0 24px; }
.ag-jump a{ border:1px solid var(--line); border-radius:999px; padding:6px 14px; font-size:.9rem; text-decoration:none; color:inherit; background:var(--surface); }
.ag-jump a span{ color:var(--muted); font-size:.8rem; margin-left:4px; }
.ag-jump a:hover, .ag-jump a.on{ border-color:var(--ink); }
.ag-jump a.on{ font-weight:600; }
.ag-kpi{ margin-bottom:40px; }
.ag-conts{ display:grid; grid-template-columns:repeat(auto-fill, minmax(290px, 1fr)); gap:14px; }
.ag-cont{ display:flex; flex-direction:column; gap:8px; text-decoration:none; color:inherit; }
.ag-cont:hover{ border-color:var(--ink); }
.ag-cn{ font-size:1.2rem; font-weight:700; }
.ag-shares{ display:flex; flex-direction:column; gap:5px; margin:6px 0; }
.ag-sh{ display:grid; grid-template-columns:96px 1fr 46px; align-items:center; gap:8px; }
.ag-sh b{ text-align:right; }
.ag-bar{ display:inline-block; height:8px; min-width:60px; width:100%; background:var(--line); border-radius:4px; overflow:hidden; vertical-align:middle; }
td .ag-bar{ width:70px; }
.ag-bar i{ display:block; height:100%; background:var(--up); border-radius:4px; }
.ag-more{ margin-top:auto; font-weight:600; font-size:.9rem; }
.ag-countries{ display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:8px; }
.ag-ccard{ display:flex; flex-direction:column; gap:4px; padding:10px 12px; }
.ag-cname{ font-weight:600; text-decoration:none; color:inherit; }
.ag-cname:hover{ text-decoration:underline; }
.ag-flag{ margin-right:6px; }
.ag-tags{ display:flex; flex-wrap:wrap; gap:6px; }
.ag-tags .tag{ font-size:.75rem; }
.agri table.sortable th{ cursor:pointer; user-select:none; white-space:nowrap; }
.agri table.sortable th[data-dir=asc]::after{ content:' ▲'; font-size:.7em; }
.agri table.sortable th[data-dir=desc]::after{ content:' ▼'; font-size:.7em; }
.ag-table td:first-child{ white-space:nowrap; }
.facts.ag-kpi{ grid-template-columns:repeat(5,1fr); }
@media (max-width:1080px){ .facts.ag-kpi{ grid-template-columns:repeat(3,1fr); } }
@media (max-width:640px){ .facts.ag-kpi{ grid-template-columns:1fr 1fr; } .facts.ag-kpi dd.num{ font-size:1.15rem; } .facts.ag-kpi div:last-child:nth-child(odd){ grid-column:1 / -1; } }
/* 3.60: nagłówek mieścił się dopiero od 1440 px – przy 1366 px przycisk konta wychodził poza ekran */
@media (max-width:1440px){ .searchbtn span{ display:none; } .searchbtn{ min-width:0; } }
@media (max-width:640px){ .ag-sh{ grid-template-columns:84px 1fr 42px; } .ag-table .hm{ display:none; } }

/* 3.61: indeksy cen */
.ix-dl{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.ix-kpi{ grid-template-columns:repeat(auto-fit, minmax(170px, 1fr)); margin-bottom:36px; }
.ix-3 .delta{ font-size:.95rem; margin-right:4px; }
.ix-head{ display:grid; grid-template-columns:repeat(auto-fill, minmax(270px, 1fr)); gap:14px; }
.ix-hcard{ display:flex; flex-direction:column; gap:4px; text-decoration:none; color:inherit; }
.ix-hcard:hover{ border-color:var(--ink); }
.ix-hname{ font-weight:700; font-size:1.08rem; }
.ix-hval{ font-size:2rem; font-weight:800; line-height:1.1; margin-top:6px; }
.ix-hch{ display:flex; gap:14px; font-size:.82rem; color:var(--muted); margin:4px 0 6px; }
.ix-hcard .ix-spark{ width:100%; height:46px; margin-top:auto; }
.ix-nohist{ margin-top:auto; }
.ix-filters{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0 0 12px; }
.ix-filters input[type=search], .ix-filters select{ font:inherit; font-size:.9rem; padding:8px 10px; border:1.5px solid var(--line-2); border-radius:var(--r-ctl, 8px); background:var(--surface); color:inherit; }
.ix-search input{ min-width:240px; }
.ix-chk{ display:inline-flex; gap:6px; align-items:center; font-size:.9rem; }
.ix-table td{ vertical-align:middle; }
.ix-spark{ display:block; }
[data-hf-server] table.sortable th{ cursor:pointer; user-select:none; white-space:nowrap; }
[data-hf-server] table.sortable th[data-dir=asc]::after{ content:' ▲'; font-size:.7em; }
[data-hf-server] table.sortable th[data-dir=desc]::after{ content:' ▼'; font-size:.7em; }
.ix-grid{ display:grid; grid-template-columns:minmax(0, 1fr) 300px; gap:28px; align-items:start; }
.ix-aside{ display:flex; flex-direction:column; gap:14px; position:sticky; top:90px; }
.ix-aside h3{ font-size:1rem; margin:0 0 8px; }
.ix-cite{ font-family:'DejaVu Sans Mono', ui-monospace, monospace; font-size:.78rem; line-height:1.5; background:var(--surface-2); padding:10px; border-radius:4px; margin:0 0 10px; }
.ix-files{ list-style:none; padding:0; margin:0; font-size:.9rem; line-height:1.9; }
.ix-rel{ display:flex; justify-content:space-between; gap:10px; padding:8px 0; border-top:1px solid var(--line); font-size:.88rem; text-decoration:none; color:inherit; }
.ix-rel:hover span:first-child{ text-decoration:underline; }
.ix-chart text{ font-size:11px; fill:var(--muted); }
.ix-chart .ix-covl{ font-size:10px; }
.ix-details{ margin-top:12px; }
.ix-details summary{ cursor:pointer; font-weight:600; padding:8px 0; }
.ix-method h3{ font-size:1.05rem; margin:18px 0 6px; }
.ix-method{ max-width:80ch; }
.ix-cons tr.ix-more{ display:none; }
.ix-cons.ix-all tr.ix-more, .ix-cons.sorted tr.ix-more{ display:table-row; }
.ix-cons td:first-child{ min-width:220px; }
.ix-cons td:first-child .xs a{ text-decoration:none; }
.sr-only{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
@media (max-width:1080px){ .ix-grid{ grid-template-columns:minmax(0, 1fr); } .ix-aside{ position:static; } }
@media (max-width:640px){ .ix-search input{ min-width:0; width:100%; } .ix-search{ flex:1 1 100%; } .ix-filters select{ flex:1; } .ix-hval{ font-size:1.6rem; } .ix-kpi dd.num{ font-size:1.2rem; } }

/* 3.62: Husfarm Index */
.hx-home{ padding-top:28px; }
.hx-card{ display:grid; grid-template-columns:minmax(0, 1.1fr) minmax(0, 1fr); gap:28px; padding:24px 26px; border-width:2px; border-color:var(--navy); }
.hx-card h2{ font-size:1.25rem; margin:4px 0 10px; }
.hx-cval{ display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; margin:0 0 8px; }
.hx-cv{ font-size:3rem; font-weight:800; line-height:1; letter-spacing:-.02em; }
.hx-cch{ display:flex; flex-direction:column; gap:0; } .hx-cch .delta{ font-size:1.1rem; font-weight:700; }
.hx-cgrid{ display:grid; grid-template-columns:repeat(4, auto); gap:8px 18px; margin:14px 0; } .hx-cgrid div{ display:flex; flex-direction:column; gap:2px; } .hx-cgrid .delta{ font-weight:700; }
.hx-breadth{ display:flex; height:10px; border-radius:5px; overflow:hidden; background:var(--line); } .hx-breadth i{ display:block; height:100%; } .hx-breadth .up{ background:var(--up); } .hx-breadth .flat{ background:var(--line-2); } .hx-breadth .down{ background:var(--down); }
.hx-bl{ display:flex; flex-wrap:wrap; gap:6px 18px; font-size:.9rem; margin-top:8px; }
b.up, .num.up{ color:var(--up); } b.down, .num.down{ color:var(--down); }
.hx-c2 .hx-spark{ width:100%; height:auto; }
.hx-subs{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
.hx-sub{ display:inline-flex; gap:6px; align-items:baseline; border:1px solid var(--line); border-radius:999px; padding:4px 10px; font-size:.82rem; } .hx-sub .delta{ font-weight:700; }
.hx-cta{ display:flex; flex-wrap:wrap; gap:8px; }
.hx-tick b{ color:var(--cta); }
.hx-big{ display:flex; flex-direction:column; align-items:flex-end; gap:2px; } .hx-val{ font-size:3.4rem; font-weight:800; line-height:1; letter-spacing:-.02em; } .hx-ch .delta{ font-size:1.1rem; font-weight:700; }
.hx-kpi{ grid-template-columns:repeat(6, 1fr); }
.hx-drv, .hx-cov{ display:grid; grid-template-columns:1fr 1fr; gap:14px; } .hx-drv h3, .hx-cov h3{ font-size:1rem; margin:0 0 6px; }
.hx-banner{ display:grid; grid-template-columns:minmax(0, 1fr) auto auto; gap:24px; align-items:center; text-decoration:none; color:inherit; border-width:2px; border-color:var(--navy); margin-bottom:28px; }
.hx-banner:hover{ border-color:var(--ink); } .hx-banner h2{ margin:4px 0 6px; } .hx-banner p{ margin:0; max-width:60ch; }
.hx-bval{ display:flex; flex-direction:column; align-items:flex-end; } .hx-bval .num{ font-size:2.4rem; font-weight:800; line-height:1; } .hx-bch{ display:flex; gap:12px; font-size:.82rem; color:var(--muted); margin-top:6px; } .hx-bch .delta{ font-weight:700; }
.hx-row-main td{ background:var(--surface-2); }
@media (max-width:1080px){ .hx-kpi{ grid-template-columns:repeat(3, 1fr); } .hx-banner{ grid-template-columns:1fr; } .hx-bval{ align-items:flex-start; } }
@media (max-width:860px){ .hx-card{ grid-template-columns:1fr; } .hx-cgrid{ grid-template-columns:repeat(2, auto); } .hx-drv, .hx-cov{ grid-template-columns:1fr; } .hx-big{ align-items:flex-start; } }
@media (max-width:640px){ .hx-kpi{ grid-template-columns:1fr 1fr; } .hx-cv{ font-size:2.4rem; } .hx-val{ font-size:2.6rem; } }

/* 3.63: archiwum notowań */
.arch-banner{ display:flex; gap:10px; align-items:center; margin:0 0 18px; padding:10px 14px; }
.tag.arch{ border-color:var(--flat); color:var(--flat); }
.arch-line{ margin:-8px 0 18px; }

/* 3.68: giełda ofert i wiadomości */
.ob-skel{ display:grid; gap:14px; margin:28px 0 64px; }
.ob-skel div{ height:120px; border-radius:12px; background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface) 50%, var(--surface-2) 100%); background-size:200% 100%; animation:obskel 1.2s linear infinite; }
@keyframes obskel{ to{ background-position:-200% 0; } }
.ob-skel1{ height:170px; border-radius:12px; background:linear-gradient(90deg, var(--surface-2) 0%, var(--surface) 50%, var(--surface-2) 100%); background-size:200% 100%; animation:obskel 1.2s linear infinite; }
@media (prefers-reduced-motion: reduce){ .ob-skel div, .ob-skel1{ animation:none; } }
.ob-hempty{ padding:22px 20px; }
.ob-hrow + .ob-hrow{ margin-top:26px; }
.ob-hrh{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin:0 0 10px; }
.ob-hrh h3{ font-size:1.05rem; margin:0; }
.ob-hrh a{ text-decoration:underline; }
.ob-sim{ margin-bottom:8px; }
.tag.ob-side.sell{ background:#E7F4EA; border-color:#9FD0AA; color:#1D5E2A; }
.tag.ob-side.buy{ background:var(--wheat-bg); border-color:var(--cta); color:var(--ink); }
.ob-tags{ display:flex; gap:6px; flex-wrap:wrap; }
.ob-bar{ display:flex; gap:12px; align-items:center; justify-content:space-between; flex-wrap:wrap; margin:0 0 16px; }
.ob-segl .segl b{ font-weight:600; opacity:.7; margin-left:3px; }
.ob-filter{ display:flex; gap:8px; flex-wrap:wrap; flex:1 1 520px; justify-content:flex-end; }
.ob-filter input, .ob-filter select{ border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:8px 10px; background:var(--surface); color:var(--ink); font:inherit; font-size:.9rem; min-height:40px; }
.ob-filter input{ flex:1 1 220px; min-width:0; }
.ob-card{ display:flex; flex-direction:column; gap:8px; text-decoration:none; color:inherit; border-left:4px solid #6FBF80; }
.ob-card.buy{ border-left-color:var(--cta); }
.ob-card:hover{ text-decoration:none; box-shadow:var(--shadow); }
.ob-card .t{ font-weight:800; font-size:1.05rem; line-height:1.3; color:var(--ink); }
.ob-card .pr{ font-weight:800; font-size:1.15rem; color:var(--ink); }
.ob-card .f{ display:flex; justify-content:space-between; gap:8px; font-size:.82rem; color:var(--muted); margin-top:auto; padding-top:6px; border-top:1px solid var(--line); }
.ob-delta{ font-size:.8rem; font-weight:700; }
.ob-delta.lo{ color:var(--up); }
.ob-delta.hi{ color:var(--amber-text); }
.ob-empty{ text-align:center; padding:32px 20px; }
.ob-how{ display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:14px; margin:36px 0 18px; }
.ob-how div{ display:flex; flex-direction:column; gap:6px; padding:14px 16px; border-radius:12px; background:var(--surface); border:1px solid var(--line); }
.ob-h1{ font-size:clamp(1.7rem,3.2vw,2.4rem); margin:12px 0 8px; max-width:28ch; }
.ob-h2{ font-size:1.2rem; margin:26px 0 10px; }
.ob-facts{ grid-template-columns:repeat(3, minmax(0,1fr)); }
.ob-facts dd{ font-size:.98rem; }
.ob-facts abbr{ text-decoration:underline dotted; cursor:help; }
.ob-desc{ background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:14px 16px; line-height:1.6; overflow-wrap:anywhere; }
.ob-acts{ display:flex; gap:6px; flex-wrap:wrap; align-items:center; }
.ob-quick{ display:flex; gap:6px; flex-wrap:wrap; margin-top:8px; }
.ob-quick .chip{ font-size:.78rem; color:var(--ink); }
.ob-person{ display:flex; gap:10px; align-items:center; margin-top:10px; }
.ob-av{ flex:0 0 auto; width:40px; height:40px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; background:var(--navy); color:#fff; font-weight:800; font-size:.9rem; }
.ob-badge{ display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; padding:0 6px; border-radius:10px; background:#C62828; color:#fff; font-size:.72rem; font-weight:800; line-height:1; }
.ob-dot{ position:absolute; top:-4px; right:-4px; min-width:18px; height:18px; padding:0 5px; border-radius:9px; background:#C62828; color:#fff; font-size:.68rem; font-weight:800; display:inline-flex; align-items:center; justify-content:center; line-height:1; pointer-events:none; }
a[data-nav="me"]{ position:relative; }
.ob-form{ display:grid; grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr); gap:24px; align-items:start; margin-bottom:64px; }
.ob-acol{ position:sticky; top:84px; display:flex; flex-direction:column; gap:14px; }
.ob-acol #ob-aside{ display:flex; flex-direction:column; gap:14px; }
.ob-sec{ padding:4px 0 18px; border-bottom:1px solid var(--line); margin-bottom:18px; }
.ob-sec:last-child{ border-bottom:0; margin-bottom:0; padding-bottom:4px; }
.ob-sec h2{ font-size:1.1rem; margin:0 0 12px; }
.ob-g{ gap:12px; }
.ob-sec > * + *{ margin-top:12px; }
.ob-form [hidden]{ display:none !important; }
.ob-sideseg button{ padding:10px 18px; font-size:.95rem; }
.ob-pm button{ padding:8px 12px; }
.ob-form .field > .seg{ align-self:flex-start; max-width:100%; flex-wrap:wrap; }
.ob-prodpick{ position:relative; }
.ob-sugg{ display:none; position:absolute; left:0; right:0; top:100%; z-index:30; background:var(--surface); border:1.5px solid var(--line-2); border-radius:0 0 8px 8px; box-shadow:var(--shadow); max-height:320px; overflow:auto; }
.ob-sugg.open{ display:block; }
.ob-sugg button{ display:flex; flex-direction:column; align-items:flex-start; gap:2px; width:100%; text-align:left; border:0; border-bottom:1px solid var(--line); background:transparent; padding:9px 12px; color:var(--ink); cursor:pointer; font:inherit; }
.ob-sugg button:hover, .ob-sugg button:focus{ background:var(--navy-bg); outline:none; }
.ob-certs .chip{ color:var(--ink); }
.ob-certs .chip[aria-pressed="true"]{ background:var(--navy); color:#fff; border-color:var(--navy); }
.ob-err p{ margin:10px 0 0; color:#B3261E; font-weight:600; }
.ob-prev .card{ pointer-events:none; }
.ob-mytable td{ vertical-align:top; }
.ob-inbox{ display:flex; flex-direction:column; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--surface); }
.ob-ti{ display:flex; gap:12px; align-items:flex-start; padding:14px 16px; border-bottom:1px solid var(--line); color:inherit; text-decoration:none; }
.ob-ti:last-child{ border-bottom:0; }
.ob-ti:hover{ background:var(--surface-2); text-decoration:none; }
.ob-ti.unread{ background:var(--wheat-bg); }
.ob-ti.unread b{ font-weight:800; }
.ob-tb{ display:flex; flex-direction:column; gap:2px; min-width:0; flex:1; }
.ob-tt{ display:flex; justify-content:space-between; gap:8px; }
.ob-last{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ob-thread{ max-width:860px; margin:0 auto; border:1px solid var(--line); border-radius:14px; background:var(--surface); overflow:hidden; }
.ob-th-head{ display:flex; gap:12px; align-items:center; padding:14px 16px; border-bottom:1px solid var(--line); flex-wrap:wrap; }
.ob-th-offer{ margin-left:auto; display:flex; flex-direction:column; align-items:flex-end; text-align:right; max-width:52%; color:inherit; }
.ob-msgs{ display:flex; flex-direction:column; gap:10px; padding:16px; height:min(56vh, 560px); overflow-y:auto; background:var(--bg); }
.ob-day{ align-self:center; font-size:.75rem; color:var(--muted); background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:2px 10px; margin:6px 0; }
.ob-msg{ display:flex; flex-direction:column; align-items:flex-start; max-width:78%; gap:3px; }
.ob-msg.mine{ align-self:flex-end; align-items:flex-end; }
.ob-bub{ padding:10px 14px; border-radius:16px 16px 16px 4px; background:var(--surface); border:1px solid var(--line); line-height:1.5; overflow-wrap:anywhere; white-space:normal; }
.ob-msg.mine .ob-bub{ background:var(--navy); color:#fff; border-color:var(--navy); border-radius:16px 16px 4px 16px; }
.ob-compose{ padding:12px 16px 14px; border-top:1px solid var(--line); }
.ob-compose textarea{ width:100%; border:1.5px solid var(--line-2); border-radius:10px; padding:10px 12px; font:inherit; resize:vertical; min-height:72px; background:var(--surface); color:var(--ink); }
.ob-cbar{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:8px; flex-wrap:wrap; }
.sr-only{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0; }
.ob-mcta{ display:none; }
.ob-megrid{ grid-template-columns:minmax(0,2fr) minmax(0,1fr); }
@media (max-width: 860px){ .ob-mcta{ display:flex; width:100%; margin:0 0 18px; } .ob-megrid{ grid-template-columns:minmax(0,1fr); } }
@media (max-width: 900px){
  .ob-form{ grid-template-columns:1fr; }
  .ob-acol{ position:static; }
  .ob-how{ grid-template-columns:1fr 1fr; }
  .ob-facts{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 600px){
  .ob-how{ grid-template-columns:1fr; }
  .ob-filter{ justify-content:stretch; }
  .ob-filter select{ flex:1 1 45%; }
  .ob-th-offer{ margin-left:0; align-items:flex-start; text-align:left; max-width:100%; }
  .ob-msg{ max-width:90%; }
  .ob-msgs{ height:60vh; }
  .ob-cbar .xs{ display:none; }
}

/* 3.69: katalog firm */
.dir-filter{ margin:0 0 16px; justify-content:flex-start; }
.dir-filter input{ flex:2 1 260px; }
.dir-filter select{ flex:1 1 170px; max-width:100%; }
.dir-card{ display:flex; flex-direction:column; gap:10px; text-decoration:none; color:inherit; }
.dir-card:hover{ text-decoration:none; box-shadow:var(--shadow); }
.dir-ch{ display:flex; gap:12px; align-items:center; min-width:0; }
.dir-logo{ flex:0 0 auto; width:56px; height:56px; border-radius:12px; border:1px solid var(--line); background:#fff; display:inline-flex; align-items:center; justify-content:center; overflow:hidden; }
.dir-logo img{ width:100%; height:100%; object-fit:contain; display:block; }
.dir-logo-l{ width:104px; height:104px; border-radius:16px; }
.dir-logo-s{ width:40px; height:40px; border-radius:10px; }
.dir-ini{ font-weight:800; color:#203766; font-size:1.05rem; letter-spacing:.02em; }
.dir-logo-l .dir-ini{ font-size:1.8rem; }
.dir-cn{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.dir-cn b{ font-size:1.02rem; line-height:1.25; color:var(--ink); overflow-wrap:anywhere; }
.dir-ver{ display:inline-flex; align-items:center; font-size:.72rem; font-weight:800; color:var(--up); border:1.5px solid var(--up); border-radius:999px; padding:1px 8px; white-space:nowrap; line-height:1.4; }
.dir-tag{ color:var(--ink-2); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.dir-tags{ display:flex; gap:6px; flex-wrap:wrap; }
a.tag:hover{ text-decoration:none; border-color:var(--navy); }
.dir-f{ display:flex; justify-content:space-between; gap:8px; margin-top:auto; padding-top:8px; border-top:1px solid var(--line); }
.dir-off{ font-weight:700; color:var(--ink); white-space:nowrap; }
.dir-sectors{ display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:14px; }
.dir-sectors > div{ display:flex; flex-direction:column; gap:6px; padding:14px 16px; border-radius:12px; background:var(--surface); border:1px solid var(--line); }
.dir-sectors b{ margin-bottom:4px; }
.dir-sectors a{ font-size:.88rem; color:var(--ink-2); }
.dir-ctrs .chip{ color:var(--ink); }
.dir-why{ margin:40px 0 0; }
.dir-hero{ display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:20px; align-items:center; margin:0 0 26px; padding:22px; }
.dir-hh{ min-width:0; }
.dir-h1{ font-size:clamp(1.6rem,3vw,2.3rem); margin:8px 0 6px; overflow-wrap:anywhere; }
.dir-lede{ font-size:1.05rem; color:var(--ink-2); margin:0 0 6px; }
.dir-hcta{ display:flex; flex-direction:column; gap:8px; align-self:start; }
.dir-desc{ line-height:1.65; overflow-wrap:anywhere; }
.dir-desc p{ margin:0 0 12px; }
.dir-gal{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px; }
.dir-gal button{ padding:0; border:0; border-radius:12px; overflow:hidden; cursor:zoom-in; background:var(--surface-2); aspect-ratio:4/3; }
.dir-gal img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .2s; }
.dir-gal button:hover img{ transform:scale(1.03); }
.dir-prods{ display:grid; grid-template-columns:repeat(auto-fill, minmax(170px, 1fr)); gap:8px; }
.dir-prods a{ display:flex; flex-direction:column; gap:2px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; background:var(--surface); color:var(--ink); }
.dir-prods a:hover{ text-decoration:none; border-color:var(--navy); }
.dir-mk{ display:flex; flex-wrap:wrap; gap:6px 14px; margin:0; }
.dir-det{ display:flex; flex-direction:column; gap:10px; }
.dir-det > a, .dir-det > div{ display:flex; flex-direction:column; gap:1px; overflow-wrap:anywhere; }
.dir-det > a{ color:var(--ink); font-weight:600; }
.dir-facts{ display:grid; gap:8px; margin:8px 0 0; }
.dir-facts div{ display:flex; justify-content:space-between; gap:10px; border-top:1px solid var(--line); padding-top:8px; }
.dir-facts dt{ color:var(--muted); font-size:.85rem; }
.dir-facts dd{ margin:0; text-align:right; font-weight:600; overflow-wrap:anywhere; }
.dir-pbrow{ display:flex; gap:10px; align-items:center; padding:8px 0; border-top:1px solid var(--line); color:inherit; }
.dir-pbrow:hover{ text-decoration:none; }
.dir-lb{ position:fixed; inset:0; z-index:200; background:rgba(8,14,30,.88); display:flex; align-items:center; justify-content:center; padding:24px; }
.dir-lb[hidden]{ display:none; }
.dir-lb figure{ margin:0; max-width:min(1100px, 100%); max-height:100%; display:flex; flex-direction:column; align-items:center; gap:10px; }
.dir-lb img{ max-width:100%; max-height:calc(100vh - 110px); border-radius:8px; object-fit:contain; }
.dir-lb figcaption{ color:#fff; font-size:.9rem; }
.dir-lb button{ position:absolute; border:0; background:rgba(255,255,255,.14); color:#fff; width:46px; height:46px; border-radius:50%; font-size:1.6rem; line-height:1; cursor:pointer; }
.dir-lb button:hover, .dir-lb button:focus-visible{ background:rgba(255,255,255,.28); }
.dir-lbx{ top:16px; right:16px; }
.dir-lbp{ left:16px; top:50%; transform:translateY(-50%); }
.dir-lbn{ right:16px; top:50%; transform:translateY(-50%); }
.dir-catpick{ display:flex; flex-direction:column; gap:10px; }
.dir-catpick .chip, .ob-form .chips .chip{ color:var(--ink); }
.ob-form .chips .chip[aria-pressed="true"]{ background:var(--navy); color:#fff; border-color:var(--navy); }
.dir-picked{ display:flex; flex-wrap:wrap; gap:6px; margin-top:8px; }
.dir-picked:empty{ display:none; }
.dir-pk{ display:inline-flex; align-items:center; gap:4px; padding:4px 4px 4px 10px; border-radius:999px; background:var(--navy-bg); border:1px solid var(--line-2); font-size:.85rem; color:var(--ink); }
.dir-pk button{ border:0; background:transparent; color:var(--ink-2); width:22px; height:22px; border-radius:50%; cursor:pointer; font-size:1rem; line-height:1; }
.dir-pk button:hover{ background:var(--line); }
.dir-upl{ display:flex; gap:16px; align-items:center; flex-wrap:wrap; }
.dir-upl label.btn{ cursor:pointer; }
.dir-phgrid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(118px, 1fr)); gap:10px; }
.dir-ph{ position:relative; display:block; aspect-ratio:4/3; border-radius:10px; overflow:hidden; background:var(--surface-2); border:1px solid var(--line); }
.dir-ph img{ width:100%; height:100%; object-fit:cover; display:block; }
.dir-ph button{ position:absolute; top:6px; right:6px; width:26px; height:26px; border-radius:50%; border:0; background:rgba(8,14,30,.7); color:#fff; cursor:pointer; font-size:1rem; line-height:1; }
.dir-new{ position:absolute; left:6px; bottom:6px; font-size:.7rem; font-weight:800; background:var(--cta); color:#203766; border-radius:6px; padding:1px 6px; }
.dir-add{ display:flex; align-items:center; justify-content:center; cursor:pointer; border:1.5px dashed var(--line-2); background:transparent; color:var(--ink-2); font-weight:700; font-size:.85rem; text-align:center; padding:6px; }
.dir-add:hover{ border-color:var(--navy); color:var(--ink); }
.dir-meter{ height:8px; border-radius:4px; background:var(--surface-2); overflow:hidden; margin-top:10px; }
.dir-meter span{ display:block; height:100%; background:var(--up); border-radius:4px; transition:width .3s; }
.dir-merow{ display:flex; gap:12px; align-items:center; padding:10px 0; border-top:1px solid var(--line); }
.dir-merow .dir-logo{ width:44px; height:44px; border-radius:10px; }
.dir-mecn{ flex:1; min-width:0; }
.ob-co{ display:block; margin-top:-4px; }
.ob-cofull{ display:flex; gap:10px; align-items:center; margin-top:12px; padding-top:12px; border-top:1px solid var(--line); color:inherit; }
.ob-cofull:hover{ text-decoration:none; }
@media (max-width: 1080px){ .dir-sectors{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width: 860px){
  .dir-hero{ grid-template-columns:auto minmax(0,1fr); }
  .dir-hcta{ grid-column:1 / -1; flex-direction:row; flex-wrap:wrap; }
  .dir-hcta .btn{ flex:1 1 160px; }
  .dir-gal{ grid-template-columns:repeat(2, minmax(0,1fr)); }
}
@media (max-width: 600px){
  .dir-sectors{ grid-template-columns:1fr; }
  .dir-hero{ padding:16px; gap:14px; }
  .dir-logo-l{ width:72px; height:72px; border-radius:12px; }
  .dir-filter select{ flex:1 1 45%; }
}

/* ===== Katalog 4.0 (3.70): rodzaje wpisów, kategorie, strony z cenami ===== */
.gx-kgrp{ margin-top:22px; }
.gx-kgrp h3{ font-size:1.06rem; margin:0 0 2px; }
.gx-kgrp > p{ margin:0; }
.gx-types-k{ grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); margin-top:12px; }
.gx-types-k .gx-tcard .gx-tl{ font-size:.95rem; line-height:1.25; }
.gx-cats .gx-sec b{ line-height:1.3; }
.gx-lt{ width:100%; }
.gx-lt td{ vertical-align:top; }
.gx-lt-t{ font-weight:650; line-height:1.35; }
.gx-lt-c{ margin-top:3px; color:var(--muted); }
.gx-lt-c a{ color:inherit; text-decoration:underline; text-decoration-color:var(--line); }
.gx-lt-c a:hover{ color:var(--ink); }
.gx-lt-src td:first-child{ min-width:170px; }
.gx-acc{ display:inline-block; padding:1px 8px; border-radius:999px; font-size:.74rem; font-weight:700; white-space:nowrap; border:1px solid var(--line); background:var(--surface); }
.gx-acc-P{ color:#1E6B25; border-color:#9CCB9F; }
.gx-acc-R{ color:#2B57B5; border-color:#A9BCE8; }
.gx-acc-L{ color:#8A5A00; border-color:#E2C48A; }
.gx-acc-S{ color:#7A2E2E; border-color:#E0AAAA; }
.gx-open{ white-space:nowrap; }
.gx-catcard ul{ list-style:none; padding:0; margin:6px 0 0; }
.gx-catcard li{ padding:6px 0; border-top:1px solid var(--line); }
.gx-catcard li:first-child{ border-top:0; padding-top:0; }
.gx-catcard a{ font-weight:650; }
#gx-prices{ margin-top:8px; }
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .gx-acc-P{ color:#8FD694; border-color:#2F6B34; }
  :root:not([data-theme="light"]) .gx-acc-R{ color:#9DB8F2; border-color:#34508C; }
  :root:not([data-theme="light"]) .gx-acc-L{ color:#E8C27A; border-color:#7A5A1C; }
  :root:not([data-theme="light"]) .gx-acc-S{ color:#F0A3A3; border-color:#7A3434; }
}
:root[data-theme="dark"] .gx-acc-P{ color:#8FD694; border-color:#2F6B34; }
:root[data-theme="dark"] .gx-acc-R{ color:#9DB8F2; border-color:#34508C; }
:root[data-theme="dark"] .gx-acc-L{ color:#E8C27A; border-color:#7A5A1C; }
:root[data-theme="dark"] .gx-acc-S{ color:#F0A3A3; border-color:#7A3434; }
@media (max-width: 640px){
  .gx-types-k{ grid-template-columns:1fr; }
  .gx-lt-src td:first-child{ min-width:120px; }
  .gx-open{ padding-left:10px; padding-right:10px; }
}
/* pasek filtrów (ev-bar ag-bar) nie może dziedziczyć wyglądu wykresu słupkowego .ag-bar */
.ev-bar.ag-bar{ display:flex; height:auto; min-width:0; width:auto; background:var(--bg); border-radius:0; overflow:visible; vertical-align:baseline; }
@media (min-width: 1100px){ .gx-kgrp + .gx-kgrp .gx-types-k{ grid-template-columns:repeat(5, minmax(0, 1fr)); } .gx-kgrp:first-of-type .gx-types-k{ grid-template-columns:repeat(4, minmax(0, 1fr)); } }

/* ===== 3.71: ceny i czynsze ziemi (/farmland-prices/) ===== */
:root{ --lp1:#2A5CAA; --lp2:#C7731F; --lp3:#13917A; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){ --lp1:#4F80D6; --lp2:#C4702A; --lp3:#1E9C80; } }
:root[data-theme="dark"]{ --lp1:#4F80D6; --lp2:#C4702A; --lp3:#1E9C80; }
.lp .lede{ max-width:80ch; }
.lp .ag-jump{ margin:4px 0 8px; }
.lp-kpi{ margin-bottom:22px; }
.lp-kpi.k3{ grid-template-columns:repeat(3, 1fr); }
.lp-kpi.k2{ grid-template-columns:repeat(2, 1fr); }
.lp-kpi.k1{ grid-template-columns:1fr; }
.lp-kpi dd small{ font-size:.72rem; font-weight:600; color:var(--muted); font-stretch:100%; }
.lp .facts.kpi dd .lp-f{ font-size:.62rem; }
.lp-f{ font-size:.7em; font-weight:700; color:var(--muted); margin-left:2px; cursor:help; }
.lp-h3{ font-size:1.05rem; margin:28px 0 8px; }
.lp-stale{ margin:0 0 18px; padding:10px 14px; }
/* wykres liniowy */
.lp-chart{ position:relative; margin:6px 0 14px; }
.lp-svg{ display:block; width:100%; height:auto; overflow:visible; border-radius:var(--r-card); outline:none; }
.lp-svg:focus-visible{ box-shadow:0 0 0 2px var(--lp1); }
.lp-svg text{ font-size:11px; fill:var(--muted); font-variant-numeric:tabular-nums; }
.lp-svg .lp-end{ fill:var(--ink); font-weight:700; }
.lp-svg .lp-grid{ stroke:var(--line); stroke-width:1; }
.lp-svg .lp-xh{ stroke:var(--faint); stroke-width:1; }
.lp-svg .lp-dot{ stroke:var(--bg); stroke-width:2; }
.lp-leg{ display:flex; flex-wrap:wrap; gap:6px 18px; color:var(--ink-2); margin-top:4px; }
.lp-leg span{ display:inline-flex; align-items:center; gap:7px; }
.lp-leg i{ display:inline-block; width:18px; height:2px; border-radius:1px; }
.lp-tip{ position:absolute; top:4px; transform:translateX(-50%); min-width:150px; background:var(--surface); border:1px solid var(--line-2); border-radius:var(--r-card); box-shadow:var(--shadow); padding:8px 10px; font-size:.8rem; pointer-events:none; z-index:3; }
.lp-tip[hidden]{ display:none; }
.lp-tip-h{ color:var(--muted); font-weight:650; margin-bottom:4px; }
.lp-tip-r{ display:grid; grid-template-columns:14px auto 1fr; gap:8px; align-items:center; white-space:nowrap; line-height:1.55; }
.lp-tip-r i{ display:block; width:14px; height:2px; border-radius:1px; }
.lp-tip-r b{ color:var(--ink); font-variant-numeric:tabular-nums; }
.lp-tip-r span{ color:var(--muted); }
/* słupki krajów */
.lp-bars{ display:flex; flex-direction:column; gap:2px; max-width:900px; margin-top:12px; }
.lp-barrow{ display:grid; grid-template-columns:minmax(140px, 200px) 1fr; gap:12px; align-items:center; color:inherit; text-decoration:none; padding:4px 8px; border-radius:6px; }
a.lp-barrow:hover, a.lp-barrow:focus-visible{ background:var(--surface); }
a.lp-barrow:hover .lp-bn{ text-decoration:underline; }
.lp-bn{ font-weight:600; font-size:.92rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.lp-bt{ display:flex; align-items:center; gap:8px; min-width:0; }
.lp-bt i{ display:block; height:14px; flex:none; background:var(--lp1); border-radius:0 4px 4px 0; }
.lp-bt i.cut{ background:linear-gradient(105deg, var(--lp1) 0 84%, var(--bg) 84% 87%, var(--lp1) 87% 90%, var(--bg) 90% 93%, var(--lp1) 93%); }
.lp-bt b{ font-size:.88rem; white-space:nowrap; font-variant-numeric:tabular-nums; }
/* tabele */
.lp-table td:first-child{ white-space:nowrap; }
.lp-table tr.lp-tot td{ background:var(--surface-2); }
.lp table.sortable th{ cursor:pointer; user-select:none; white-space:nowrap; }
.lp table.sortable th[data-dir=asc]::after{ content:' ▲'; font-size:.7em; }
.lp table.sortable th[data-dir=desc]::after{ content:' ▼'; font-size:.7em; }
.lp-callout{ display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; align-items:center; }
.lp-callout h3{ margin:4px 0; }
.lp-callout p{ margin:0; max-width:72ch; }
.lp-src{ padding-left:18px; line-height:1.7; }
.lp-src li{ margin-bottom:6px; }
@media (max-width:640px){
  .lp-svg text{ font-size:20px; }
  .lp-barrow{ grid-template-columns:118px 1fr; gap:8px; padding:4px 2px; }
  .lp-bn{ font-size:.84rem; }
  .lp-bt i{ height:12px; }
  .lp-tip{ min-width:130px; font-size:.76rem; }
  .lp-table .hm{ display:none; }
  .lp-kpi, .lp-kpi.k3{ grid-template-columns:1fr 1fr; }
  .lp-kpi div:last-child:nth-child(odd){ grid-column:1 / -1; }
  .lp-kpi dd{ font-size:1.25rem; }
  .lp-kpi dd small{ display:block; margin-top:2px; }
}

/* ===== 3.73: ceny środków produkcji (/farm-input-prices/) ===== */
:root{ --lp4:#8A4FC2; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]){ --lp4:#8E6BD6; } }
:root[data-theme="dark"]{ --lp4:#8E6BD6; }
.lp-svg .lp-ref{ stroke:var(--faint); stroke-width:1; stroke-dasharray:4 4; }
.ip-kcap{ margin:0 0 6px; }
.ip .lp-kpi{ margin:0 0 14px; }
.ip .lp-kpi dd.xs{ color:var(--muted); }
.ip-groups{ margin:0 0 20px; }
.ip-groups a span{ font-variant-numeric:tabular-nums; }
.ip-table td:first-child{ white-space:normal; min-width:150px; }
.ip-table td.ip-l1{ padding-left:22px; }
.ip-table td.ip-l2{ padding-left:40px; color:var(--ink-2); }
.ip-table td .xs{ white-space:nowrap; }
.ip-fig{ margin:-4px 0 16px; }
.ip-fig summary{ cursor:pointer; color:var(--ink-2); font-weight:650; width:max-content; }
.ip-fig .tablewrap{ margin-top:8px; max-height:420px; overflow:auto; }
.ip-cards{ display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:14px; margin-top:12px; }
.ip-card{ display:flex; flex-direction:column; gap:4px; color:inherit; padding:16px 18px; }
.ip-card:hover{ text-decoration:none; box-shadow:var(--shadow); }
.ip-card:hover h3, .ip-card:focus-visible h3{ text-decoration:underline; text-underline-offset:3px; }
.ip-card h3{ margin:2px 0 0; font-size:1.02rem; }
.ip-card p{ margin:0; }
.ip-ul{ list-style:none; margin:8px 0 10px; padding:0; }
.ip-ul li{ display:flex; justify-content:space-between; gap:12px; padding:6px 0; border-top:1px solid var(--line); font-size:.88rem; }
.ip-ul li b{ white-space:nowrap; font-variant-numeric:tabular-nums; }
.ip-more{ margin-top:auto; font-weight:650; color:var(--ink); }
@media (max-width:640px){
  .ip-table td:first-child{ min-width:120px; }
  .ip-table td.ip-l1{ padding-left:12px; }
  .ip-table td.ip-l2{ padding-left:22px; }
  .ip-cards{ grid-template-columns:1fr; }
}
.ip .src{ margin:12px 0 0; }
.ip .ev-sec > p.small:not(.muted){ margin:12px 0 0; }
.lp-svg path{ vector-effect:non-scaling-stroke; }
@media (min-width:641px){ .ip-table td:first-child{ min-width:180px; } }

/* ===== 3.74: centrum danych (/data/) ===== */
.dt-rel:not(.open) .dt-more{ display:none; }
.dt-auto{ display:inline-block; font-size:.66rem; font-weight:700; letter-spacing:.02em; color:var(--ink-2); background:var(--surface-2); border:1px solid var(--line); border-radius:999px; padding:1px 7px; margin-left:4px; vertical-align:2px; }
.dt-sets{ display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:14px; margin:0 0 40px; }
.dt-set{ display:flex; flex-direction:column; gap:3px; color:inherit; }
.dt-set:hover{ text-decoration:none; box-shadow:var(--shadow); }
.dt-set:hover h3, .dt-set:focus-visible h3{ text-decoration:underline; text-underline-offset:3px; }
.dt-set h3{ margin:4px 0 8px; font-size:1.05rem; }
.dt-big{ font-size:1.5rem; font-weight:800; font-stretch:84%; line-height:1.15; }
.dt-set p{ margin:8px 0 10px; }
.dt-upd{ margin-top:auto; }
.dt-live{background:#fff4d6;color:#7a5200;border-color:#f0d78c}
/* 3.99.1: menu główne z panelami */
.top{ --navh:68px; }
.top > .wrap{ width:min(1440px, 100% - 40px); gap:18px; }
.top .brand{ flex:none; }
.mainnav{ display:flex; gap:2px; align-items:center; min-width:0; }
.mainnav .ni{ display:flex; align-items:center; height:var(--navh); position:static; }
.mainnav .ni > a.nl{ padding:8px 2px 8px 10px; border-radius:var(--r-ctl) 0 0 var(--r-ctl); font-weight:640; font-size:.95rem; color:var(--ink-2); white-space:nowrap; position:relative; }
.mainnav .ni > a.nl:hover{ text-decoration:none; color:var(--ink); background:none; }
.mainnav .ni > a.nl.on{ color:var(--ink); }
.mainnav .ni > a.nl.on::after{ content:""; position:absolute; left:10px; right:-14px; bottom:-15px; height:3px; background:var(--cta); border-radius:2px; }
.mainnav .ni > .new{ order:3; font-size:.66rem; font-weight:800; background:var(--cta); color:var(--cta-ink); border-radius:10px; padding:1px 6px; margin-left:2px; }
.mainnav .ni > .nx{ order:2; display:grid; place-items:center; width:22px; height:30px; padding:0 8px 0 4px; box-sizing:content-box; border:0; background:none; color:var(--muted); cursor:pointer; border-radius:0 var(--r-ctl) var(--r-ctl) 0; }
.mainnav .ni > .nx svg{ transition:transform .15s; }
.mainnav .ni.open > .nx svg{ transform:rotate(180deg); }
.mainnav .ni:hover > a.nl, .mainnav .ni.open > a.nl{ color:var(--ink); }
.mainnav .mm{ position:absolute; left:0; right:0; top:100%; background:var(--surface); border-top:1px solid var(--line); border-bottom:1px solid var(--line); box-shadow:0 18px 40px rgba(16,32,64,.14); visibility:hidden; opacity:0; transform:translateY(-4px); transition:opacity .14s, transform .14s, visibility 0s linear .14s; z-index:60; }
.mainnav .ni.open > .mm{ visibility:visible; opacity:1; transform:none; transition:opacity .14s, transform .14s; }
.mainnav .mmw{ width:min(1440px, 100% - 40px); height:auto; align-items:start; display:grid; grid-auto-flow:column; grid-auto-columns:minmax(0,1fr); gap:28px 36px; padding:28px 0 32px; }
.mainnav .mmc{ min-width:0; }
.mainnav .mmh{ font-size:.74rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); margin:0 0 12px; }
.mainnav .mm ul{ list-style:none; margin:0; padding:0; }
.mainnav .mm li a{ display:block; padding:6px 8px; margin:0 -8px; border-radius:var(--r-ctl); color:var(--ink); font-size:.93rem; }
.mainnav .mm li a:hover{ background:var(--surface-2); text-decoration:none; }
.mainnav .mmd li a{ padding:8px 10px; margin:0 -10px 2px; }
.mainnav .mmd li a b{ display:block; font-weight:700; }
.mainnav .mmd li a span{ display:block; font-size:.82rem; color:var(--muted); margin-top:2px; line-height:1.35; }
.mainnav .mmf{ background:var(--surface-2); border-radius:12px; padding:20px; align-self:start; }
.mainnav .mmf p{ font-size:.9rem; color:var(--ink-2); margin:0 0 14px; line-height:1.45; }
.mainnav .mmf .mmh{ color:var(--ink); }
.mainnav .mmk{ grid-column:span 2; }
.mainnav .mmchips{ display:flex; flex-wrap:wrap; gap:8px; }
.mainnav .mmchips li a{ display:inline-flex; gap:6px; align-items:center; margin:0; padding:7px 12px; border:1px solid var(--line-2); border-radius:999px; font-size:.88rem; }
.mainnav .mmall{ display:inline-block; margin-top:14px; font-weight:700; }
@media (max-width:1440px){ .top .searchbtn span{ display:none; } .top .searchbtn{ min-width:0; } .top .searchbtn kbd{ display:none; } }
@media (max-width:1320px){ .mainnav .ni > a.nl{ font-size:.9rem; padding-left:8px; } .mainnav .ni > .nx{ padding-right:4px; } .mainnav .ni > .new{ display:none; } .top > .wrap{ gap:12px; } }
@media (min-width:1181px){ .mainnav .ni > .new{ display:inline-block; } }
@media (min-width:1181px) and (max-width:1320px){ .mainnav .ni > .new{ display:none; } }
@media (max-width:1180px){
  .mainnav{ display:none; } .top .menubtn{ display:grid; }
  .mainnav.open{ display:block; position:absolute; top:100%; left:0; right:0; background:var(--surface); border-top:1px solid var(--line); border-bottom:1px solid var(--line); box-shadow:0 18px 40px rgba(16,32,64,.14); padding:6px 20px 18px; max-height:calc(100vh - var(--navh) - 40px); max-height:calc(100dvh - var(--navh) - 40px); overflow:auto; overscroll-behavior:contain; }
  .mainnav .ni{ height:auto; flex-wrap:wrap; border-bottom:1px solid var(--line); }
  .mainnav .ni > a.nl{ flex:1; padding:14px 0; font-size:1.02rem; }
  .mainnav .ni > a.nl.on::after{ display:none; }
  .mainnav .ni > .new{ display:inline-block; order:1; margin-right:8px; }
  .mainnav .ni > .nx{ width:44px; height:44px; padding:0; justify-content:center; }
  .mainnav .mm{ position:static; display:none; visibility:visible; opacity:1; transform:none; box-shadow:none; border:0; background:none; flex-basis:100%; order:4; }
  .mainnav .ni.open > .mm{ display:block; }
  .mainnav .mmw{ width:auto; grid-auto-flow:row; grid-template-columns:1fr; gap:18px; padding:4px 0 18px; }
  .mainnav .mmk{ grid-column:auto; }
  .mainnav .mmd li a span{ display:none; }
}
@media (max-width:860px){ .mainnav.open{ max-height:calc(100dvh - var(--navh) - 120px); } }
/* 3.99.2: strona kraju */
.ctry-hero{ display:flex; justify-content:space-between; align-items:flex-end; gap:20px 32px; flex-wrap:wrap; margin:6px 0 22px; }
.ctry-hero > div:first-child{ max-width:820px; }
.ctry-hero h1{ margin:6px 0 10px; }
.ctry-hero .lede{ margin:0; font-size:1.06rem; line-height:1.55; color:var(--ink-2); }
.ssr .lede[data-k="c"]{ font-size:1.06rem; line-height:1.55; color:var(--ink-2); } /* 4.0.42 */
.ctry-act{ display:flex; gap:8px; flex-wrap:wrap; align-items:center; }
.ctry-act select{ padding:9px 12px; max-width:220px; }
.ctry-kpi{ margin:0 0 18px; }
.ctry-toc{ position:sticky; top:68px; z-index:20; display:flex; gap:4px; overflow-x:auto; scrollbar-width:none; background:var(--bg); border-bottom:1px solid var(--line); margin:0 0 20px; padding:8px 0; }
.ctry-toc::-webkit-scrollbar{ display:none; }
.ctry-toc a{ flex:none; padding:7px 12px; border-radius:999px; font-size:.88rem; font-weight:650; color:var(--ink-2); white-space:nowrap; }
.ctry-toc a:hover{ background:var(--surface-2); color:var(--ink); text-decoration:none; }
.ctry-units{ margin-bottom:28px; }
.ctry-sec{ margin:0 0 48px; scroll-margin-top:130px; }
.ctry-sec > .head{ margin-bottom:16px; }
.ctry-sec > .head p{ max-width:860px; }
.ctry-cards{ display:grid; grid-template-columns:repeat(auto-fill, minmax(230px, 1fr)); gap:12px; }
.ccard{ display:flex; flex-direction:column; gap:10px; padding:16px 18px; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); color:var(--ink); }
.ccard:hover{ border-color:var(--ink-2); text-decoration:none; }
.ccard .cc-h{ display:flex; flex-direction:column; gap:2px; }
.ccard .cc-h small{ font-size:.8rem; color:var(--muted); }
.ccard .cc-p{ font-size:1.45rem; font-weight:800; letter-spacing:-.01em; }
.ccard .cc-p .cur{ font-size:.8rem; font-weight:600; color:var(--muted); }
.ccard .cc-f{ display:flex; justify-content:space-between; align-items:center; gap:8px; }
.ctry-mv .card h3{ margin:0 0 6px; }
.mvlist{ list-style:none; margin:0; padding:0; }
.mvlist li a{ display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid var(--line); color:var(--ink); }
.mvlist li:first-child a{ border-top:0; }
.mvlist li a:hover{ text-decoration:none; background:var(--surface-2); }
.mvlist .mvn{ display:flex; flex-direction:column; min-width:0; }
.mvlist .mvn b{ font-size:.92rem; font-weight:650; overflow:hidden; text-overflow:ellipsis; }
.mvlist .mvn small{ font-size:.78rem; color:var(--muted); }
.mvlist .mvv{ display:flex; flex-direction:column; align-items:flex-end; flex:none; font-size:.9rem; }
.lad-more{ padding:12px 18px; border-top:1px solid var(--line); text-align:center; }
.ctry-find{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin:14px 0 10px; }
.ctry-find input{ flex:1 1 280px; max-width:440px; padding:10px 14px; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); background:var(--surface); color:var(--ink); font:inherit; }
.ctry-more{ text-align:center; margin:14px 0 4px; }
.ctry-mk{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:10px; }
.ctry-mk .mkc{ display:flex; flex-direction:column; gap:4px; padding:14px 16px; color:var(--ink); }
.ctry-mk .mkc:hover{ border-color:var(--ink-2); text-decoration:none; }
.ctry .faq details{ border-top:1px solid var(--line); padding:4px 0; }
.ctry .faq details:last-child{ border-bottom:1px solid var(--line); }
.ctry .faq summary{ cursor:pointer; font-weight:700; padding:12px 0; list-style-position:outside; }
.ctry .faq p{ margin:0 0 14px; max-width:860px; color:var(--ink-2); line-height:1.6; }
.ctry-near{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px; }
.ctry-near a{ display:inline-flex; gap:6px; align-items:center; padding:7px 12px; border:1px solid var(--line-2); border-radius:999px; font-size:.88rem; color:var(--ink); }
.ctry-near a:hover{ border-color:var(--ink-2); text-decoration:none; }
.ctry-near a.all{ font-weight:700; }
@media (max-width:760px){
  .ctry-hero{ align-items:stretch; } .ctry-act{ width:100%; } .ctry-act .btn, .ctry-act select{ flex:1 1 100%; max-width:none; }
  .ctry-toc{ top:60px; margin-left:-16px; margin-right:-16px; padding-left:12px; padding-right:12px; }
  .ctry-cards{ grid-template-columns:1fr 1fr; gap:8px; } .ccard{ padding:12px; } .ccard .cc-p{ font-size:1.15rem; }
  .ctry-sec{ margin-bottom:36px; }
}
.ctry-ser{ display:flex; gap:8px; align-items:center; min-width:0; max-width:100%; }
.ctry-ser select{ min-width:0; max-width:420px; text-overflow:ellipsis; }
@media (max-width:760px){ .ctry-ser{ width:100%; } .ctry-ser select{ flex:1; max-width:none; width:100%; } }

/* 4.0.7: kursy walut */
.fxconv .fxc-row{ display:flex; gap:10px; align-items:flex-end; flex-wrap:wrap; }
.fxconv label{ display:flex; flex-direction:column; gap:4px; flex:1 1 140px; min-width:0; }
.fxconv input, .fxconv select{ width:100%; min-width:0; }
.fxconv .fxc-sw{ flex:0 0 auto; margin-bottom:2px; }
.fxconv .fxc-out{ font-size:1.25rem; margin:14px 0 4px; }
.fxconv .fxc-note{ margin:0; }
.fxc.up{ color:var(--up); } .fxc.down{ color:var(--down); }
.fxp-tab td, .fxp-tab th{ white-space:nowrap; }
.cur-pick{ display:inline-flex; align-items:center; }
.cur-pick select{ font-size:.85rem; padding:4px 8px; max-width:12rem; }

/* 4.0.24: długie tabele porcjami */
.pager-more{display:block; margin:12px auto 28px}

/* 4.0.32: stabilny układ przy ładowaniu: pasek notowań ma stałą wysokość, obszar treści nie przepuszcza marginesów i zajmuje ekran (stopka nie wskakuje w widok) */
.ticker{ min-height:39px; }
main#app{ display:flow-root; min-height:calc(100vh - 100px); }
#app > .wrap.ssr{ padding-top:22px; }
#app > .ssr:not(.wrap){ padding:0; }
/* 4.0.32: kontrast etykiety „Wholesale” (7,2:1) */
.lvl-wholesale, .lvl-auction{ color:#3f4a63; }

/* 4.0.36: miejsca reklamowe z zarezerwowana wysokoscia (bez przeskakiwania ukladu); puste miejsce znika, gdy Google nie ma reklamy */
.ad-slot{margin:22px auto;text-align:center;max-width:100%;overflow:hidden}
.ad-slot .ad-lbl{display:block;font-size:11px;line-height:1.4;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.ad-slot.ad-top{min-height:120px}
.ad-slot.ad-mid,.ad-slot.ad-art{min-height:300px}
.ad-slot:has(ins[data-ad-status="unfilled"]){display:none}
@media print{.ad-slot{display:none}}

/* 4.0.51: produkcja - sekcje analizy */
.pp-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:8px 24px; }
.pp-grid h3{ font-size:1rem; margin:6px 0 8px; }
.pp-faq h3{ font-size:1.02rem; margin:18px 0 4px; }
.pp-faq p{ margin:0 0 6px; max-width:72ch; }

/* 4.0.52: mapa swiata i wykresy trendu w sekcji produkcji */
.pmap{ margin:0; }
.pmap label{ display:inline-flex; gap:8px; align-items:center; margin-bottom:8px; }
.pmap select{ font:inherit; padding:6px 10px; border:1px solid var(--line-2); border-radius:8px; background:var(--surface); color:var(--ink); }
.pmap-svg{ aspect-ratio:960/470; width:100%; background:var(--surface); border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.pmap-svg svg{ display:block; width:100%; height:auto; }
.pmap-svg path{ fill:var(--surface-2); stroke:var(--line-2); stroke-width:.5; }
.pmap [data-b="0"]{ fill:#CADDF1; background:#CADDF1; } .pmap [data-b="1"]{ fill:#A2C1E4; background:#A2C1E4; } .pmap [data-b="2"]{ fill:#7BA3D2; background:#7BA3D2; } .pmap [data-b="3"]{ fill:#3B6BAA; background:#3B6BAA; } .pmap [data-b="4"]{ fill:#1B3B6E; background:#1B3B6E; } .pmap [data-b="n"]{ fill:var(--surface-2); background:var(--surface-2); } .pmap-leg i[data-b="n"]{ box-shadow:inset 0 0 0 1px var(--line-2); }
.pmap-svg path:hover{ stroke:var(--ink); stroke-width:1; }
.pmap-leg{ display:flex; flex-wrap:wrap; gap:4px 14px; margin-top:8px; }
.pmap-leg span{ display:inline-flex; align-items:center; gap:6px; } .pmap-leg i{ width:14px; height:10px; border-radius:2px; display:inline-block; }
.spk{ vertical-align:middle; margin-left:6px; } .spk polyline{ fill:none; stroke:var(--muted); stroke-width:1.4; stroke-linejoin:round; }
.prod-groups li{ display:flex; align-items:center; justify-content:space-between; gap:6px; }
.prod-groups li[hidden], .prod-groups .card[hidden]{ display:none; }
.pp-search input{ font:inherit; width:min(420px,100%); padding:10px 14px; border:1px solid var(--line-2); border-radius:10px; background:var(--surface); color:var(--ink); }

/* 4.0.53 */
.pp-wide{ grid-template-columns:repeat(auto-fit,minmax(420px,1fr)); }
@media (max-width:520px){ .pp-wide{ grid-template-columns:1fr; } }

/* 4.0.54 */
.pmap-svg path.hl{ stroke:var(--cta, #F2A900); stroke-width:2; }
.pp-grid > *{ min-width:0; }
.pp-wide{ grid-template-columns:repeat(auto-fit,minmax(min(420px,100%),1fr)); }

/* 4.0.55 */
.data tr.hl-row td{ background:var(--surface-2); }

/* 4.0.56: pytania i odpowiedzi */
.qa-toc{ background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:14px 18px; margin:18px 0 8px; }
.qa-toc ol{ margin:0; padding-left:20px; columns:2 320px; column-gap:28px; } .qa-toc li{ margin:3px 0; break-inside:avoid; }
.qa-item h2{ font-size:1.25rem; } .qa-item p{ max-width:76ch; }
.qa-guides{ columns:2 320px; column-gap:28px; padding-left:18px; } .qa-guides li{ margin:4px 0; break-inside:avoid; }
.qa-prose p{ font-size:1.05rem; line-height:1.65; max-width:72ch; } .qa-links{ margin:14px 0 8px; }

/* 4.0.57: centrum danych */
.dc .dc-toc{ margin:0 0 6px; }
.dc .dc-sec{ margin-top:44px; }
.dc .dc-sec h2, .dc #downloads h2{ font-size:1.3rem; }
.dc .dc-st{ grid-template-columns:repeat(auto-fit,minmax(170px,1fr)); }
.dc .dc-sec > h2{ margin:0 0 6px; }
.dc .dc-sub{ margin:0 0 14px; }
.dc-pv{ margin-top:8px; font-size:.85rem; }
.dc-pv summary{ cursor:pointer; color:var(--navy); font-weight:600; font-size:.82rem; }
.dc-pv .tablewrap{ margin-top:8px; max-width:100%; overflow-x:auto; }
.dc-pv td{ white-space:nowrap; }
.dc-cite{ position:relative; margin:8px 0 0; }
.dc-cite pre{ white-space:pre-wrap; word-break:break-word; margin:0 0 6px; font-size:.8rem; background:var(--surface-2); border:1px solid var(--line); border-radius:8px; padding:10px 12px; }
.dc .dt-dl > div:first-child{ min-width:0; }
.dc #questions h3{ font-size:1rem; margin:16px 0 4px; }
@media (max-width:760px){ .dc .facts.kpi.dt6{ grid-template-columns:repeat(2,1fr); } .dc .dt-dl{ grid-template-columns:1fr; } .dc .dt-dl-a{ align-items:flex-start; } }

/* 4.0.58: metodologia */
.mt .mt-prose{ max-width:860px; }
.mt .mt-prose h2{ font-size:1.3rem; }
.mt .mt-prose .tablewrap{ margin:12px 0; }
.mt .mt-ex{ margin:16px 0 0; } .mt .mt-ex ol{ margin:6px 0 8px; padding-left:20px; } .mt .mt-ex li{ margin:3px 0; }
.mt #notes, .mt #questions{ max-width:860px; }
@media (max-width:760px){ .mt .steps{ grid-template-columns:1fr 1fr; } }

/* 4.0.59: indeksy */
.ixp .dc-toc{ margin:14px 0 4px; }
.ixp .dc-sub{ margin:-6px 0 14px; }
.ix-groups{ display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:14px; }
.ix-groups h3{ font-size:1rem; margin:0 0 6px; }
.ixp .pp-faq h3{ font-size:1rem; margin:16px 0 4px; }

/* 4.0.60: kursy walut */
.fxp .dc-toc{ margin:14px 0 18px; }
.fxp .dc-sub{ margin:-6px 0 14px; }
.fxp .ev-sec{ margin-top:34px; }
.fxp-cross tbody th[scope=row]{ text-align:left; font-weight:700; text-transform:none; letter-spacing:0; font-size:.9rem; color:var(--ink); background:none; }
.fxp-cross td, .fxp-cross th{ white-space:nowrap; }
.fxq-ks{ columns:2; column-gap:24px; } @media (max-width:640px){ .fxq-ks{ columns:1; } }
.fxp .pp-faq h3{ font-size:1rem; margin:16px 0 4px; }

/* 4.0.61: osadzanie */
.em .dc-toc{ margin:14px 0 4px; }
.em .dc-sub{ margin:-6px 0 14px; }
.em-grid{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:24px; align-items:start; }
.em-grid > *, .em-row > *{ min-width:0; }
.em-form textarea, .em-form input, .em-form select{ width:100%; font:inherit; box-sizing:border-box; padding:8px 10px; border:1px solid var(--line); border-radius:8px; background:var(--surface); color:var(--ink); }
.em-l{ display:block; font-weight:700; font-size:.85rem; margin:12px 0 6px; } .em-form > .em-l:first-child{ margin-top:0; }
.em-row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.em-code{ font-family:ui-monospace, SFMono-Regular, Menlo, monospace; font-size:.8rem; }
.em-act{ margin:10px 0 0; }
.em-search{ position:relative; }
.em-res{ position:absolute; left:0; right:0; top:100%; z-index:20; background:var(--surface); border:1px solid var(--line); border-radius:8px; box-shadow:0 8px 24px rgba(0,0,0,.12); max-height:320px; overflow:auto; }
.em-res:empty{ display:none; }
.em-hit{ display:block; width:100%; text-align:left; padding:8px 12px; border:0; border-bottom:1px solid var(--line); background:none; font:inherit; cursor:pointer; color:var(--ink); }
.em-hit:hover, .em-hit:focus{ background:var(--surface-2); } .em-hit span{ display:block; font-size:.78rem; color:var(--muted); }
.em-prev{ min-height:120px; }
.em-ready{ display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:14px; } .em-ready h3{ font-size:1rem; margin:0 0 2px; }
.em-pre{ white-space:pre-wrap; word-break:break-all; font-size:.8rem; }
.em .pp-faq h3{ font-size:1rem; margin:16px 0 4px; }
@media (max-width:860px){ .em-grid{ grid-template-columns:1fr; } .em-row{ grid-template-columns:1fr; } }

/* 4.0.62: API */
.api .dc-toc{ margin:0 0 4px; }
.api .dc-sub{ margin:-6px 0 14px; }
.api-exs{ display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:14px; }
.api-ex h3{ font-size:.95rem; margin:0 0 8px; } .api-ex pre, .api-pre{ white-space:pre-wrap; word-break:break-word; font-size:.78rem; margin:0; font-family:ui-monospace, SFMono-Regular, Menlo, monospace; }
.api-pre{ max-height:520px; overflow:auto; }
.api .pp-faq h3{ font-size:1rem; margin:16px 0 4px; }
@media (max-width:760px){ .api .facts.kpi.dt6{ grid-template-columns:repeat(2,1fr); } }

/* 4.0.64: narzedzia */
.tl .dc-toc{ margin:0 0 4px; } .tl .dc-sub{ margin:-6px 0 14px; }
.tl-card{ position:relative; display:flex; flex-direction:column; gap:6px; }
.tl-card h3{ margin:0; padding-right:44px; } .tl-card p{ margin:0; flex:1; } .tl-card[hidden], .tl-cat[hidden]{ display:none; }
.tl-new{ display:inline-block; font-size:.68rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; padding:2px 7px; border-radius:999px; background:var(--wheat-bg); color:var(--amber-text); }
.tl-card .tl-new{ position:absolute; top:14px; right:14px; }
.tl-n{ font-weight:600; font-size:1rem; }
.tl-find{ margin:18px 0 10px; padding:14px 16px; } .tl-find label{ display:block; font-weight:700; font-size:.9rem; margin-bottom:6px; } .tl-find input{ width:100%; max-width:520px; } .tl-find .tl-none{ margin:8px 0 0; }
.tl-app{ margin:0 0 8px; padding:22px; text-align:center; }
.tl-form{ margin:0 0 10px; padding:18px; } .tl-form fieldset{ border:0; margin:0 0 12px; padding:0; min-width:0; } .tl-form legend{ font-weight:800; font-size:.95rem; margin-bottom:8px; padding:0; }
.tl-fields{ display:grid; grid-template-columns:repeat(auto-fit, minmax(170px, 1fr)); gap:12px; }
.tl-fields label{ display:flex; flex-direction:column; gap:4px; min-width:0; } .tl-fields label span{ font-size:.78rem; font-weight:700; color:var(--muted, #5b6470); }
.tl-fields input, .tl-fields select, .tl-find input{ width:100%; min-width:0; font:inherit; font-size:.92rem; color:var(--ink); background:var(--surface); border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:9px 10px; min-height:42px; }
.tl-fields input:focus, .tl-fields select:focus, .tl-find input:focus{ border-color:var(--navy); outline:none; box-shadow:0 0 0 3px var(--navy-bg); }
.tl-act{ margin:12px 0 0; display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.tl-more{ margin:4px 0 0; } .tl-more summary{ cursor:pointer; font-weight:700; margin-bottom:10px; }
.tl-out h2{ margin-bottom:8px; } .tl-h3{ font-size:1.02rem; margin:26px 0 8px; }
.tl-big{ font-size:2rem; font-weight:800; margin:4px 0 6px; line-height:1.15; } .tl-big .num{ font-size:2.4rem; }
.tl-me td{ background:var(--wheat-bg); }
.tl-steps{ padding-left:1.3em; line-height:1.7; } .tl-steps li{ margin:2px 0; }
.tl .pp-faq h3{ font-size:1rem; margin:16px 0 4px; }
.tl-js{ padding-bottom:40px; }
@media (max-width:760px){ .tl .facts.kpi{ grid-template-columns:repeat(2,1fr); } .tl-big .num{ font-size:1.9rem; } .tl-fields{ grid-template-columns:1fr 1fr; } }
@media (max-width:420px){ .tl-fields{ grid-template-columns:1fr; } }

/* 4.0.66: wiadomosci */
.nw .nw-head{ align-items:flex-end; gap:18px; margin-bottom:6px; } .nw .nw-head .lede{ max-width:68ch; }
.nw-search{ display:flex; flex-direction:column; gap:5px; min-width:260px; } .nw-search label{ font-size:.78rem; font-weight:700; color:var(--muted); }
.nw-search span{ display:flex; gap:6px; } .nw-search input{ flex:1; min-width:0; font:inherit; font-size:.92rem; color:var(--ink); background:var(--surface); border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:9px 10px; min-height:42px; }
.nw-search input:focus{ border-color:var(--navy); outline:none; box-shadow:0 0 0 3px var(--navy-bg); }
.nw-pg{ font-size:.55em; font-weight:700; }
.nw-block{ margin:30px 0 6px; padding-top:22px; border-top:1px solid var(--line); }
.nw-bh{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap; margin-bottom:10px; } .nw-bh h2{ font-size:1.25rem; margin:0; }
.nw-mini{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:4px 24px; }
.nw-mini li{ padding:8px 0; border-top:1px solid var(--line); font-weight:700; font-size:.92rem; line-height:1.35; }
.nw-date{ font-size:.95rem; margin:24px 0 4px; }
.nw-prow{ display:flex; justify-content:space-between; gap:10px; padding:9px 0; border-top:1px solid var(--line); }
.nw-arow{ display:block; padding:8px 0; border-top:1px solid var(--line); }
.nw .wire .k .tag{ text-decoration:none; }
.nw .pager{ display:flex; gap:6px; flex-wrap:wrap; margin:22px 0 0; align-items:center; }
.nw .pp-faq{ margin-top:36px; } .nw .pp-faq h3{ font-size:1rem; margin:16px 0 4px; }
.nw-art .article-body h2{ scroll-margin-top:90px; } .nw-fig{ margin:18px 0; } .nw-fig figcaption{ margin-bottom:6px; }
.nw-asof{ text-transform:none; letter-spacing:0; font-weight:600; }
.nw-kpi{ margin:14px 0 0; }
@media (max-width:760px){ .nw .nw-head{ flex-direction:column; align-items:stretch; } .nw-search{ min-width:0; } .nw-mini{ grid-template-columns:1fr; } }

/* 4.0.67: imprezy z serwera */
.evs .ev-head{ margin-bottom:10px; } .evs .ev-head .lede{ max-width:70ch; } .ev-when{ font-size:1.05rem; margin:6px 0 8px; }
.ev-kpi{ margin:14px 0 22px; } .evx-next a{ font-size:1.05rem; }
.ev-mh{ font-size:1.25rem; margin:26px 0 10px; } .ev-mh .muted{ font-size:.85rem; font-weight:600; }
.ev-goals{ display:grid; grid-template-columns:repeat(auto-fit, minmax(260px, 1fr)); gap:12px; } .ev-goals h3{ font-size:1rem; margin:0 0 6px; }
.ev-bgrid{ display:grid; grid-template-columns:1fr 1fr 2fr; gap:24px; } .ev-bgrid h3{ font-size:1rem; margin:0 0 8px; }
.ev-links{ list-style:none; margin:0; padding:0; } .ev-links li{ padding:4px 0; font-size:.92rem; } .ev-cols{ columns:2; column-gap:24px; }
.ev-eds{ list-style:none; margin:0; padding:0; } .ev-eds li{ padding:12px 0; border-top:1px solid var(--line); }
.ev-img{ margin:0 0 18px; } .ev-img img{ width:100%; height:auto; border-radius:var(--r-card, 12px); }
.ev-act{ display:flex; gap:8px; flex-wrap:wrap; margin:12px 0 0; }
.evx-head{ margin-bottom:10px; } .evx-head .lede{ max-width:70ch; } .evx-body{ min-width:0; } .evx-body > .ev-sec{ margin:0 0 26px; } .evx-mini{ list-style:none; margin:6px 0 10px; padding:0; } .evx-mini li{ padding:8px 0; border-top:1px solid var(--line); display:flex; flex-direction:column; gap:2px; font-size:.92rem; }
.evs .pp-faq h3{ font-size:1rem; margin:16px 0 4px; }
@media (max-width:860px){ .ev-bgrid{ grid-template-columns:1fr; } .ev-cols{ columns:2; } }

/* 4.0.68: archiwum imprez */
.arx-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(260px, 1fr)); gap:16px; margin:8px 0 6px; }
.arx-card[hidden], .arx-year[hidden]{ display:none; }
.arx-a{ display:flex; flex-direction:column; height:100%; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card, 12px); overflow:hidden; color:inherit; text-decoration:none; transition:border-color .15s, transform .15s; }
.arx-a:hover{ border-color:var(--navy); text-decoration:none; transform:translateY(-2px); }
.arx-img{ position:relative; display:block; aspect-ratio:16/9; background:var(--wheat-bg); }
.arx-img img{ width:100%; height:100%; object-fit:cover; display:block; }
.arx-noimg{ display:flex; align-items:center; justify-content:center; height:100%; font-size:2.6rem; font-weight:800; color:var(--amber-text); }
.arx-d{ position:absolute; left:10px; bottom:10px; background:var(--surface); color:var(--ink); font-weight:800; font-size:.78rem; padding:3px 9px; border-radius:999px; }
.arx-new{ position:absolute; right:10px; top:10px; background:var(--cta); color:var(--ink); font-weight:800; font-size:.7rem; padding:3px 9px; border-radius:999px; text-transform:uppercase; letter-spacing:.03em; }
.arx-b{ display:flex; flex-direction:column; gap:5px; padding:14px 16px 16px; flex:1; }
.arx-t{ font-weight:800; font-size:1.05rem; line-height:1.25; } .arx-m{ font-size:.82rem; color:var(--muted, #5b6470); } .arx-l{ font-size:.88rem; color:var(--ink-2); flex:1; } .arx-v{ font-size:.85rem; color:var(--muted, #5b6470); } .arx-v b{ color:var(--ink); font-size:1rem; }
.arx-f{ display:grid; grid-template-columns:2fr 1fr 1.4fr 1.4fr; gap:12px; align-items:end; padding:14px 16px; margin:0 0 14px; }
.arx-f label{ display:flex; flex-direction:column; gap:4px; min-width:0; } .arx-f label span{ font-size:.78rem; font-weight:700; color:var(--muted, #5b6470); }
.arx-f input, .arx-f select{ width:100%; min-width:0; font:inherit; font-size:.92rem; color:var(--ink); background:var(--surface); border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:9px 10px; min-height:42px; }
.arx-f .arx-n{ grid-column:1 / -1; margin:0; }
.arx-year{ margin:22px 0 0; } .arx-yc{ font-size:.85rem; font-weight:600; }
.arx-az{ list-style:none; margin:0; padding:0; columns:3 260px; column-gap:28px; } .arx-az li{ break-inside:avoid; padding:8px 0; border-top:1px solid var(--line); }
.arx-next{ font-weight:700; }
.arx-year:not(.open) .arx-more{ display:none; } .arx-filtered .arx-year .arx-more:not([hidden]){ display:flex; } .arx-filtered .arx-mb{ display:none; } .arx-mb{ text-align:center; margin:10px 0 0; }
@media (max-width:760px){ .arx-f{ grid-template-columns:1fr 1fr; } .arx-f label:first-child{ grid-column:1 / -1; } }

/* 4.0.69: zgloszenie imprezy */
.evsub-f fieldset{ border:0; margin:0 0 22px; padding:0; min-width:0; } .evsub-f legend{ font-weight:750; font-size:1.02rem; margin:0 0 10px; padding:0; }
.evsub-g{ display:grid; grid-template-columns:1fr 1fr; gap:12px 14px; margin:0 0 12px; } .evsub-w2{ grid-column:1 / -1; }
.evsub-f label{ display:flex; flex-direction:column; gap:4px; min-width:0; } .evsub-f label > span{ font-size:.8rem; font-weight:700; color:var(--muted, #5b6470); } .evsub-full{ margin:0 0 12px; }
.evsub-f input:not([type=checkbox]), .evsub-f select, .evsub-f textarea{ width:100%; min-width:0; font:inherit; font-size:.95rem; color:var(--ink); background:var(--surface); border:1.5px solid var(--line-2); border-radius:var(--r-ctl); padding:9px 10px; min-height:44px; box-sizing:border-box; }
.evsub-f textarea{ min-height:120px; resize:vertical; }
.evsub-f input:focus, .evsub-f select:focus, .evsub-f textarea:focus{ border-color:var(--navy); outline:none; box-shadow:0 0 0 3px var(--navy-bg); }
.evsub-f .inv, .evsub-f input.inv, .evsub-f select.inv, .evsub-f textarea.inv{ border-color:var(--down, #c0392b) !important; } .evsub-ck.inv span{ color:var(--down, #c0392b); }
.evsub-f label.evsub-ck{ flex-direction:row; align-items:flex-start; gap:10px; font-size:.88rem; } .evsub-ck input{ margin-top:3px; width:18px; height:18px; flex:none; } .evsub-ck span{ font-weight:400 !important; font-size:.88rem !important; color:var(--ink) !important; }
.evsub-act{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin:6px 0 0; } .evsub-msg{ margin:8px 0 0; min-height:1.2em; color:var(--down, #c0392b); }
.evsub-err{ color:var(--down, #c0392b) !important; margin:-4px 0 0; }
.evsub-cur{ margin:0 0 14px; border-left:4px solid var(--navy); } .evsub-cur h3{ font-size:.95rem; margin:0 0 4px; }
.evsub-ok{ border-left:4px solid var(--up); } .evsub-ok h2{ margin:0 0 6px; color:var(--up); }
.evsub-steps{ padding-left:18px; margin:0; } .evsub-steps li{ margin:0 0 6px; }
@media (max-width:640px){ .evsub-g{ grid-template-columns:1fr; } }

/* 4.0.71: historia rolnictwa z serwera */
.hix-feats{ display:grid; grid-template-columns:repeat(auto-fill, minmax(250px, 1fr)); gap:12px; }
.hix-feat{ display:flex; flex-direction:column; gap:6px; } .hix-feat small{ color:var(--muted); font-weight:650; font-size:.8rem; } .hix-feat b{ font-size:1.02rem; line-height:1.3; } .hix-feat:hover b{ text-decoration:underline; }
.hix-band{ display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); border:1.5px solid var(--line); border-radius:var(--r-card); background:var(--surface); overflow:hidden; margin:12px 0 0; }
.hix-era{ position:relative; display:flex; flex-direction:column; gap:2px; padding:14px 16px; border-left:1.5px solid var(--line); color:var(--ink); }
.hix-era:first-child{ border-left:0; } .hix-era b{ font-size:.98rem; } .hix-era small{ color:var(--muted); font-size:.78rem; } .hix-c{ margin-top:6px; font-weight:700; font-size:.86rem; color:var(--navy); }
.hix-era:hover{ background:var(--navy-bg); } .hix-era.on{ background:var(--navy); color:#fff; } .hix-era.on small, .hix-era.on .hix-c{ color:rgba(255,255,255,.85); }
.hix-band-s{ margin:6px 0 0; } .hix-band-s .hix-era{ padding:8px 12px 14px; } .hix-band-s .hix-c{ display:none; } .hix-band-s .hix-era small{ font-size:.72rem; }
.hix-mk{ position:absolute; bottom:5px; width:10px; height:10px; margin-left:-5px; border-radius:50%; background:var(--gold, #e9b23f); box-shadow:0 0 0 2px #fff; }
.hix-where{ margin:16px 0 0; }
.hix-tools{ display:flex; flex-wrap:wrap; gap:10px 14px; align-items:center; margin:6px 0 0; } .hix-tools input{ width:min(360px, 100%); padding:10px 14px; border:1.5px solid var(--line-2); border-radius:var(--r-ctl); background:var(--surface); color:var(--ink); font:inherit; min-height:44px; }
.hix-eh{ font-size:1.12rem; margin:26px 0 8px; } .hix-eh .muted{ font-size:.86rem; font-weight:600; }
.hix-list{ list-style:none; padding:0; margin:10px 0 0; display:grid; gap:8px; }
.hix-card a{ display:grid; grid-template-columns:170px minmax(0, 1fr); gap:18px; align-items:start; background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card); padding:14px 18px; color:var(--ink); }
.hix-card a:hover{ border-color:var(--line-2); box-shadow:var(--shadow); } .hix-card a:hover .hix-t{ text-decoration:underline; }
.hix-d{ display:flex; flex-direction:column; gap:2px; } .hix-d b{ font-size:.92rem; } .hix-d small{ color:var(--muted); font-size:.76rem; font-weight:650; text-transform:uppercase; letter-spacing:.05em; }
.hix-w{ display:flex; flex-direction:column; gap:5px; min-width:0; } .hix-t{ font-size:1.02rem; line-height:1.3; } .hix-b{ color:var(--muted); font-size:.9rem; }
.hix-more{ display:none; } .open .hix-more, .hix-searching .hix-more{ display:block; } .hix-card[hidden], .hix-era-sec[hidden]{ display:none !important; }
.hix-searching .hix-mr{ display:none; } .hix-mr{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; margin:10px 0 0; }
.hix-brief p{ max-width:75ch; } .hix-by{ margin:10px 0 0; }
@media (max-width:760px){ .hix-band{ grid-template-columns:1fr 1fr; } .hix-era{ border-left:0; border-top:1.5px solid var(--line); } .hix-era:nth-child(-n+2){ border-top:0; } .hix-era:nth-child(even){ border-left:1.5px solid var(--line); }
  .hix-band-s{ grid-template-columns:repeat(5, minmax(0, 1fr)); } .hix-band-s .hix-era{ border-top:0; border-left:1.5px solid var(--line); padding:8px 6px 14px; } .hix-band-s .hix-era:first-child{ border-left:0; } .hix-band-s .hix-era small{ display:none; } .hix-band-s .hix-era b{ font-size:.72rem; }
  .hix-card a{ grid-template-columns:1fr; gap:6px; padding:12px 14px; } .hix-d{ flex-direction:row; gap:10px; align-items:baseline; } }

/* 4.0.72: ilustracje historii */
.hix-fig{ margin:0 0 22px; } .hix-fig img{ display:block; width:100%; height:auto; max-height:560px; object-fit:contain; background:var(--surface-2, #eef1f4); border-radius:var(--r-card, 12px); }
.hix-fig figcaption{ font-size:.84rem; color:var(--muted); margin:8px 2px 0; line-height:1.45; } .hix-cr{ white-space:normal; } .hix-cr a{ color:inherit; text-decoration:underline; }
.hix-th{ display:block; margin:-4px -4px 8px; } .hix-th img{ display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; border-radius:8px; background:var(--surface-2, #eef1f4); }

/* 4.0.73: okruszki w ciemnym naglowku (historia, imprezy) - margines nie wypycha juz tla w dol */
.ev-hero{ display:flow-root; } .ev-hero > .wrap > .crumbs:first-child{ margin-top:20px; }

/* 4.0.74: raporty (ksiega znaku: granat #203766, zloto #F0B945, Open Sans) */
.rpt-hero .ev-herogrid{ grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); align-items:center; }
.rpt-mini{ display:flex; flex-direction:column; gap:10px; background:#162E5F; border:1px solid rgba(255,255,255,.14); border-top:4px solid var(--gold); border-radius:var(--r-card, 12px); padding:22px 24px; color:#fff; text-decoration:none; box-shadow:0 18px 40px rgba(0,0,0,.25); }
.rpt-mini b{ font-size:1.35rem; line-height:1.2; color:#fff; } .rpt-mini .rpt-period{ color:var(--gold); font-weight:700; } .rpt-mini .btn{ align-self:flex-start; margin-top:4px; }
.rpt-mk{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; } .rpt-mk span{ font-weight:800; font-size:1.05rem; display:flex; flex-direction:column; } .rpt-mk small{ font-size:.7rem; font-weight:700; color:rgba(255,255,255,.7); text-transform:uppercase; letter-spacing:.04em; }
.rpt-ct{ display:flex; justify-content:space-between; align-items:center; gap:12px; } .rpt-logo{ display:inline-flex; align-items:center; gap:8px; } .rpt-logo img{ display:block; height:auto; }
.rpt-kind{ font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; color:var(--gold); }
.rpt-mh{ font-size:1rem; margin:22px 0 8px; color:var(--muted); text-transform:uppercase; letter-spacing:.05em; }
.rpt-list{ list-style:none; margin:0; padding:0; display:grid; gap:8px; } .rpt-row[hidden], .rpt-list[hidden], .rpt-mh[hidden]{ display:none !important; }
.rpt-row a{ display:grid; grid-template-columns:150px minmax(0,1fr) 120px; gap:16px; align-items:center; background:var(--surface); border:1.5px solid var(--line); border-left:4px solid var(--navy); border-radius:var(--r-card, 12px); padding:14px 18px; color:var(--ink); }
.rpt-row[data-t="monthly"] a{ border-left-color:var(--gold); } .rpt-row[data-t="group"] a{ border-left-color:var(--amber, #CE9338); }
.rpt-row a:hover{ box-shadow:var(--shadow); } .rpt-row a:hover b{ text-decoration:underline; }
.rpt-rd{ display:flex; flex-direction:column; } .rpt-rd small{ color:var(--muted); font-size:.75rem; font-weight:700; } .rpt-rw{ display:flex; flex-direction:column; gap:3px; min-width:0; }
.rpt-rk{ text-align:right; font-weight:800; font-size:1.05rem; display:flex; flex-direction:column; } .rpt-rk small{ font-size:.72rem; font-weight:600; color:var(--muted); }
.rpt-old{ margin:0; padding-left:18px; } .rpt-old li{ margin:4px 0; }
.rpt-wrap{ max-width:900px; } .rpt-bar{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 16px; }
.rpt{ background:#fff; color:#1B2A44; border:1px solid var(--line); border-radius:var(--r-card, 12px); overflow:hidden; box-shadow:var(--shadow); }
.rpt-cover{ background:#203766; color:#fff; padding:28px 36px 30px; border-bottom:6px solid #F0B945; }
.rpt-cover h1{ color:#fff; font-size:2.1rem; line-height:1.15; margin:26px 0 8px; } .rpt-cover .rpt-period{ color:#F0B945; font-weight:800; font-size:1.1rem; margin:0; } .rpt-pub{ color:rgba(255,255,255,.75); font-size:.85rem; margin:10px 0 0; }
.rpt-kpi{ display:grid; grid-template-columns:repeat(auto-fit, minmax(160px,1fr)); margin:0; border-bottom:1px solid #E3E7EF; }
.rpt-kpi div{ padding:16px 20px; border-right:1px solid #E3E7EF; } .rpt-kpi dt{ font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; color:#5B6470; } .rpt-kpi dd{ margin:4px 0 0; font-size:1.45rem; font-weight:800; color:#203766; } .rpt-kpi dd.rpt-kn{ font-size:.8rem; font-weight:500; color:#5B6470; }
.rpt-sec{ padding:22px 36px 6px; } .rpt-sec h2{ display:flex; align-items:baseline; gap:12px; font-size:1.25rem; color:#203766; margin:0 0 10px; padding-top:14px; border-top:1px solid #E3E7EF; } .rpt-sec:first-of-type h2{ border-top:0; }
.rpt-sec h2 span{ font-size:.85rem; font-weight:800; color:#CE9338; letter-spacing:.06em; } .rpt-sum p{ font-size:1.02rem; line-height:1.65; } .rpt-intro{ color:#5B6470; font-size:.9rem; }
.rpt-fig{ margin:8px 0 14px; } .rpt-fig svg{ display:block; width:100%; height:auto; } .rpt-fig figcaption{ font-size:.78rem; color:#5B6470; margin-top:4px; }
.rpt-bars .rpt-lb, .rpt-spark .rpt-lb{ font:500 12px var(--font, 'Open Sans', sans-serif); fill:#5B6470; } .rpt-vl{ font:700 12px var(--font, 'Open Sans', sans-serif); fill:#1B2A44; }
.rpt-up{ fill:#203766; } .rpt-dn{ fill:#F0B945; } .rpt-ax{ stroke:#C9D0DC; stroke-width:1; } .rpt-line{ fill:none; stroke:#203766; stroke-width:2.5; } .rpt-dot{ fill:#F0B945; stroke:#203766; stroke-width:2; }
.rpt-t td.up{ color:#1E6B3A; } .rpt-t td.dn{ color:#A23B2A; } .rpt .tablewrap{ margin:0 0 12px; }
.rpt-notes p{ font-size:.88rem; color:#3A4556; } .rpt-foot{ display:flex; justify-content:space-between; align-items:center; gap:14px; flex-wrap:wrap; background:#203766; color:rgba(255,255,255,.8); padding:12px 36px; font-size:.78rem; margin-top:18px; }
.rpt-foot .rpt-logo img:first-child{ height:22px; width:auto; } .rpt-foot .rpt-logo img:last-child{ height:14px; width:auto; }
:root[data-theme="dark"] .rpt{ border-color:#2A3A5E; }
@media (max-width:760px){ .rpt-row a{ grid-template-columns:1fr; gap:6px; } .rpt-rk{ text-align:left; flex-direction:row; gap:6px; align-items:baseline; } .rpt-cover, .rpt-sec, .rpt-foot{ padding-left:18px; padding-right:18px; } .rpt-cover h1{ font-size:1.6rem; } .rpt-hero .ev-herogrid{ grid-template-columns:1fr; } }
@media print{ @page{ size:A4; margin:12mm; } .rpt-noprint, .crumbs, .ad-slot, ins.adsbygoogle, .ad-lbl{ display:none !important; } .rpt-wrap{ max-width:none; padding:0; } .rpt{ border:0; box-shadow:none; border-radius:0; }
  .rpt-cover, .rpt-foot, .rpt-up, .rpt-dn, .rpt-dot{ -webkit-print-color-adjust:exact; print-color-adjust:exact; } .rpt-fig, .rpt-kpi, .rpt-cover, .rpt-t tr{ break-inside:avoid; } .rpt-sec h2, .rpt-intro{ break-after:avoid; } .rpt a{ color:inherit; text-decoration:none; } .rpt .tablewrap{ overflow:visible !important; } .rpt-t{ width:100%; font-size:8.5pt; } .rpt-t th, .rpt-t td{ padding:4px 6px !important; white-space:normal !important; } .rpt-sec{ padding:14px 0 4px; } .rpt-cover, .rpt-foot{ padding-left:18px; padding-right:18px; } }

/* 4.0.75: ceny srodkow produkcji */
.ip-take{ background:var(--surface); border:1.5px solid var(--line); border-left:4px solid var(--gold); border-radius:var(--r-card, 12px); padding:18px 22px 10px; margin:18px 0 22px; }
.ip-take h2{ font-size:1.1rem; margin:0 0 8px; } .ip-take ul{ margin:0; padding-left:18px; } .ip-take li{ margin:0 0 8px; line-height:1.55; }
.ip-world{ margin:0 0 22px; } .ip-wh{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; flex-wrap:wrap; } .ip-wh h2{ font-size:1.15rem; margin:0 0 10px; }
.ip-wl{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:10px; }
.ip-wl li{ background:var(--surface); border:1.5px solid var(--line); border-radius:var(--r-card, 12px); padding:12px 14px; display:flex; flex-direction:column; gap:2px; } .ip-wl b{ font-size:1.25rem; color:var(--navy); } .ip-wn{ font-size:.8rem; font-weight:700; color:var(--muted); }
.ip-wl .up{ color:var(--up); font-weight:700; } .ip-wl .down{ color:var(--down); font-weight:700; }
.ip-rel{ display:grid; grid-template-columns:repeat(auto-fill, minmax(220px, 1fr)); gap:12px; } .ip-rel .card{ display:flex; flex-direction:column; gap:4px; color:inherit; } .ip-rel .card:hover b{ text-decoration:underline; }
@media (max-width:760px){ .ip-wl{ grid-template-columns:1fr 1fr; } }
/* 4.0.77: strona alertow */
.alp-head{ align-items:flex-end; gap:20px; }
.alp-cta{ display:flex; gap:8px; flex-wrap:wrap; }
.alp-kpi{ margin:18px 0 28px; }
.alp-live{ scroll-margin-top:84px; }
.alp-wait{ min-height:420px; padding:24px; }
.alp-wait h2{ font-size:1.2rem; }
.alp-mine-h{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin:0 0 12px; }
.alp-mine-h h2{ font-size:1.3rem; margin:0; }
.alp-mine-h h2 .muted{ font-weight:600; font-size:1rem; }
.alp-types{ display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:14px; margin-top:14px; }
.alp-types .card{ display:flex; flex-direction:column; gap:6px; align-items:flex-start; }
.alp-types .card h3{ margin:0; font-size:1.05rem; }
.alp-types .card p{ margin:0; }
.alp-types .card .btn{ margin-top:auto; }
.alp-ex{ background:var(--surface-2); border-radius:8px; padding:8px 10px; width:100%; }
.alp-ex .xs{ display:block; text-transform:uppercase; letter-spacing:.05em; font-weight:700; }
.alp-ex a{ color:inherit; text-decoration:underline; }
#moves .al-idea .up, #moves .al-idea .down{ text-align:right; font-weight:700; }
.alp-chips, .al-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.alp-chips .chip{ text-decoration:none; }
.alp-chips .chip span{ color:var(--muted); font-weight:600; margin-left:4px; }
.al-chips{ margin:10px 0 2px; } .al-chips .chip{ padding:4px 10px; font-size:.8rem; }
.alp-mailrow{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; margin-top:28px; align-items:start; }
.alp-mailrow h3{ margin:0 0 10px; }
.alp-list{ margin:0; padding-left:18px; } .alp-list li{ margin:0 0 8px; font-size:.92rem; }
@media (max-width:860px){ .alp-types{ grid-template-columns:1fr 1fr; } .alp-mailrow{ grid-template-columns:1fr; } .alp-kpi{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .alp-types{ grid-template-columns:1fr; } .alp-head{ align-items:flex-start; } .alp-wait{ min-height:300px; } }
