:root {
  --dwg-bg: #f6f7f8;
  --dwg-surface: #ffffff;
  --dwg-soft: #eef1f4;
  --dwg-text: #15171a;
  --dwg-muted: #66707b;
  --dwg-border: #d8dde3;
  --dwg-border-strong: #bdc5cf;
  --dwg-navy: #172236;
  --dwg-blue: #2d4f73;
  --dwg-accent: #8a5a2b;
  --dwg-radius: 14px;
  --dwg-shadow: 0 14px 34px rgba(17, 24, 39, 0.07);
  --dwg-container: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.dwg-site {
  margin: 0;
  background: var(--dwg-bg);
  color: var(--dwg-text);
  font-family: "Albert Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.58;
  text-rendering: optimizeLegibility;
}
a { color: inherit; text-decoration-thickness: 0.08em; text-underline-offset: 0.18em; }
a:hover { color: var(--dwg-blue); }
img { max-width: 100%; height: auto; display: block; }
.dwg-container { width: min(var(--dwg-container), calc(100% - 40px)); margin-inline: auto; }
.dwg-skip-link { position: absolute; left: -999px; top: 8px; background: #fff; padding: 10px 14px; z-index: 1000; }
.dwg-skip-link:focus { left: 8px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.dwg-header { background: rgba(255,255,255,0.94); border-bottom: 1px solid var(--dwg-border); position: sticky; top: 0; z-index: 100; backdrop-filter: blur(14px); }
.dwg-header__inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.dwg-brand { display: flex; align-items: center; gap: 16px; min-width: 0; }
.dwg-brand__logo, .custom-logo-link { display: block; line-height: 0; }
/* Logo sizing */
.dwg-brand__logo,
.custom-logo-link {
  display: block;
  line-height: 0;
  flex: 0 0 auto;
}

.dwg-brand__logo img,
.custom-logo {
  width: auto;
  height: 64px;
  max-width: 225px;
  max-height: 64px;
  object-fit: contain;
  object-position: left center;
}

@media (max-width: 980px) {
  .dwg-brand__logo img,
  .custom-logo {
    width: auto;
    height: 56px;
    max-width: 194px;
    max-height: 56px;
  }
}

@media (max-width: 640px) {
  .dwg-brand__logo img,
  .custom-logo {
    width: auto;
    height: 50px;
    max-width: 170px;
    max-height: 50px;
  }
}

@media (max-width: 420px) {
  .dwg-brand__logo img,
  .custom-logo {
    width: auto;
    height: 46px;
    max-width: 152px;
    max-height: 46px;
  }
}

@media (max-width: 360px) {
  .dwg-brand__logo img,
  .custom-logo {
    width: auto;
    height: 42px;
    max-width: 134px;
    max-height: 42px;
  }
}
.dwg-brand__tagline { margin: 0; color: var(--dwg-muted); font-size: 0.76rem; line-height: 1.2; text-transform: uppercase; letter-spacing: 0.14em; font-weight: 700; }
.dwg-nav { display: flex; align-items: center; justify-content: flex-end; }
.dwg-menu, .dwg-menu ul { list-style: none; margin: 0; padding: 0; }
.dwg-menu { display: flex; align-items: center; gap: 2px; }
.dwg-menu > li { position: relative; }
.dwg-menu a { display: block; padding: 12px 13px; color: var(--dwg-navy); text-decoration: none; border-radius: 999px; font-size: 0.93rem; font-weight: 700; }
.dwg-menu a:hover, .dwg-menu .current-menu-item > a { background: var(--dwg-soft); color: var(--dwg-navy); }
.dwg-menu .sub-menu { display: none; position: absolute; top: 100%; left: 0; min-width: 300px; background: #fff; border: 1px solid var(--dwg-border); box-shadow: var(--dwg-shadow); border-radius: 12px; padding: 8px; }
.dwg-menu li:hover > .sub-menu { display: block; }
.dwg-menu-toggle { display: none; align-items: center; gap: 8px; border: 1px solid var(--dwg-border); background: #fff; border-radius: 999px; padding: 9px 12px; color: var(--dwg-navy); font-weight: 800; }
.dwg-menu-toggle span { display: block; width: 16px; height: 2px; background: currentColor; margin: 3px 0; }
.dwg-menu-toggle em { font-style: normal; }
.dwg-main { min-height: 65vh; }
.dwg-home-hero, .dwg-archive-head { background: linear-gradient(180deg, #fff 0%, #f3f5f7 100%); border-bottom: 1px solid var(--dwg-border); }
.dwg-home-hero__inner { padding: 64px 0 54px; display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 40px; align-items: end; }
.dwg-kicker { color: var(--dwg-accent); text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.78rem; font-weight: 800; margin-bottom: 12px; }
.dwg-home-hero h1, .dwg-archive-head h1 { font-family: "Newsreader", Georgia, serif; font-size: clamp(2.3rem, 5vw, 5.2rem); line-height: 0.95; letter-spacing: -0.055em; margin: 0; color: var(--dwg-navy); max-width: 920px; }
.dwg-home-hero p, .dwg-archive-head p { color: var(--dwg-muted); font-size: clamp(1.05rem, 1.4vw, 1.28rem); max-width: 720px; margin: 22px 0 0; }
.dwg-hero-note { background: var(--dwg-navy); color: #fff; border-radius: var(--dwg-radius); padding: 22px; box-shadow: var(--dwg-shadow); }
.dwg-hero-note strong { display: block; margin-bottom: 8px; font-size: 1.03rem; }
.dwg-hero-note span { color: rgba(255,255,255,0.78); font-size: 0.94rem; }
.dwg-archive-head .dwg-container { padding: 52px 0 42px; }
.dwg-section { padding: 44px 0; }
.dwg-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 22px; border-bottom: 1px solid var(--dwg-border); padding-bottom: 14px; }
.dwg-section-heading span { color: var(--dwg-accent); text-transform: uppercase; letter-spacing: 0.14em; font-size: 0.78rem; font-weight: 800; }
.dwg-section-heading h2 { font-family: "Newsreader", Georgia, serif; font-size: clamp(1.7rem, 3vw, 2.7rem); line-height: 1; letter-spacing: -0.035em; margin: 0; color: var(--dwg-navy); }
.dwg-featured { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(360px, 1.05fr); gap: 0; background: var(--dwg-surface); border: 1px solid var(--dwg-border); border-radius: var(--dwg-radius); overflow: hidden; box-shadow: var(--dwg-shadow); }
.dwg-featured__content { padding: clamp(24px, 4vw, 42px); display: flex; flex-direction: column; justify-content: center; }
.dwg-featured__title { font-family: "Newsreader", Georgia, serif; font-size: clamp(2rem, 3.8vw, 4rem); line-height: 0.98; letter-spacing: -0.045em; margin: 14px 0 16px; }
.dwg-featured__title a, .dwg-card__title a { text-decoration: none; }
.dwg-featured__excerpt, .dwg-card__excerpt { text-decoration: none; }
.dwg-featured__excerpt:hover, .dwg-card__excerpt:hover { color: var(--dwg-navy); }
.dwg-featured__excerpt { color: var(--dwg-muted); font-size: 1.05rem; margin: 0 0 22px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.dwg-featured__image { min-height: 100%; background: var(--dwg-soft); }
.dwg-featured__image img { width: 100%; height: 100%; object-fit: cover; aspect-ratio: 16 / 10; }
.dwg-card__labels { display: flex; flex-wrap: wrap; gap: 7px; }
.dwg-label { display: inline-flex; align-items: center; gap: 5px; width: fit-content; color: var(--dwg-blue); background: #eef3f7; border: 1px solid #dce5ed; border-radius: 999px; padding: 5px 9px; font-size: 0.7rem; line-height: 1; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; text-decoration: none; }

.dwg-label__logo { width: 14px; height: 14px; flex: 0 0 auto; object-fit: contain; border-radius: 2px; }
.dwg-label--type { color: #fff; background: var(--dwg-navy); border-color: var(--dwg-navy); }
.dwg-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
/* Opakowanie karty w bloku "Pokaz wszystkie linki" (podsumowanie dnia),
   uzywane do filtrowania po kategorii - display:contents, zeby samo
   opakowanie nie liczylo sie jako element siatki (kartaka pozostaje
   bezposrednim elementem .dwg-grid pod wzgledem ukladu); JS przelacza na
   display:none, zeby ukryc odfiltrowana karte. */
.dwg-lap-filter-item { display: contents; }
.dwg-lap-filter-item[hidden] { display: none; }
.dwg-card { min-width: 0; background: var(--dwg-surface); border: 1px solid var(--dwg-border); border-radius: var(--dwg-radius); overflow: hidden; display: flex; flex-direction: column; min-height: 100%; box-shadow: 0 8px 22px rgba(17, 24, 39, 0.045); }
.dwg-card__image { background: var(--dwg-soft); }
.dwg-card__image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.dwg-card__body { padding: 18px; display: flex; flex-direction: column; flex: 1; min-height: 270px; }
.dwg-card__title { font-family: "Newsreader", Georgia, serif; font-size: clamp(1.22rem, 1.45vw, 1.55rem); line-height: 1.08; letter-spacing: -0.025em; margin: 12px 0 10px; min-height: 3.25em; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.dwg-card__excerpt { color: var(--dwg-muted); margin: 0 0 16px; font-size: 0.95rem; line-height: 1.5; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; min-height: 4.5em; }
.dwg-meta { margin-top: auto; display: flex; flex-wrap: wrap; gap: 8px 12px; color: var(--dwg-muted); font-size: 0.78rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; }
.dwg-meta span:not(:last-child)::after, .dwg-meta time::after { content: ""; }
.dwg-meta a { color: inherit; text-decoration: none; }
.dwg-meta a:hover { color: var(--dwg-navy); }
.dwg-method__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.dwg-method article { background: #fff; border: 1px solid var(--dwg-border); border-radius: var(--dwg-radius); padding: 22px; }
.dwg-method strong { display: inline-grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--dwg-navy); color: #fff; margin-bottom: 14px; }
.dwg-method h3 { margin: 0 0 6px; font-family: "Newsreader", Georgia, serif; font-size: 1.55rem; letter-spacing: -0.025em; }
.dwg-method p { margin: 0; color: var(--dwg-muted); }
.dwg-article__header { padding: 54px 0 28px; max-width: 920px; }
.dwg-article__header h1 { font-family: "Newsreader", Georgia, serif; font-size: clamp(2.2rem, 5vw, 5rem); line-height: 0.98; letter-spacing: -0.055em; margin: 16px 0 18px; color: var(--dwg-navy); }
.dwg-article__lead { font-size: clamp(1.08rem, 1.6vw, 1.34rem); color: var(--dwg-muted); max-width: 790px; margin: 0 0 18px; }
.dwg-article__image { margin-bottom: 36px; }
.dwg-article__image img { width: 100%; border-radius: var(--dwg-radius); aspect-ratio: 16 / 8.5; object-fit: cover; }
.dwg-article__image figcaption { color: var(--dwg-muted); font-size: 0.85rem; margin-top: 8px; }
.dwg-article__layout { display: grid; grid-template-columns: 220px minmax(0, 760px); gap: 58px; align-items: start; padding-bottom: 58px; }
.dwg-article__aside { position: sticky; top: 108px; color: var(--dwg-muted); border-top: 2px solid var(--dwg-navy); padding-top: 14px; font-size: 0.9rem; }
.dwg-article__aside strong, .dwg-article__aside span { display: block; margin-bottom: 8px; }
.dwg-article__aside strong { color: var(--dwg-navy); }
.dwg-content { font-size: 1.08rem; line-height: 1.76; }
.dwg-content > *:first-child { margin-top: 0; }
.dwg-content h2, .dwg-content h3, .dwg-page__header h1 { font-family: "Newsreader", Georgia, serif; color: var(--dwg-navy); letter-spacing: -0.03em; line-height: 1.08; }
.dwg-content h2 { font-size: 2rem; margin-top: 2em; }
.dwg-content h3 { font-size: 1.55rem; margin-top: 1.65em; }
.dwg-content p { margin: 0 0 1.18em; }
.dwg-content a { color: var(--dwg-blue); }
.dwg-content blockquote { margin: 1.6em 0; padding: 0.6em 0 0.6em 1.2em; border-left: 4px solid var(--dwg-accent); color: var(--dwg-navy); font-family: "Newsreader", Georgia, serif; font-size: 1.25rem; line-height: 1.42; }
.dwg-content img { border-radius: 10px; }
.dwg-content table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.dwg-content th, .dwg-content td { border: 1px solid var(--dwg-border); padding: 10px; text-align: left; }
.dwg-source-note { margin: 38px 0 0; padding: 20px; background: #fff; border: 1px solid var(--dwg-border); border-radius: var(--dwg-radius); }
.dwg-source-note strong { display: block; margin-bottom: 6px; color: var(--dwg-navy); }
.dwg-tags a { display: inline-block; margin: 6px 6px 0 0; padding: 5px 9px; border: 1px solid var(--dwg-border); border-radius: 999px; text-decoration: none; font-size: 0.84rem; }
.dwg-page { padding: 56px 0 70px; }
.dwg-page__header { max-width: 860px; margin-bottom: 28px; }
.dwg-page__header h1 { font-size: clamp(2.2rem, 4vw, 4.2rem); margin: 0; }
.dwg-content--page { max-width: 780px; }
.dwg-search { display: flex; gap: 10px; max-width: 520px; margin-top: 22px; }
.dwg-search input { flex: 1; border: 1px solid var(--dwg-border); border-radius: 999px; padding: 12px 15px; font: inherit; background: #fff; }
.dwg-search button { border: 0; border-radius: 999px; padding: 12px 16px; background: var(--dwg-navy); color: #fff; font-weight: 800; cursor: pointer; }
.navigation.pagination { margin-top: 34px; }
.nav-links { display: flex; gap: 8px; flex-wrap: wrap; }
.page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; height: 38px; border: 1px solid var(--dwg-border); border-radius: 999px; background: #fff; text-decoration: none; font-weight: 800; }
.page-numbers.current { background: var(--dwg-navy); color: #fff; border-color: var(--dwg-navy); }
.dwg-empty { text-align: center; }
.dwg-footer { background: var(--dwg-navy); color: #fff; margin-top: 40px; }
.dwg-footer__inner { display: flex; align-items: flex-start; justify-content: space-between; gap: 30px; padding: 36px 0; }
.dwg-footer p { margin: 6px 0 0; color: rgba(255,255,255,0.68); }
.dwg-footer-menu { list-style: none; padding: 0; margin: 0; display: flex; gap: 14px; flex-wrap: wrap; }
.dwg-footer-menu a { color: rgba(255,255,255,0.84); text-decoration: none; }
.dwg-footer-menu a:hover { color: #fff; }
.dwg-footer__bottom { border-top: 1px solid rgba(255,255,255,0.14); padding: 14px 0 22px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 18px; color: rgba(255,255,255,0.58); font-size: 0.86rem; }
.dwg-footer__bottom > :first-child { justify-self: start; }
.dwg-footer__bottom > :last-child { justify-self: end; }

.dwg-uv-counter {
  justify-self: center;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 26px;
  padding: 0 10px;
  gap: 5px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 6px;
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}

.dwg-uv-counter svg {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (max-width: 980px) {
  .dwg-header__inner { min-height: 74px; }
  .dwg-brand__tagline { display: none; }
  .dwg-menu-toggle { display: inline-flex; }
  .dwg-nav { position: fixed; inset: 74px 0 auto 0; display: none; background: #fff; border-bottom: 1px solid var(--dwg-border); box-shadow: var(--dwg-shadow); }
  .dwg-nav.is-open { display: block; }
  .dwg-menu { width: min(var(--dwg-container), calc(100% - 40px)); margin: 0 auto; padding: 16px 0 20px; display: grid; gap: 4px; }
  .dwg-menu a { border-radius: 10px; padding: 13px 10px; }
  .dwg-menu .sub-menu { position: static; display: block; box-shadow: none; border: 0; padding: 0 0 0 14px; }
  .dwg-home-hero__inner { grid-template-columns: 1fr; padding: 42px 0; }
  .dwg-hero-note { max-width: 620px; }
  .dwg-featured { grid-template-columns: 1fr; }
  .dwg-featured__image { order: -1; }
  .dwg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dwg-method__grid { grid-template-columns: 1fr; }
  .dwg-article__layout { grid-template-columns: 1fr; gap: 22px; }
  .dwg-article__aside { position: static; display: flex; flex-wrap: wrap; gap: 6px 16px; }
  .dwg-article__aside strong, .dwg-article__aside span { margin-bottom: 0; }
}
@media (max-width: 640px) {
  .dwg-container { width: min(100% - 28px, var(--dwg-container)); }
  .dwg-home-hero h1, .dwg-archive-head h1, .dwg-article__header h1 { letter-spacing: -0.045em; }
  .dwg-home-hero__inner { padding: 34px 0; }
  .dwg-section { padding: 30px 0; }
  .dwg-section-heading { align-items: flex-start; flex-direction: column; gap: 4px; }
  .dwg-grid { grid-template-columns: 1fr; gap: 14px; }
  .dwg-card { display: grid; grid-template-columns: 108px minmax(0, 1fr); min-height: 0; }
  .dwg-card--text-only { grid-template-columns: minmax(0, 1fr); }
  .dwg-card__image img { width: 108px; height: 100%; min-height: 132px; aspect-ratio: auto; }
  .dwg-card__body { padding: 13px; min-height: 0; }
  .dwg-card--text-only .dwg-card__body { grid-column: 1 / -1; }
  .dwg-card__labels { gap: 5px; }
  .dwg-label { font-size: 0.62rem; padding: 4px 7px; }
  .dwg-card__title { font-size: 1.08rem; min-height: 0; -webkit-line-clamp: 3; margin: 9px 0 7px; }
  .dwg-card__excerpt { display: none; }
  .dwg-meta { font-size: 0.67rem; gap: 6px; }
  .dwg-featured__content { padding: 20px; }
  .dwg-featured__title { font-size: 2rem; }
  .dwg-article__header { padding-top: 36px; }
  .dwg-article__image img { aspect-ratio: 16 / 10; }
  .dwg-content { font-size: 1rem; line-height: 1.68; }
  .dwg-content h2 { font-size: 1.72rem; }
  .dwg-search { flex-direction: column; }
  .dwg-footer__inner { flex-direction: column; }
  .dwg-footer__bottom { display: flex; flex-direction: column; align-items: center; text-align: center; }
}

/* v1.1 refinements */
.dwg-hero-note ol {
  margin: 10px 0 0;
  padding-left: 20px;
  color: rgba(255,255,255,0.78);
  font-size: 0.94rem;
  line-height: 1.55;
}
.dwg-hero-note li + li { margin-top: 4px; }
.dwg-card__body > .dwg-label,
.dwg-featured__content > .dwg-label,
.dwg-article__header > .dwg-label {
  margin-bottom: 2px;
}
.dwg-pagination { margin-top: 34px; }
.dwg-pagination .page-numbers {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.dwg-pagination .page-numbers li { margin: 0; }
.dwg-pagination .page-numbers li .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  height: 38px;
  border: 1px solid var(--dwg-border);
  border-radius: 999px;
  background: #fff;
  text-decoration: none;
  font-weight: 800;
  padding: 0 11px;
  transition: background-color .15s ease, color .15s ease, border-color .15s ease, transform .1s ease;
}
.dwg-pagination .page-numbers li a.page-numbers:hover,
.dwg-pagination .page-numbers li a.page-numbers:focus-visible {
  background: var(--dwg-navy);
  color: #fff;
  border-color: var(--dwg-navy);
  outline: none;
}
.dwg-pagination .page-numbers li a.page-numbers:active {
  background: var(--dwg-navy);
  color: #fff;
  border-color: var(--dwg-navy);
  transform: scale(0.92);
}
.dwg-pagination .page-numbers li span.page-numbers.current {
  background: var(--dwg-navy);
  color: #fff;
  border-color: var(--dwg-navy);
}
@media (max-width: 640px) {
  .dwg-hero-note ol { font-size: 0.88rem; }
}

/* v1.2 single article layout */
.dwg-article__layout {
  grid-template-columns: minmax(0, 760px) 320px;
  gap: 54px;
}
.dwg-article__sidebar {
  position: sticky;
  top: 108px;
  align-self: start;
  display: grid;
  gap: 20px;
}
.dwg-sidebar-block {
  background: var(--dwg-surface);
  border: 1px solid var(--dwg-border);
  border-radius: var(--dwg-radius);
  padding: 18px;
  box-shadow: 0 8px 22px rgba(17, 24, 39, 0.045);
}
.dwg-sidebar-block h2 {
  margin: 0 0 14px;
  font-family: "Newsreader", Georgia, serif;
  font-size: 1.45rem;
  line-height: 1.05;
  letter-spacing: -0.025em;
  color: var(--dwg-navy);
}
.dwg-sidebar-list {
  display: grid;
  gap: 14px;
}
.dwg-sidebar-post {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  padding-top: 14px;
  border-top: 1px solid var(--dwg-border);
}
.dwg-sidebar-post:first-child {
  padding-top: 0;
  border-top: 0;
}
.dwg-sidebar-post__image img {
  width: 74px;
  height: 74px;
  object-fit: cover;
  border-radius: 10px;
  background: var(--dwg-soft);
}
.dwg-sidebar-post__body {
  min-width: 0;
}
.dwg-sidebar-post__category {
  display: inline-block;
  margin-bottom: 5px;
  color: var(--dwg-blue);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.64rem;
  line-height: 1.2;
  font-weight: 800;
}
.dwg-sidebar-post h3 {
  margin: 0 0 5px;
  font-family: "Newsreader", Georgia, serif;
  font-size: 1rem;
  line-height: 1.16;
  letter-spacing: -0.015em;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.dwg-sidebar-post h3 a {
  text-decoration: none;
}
.dwg-sidebar-post time,
.dwg-sidebar-empty {
  color: var(--dwg-muted);
  font-size: 0.78rem;
  font-weight: 700;
}
.dwg-comments-area {
  margin-top: 42px;
  padding-top: 30px;
  border-top: 1px solid var(--dwg-border);
}
.dwg-comments {
  background: var(--dwg-surface);
  border: 1px solid var(--dwg-border);
  border-radius: var(--dwg-radius);
  padding: clamp(18px, 3vw, 28px);
}
.dwg-comments__title,
.comment-reply-title {
  margin: 0 0 18px;
  font-family: "Newsreader", Georgia, serif;
  font-size: clamp(1.45rem, 2.5vw, 2.2rem);
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--dwg-navy);
}
.dwg-comment-list {
  margin: 0 0 28px;
  padding-left: 0;
  list-style: none;
}
.dwg-comment-list li + li {
  margin-top: 18px;
}
.comment-body {
  padding: 16px;
  border: 1px solid var(--dwg-border);
  border-radius: 12px;
  background: #fff;
}
.comment-meta,
.comment-metadata {
  color: var(--dwg-muted);
  font-size: 0.86rem;
}
.comment-form label {
  display: block;
  margin: 0 0 6px;
  color: var(--dwg-navy);
  font-weight: 800;
}
.comment-form textarea,
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"] {
  width: 100%;
  border: 1px solid var(--dwg-border);
  border-radius: 12px;
  padding: 12px 13px;
  font: inherit;
  background: #fff;
}
.comment-form input[type="submit"] {
  border: 0;
  border-radius: 999px;
  padding: 12px 18px;
  background: var(--dwg-navy);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}

/* Contact Form 7 - dopasowanie do wygladu motywu */
.wpcf7-form {
  max-width: 640px;
  margin: 0 auto;
}
.wpcf7-form p {
  margin: 0 0 18px;
}
.wpcf7-form label {
  display: block;
  margin: 0 0 6px;
  color: var(--dwg-navy);
  font-weight: 800;
}
.wpcf7-form-control-wrap {
  display: block;
}
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form input[type="url"],
.wpcf7-form input[type="number"],
.wpcf7-form input[type="date"],
.wpcf7-form textarea,
.wpcf7-form select {
  width: 100%;
  border: 1px solid var(--dwg-border);
  border-radius: 12px;
  padding: 12px 13px;
  font: inherit;
  background: var(--dwg-surface);
  color: var(--dwg-text);
  transition: border-color .18s ease, outline-color .18s ease;
}
.wpcf7-form textarea {
  min-height: 140px;
  resize: vertical;
}
.wpcf7-form input::placeholder,
.wpcf7-form textarea::placeholder {
  color: var(--dwg-muted);
  opacity: 1;
}
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form input[type="url"]:focus,
.wpcf7-form input[type="number"]:focus,
.wpcf7-form input[type="date"]:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus {
  outline: 2px solid rgba(138, 90, 43, 0.28);
  outline-offset: 2px;
  border-color: var(--dwg-accent);
}
.wpcf7-form input[type="submit"],
.wpcf7-form .wpcf7-submit {
  border: 0;
  border-radius: 999px;
  padding: 12px 22px;
  background: var(--dwg-navy);
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  transition: transform .18s ease, opacity .18s ease;
}
.wpcf7-form input[type="submit"]:hover,
.wpcf7-form .wpcf7-submit:hover {
  opacity: .92;
  transform: translateY(-1px);
}
.wpcf7-form input[type="submit"]:disabled {
  opacity: .6;
  cursor: wait;
}
.wpcf7-acceptance .wpcf7-list-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: .92rem;
  color: var(--dwg-muted);
}
.wpcf7-acceptance input[type="checkbox"] {
  margin-top: 3px;
  accent-color: var(--dwg-navy);
}
.wpcf7-not-valid-tip {
  display: block;
  margin-top: 6px;
  color: #c0392b;
  font-size: .85rem;
  font-weight: 700;
}
.wpcf7-form-control.wpcf7-not-valid {
  border-color: #c0392b;
}
.wpcf7-response-output {
  margin: 18px 0 0;
  padding: 12px 16px;
  border-radius: 12px;
  border: 1px solid var(--dwg-border);
  color: var(--dwg-text);
  font-size: .92rem;
}
.wpcf7-form.sent .wpcf7-response-output,
.wpcf7-mail-sent-ok {
  border-color: #2e7d32;
  background: rgba(46, 125, 50, 0.08);
  color: #2e7d32;
}
.wpcf7-form.invalid .wpcf7-response-output,
.wpcf7-form.unaccepted .wpcf7-response-output,
.wpcf7-form.failed .wpcf7-response-output,
.wpcf7-form.aborted .wpcf7-response-output,
.wpcf7-form.spam .wpcf7-response-output,
.wpcf7-validation-errors,
.wpcf7-mail-sent-ng,
.wpcf7-spam-blocked,
.wpcf7-aborted {
  border-color: #c0392b;
  background: rgba(192, 57, 43, 0.08);
  color: #c0392b;
}
.wpcf7-spinner {
  margin: 0 0 0 10px;
}
@media (max-width: 980px) {
  .dwg-article__layout {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .dwg-article__sidebar {
    position: static;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }
}
@media (max-width: 640px) {
  .dwg-article__sidebar {
    grid-template-columns: 1fr;
  }
  .dwg-sidebar-block {
    padding: 16px;
  }
  .dwg-sidebar-post {
    grid-template-columns: 68px minmax(0, 1fr);
  }
  .dwg-sidebar-post__image img {
    width: 68px;
    height: 68px;
  }
}

/* v1.3 header search, headings and sidebar refinements */
.dwg-header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.dwg-header-search {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 188px;
  max-width: 248px;
}
.dwg-header-search input {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--dwg-border);
  border-radius: 999px;
  padding: 10px 12px;
  background: #fff;
  color: var(--dwg-text);
  font: inherit;
  font-size: 0.9rem;
  outline: none;
}
.dwg-header-search input:focus {
  border-color: var(--dwg-blue);
  box-shadow: 0 0 0 3px rgba(45, 79, 115, 0.12);
}
.dwg-header-search button {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  background: var(--dwg-navy);
  color: #fff;
  font-size: 1.1rem;
  line-height: 1;
  font-weight: 800;
  cursor: pointer;
}
.dwg-mobile-search {
  display: none;
}
body.dwg-site h1,
body.dwg-site h2 {
  text-align: center;
}
.dwg-home-hero h1,
.dwg-archive-head h1,
.dwg-article__header h1,
.dwg-page__header h1,
.dwg-section-heading h2,
.dwg-content h2,
.dwg-comments__title,
.comment-reply-title {
  margin-left: auto;
  margin-right: auto;
}
.dwg-home-hero p,
.dwg-archive-head p,
.dwg-article__lead {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.dwg-section-heading {
  justify-content: center;
  text-align: center;
}
.dwg-sidebar-block h2,
.dwg-sidebar-post h3 {
  text-align: left;
}
.dwg-sidebar-post__category,
.dwg-sidebar-post time {
  display: none !important;
}
.dwg-sidebar-post h3 {
  margin-bottom: 0;
}
.dwg-content a {
  text-decoration: none;
}
.dwg-content a:hover {
  text-decoration: none;
}
@media (max-width: 1120px) {
  .dwg-header-search {
    min-width: 150px;
    max-width: 190px;
  }
  .dwg-menu a {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (max-width: 980px) {
  .dwg-header-search {
    display: none;
  }
  .dwg-mobile-search {
    display: block;
    width: min(var(--dwg-container), calc(100% - 40px));
    margin: 0 auto;
    padding: 0 0 20px;
  }
  .dwg-mobile-search .dwg-search {
    display: flex;
    flex-direction: row;
    max-width: none;
    margin: 8px 0 0;
  }
  .dwg-mobile-search .dwg-search input {
    min-width: 0;
  }
}
@media (max-width: 640px) {
  .dwg-mobile-search .dwg-search {
    flex-direction: column;
  }
  .dwg-card__title,
  .dwg-card__excerpt,
  .dwg-meta {
    text-align: left;
  }
}

/* v1.4 requested refinements */
body.dwg-site h1,
body.dwg-site h2 {
  text-align: inherit;
}
.dwg-article__header h1 {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.dwg-article__header .dwg-category-labels {
  justify-content: center;
}
.dwg-category-labels {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}
.dwg-card__body > .dwg-label,
.dwg-featured__content > .dwg-label {
  margin-left: auto;
  margin-right: auto;
}
.dwg-card .dwg-meta,
.dwg-featured .dwg-meta {
  justify-content: center;
  text-align: center;
}
.dwg-post-footer {
  margin-top: 28px;
}
.dwg-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: center;
  text-align: center;
}
.dwg-tags a {
  margin: 0;
}
.dwg-article__layout {
  grid-template-columns: minmax(0, 760px) 330px;
  align-items: start;
}
.dwg-article__sidebar {
  position: sticky;
  top: 94px;
  max-height: calc(100vh - 112px);
  overflow-y: auto;
  padding-right: 4px;
  scrollbar-width: thin;
}
.dwg-article-meta-card .dwg-meta {
  display: grid;
  gap: 8px;
  margin-top: 0;
  justify-content: start;
  text-align: left;
}
.dwg-article-meta-card .dwg-meta time::after,
.dwg-article-meta-card .dwg-meta span::after,
.dwg-article-meta-card .dwg-meta a::after {
  content: none !important;
}
.dwg-sidebar-post {
  align-items: center;
}
.dwg-sidebar-post__body {
  min-width: 0;
  display: flex;
  align-items: center;
  min-height: 74px;
}
.dwg-sidebar-post h3 {
  margin: 0;
}
.dwg-sidebar-block h2,
.dwg-sidebar-post h3 {
  text-align: left;
}
.dwg-content h2,
.dwg-content h3 {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}
.dwg-comments__title,
.comment-reply-title {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 980px) {
  .dwg-article__sidebar {
    position: static;
    max-height: none;
    overflow: visible;
    padding-right: 0;
  }
  .dwg-article-meta-card .dwg-meta {
    grid-template-columns: repeat(3, auto);
    gap: 8px 12px;
  }
}
@media (max-width: 640px) {
  .dwg-card__body > .dwg-label {
    margin-left: 0;
    margin-right: 0;
  }
  .dwg-card .dwg-meta {
    justify-content: flex-start;
    text-align: left;
  }
  .dwg-article-meta-card .dwg-meta {
    grid-template-columns: 1fr;
  }
  .dwg-sidebar-post__body {
    min-height: 68px;
  }
}

/* v1.5 requested corrections */
.dwg-article__header {
  max-width: var(--dwg-container);
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 34px;
  align-items: start;
}
.dwg-article__header-main {
  min-width: 0;
}
.dwg-article__header h1 {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.dwg-article__lead {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.dwg-article__header-meta {
  justify-self: end;
  width: 100%;
  max-width: 230px;
  padding-top: 12px;
  border-top: 2px solid var(--dwg-navy);
  color: var(--dwg-muted);
}
.dwg-article__header-meta .dwg-meta {
  display: grid;
  gap: 8px;
  justify-content: end;
  text-align: right;
  margin-top: 0;
}
.dwg-article__header-meta .dwg-meta time::after,
.dwg-article__header-meta .dwg-meta span::after,
.dwg-article__header-meta .dwg-meta a::after {
  content: none !important;
}
body.dwg-site h2,
.dwg-content h2,
.dwg-section-heading h2,
.dwg-comments__title,
.comment-reply-title {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.dwg-sidebar-block h2,
.dwg-sidebar-post h3,
.dwg-article__sidebar h2 {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}
.dwg-article__layout {
  grid-template-columns: minmax(0, 760px) 330px;
  align-items: stretch;
}
.dwg-article__sidebar {
  position: relative;
  align-self: stretch;
  max-height: none;
  overflow: visible;
  padding-right: 0;
}
.dwg-sidebar-sticky {
  position: sticky;
  top: 94px;
  align-self: start;
}
.dwg-sidebar-post {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}
.dwg-sidebar-post__image,
.dwg-sidebar-post__image img {
  width: 74px;
  height: 74px;
}
.dwg-sidebar-post__body {
  min-height: 74px;
  display: flex;
  align-items: center;
}
.dwg-sidebar-post h3 {
  margin: 0;
  line-height: 1.24;
}
.dwg-content h3 {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}
.dwg-article-meta-card {
  display: none !important;
}
@media (max-width: 980px) {
  .dwg-article__header {
    display: block;
    max-width: 920px;
  }
  .dwg-article__header-meta {
    max-width: none;
    width: fit-content;
    margin: 22px auto 0;
    padding-top: 0;
    border-top: 0;
  }
  .dwg-article__header-meta .dwg-meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
    gap: 8px 12px;
  }
  .dwg-article__layout {
    display: block;
  }
  .dwg-article__sidebar {
    position: static;
    margin-top: 36px;
  }
  .dwg-sidebar-sticky {
    position: static;
  }
}
@media (max-width: 640px) {
  .dwg-article__header h1,
  .dwg-article__lead {
    text-align: center;
  }
  .dwg-article__header-meta .dwg-meta {
    display: grid;
    justify-content: center;
  }
}

/* v1.6 single header/meta and bottom-sticky sidebar corrections */
.dwg-article__header {
  display: block;
  max-width: 920px;
}
.dwg-article__header-main {
  max-width: 920px;
  margin-left: auto;
  margin-right: auto;
}
.dwg-article__header h1 {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.dwg-article__header-meta {
  width: 100%;
  max-width: none;
  margin: 10px 0 0;
  padding-top: 0;
  border-top: 0;
  justify-self: auto;
}
.dwg-article__header-meta .dwg-meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  text-align: right;
  gap: 8px 12px;
  margin-top: 0;
}
.dwg-article__lead {
  text-align: center;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 981px) {
  .dwg-article__layout {
    align-items: stretch;
  }
  .dwg-article__sidebar {
    position: relative;
    align-self: stretch;
  }
  .dwg-sidebar-sticky {
    position: sticky;
    top: 94px;
    bottom: auto;
    align-self: start;
    transform: none;
    max-height: calc(100vh - 112px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }
}
@media (max-width: 980px) {
  .dwg-article__header-meta {
    width: fit-content;
    margin: 16px auto 0;
  }
  .dwg-article__header-meta .dwg-meta {
    justify-content: center;
    text-align: center;
  }
  .dwg-sidebar-sticky {
    position: static;
    max-height: none;
    overflow: visible;
    transform: none;
  }
}


/* v1.8 hero editorial refinement */
.dwg-home-hero__inner {
  grid-template-columns: minmax(0, 1fr) 340px;
  align-items: center;
  gap: clamp(34px, 6vw, 72px);
  padding-top: clamp(52px, 6vw, 78px);
  padding-bottom: clamp(48px, 5.5vw, 68px);
}
.dwg-home-hero .dwg-kicker {
  margin-bottom: 14px;
  color: var(--dwg-accent);
  letter-spacing: 0.15em;
}
.dwg-home-hero h1 {
  max-width: 760px;
  font-size: clamp(2.9rem, 6.1vw, 4.65rem);
  line-height: 0.98;
  letter-spacing: -0.052em;
  text-align: left;
  margin-left: 0;
  margin-right: 0;
}
.dwg-home-hero p {
  max-width: 720px;
  margin: 24px 0 0;
  text-align: left;
  color: #556171;
  font-size: clamp(1.04rem, 1.25vw, 1.2rem);
  line-height: 1.55;
}
.dwg-hero-note {
  background: #18243a;
  border-radius: 12px;
  padding: 24px 22px;
  box-shadow: 0 12px 28px rgba(17, 24, 39, 0.10);
}
.dwg-hero-note strong {
  margin-bottom: 12px;
  font-size: 1.02rem;
}
.dwg-hero-note span,
.dwg-hero-note ol {
  color: rgba(255,255,255,0.86);
}
.dwg-hero-note ol {
  margin-top: 12px;
  padding-left: 19px;
  line-height: 1.58;
}
.dwg-hero-note li + li {
  margin-top: 3px;
}
@media (max-width: 980px) {
  .dwg-home-hero h1,
  .dwg-home-hero p {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .dwg-home-hero .dwg-kicker {
    text-align: center;
  }
  .dwg-hero-note {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 640px) {
  .dwg-home-hero h1 {
    font-size: clamp(2.25rem, 14vw, 3.45rem);
    line-height: 1;
  }
  .dwg-home-hero p {
    font-size: 1rem;
  }
}


/* v1.9 professional editorial refinements */
:root {
  --dwg-bg: #f7f8fa;
  --dwg-soft: #f0f3f6;
  --dwg-border: #e1e5ea;
  --dwg-border-strong: #c7d0da;
  --dwg-navy: #172135;
  --dwg-blue: #243f5f;
  --dwg-accent: #8a5a18;
  --dwg-radius: 10px;
  --dwg-shadow: none;
}

a {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}

.dwg-header {
  box-shadow: none;
}
.dwg-header__inner {
  min-height: 68px;
  gap: 20px;
}
.dwg-brand__tagline {
  font-size: 0.7rem;
  letter-spacing: 0.13em;
}
.dwg-menu a {
  padding-top: 10px;
  padding-bottom: 10px;
}

.dwg-home-hero,
.dwg-archive-head {
  background: linear-gradient(180deg, #ffffff 0%, #f6f8fa 100%);
}
.dwg-home-hero__inner {
  padding-top: clamp(46px, 5vw, 68px);
  padding-bottom: clamp(42px, 5vw, 62px);
}
.dwg-home-hero h1 {
  max-width: 790px;
  font-size: clamp(2.65rem, 5.75vw, 4.35rem);
}
.dwg-home-hero p {
  color: #4f5b68;
}
.dwg-hero-note {
  background: #182236;
  border: 1px solid rgba(255,255,255,0.13);
  border-radius: 10px;
  box-shadow: none;
}
.dwg-hero-note ol {
  line-height: 1.62;
}

.dwg-featured,
.dwg-card,
.dwg-sidebar-block,
.dwg-comments,
.comment-body,
.dwg-source-note {
  box-shadow: none;
}
.dwg-featured,
.dwg-card {
  border-color: var(--dwg-border);
  border-radius: 10px;
}
.dwg-card:hover,
.dwg-featured:hover {
  border-color: var(--dwg-border-strong);
}
.dwg-card__image img,
.dwg-featured__image img,
.dwg-article__image img {
  border-radius: 0;
}

.dwg-label {
  background: none;
  border: 0;
  border-radius: 0;
  padding: 0;
  color: var(--dwg-accent);
  letter-spacing: 0.095em;
  font-size: 0.71rem;
}
.dwg-label:hover {
  color: var(--dwg-navy);
}
.dwg-category-labels .dwg-label {
  padding: 0;
}
.dwg-card__body > .dwg-label,
.dwg-featured__content > .dwg-label {
  margin-bottom: 4px;
}

.dwg-sidebar-block {
  background: transparent;
  border: 0;
  border-top: 2px solid var(--dwg-navy);
  border-radius: 0;
  padding: 16px 0 0;
}
.dwg-sidebar-block h2 {
  font-size: 1.28rem;
  padding-bottom: 11px;
  border-bottom: 1px solid var(--dwg-border);
  margin-bottom: 12px;
}
.dwg-sidebar-list {
  gap: 0;
}
.dwg-sidebar-post {
  grid-template-columns: 62px minmax(0, 1fr);
  padding: 12px 0;
  gap: 11px;
  border-top: 0;
  border-bottom: 1px solid var(--dwg-border);
}
.dwg-sidebar-post:first-child {
  padding-top: 0;
}
.dwg-sidebar-post__image,
.dwg-sidebar-post__image img {
  width: 62px;
  height: 62px;
}
.dwg-sidebar-post__image img {
  border-radius: 6px;
}
.dwg-sidebar-post__body {
  min-height: 62px;
}
.dwg-sidebar-post h3 {
  font-size: 0.94rem;
  line-height: 1.22;
}

.dwg-footer {
  margin-top: 54px;
}
.dwg-footer__inner {
  padding-top: 42px;
  padding-bottom: 34px;
}
.dwg-footer p {
  max-width: 620px;
  line-height: 1.55;
}

@media (max-width: 980px) {
  .dwg-header__inner {
    min-height: 64px;
  }
  .dwg-nav {
    inset: 64px 0 auto 0;
  }
  .dwg-sidebar-block {
    background: var(--dwg-surface);
    border: 1px solid var(--dwg-border);
    border-radius: 10px;
    padding: 16px;
  }
  .dwg-sidebar-block h2 {
    border-bottom: 0;
    padding-bottom: 0;
  }
}
@media (max-width: 640px) {
  .dwg-sidebar-post {
    grid-template-columns: 58px minmax(0, 1fr);
  }
  .dwg-sidebar-post__image,
  .dwg-sidebar-post__image img {
    width: 58px;
    height: 58px;
  }
  .dwg-sidebar-post__body {
    min-height: 58px;
  }
}

/* v2.0 header search SVG icon and social links */
.dwg-header-search {
  position: relative;
  min-width: 230px;
  max-width: 310px;
  gap: 8px;
}
.dwg-header-search__icon {
  position: absolute;
  left: 13px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--dwg-muted);
  pointer-events: none;
  z-index: 1;
}
.dwg-header-search input {
  min-height: 40px;
  padding: 10px 14px 10px 40px;
  border-color: var(--dwg-border-strong);
  transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.dwg-header-search input::placeholder {
  color: #7b8590;
}
.dwg-header-search:focus-within .dwg-header-search__icon {
  color: var(--dwg-blue);
}
.dwg-header-search button {
  width: auto;
  min-width: 76px;
  height: 40px;
  padding: 0 15px;
  font-size: .84rem;
  letter-spacing: .02em;
  transition: background-color .18s ease, transform .18s ease;
}
.dwg-header-search button:hover {
  background: var(--dwg-blue);
}
.dwg-header-social {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding-left: 2px;
}
.dwg-social-link {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 999px;
  background: #fff;
  color: var(--dwg-navy);
  text-decoration: none;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease;
}
.dwg-social-link:hover,
.dwg-social-link:focus-visible {
  border-color: var(--dwg-navy);
  background: var(--dwg-navy);
  color: #fff;
  transform: translateY(-1px);
  outline: none;
}
.dwg-search__field {
  position: relative;
  display: flex;
  flex: 1;
  min-width: 0;
}
.dwg-search__icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  display: inline-flex;
  color: var(--dwg-muted);
  pointer-events: none;
}
.dwg-search .dwg-search__field input {
  width: 100%;
  padding-left: 42px;
}
.dwg-search:focus-within .dwg-search__icon {
  color: var(--dwg-blue);
}
@media (max-width: 1180px) {
  .dwg-header-search {
    min-width: 200px;
    max-width: 250px;
  }
  .dwg-header-search button {
    min-width: 40px;
    width: 40px;
    padding: 0;
    font-size: 0;
  }
  .dwg-header-search button::before {
    content: "";
    width: 16px;
    height: 16px;
    background: currentColor;
    display: block;
    -webkit-mask: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10.75 4.5a6.25 6.25 0 1 0 0 12.5 6.25 6.25 0 0 0 0-12.5Zm-8 6.25a8 8 0 1 1 14.1 5.17l4.36 4.36a.75.75 0 0 1-1.06 1.06l-4.36-4.36A8 8 0 0 1 2.75 10.75Z"/></svg>') center / contain no-repeat;
    mask: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10.75 4.5a6.25 6.25 0 1 0 0 12.5 6.25 6.25 0 0 0 0-12.5Zm-8 6.25a8 8 0 1 1 14.1 5.17l4.36 4.36a.75.75 0 0 1-1.06 1.06l-4.36-4.36A8 8 0 0 1 2.75 10.75Z"/></svg>') center / contain no-repeat;
  }
}
@media (max-width: 980px) {
  .dwg-header-social {
    gap: 6px;
  }
  .dwg-social-link {
    width: 36px;
    height: 36px;
  }
}
@media (max-width: 420px) {
  .dwg-header-social {
    display: none;
  }
}

/* v2.1 requested header/mobile/single refinements */
@media (min-width: 981px) {
  .dwg-header__inner {
    justify-content: flex-start;
  }
  .dwg-nav {
    margin-left: auto;
    flex: 0 1 auto;
  }
  .dwg-header-actions {
    margin-left: 6px;
  }
  .dwg-menu {
    justify-content: flex-end;
  }
}

.single .dwg-article__header,
.single-post .dwg-article__header {
  text-align: center;
}
.single .dwg-article__header-main,
.single-post .dwg-article__header-main {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
.single .dwg-article__header h1,
.single-post .dwg-article__header h1 {
  display: block;
  width: 100%;
  max-width: 920px;
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.single .dwg-article__header .dwg-category-labels,
.single-post .dwg-article__header .dwg-category-labels {
  justify-content: center;
}
.single .dwg-article__lead,
.single-post .dwg-article__lead {
  text-align: center !important;
}

.dwg-menu-toggle {
  line-height: 1;
  cursor: pointer;
}
.dwg-menu-toggle > span:not(.dwg-menu-toggle__icon) {
  display: none;
}
.dwg-menu-toggle__icon {
  width: 18px;
  height: 14px;
  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
  flex-shrink: 0;
}
.dwg-menu-toggle__icon span {
  display: block;
  width: 18px;
  height: 2px;
  margin: 0;
  border-radius: 999px;
  background: currentColor;
}
.dwg-menu-toggle em {
  font-style: normal;
  transform: translateY(0.5px);
}

.dwg-mobile-social {
  display: none;
}
@media (max-width: 980px) {
  .dwg-header-actions > .dwg-header-social {
    display: none;
  }
  .dwg-mobile-social {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: min(var(--dwg-container), calc(100% - 40px));
    margin: 0 auto;
    padding: 0 0 22px;
  }
  .dwg-mobile-social .dwg-social-link {
    width: 42px;
    height: 42px;
  }
  .dwg-menu-toggle {
    min-height: 40px;
    padding: 10px 13px;
    gap: 9px;
  }
}
@media (max-width: 420px) {
  .dwg-header-social {
    display: none;
  }
  .dwg-mobile-social {
    display: flex;
  }
}

/* v2.2 mobile hamburger and compact slogan polish */
.dwg-mobile-header-slogan {
  display: none;
}
.dwg-menu-toggle__icon {
  background: transparent !important;
  margin: 0 !important;
  gap: 4px;
}
.dwg-menu-toggle__icon span {
  display: block !important;
  flex: 0 0 2px;
  min-height: 2px;
  background: currentColor !important;
}
@media (max-width: 980px) {
  .dwg-header__inner {
    gap: 12px;
  }
  .dwg-header-actions {
    gap: 8px;
  }
  .dwg-mobile-header-slogan {
    display: block;
    max-width: 118px;
    margin: 0 2px 0 0;
    color: var(--dwg-muted);
    font-size: 0.61rem;
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: 0.105em;
    text-transform: uppercase;
    text-align: right;
  }
  .dwg-menu-toggle__icon {
    width: 19px;
    height: 16px;
    justify-content: center;
  }
  .dwg-menu-toggle__icon span {
    width: 19px;
    height: 2px;
    margin: 0 !important;
  }
}
@media (max-width: 520px) {
  .dwg-mobile-header-slogan {
    max-width: 96px;
    font-size: 0.55rem;
    letter-spacing: 0.085em;
  }
  .dwg-menu-toggle {
    padding: 9px 10px;
  }
}
@media (max-width: 380px) {
  .dwg-mobile-header-slogan {
    max-width: 78px;
    font-size: 0.5rem;
    letter-spacing: 0.06em;
  }
  .dwg-menu-toggle em {
    display: none;
  }
}

/* v2.3 mobile slogan position and hamburger icon correction */
.dwg-menu-toggle__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  background: transparent !important;
  margin: 0 !important;
  flex: 0 0 22px !important;
}
.dwg-menu-toggle__icon svg {
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  background: transparent !important;
}
.dwg-menu-toggle__icon span {
  display: none !important;
}
.dwg-mobile-header-slogan {
  display: none !important;
}
@media (max-width: 980px) {
  .dwg-brand {
    flex: 1 1 auto;
    gap: 10px;
    min-width: 0;
  }
  .dwg-brand__tagline {
    display: block !important;
    max-width: 150px;
    margin: 0;
    color: var(--dwg-muted);
    font-size: 0.58rem;
    line-height: 1.12;
    font-weight: 800;
    letter-spacing: 0.085em;
    text-transform: uppercase;
    text-align: left;
  }
  .dwg-header-actions {
    flex: 0 0 auto;
  }
  .dwg-menu-toggle {
    min-height: 42px;
    padding: 9px 12px;
  }
}
@media (max-width: 640px) {
  .dwg-brand__tagline {
    max-width: 118px;
    font-size: 0.52rem;
    letter-spacing: 0.065em;
  }
}
@media (max-width: 420px) {
  .dwg-brand {
    gap: 8px;
  }
  .dwg-brand__tagline {
    max-width: 92px;
    font-size: 0.46rem;
    line-height: 1.16;
    letter-spacing: 0.045em;
  }
  .dwg-menu-toggle {
    padding: 9px 10px;
  }
}
@media (max-width: 360px) {
  .dwg-brand__tagline {
    display: none !important;
  }
}


/* v2.4 mobile one-line slogan and clear hamburger icon */
@media (max-width: 980px) {
  .dwg-brand {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 84px);
    gap: 8px !important;
    justify-content: flex-start !important;
  }
  .dwg-brand__tagline {
    display: block !important;
    flex: 0 1 auto;
    min-width: 0;
    max-width: calc(100vw - 250px) !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1 !important;
    font-size: 0.56rem !important;
    letter-spacing: 0.055em !important;
    margin: 0 !important;
  }
  .dwg-menu-toggle__icon {
    display: inline-grid !important;
    place-items: center !important;
    width: 24px !important;
    height: 24px !important;
    flex: 0 0 24px !important;
    background: transparent !important;
  }
  .dwg-menu-toggle__icon svg {
    display: block !important;
    width: 24px !important;
    height: 24px !important;
    overflow: visible !important;
  }
  .dwg-menu-toggle__icon svg rect {
    display: block !important;
    fill: currentColor !important;
  }
}
@media (max-width: 640px) {
  .dwg-brand__tagline {
    max-width: calc(100vw - 230px) !important;
    font-size: 0.51rem !important;
    letter-spacing: 0.04em !important;
  }
}
@media (max-width: 420px) {
  .dwg-brand {
    gap: 6px !important;
    max-width: calc(100% - 64px);
    justify-content: flex-start !important;
  }
  .dwg-brand__tagline {
    max-width: calc(100vw - 214px) !important;
    font-size: 0.44rem !important;
    letter-spacing: 0.018em !important;
  }
  .dwg-menu-toggle {
    min-width: 46px;
    padding: 8px 10px !important;
  }
}
@media (max-width: 360px) {
  .dwg-brand__tagline {
    display: block !important;
    max-width: calc(100vw - 198px) !important;
    font-size: 0.4rem !important;
    letter-spacing: 0 !important;
  }
}
@media (max-width: 330px) {
  .dwg-brand__tagline {
    display: none !important;
  }
}


.dwg-cookie-settings {
  appearance: none;
  border: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: 13px;
  line-height: 1.4;
  padding: 0;
  cursor: pointer;
  opacity: 0.78;
  text-align: right;
  transition: opacity 0.2s ease, color 0.2s ease;
}

.dwg-cookie-settings:hover,
.dwg-cookie-settings:focus-visible {
  opacity: 1;
  text-decoration: underline;
}

@media (max-width: 640px) {
  .dwg-cookie-settings {
    text-align: left;
  }
}
/* archive heading and pagination centering fix */
.archive .dwg-archive-head,
.category .dwg-archive-head,
.tag .dwg-archive-head,
.author .dwg-archive-head,
.search .dwg-archive-head {
  text-align: center;
}

.archive .dwg-archive-head h1,
.category .dwg-archive-head h1,
.tag .dwg-archive-head h1,
.author .dwg-archive-head h1,
.search .dwg-archive-head h1 {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.archive .dwg-archive-head p,
.category .dwg-archive-head p,
.tag .dwg-archive-head p,
.author .dwg-archive-head p,
.search .dwg-archive-head p,
.archive .dwg-archive-head .dwg-kicker,
.category .dwg-archive-head .dwg-kicker,
.tag .dwg-archive-head .dwg-kicker,
.author .dwg-archive-head .dwg-kicker,
.search .dwg-archive-head .dwg-kicker {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.archive .navigation.pagination,
.category .navigation.pagination,
.tag .navigation.pagination,
.author .navigation.pagination,
.search .navigation.pagination,
.archive .dwg-pagination,
.category .dwg-pagination,
.tag .dwg-pagination,
.author .dwg-pagination,
.search .dwg-pagination {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  margin: 34px auto 0 !important;
}

.archive .navigation.pagination .nav-links,
.category .navigation.pagination .nav-links,
.tag .navigation.pagination .nav-links,
.author .navigation.pagination .nav-links,
.search .navigation.pagination .nav-links {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.archive .dwg-pagination ul.page-numbers,
.category .dwg-pagination ul.page-numbers,
.tag .dwg-pagination ul.page-numbers,
.author .dwg-pagination ul.page-numbers,
.search .dwg-pagination ul.page-numbers,
.archive .dwg-pagination .page-numbers,
.category .dwg-pagination .page-numbers,
.tag .dwg-pagination .page-numbers,
.author .dwg-pagination .page-numbers,
.search .dwg-pagination .page-numbers {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* v2.7 search page centering and pagination check */
body.search .dwg-search,
.search .dwg-search,
.search-results .dwg-search,
.search-no-results .dwg-search {
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: center !important;
}

body.search .dwg-archive-head .dwg-search,
.search .dwg-archive-head .dwg-search,
.search-results .dwg-archive-head .dwg-search,
.search-no-results .dwg-archive-head .dwg-search {
  max-width: 560px;
  width: min(100%, 560px);
}

body.search .dwg-search input,
.search .dwg-search input,
.search-results .dwg-search input,
.search-no-results .dwg-search input {
  min-width: 0;
}

body.search .navigation.pagination,
.search .navigation.pagination,
.search-results .navigation.pagination,
.search-no-results .navigation.pagination,
body.search .dwg-pagination,
.search .dwg-pagination,
.search-results .dwg-pagination,
.search-no-results .dwg-pagination {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  margin: 34px auto 0 !important;
}

body.search .navigation.pagination .nav-links,
.search .navigation.pagination .nav-links,
.search-results .navigation.pagination .nav-links,
.search-no-results .navigation.pagination .nav-links,
body.search .dwg-pagination ul.page-numbers,
.search .dwg-pagination ul.page-numbers,
.search-results .dwg-pagination ul.page-numbers,
.search-no-results .dwg-pagination ul.page-numbers {
  display: inline-flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: auto !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 640px) {
  body.search .dwg-search,
  .search .dwg-search,
  .search-results .dwg-search,
  .search-no-results .dwg-search {
    width: 100%;
    max-width: none;
  }
}

/* v2.8 light/dark theme toggle */
:root,
html[data-dwg-theme="light"] {
  color-scheme: light;
  --dwg-bg: #f6f7f8;
  --dwg-surface: #ffffff;
  --dwg-soft: #eef1f4;
  --dwg-text: #15171a;
  --dwg-muted: #66707b;
  --dwg-border: #d8dde3;
  --dwg-border-strong: #bdc5cf;
  --dwg-navy: #172236;
  --dwg-blue: #2d4f73;
  --dwg-accent: #8a5a2b;
  --dwg-header-bg: rgba(255,255,255,0.94);
  --dwg-hero-bg: linear-gradient(180deg, #fff 0%, #f3f5f7 100%);
  --dwg-input-bg: #ffffff;
  --dwg-shadow: 0 14px 34px rgba(17, 24, 39, 0.07);
}

html[data-dwg-theme="dark"] {
  color-scheme: dark;
  --dwg-bg: #0f1318;
  --dwg-surface: #171d24;
  --dwg-soft: #212a34;
  --dwg-text: #edf1f5;
  --dwg-muted: #a7b0bb;
  --dwg-border: #303a46;
  --dwg-border-strong: #465260;
  --dwg-navy: #dce7f4;
  --dwg-blue: #8db6df;
  --dwg-accent: #d4a56f;
  --dwg-header-bg: rgba(18,23,30,0.94);
  --dwg-hero-bg: linear-gradient(180deg, #171d24 0%, #111720 100%);
  --dwg-input-bg: #10161d;
  --dwg-shadow: 0 18px 42px rgba(0, 0, 0, 0.38);
}

html[data-dwg-theme="dark"] body.dwg-site,
html[data-dwg-theme="dark"] .dwg-main {
  background: var(--dwg-bg);
  color: var(--dwg-text);
}

.dwg-header {
  background: var(--dwg-header-bg);
}

.dwg-home-hero,
.dwg-archive-head {
  background: var(--dwg-hero-bg);
}

.dwg-menu .sub-menu,
.dwg-menu-toggle,
.dwg-method article,
.dwg-source-note,
.dwg-card,
.dwg-featured,
.dwg-sidebar-block,
.dwg-comments,
.dwg-comment,
.dwg-author-box,
.dwg-post-footer,
.dwg-related,
.dwg-page,
.dwg-search input,
.dwg-header-search input,
.page-numbers,
.dwg-social-link,
.dwg-theme-toggle {
  background-color: var(--dwg-surface);
  color: var(--dwg-text);
}

.dwg-search input,
.dwg-header-search input {
  border-color: var(--dwg-border);
}

.dwg-theme-toggle {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 999px;
  padding: 0;
  color: var(--dwg-navy);
  cursor: pointer;
  text-decoration: none;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease;
}

.dwg-theme-toggle:hover,
.dwg-theme-toggle:focus-visible {
  border-color: var(--dwg-navy);
  background: var(--dwg-navy);
  color: var(--dwg-bg);
  transform: translateY(-1px);
  outline: none;
}

.dwg-theme-toggle__icon {
  display: none;
  line-height: 0;
}

html[data-dwg-theme="light"] .dwg-theme-toggle__icon--moon,
html[data-dwg-theme="dark"] .dwg-theme-toggle__icon--sun {
  display: inline-flex;
}

html[data-dwg-theme="dark"] .dwg-social-link:hover,
html[data-dwg-theme="dark"] .dwg-social-link:focus-visible,
html[data-dwg-theme="dark"] .dwg-header-search button,
html[data-dwg-theme="dark"] .dwg-search button,
html[data-dwg-theme="dark"] .dwg-label--type,
html[data-dwg-theme="dark"] .page-numbers.current {
  background: var(--dwg-navy);
  color: var(--dwg-bg);
  border-color: var(--dwg-navy);
}

html[data-dwg-theme="dark"] .dwg-hero-note,
html[data-dwg-theme="dark"] .dwg-footer {
  background: #0b1118;
  color: var(--dwg-text);
}

html[data-dwg-theme="dark"] .dwg-footer p,
html[data-dwg-theme="dark"] .dwg-footer-menu a,
html[data-dwg-theme="dark"] .dwg-footer__bottom,
html[data-dwg-theme="dark"] .dwg-hero-note ol {
  color: rgba(237,241,245,0.72);
}

html[data-dwg-theme="dark"] .dwg-nav {
  background: var(--dwg-header-bg);
}

/* v2.9 dark theme contrast fixes */
html[data-dwg-theme="dark"] .dwg-pagination .page-numbers li .page-numbers,
html[data-dwg-theme="dark"] .navigation.pagination .nav-links .page-numbers {
  background: #171d24;
  color: #edf1f5;
  border-color: #4b5968;
}

html[data-dwg-theme="dark"] .dwg-pagination .page-numbers li a.page-numbers:hover,
html[data-dwg-theme="dark"] .dwg-pagination .page-numbers li a.page-numbers:focus-visible,
html[data-dwg-theme="dark"] .navigation.pagination .nav-links a.page-numbers:hover,
html[data-dwg-theme="dark"] .navigation.pagination .nav-links a.page-numbers:focus-visible {
  background: #dce7f4;
  color: #0f1318;
  border-color: #dce7f4;
  outline: none;
}

html[data-dwg-theme="dark"] .dwg-pagination .page-numbers li span.page-numbers.current,
html[data-dwg-theme="dark"] .navigation.pagination .nav-links span.page-numbers.current,
html[data-dwg-theme="dark"] .page-numbers.current {
  background: #d4a56f;
  color: #0f1318;
  border-color: #d4a56f;
}


html[data-dwg-theme="dark"] .comment-form textarea,
html[data-dwg-theme="dark"] .comment-form-comment textarea,
html[data-dwg-theme="dark"] .comment-form input[type="text"],
html[data-dwg-theme="dark"] .comment-form input[type="email"],
html[data-dwg-theme="dark"] .comment-form input[type="url"] {
  background: #10161d;
  color: #edf1f5;
  border-color: #4b5968;
  caret-color: #edf1f5;
}

html[data-dwg-theme="dark"] .comment-form textarea::placeholder,
html[data-dwg-theme="dark"] .comment-form-comment textarea::placeholder,
html[data-dwg-theme="dark"] .comment-form input[type="text"]::placeholder,
html[data-dwg-theme="dark"] .comment-form input[type="email"]::placeholder,
html[data-dwg-theme="dark"] .comment-form input[type="url"]::placeholder {
  color: #a7b0bb;
  opacity: 1;
}

html[data-dwg-theme="dark"] .comment-form textarea:focus,
html[data-dwg-theme="dark"] .comment-form-comment textarea:focus,
html[data-dwg-theme="dark"] .comment-form input[type="text"]:focus,
html[data-dwg-theme="dark"] .comment-form input[type="email"]:focus,
html[data-dwg-theme="dark"] .comment-form input[type="url"]:focus {
  border-color: #d4a56f;
  outline: 2px solid rgba(212, 165, 111, 0.32);
  outline-offset: 2px;
}

html[data-dwg-theme="dark"] .comment-form input[type="submit"] {
  background: #d4a56f;
  color: #0f1318;
  border: 1px solid #d4a56f;
  box-shadow: 0 10px 24px rgba(212, 165, 111, 0.22);
}

html[data-dwg-theme="dark"] .comment-body {
  background: #10161d;
  color: #edf1f5;
  border-color: #4b5968;
}

html[data-dwg-theme="dark"] .comment-form input[type="submit"]:hover,
html[data-dwg-theme="dark"] .comment-form input[type="submit"]:focus-visible {
  background: #f0c58d;
  color: #0b1118;
  border-color: #f0c58d;
  outline: none;
}

html[data-dwg-theme="dark"] .wpcf7-form input[type="text"],
html[data-dwg-theme="dark"] .wpcf7-form input[type="email"],
html[data-dwg-theme="dark"] .wpcf7-form input[type="tel"],
html[data-dwg-theme="dark"] .wpcf7-form input[type="url"],
html[data-dwg-theme="dark"] .wpcf7-form input[type="number"],
html[data-dwg-theme="dark"] .wpcf7-form input[type="date"],
html[data-dwg-theme="dark"] .wpcf7-form textarea,
html[data-dwg-theme="dark"] .wpcf7-form select {
  background: #10161d;
  color: #edf1f5;
  border-color: #4b5968;
  caret-color: #edf1f5;
}

html[data-dwg-theme="dark"] .wpcf7-form input::placeholder,
html[data-dwg-theme="dark"] .wpcf7-form textarea::placeholder {
  color: #a7b0bb;
  opacity: 1;
}

html[data-dwg-theme="dark"] .wpcf7-form input[type="text"]:focus,
html[data-dwg-theme="dark"] .wpcf7-form input[type="email"]:focus,
html[data-dwg-theme="dark"] .wpcf7-form input[type="tel"]:focus,
html[data-dwg-theme="dark"] .wpcf7-form input[type="url"]:focus,
html[data-dwg-theme="dark"] .wpcf7-form input[type="number"]:focus,
html[data-dwg-theme="dark"] .wpcf7-form input[type="date"]:focus,
html[data-dwg-theme="dark"] .wpcf7-form textarea:focus,
html[data-dwg-theme="dark"] .wpcf7-form select:focus {
  border-color: #d4a56f;
  outline: 2px solid rgba(212, 165, 111, 0.32);
  outline-offset: 2px;
}

html[data-dwg-theme="dark"] .wpcf7-form input[type="submit"],
html[data-dwg-theme="dark"] .wpcf7-form .wpcf7-submit {
  background: #d4a56f;
  color: #0f1318;
  border: 1px solid #d4a56f;
  box-shadow: 0 10px 24px rgba(212, 165, 111, 0.22);
}

html[data-dwg-theme="dark"] .wpcf7-form input[type="submit"]:hover,
html[data-dwg-theme="dark"] .wpcf7-form .wpcf7-submit:hover {
  background: #f0c58d;
  color: #0b1118;
  border-color: #f0c58d;
}

html[data-dwg-theme="dark"] .wpcf7-response-output {
  border-color: #4b5968;
  color: #edf1f5;
}

@media (max-width: 980px) {
  .dwg-theme-toggle,
  .dwg-social-link {
    width: 36px;
    height: 36px;
  }

  .dwg-mobile-social .dwg-theme-toggle,
  .dwg-mobile-social .dwg-social-link {
    width: 42px;
    height: 42px;
  }
}


/* v2.10 mobile theme toggle placement and open-menu icon */
.dwg-header-theme-toggle {
  display: none;
}

.dwg-menu-toggle__close {
  display: none !important;
}

.dwg-menu-toggle[aria-expanded="true"] .dwg-menu-toggle__bar {
  display: none !important;
}

.dwg-menu-toggle[aria-expanded="true"] .dwg-menu-toggle__close {
  display: block !important;
}

@media (max-width: 980px) {
  .dwg-header-theme-toggle {
    display: inline-flex;
    order: 1;
  }

  .dwg-menu-toggle {
    order: 2;
  }

  .dwg-mobile-social .dwg-theme-toggle {
    display: none;
  }
}


.comment-form-cookies-consent {
    display: flex;
    align-items: flex-start;
    gap: 0.45rem;
    margin-top: 0.5rem;
    margin-bottom: 0.75rem;
}

.comment-form-cookies-consent input[type="checkbox"] {
    margin-top: 0.15em;
    flex-shrink: 0;
}

.comment-form-cookies-consent label {
    font-size: 0.8125rem;
    line-height: 1.35;
    margin: 0;
}
/* v2.11 transparent tag and page content backgrounds */
.dwg-tags,
.dwg-tags a,
.dwg-post-footer,
.dwg-label,
.dwg-label--type,
.tag .dwg-archive-head,
.page .dwg-page,
.page .dwg-content,
.page .dwg-content--page {
  background: transparent !important;
  background-color: transparent !important;
}

.dwg-label,
.dwg-label--type {
  border-color: transparent !important;
  box-shadow: none !important;
}

.dwg-tags a {
  box-shadow: none !important;
}

.tag .dwg-archive-head {
  border-bottom-color: transparent !important;
}

.single-post .entry-content h3,
.single-post .post-content h3,
.single-post .dwg-content h3,
.single-post .wp-block-post-content h3 {
  font-style: italic;
}
/* v2.13 LAP cards: image fading into the content area */
.dwg-card--lap .dwg-card__body {
  min-height: 210px;
}

.dwg-card--lap.dwg-card--text-only {
  position: relative;
  display: block;
  width: 100%;
  min-height: 0;
  aspect-ratio: 10 / 9;
  align-self: start;
}

.dwg-card--lap.dwg-card--text-only .dwg-card__body {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 16px;
}

.dwg-card--lap .dwg-card__title {
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.14;
  min-height: 0;
  -webkit-line-clamp: 4;
}

.dwg-card--lap .dwg-label {
  max-width: 100%;
  white-space: normal;
  font-size: 0.84rem;
  line-height: 1.2;
  text-align: left;
  text-transform: lowercase;
  letter-spacing: 0;
}

.dwg-card--lap .dwg-meta {
  text-transform: lowercase;
  letter-spacing: 0;
}

/* Kafelek "Podsumowanie wydarzen z wczorajszego dnia" - odwzorowuje 1:1
   wyglad karty artykulu w trybie widoku "lista" (data zamiast miniaturki
   + ten sam gradient/szerokosci/typografia), niezaleznie od aktualnie
   wybranego trybu widoku siatki .dwg-grid (grid/lista). */
.dwg-card--summary {
  position: relative;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  align-items: start;
  min-height: 0;
}

.dwg-card--summary::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 170px;
  width: 100px;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.35) 8%, rgba(255, 255, 255, 0.68) 16%, rgba(255, 255, 255, 0.9) 22%, var(--dwg-surface) 25.93%, var(--dwg-surface) 100%);
  pointer-events: none;
}

html[data-dwg-theme="dark"] .dwg-card--summary::after {
  background: linear-gradient(to right, rgba(23, 29, 36, 0) 0%, rgba(23, 29, 36, 0.35) 10%, rgba(23, 29, 36, 0.68) 20%, rgba(23, 29, 36, 0.9) 28%, var(--dwg-surface) 33.33%, var(--dwg-surface) 100%);
}

.dwg-card--summary__date {
  position: static;
  align-self: start;
  width: 100%;
  height: 86px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 4px 6px;
  /* Na sztywno (nie var(--dwg-navy)) - w trybie ciemnym ta zmienna
     jest odwracana na jasny kolor, a to tlo ma zawsze pozostac
     ciemnogranatowe, tak jak stopka i inne plakietki na stronie. */
  background: #212A34;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.dwg-card--summary__label {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1px;
}

.dwg-card--summary__label-line {
  font-family: "Newsreader", Georgia, serif;
  font-size: 0.98rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.02em;
  color: #fff;
}

.dwg-card--summary__body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 86px;
  overflow: hidden;
  padding: 8px 18px;
  background: none;
  /* Dostepna wysokosc rzadko trafia idealnie w pelna wielokrotnosc
     wysokosci wiersza, wiec zamiast twardego uciecia (ktore czasem
     odslania sam wierzcholek kolejnej linii, wygladajac jak dodatkowy
     wiersz) dolna krawedz delikatnie zanika. */
  mask-image: linear-gradient(to bottom, #000 calc(100% - 14px), transparent 100%);
  -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 14px), transparent 100%);
}

/* Blok normalny (nie flex/grid), BEZ wlasnego overflow/BFC - inaczej
   przegladarka zweza SZEROKOSC calego bloku wzgledem plywajacego nav
   (float) na wszystkich liniach naraz, zamiast tylko tej, ktora z nim
   faktycznie koliduje w pionie. Obcinanie do ~3 wierszy realizuje
   stala wysokosc + overflow:hidden na .dwg-card--summary__body powyzej. */
.dwg-card--summary__row {
  display: block;
  font-size: 1.2rem;
  line-height: 1.14;
}

.dwg-card--summary__nav {
  float: right;
  display: inline-flex;
  gap: 15px;
  margin: 44px 0 0 12px;
  /* Domyslnie strefa wykluczenia dla oplywajacego tekstu obejmuje
     margin-box (czyli TAKZE margin-top), przez co margines nie tworzy
     "wolnej" przestrzeni dla wczesniejszych linii - zawezal by je
     wszystkie, nie tylko te faktycznie kolidujace z ikonami. border-box
     ogranicza te strefe do rzeczywistego pudelka ikon. */
  shape-outside: border-box;
  shape-margin: 0;
}

.dwg-card--summary__nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 999px;
  background: var(--dwg-surface);
  color: var(--dwg-navy);
  cursor: pointer;
}

.dwg-card--summary__nav-btn svg {
  width: 12px;
  height: 12px;
}

.dwg-card--summary__nav-btn:hover,
.dwg-card--summary__nav-btn:focus-visible {
  border-color: var(--dwg-navy);
  background: var(--dwg-navy);
  color: var(--dwg-bg);
  outline: none;
}

.dwg-card--summary__slide {
  color: inherit;
  text-decoration: none;
  font-family: "Newsreader", Georgia, serif;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.14;
  letter-spacing: -0.025em;
  text-align: left;
}

.dwg-card--summary__slide[hidden] {
  display: none;
}

.dwg-card--summary__photo-icon {
  width: 15px;
  height: 15px;
  margin: 0 4px -2px 0;
  color: var(--dwg-muted);
  flex: 0 0 auto;
}

.dwg-card--summary__slide.is-active {
  animation: dwg-summary-slide-in .45s ease;
}

@keyframes dwg-summary-slide-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

.dwg-card--summary__slide:hover,
.dwg-card--summary__slide:focus-visible {
  color: var(--dwg-accent);
}

@media (max-width: 640px) {
  .dwg-card--summary {
    grid-template-columns: 108px minmax(0, 1fr);
  }

  .dwg-card--summary::after {
    left: 81px;
    width: 54px;
  }

  .dwg-card--summary__date {
    height: 64px;
  }

  /* Kolumna daty jest wezsza (108px) i gradient wchodzi w nia z prawej -
     napis pomniejszony i przesuniety lekko w lewo, zeby nie wchodzil
     pod gradient. */
  .dwg-card--summary__label {
    margin-left: -12px;
  }

  .dwg-card--summary__label-line {
    font-size: 0.72rem;
  }

  .dwg-card--summary__body {
    height: 64px;
    /* Lewy padding 1px (nie 14px) - tak samo jak prawdziwe karty listy
       na mobile (.dwg-card--lap .dwg-card__body), zeby tekst zaczynal
       sie w tym samym miejscu co tytuly sasiednich kart. */
    padding: 5px 14px 5px 1px;
    mask-image: linear-gradient(to bottom, #000 calc(100% - 10px), transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 10px), transparent 100%);
  }

  .dwg-card--summary__row {
    font-size: 0.92rem;
  }

  .dwg-card--summary__slide {
    font-size: 0.88rem;
    font-weight: 400;
  }

  .dwg-card--summary__nav {
    margin: 34px 0 0 10px;
    gap: 15px;
  }

  .dwg-card--summary__nav-btn {
    width: 17px;
    height: 17px;
  }

  .dwg-card--summary__nav-btn svg {
    width: 10px;
    height: 10px;
  }
}

.dwg-card--lap.dwg-card--text-only .dwg-label {
  position: static;
  align-self: center;
  max-width: 100%;
  margin: 0 0 12px;
  color: #0000FF;
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: lowercase;
  transform: none;
}

.dwg-card--lap.dwg-card--text-only .dwg-card__title {
  position: static;
  align-self: center;
  width: 100%;
  margin: 0;
  color: var(--dwg-text);
  text-align: center;
  transform: none;
}

.dwg-card--lap.dwg-card--text-only .dwg-meta {
  position: absolute;
  right: 16px;
  bottom: 14px;
  left: 16px;
  width: auto;
  margin: 0;
  justify-content: space-between;
  color: var(--dwg-muted);
  font-size: 0.72rem;
}

.dwg-card--lap.dwg-card--text-only .dwg-meta time {
  margin-left: auto;
}
.dwg-card--lap:not(.dwg-card--text-only) {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: 50% minmax(0, 1fr);
  width: 100%;
  min-height: 0;
  aspect-ratio: 10 / 9;
  align-self: start;
  background: var(--dwg-surface);
  isolation: isolate;
}

.dwg-card--lap:not(.dwg-card--text-only)::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 32.5% 0 0;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.35) 8%, rgba(255, 255, 255, 0.68) 16%, rgba(255, 255, 255, 0.9) 22%, var(--dwg-surface) 25.93%, var(--dwg-surface) 100%);
  pointer-events: none;
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-card__image--lap {
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: var(--dwg-soft);
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-card__image--lap img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center;
  transform: scale(1.5);
  transform-origin: center;
}

.dwg-card__admin-delete {
  position: absolute;
  top: 9px;
  left: 50%;
  z-index: 6;
  margin: 0;
  transform: translateX(-50%);
}

.dwg-card__admin-delete button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 6px;
  color: #fff;
  background: rgba(150, 25, 35, 0.88);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.22);
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.dwg-card__admin-delete button:hover,
.dwg-card__admin-delete button:focus-visible {
  border-color: rgba(255, 255, 255, 0.72);
  background: rgba(190, 28, 40, 0.98);
}

.dwg-card__admin-delete button:active {
  transform: scale(0.95);
}

.dwg-card__admin-delete .dashicons {
  width: 16px;
  height: 16px;
  font-size: 16px;
  line-height: 16px;
}
.dwg-card__opens {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 26px;
  padding: 0 8px;
  gap: 5px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 6px;
  color: #fff;
  background: rgba(13, 18, 24, 0.78);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  pointer-events: none;
}

.dwg-card__opens svg {
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dwg-card__like {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 4;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 26px;
  padding: 0 8px;
  gap: 5px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 6px;
  color: #fff;
  background: rgba(13, 18, 24, 0.78);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
  line-height: 1;
  cursor: pointer;
  transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.dwg-card__like:hover,
.dwg-card__like:focus-visible {
  background: rgba(25, 32, 40, 0.92);
  border-color: rgba(255, 255, 255, 0.5);
}

.dwg-card__like:active {
  transform: scale(0.96);
}

.dwg-card__like[aria-pressed="true"] {
  color: #ff6b81;
  background: rgba(46, 15, 23, 0.9);
  border-color: rgba(255, 107, 129, 0.55);
}

.dwg-card__like:disabled {
  cursor: wait;
  opacity: 0.72;
}

.dwg-card__like svg {
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
  fill: transparent;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: fill 160ms ease;
}

.dwg-card__like[aria-pressed="true"] svg {
  fill: currentColor;
}

.dwg-ranking__select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  min-width: 190px;
  height: 34px;
  min-height: 34px;
  max-height: 34px;
  margin: 0;
  padding: 0 26px 0 10px;
  border: 1px solid var(--dwg-border);
  border-radius: 5px;
  background: var(--dwg-soft) url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='12' height='12'%3E%3Cpath d='M6 9l6 6 6-6' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;
  background-size: 12px;
  color: var(--dwg-muted);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 32px;
  max-width: 100%;
}

html[data-dwg-theme="light"] .dwg-ranking__select,
:root:not([data-dwg-theme]) .dwg-ranking__select {
  color: var(--dwg-text);
}

/* Jedna wspolna siatka na caly pasek: kolumna 1 - lewa strona (H1 / Dodaj
   link), kolumna 2 - elastyczny odstep, kolumna 3 - tylko przelacznik
   widoku, kolumna 4 - kategoria/sortowanie. Dzieki wspolnym wierszom H1 i
   kategoria zawsze zaczynaja sie na tej samej wysokosci (wiersz 1), a
   "Dodaj link" i sortowanie na tej samej wysokosci (wiersz 2) - niezaleznie
   od roznic w wysokosci ich zawartosci. .dwg-ranking__left i .dwg-ranking
   sa "rozpuszczone" (display:contents), zeby ich dzieci byly bezposrednimi
   elementami tej wspolnej siatki.
 */
.dwg-ranking-wrap {
  display: grid;
  grid-template-columns: auto 1fr auto auto;
  column-gap: 12px;
  row-gap: 10px;
  align-items: start;
  margin-bottom: 18px;
  padding-top: 14px;
  border-top: 1px solid var(--dwg-border);
}

.dwg-ranking__left {
  display: contents;
}

.dwg-home-h1 {
  grid-column: 1;
  grid-row: 1;
}

.dwg-ranking__add {
  grid-column: 1;
  grid-row: 2;
  align-self: end;
  justify-self: start;
}

/* "Dodaj link" i "Dodaj zgloszenie" to dwa osobne przyciski (nie segmenty
   jednego przelacznika jak okres/sortowanie), wiec dostaja wlasny odstep i
   wlasne obwodki zamiast wspolnego, plaskiego tla .dwg-ranking__segments.
   Podwojna klasa (.dwg-ranking__add.dwg-ranking__segments / .dwg-ranking__add
   .dwg-ranking__segments a) daje wyzszy priorytet niz ogolne reguly
   .dwg-ranking__segments ponizej, wiec wygrywa niezaleznie od kolejnosci w
   pliku (ten sam problem co przy [hidden] - remis w sile selektora rozstrzyga
   kolejnosc, a tu nie chcemy na niej polegac). */
.dwg-ranking__add.dwg-ranking__segments {
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
}

.dwg-ranking__add.dwg-ranking__segments a {
  border: 1px solid var(--dwg-border);
  border-radius: 5px;
  background: var(--dwg-soft);
}

.dwg-ranking__add.dwg-ranking__segments a:hover,
.dwg-ranking__add.dwg-ranking__segments a:focus-visible {
  border-color: var(--dwg-navy);
}

@media (min-width: 641px) {
  body.paged .dwg-ranking-wrap {
    padding-top: 0;
    border-top: 0;
  }
}

.dwg-ranking {
  display: contents;
}

.dwg-ranking__group--category {
  grid-column: 4;
  grid-row: 1;
}

.dwg-ranking > .dwg-layout-toggle {
  grid-column: 3;
  grid-row: 2;
  align-self: end;
}

.dwg-ranking__sort-row {
  grid-column: 4;
  grid-row: 2;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  gap: 18px;
}

.dwg-ranking__group--category .dwg-ranking__label {
  text-align: left;
}

.dwg-ranking__group--category .dwg-ranking__select {
  width: 100%;
}

.dwg-ranking__add {
  flex: 0 0 auto;
}

.dwg-ranking__add a {
  white-space: nowrap;
}

.dwg-ranking__group {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.dwg-ranking__label {
  color: var(--dwg-muted);
  font-size: 0.66rem;
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}

.dwg-ranking__segments {
  --dwg-ranking-inactive-bg: var(--dwg-soft);
  display: inline-flex;
  align-items: stretch;
  min-width: 0;
  padding: 2px;
  border: 1px solid var(--dwg-border);
  border-radius: 7px;
  background: var(--dwg-ranking-inactive-bg);
}

.dwg-ranking__segments a,
.dwg-ranking__segments button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 6px 10px;
  border-radius: 5px;
  color: var(--dwg-muted);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
}

.dwg-ranking__segments a svg {
  width: 14px;
  height: 14px;
  margin-right: 5px;
  flex: 0 0 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dwg-ranking__segments a:hover,
.dwg-ranking__segments a:focus-visible,
.dwg-ranking__segments button:hover,
.dwg-ranking__segments button:focus-visible {
  color: var(--dwg-text);
}

.dwg-ranking__segments a.is-active,
.dwg-ranking__segments button.is-active {
  color: var(--dwg-surface);
  background: var(--dwg-text);
  box-shadow: 0 1px 4px rgba(17, 24, 39, 0.18);
}

.dwg-layout-toggle {
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 999px;
  padding: 0;
  background: var(--dwg-surface);
  color: var(--dwg-navy);
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease, transform .18s ease;
}

.dwg-layout-toggle:hover,
.dwg-layout-toggle:focus-visible {
  border-color: var(--dwg-navy);
  background: var(--dwg-navy);
  color: var(--dwg-bg);
  transform: translateY(-1px);
  outline: none;
}

.dwg-layout-toggle__icon {
  display: none;
  line-height: 0;
}

html[data-dwg-lap-layout="grid"] .dwg-layout-toggle__icon--list,
html[data-dwg-lap-layout="list"] .dwg-layout-toggle__icon--grid {
  display: inline-flex;
}

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  /* List view swaps the magazine-style overlay card for a plain image-left/text-right row. */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap {
    aspect-ratio: auto;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only) {
    display: grid;
    grid-template-columns: 200px minmax(0, 1fr);
    grid-template-rows: none;
    align-items: start;
    min-height: 0;
  }

  /* Same fade as the grid view's overlay, just turned to fade rightward (image into text) instead of downward. */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only)::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    bottom: 0;
    left: 170px;
    width: 100px;
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.35) 8%, rgba(255, 255, 255, 0.68) 16%, rgba(255, 255, 255, 0.9) 22%, var(--dwg-surface) 25.93%, var(--dwg-surface) 100%);
    pointer-events: none;
  }

  html[data-dwg-lap-layout="list"][data-dwg-theme="dark"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only)::after {
    background: linear-gradient(to right, rgba(23, 29, 36, 0) 0%, rgba(23, 29, 36, 0.35) 10%, rgba(23, 29, 36, 0.68) 20%, rgba(23, 29, 36, 0.9) 28%, var(--dwg-surface) 33.33%, var(--dwg-surface) 100%);
  }

  /* Fixed-size rectangular thumbnail, independent of the row's (text-driven) height. */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__image--lap {
    position: static;
    align-self: start;
    width: 100%;
    height: 140px;
    aspect-ratio: auto;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__image--lap img {
    width: 100%;
    height: 100%;
    transform: scale(1.5);
    transform-origin: center;
  }

  /* Likes stays top-right (unchanged); opens moves to bottom-right of the row. */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__opens {
    top: auto;
    left: auto;
    right: 10px;
    bottom: 10px;
  }

  /* Same bottom-right spot when the thumbnail is missing or failed to load
     (the opens badge gets moved into the body via the img onerror handler). */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap.dwg-card--text-only .dwg-card__opens {
    top: auto;
    left: auto;
    right: 10px;
    bottom: 10px;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap.dwg-card--text-only {
    display: block;
    min-height: 0;
    padding: 16px 18px;
  }

  /* When at least one card in the grid has a thumbnail, missing-thumbnail cards keep the
     image column blank instead of collapsing to full width (so text doesn't jump left).
     If every card in the grid lacks a thumbnail, the block layout above is kept as-is. */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-grid:has(.dwg-card--lap:not(.dwg-card--text-only)) .dwg-card--lap.dwg-card--text-only {
    display: grid;
    grid-template-columns: 200px minmax(0, 1fr);
    align-items: start;
    min-height: 0;
    padding: 0;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-grid:has(.dwg-card--lap:not(.dwg-card--text-only)) .dwg-card--lap.dwg-card--text-only .dwg-card__body {
    grid-column: 2;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap .dwg-card__body {
    position: relative;
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: auto;
    min-height: 140px;
    padding: 14px 18px;
    background: none;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap .dwg-label {
    align-self: flex-start;
    justify-self: auto;
    margin: 0 0 8px;
    text-align: left;
    transform: none;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap .dwg-card__title {
    align-self: auto;
    width: auto;
    margin: 0 0 8px;
    text-align: left;
    transform: none;
    min-height: 0;
    -webkit-line-clamp: 3;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap .dwg-meta {
    position: static;
    align-self: auto;
    width: auto;
    inset: auto;
    justify-content: flex-start;
  }

/* Same list layout on mobile, just with a smaller thumbnail matching the site's
   existing mobile row-card width, plus proportionally rescaled gradient/spacing. */
@media (max-width: 640px) {
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only),
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-grid:has(.dwg-card--lap:not(.dwg-card--text-only)) .dwg-card--lap.dwg-card--text-only {
    grid-template-columns: 108px minmax(0, 1fr);
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__image--lap {
    height: 132px;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only)::after {
    left: 81px;
    width: 54px;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap .dwg-card__body {
    min-height: 132px;
    padding: 10px 14px 10px 1px;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap .dwg-card__title {
    font-size: 0.92rem;
    font-weight: 400;
    -webkit-line-clamp: 4;
  }

  /* Smaller, lighter opens/likes badges - the fixed row layout has less room for them. */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card__opens,
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card__like {
    min-width: 30px;
    height: 20px;
    padding: 0 5px;
    gap: 3px;
    font-size: 0.6rem;
    background: rgba(13, 18, 24, 0.55);
    border-color: rgba(255, 255, 255, 0.22);
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card__opens svg,
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card__like svg {
    width: 11px;
    height: 11px;
    flex: 0 0 11px;
  }

  /* Opens badge moves next to (left of) the likes button, both at top-right,
     instead of stacking top/bottom - frees up the bottom of the row for the title. */
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__opens,
  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap.dwg-card--text-only .dwg-card__opens {
    top: 8px;
    bottom: auto;
    left: auto;
    right: 42px;
  }

  html[data-dwg-lap-layout="list"] .dwg-articles-browser .dwg-card--lap .dwg-card__like {
    top: 8px;
    right: 8px;
  }
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-card__body {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr) auto;
  justify-content: flex-start;
  min-height: 0;
  padding: 0 16px 14px;
  color: var(--dwg-text);
  background: transparent;
  pointer-events: auto;
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-label {
  display: inline-flex;
  align-self: center;
  justify-self: center;
  margin-bottom: -38px;
  color: #0000FF;
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.7rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: lowercase;
  transform: translateY(-38px);
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-card__title {
  align-self: center;
  width: 100%;
  margin: 0;
  text-align: center;
  transform: translateY(-10px);
  color: var(--dwg-text);
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-card__title a {
  color: inherit;
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-meta {
  width: 100%;
  align-self: end;
  margin: 0;
  justify-content: space-between;
  color: var(--dwg-muted);
  font-size: 0.72rem;
}

.dwg-card--lap:not(.dwg-card--text-only) .dwg-meta time {
  display: inline;
  margin-left: auto;
}

html[data-dwg-theme="dark"] .dwg-card--lap:not(.dwg-card--text-only) .dwg-label,
html[data-dwg-theme="dark"] .dwg-card--lap.dwg-card--text-only .dwg-label {
  color: #1E90FF;
}
html[data-dwg-theme="dark"] .dwg-card--lap:not(.dwg-card--text-only)::after {
  inset: 25% 0 0;
  background: linear-gradient(to bottom, rgba(23, 29, 36, 0) 0%, rgba(23, 29, 36, 0.35) 10%, rgba(23, 29, 36, 0.68) 20%, rgba(23, 29, 36, 0.9) 28%, var(--dwg-surface) 33.33%, var(--dwg-surface) 100%);
}

@media (max-width: 640px) {
  .dwg-card__opens {
    top: 8px;
    left: 8px;
    min-width: 39px;
    height: 24px;
    padding: 0 7px;
    font-size: 0.66rem;
  }

  .dwg-card__like {
    top: 8px;
    right: 8px;
    min-width: 39px;
    height: 24px;
    padding: 0 7px;
    font-size: 0.66rem;
  }

  /* Wrap collapses on mobile: "Dodaj link" and the sorting card become plain
     stacked siblings instead of one flex row, so the button can sit right
     under the H1 instead of inside the same bordered block as sorting. */
  .dwg-ranking-wrap {
    display: contents;
  }

  .dwg-ranking__left {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 16px;
  }

  .dwg-ranking {
    display: flex;
    position: relative;
    align-items: stretch;
    flex-direction: column;
    gap: 3px;
    margin-bottom: 58px;
    padding: 7px;
    border: 1px solid var(--dwg-border);
    border-radius: 7px;
    background: var(--dwg-soft);
  }

  /* "Dodaj link" siedzi w tym samym plywajacym wierszu co przelacznik
     widoku, pod bordowana karta kategorii/sortowania - po lewej, tak jak
     przelacznik jest po prawej. Szerokosc dopasowana do tresci (jak na
     PC), bez rozciagania na cala szerokosc. */
  .dwg-ranking > .dwg-ranking__add {
    position: absolute;
    top: 100%;
    left: 0;
    right: auto;
    bottom: auto;
    margin: 10px 0 0;
    background: var(--dwg-surface);
  }

  .dwg-ranking .dwg-ranking__group {
    gap: 5px;
  }

  .dwg-ranking > .dwg-ranking__group--category .dwg-ranking__label {
    text-align: center;
  }

  .dwg-ranking > .dwg-ranking__group--category .dwg-ranking__select {
    width: 100%;
    min-width: 0;
    background-color: var(--dwg-surface);
  }

  /* Odstęp między polem kategorii a wierszem sortowania. */
  .dwg-ranking__sort-row {
    flex-direction: column;
    align-items: stretch;
    gap: 5px;
    margin-top: 14px;
  }

  .dwg-ranking__sort-row .dwg-ranking__group--metric .dwg-ranking__label {
    text-align: center;
  }

  .dwg-ranking__sort-row .dwg-ranking__group--period .dwg-ranking__label {
    display: none;
  }

  /* Layout toggle sits outside/below the bordered sorting box, aligned to the right. */
  .dwg-ranking > .dwg-layout-toggle {
    position: absolute;
    top: 100%;
    right: 0;
    left: auto;
    bottom: auto;
    margin-top: 10px;
  }

  .dwg-ranking .dwg-ranking__group .dwg-ranking__segments {
    --dwg-ranking-inactive-bg: var(--dwg-surface);
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(0, 1fr);
    width: 100%;
    padding: 2px;
    border: 0;
    background: var(--dwg-ranking-inactive-bg);
  }

  .dwg-ranking__segments a,
  .dwg-ranking__segments button {
    padding-right: 7px;
    padding-left: 7px;
    font-size: 0.7rem;
  }


  .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__body {
    padding: 0 14px 12px;
  }

  .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__title,
  .dwg-card--lap.dwg-card--text-only .dwg-card__title {
    font-size: 1.08rem;
  }

  .dwg-card--lap.dwg-card--text-only .dwg-card__body {
    min-height: 0;
    padding: 14px;
  }

  .dwg-card--lap.dwg-card--text-only .dwg-meta {
    right: 14px;
    bottom: 12px;
    left: 14px;
  }
}
/* Text-only LAP rows use a compact rectangular card. */
.dwg-card--lap.dwg-card--text-only.dwg-card--text-row {
  aspect-ratio: 16 / 9;
}

#artykuly {
  scroll-margin-top: 50px;
}

.dwg-home-h1 {
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.92rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  color: var(--dwg-muted);
  margin: 0;
}
/* Podhale weather widget */
.dwg-weather {
  width: min(var(--dwg-container, 1200px), calc(100% - 40px));
  margin: 18px auto 0;
  color: var(--dwg-text);
}

.dwg-weather[hidden],
.dwg-weather [hidden] {
  display: none !important;
}

.dwg-weather__panel {
  overflow: hidden;
  border: 1px solid var(--dwg-border);
  border-radius: 10px;
  background: var(--dwg-surface);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03), 0 5px 16px rgba(0, 0, 0, 0.035);
}

.dwg-weather__astro {
  display: none;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--dwg-border);
  background: var(--dwg-surface);
}

.dwg-weather.is-expanded .dwg-weather__astro {
  display: grid;
}

.dwg-weather__astro-item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  gap: 7px;
  padding: 8px 10px;
  text-align: center;
}

.dwg-weather__astro-item + .dwg-weather__astro-item {
  border-left: 1px solid var(--dwg-border);
}

.dwg-weather__astro-item span {
  color: var(--dwg-muted);
  font-size: 0.64rem;
  line-height: 1;
}

.dwg-weather__astro-item strong {
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.dwg-weather__astro-item [data-weather-moon] {
  font-size: 1rem;
  line-height: 1;
}

.dwg-weather__expand {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 22px;
  border-top: 1px solid var(--dwg-border);
  color: var(--dwg-muted);
  background: var(--dwg-surface);
}

.dwg-weather__expand-source {
  display: none;
}

.dwg-weather__expand-button {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
  width: 42px;
  height: 100%;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  cursor: pointer;
}

.dwg-weather__expand-button:hover,
.dwg-weather__expand-button:focus-visible {
  color: var(--dwg-text);
  background: var(--dwg-soft);
}

.dwg-weather__expand-button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -3px;
}

.dwg-weather__expand-icon {
  width: 8px;
  height: 8px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform 160ms ease;
}

.dwg-weather.is-expanded .dwg-weather__expand-icon {
  transform: translateY(2px) rotate(225deg);
}

.dwg-weather__corner-toggle {
  display: none;
}

@media (min-width: 981px) {
  .dwg-weather__expand {
    display: none;
  }

  .dwg-weather__date,
  .dwg-weather__astro-item--moon {
    position: relative;
  }

  .dwg-weather__corner-toggle {
    position: absolute;
    right: 3px;
    bottom: 3px;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    border: 1px solid var(--dwg-border);
    border-radius: 5px;
    color: var(--dwg-muted);
    background: var(--dwg-soft);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
    cursor: pointer;
  }

  .dwg-weather__corner-toggle:hover,
  .dwg-weather__corner-toggle:focus-visible {
    color: var(--dwg-text);
    background: var(--dwg-soft);
  }

  .dwg-weather__corner-toggle:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: -2px;
  }

  .dwg-weather__corner-toggle--open {
    display: flex;
  }

  .dwg-weather.is-expanded .dwg-weather__corner-toggle--open {
    display: none;
  }

  .dwg-weather__corner-toggle--close {
    display: none;
  }

  .dwg-weather.is-expanded .dwg-weather__corner-toggle--close {
    display: flex;
  }

  .dwg-weather__astro-item--moon {
    padding-right: 32px;
  }
}

.dwg-weather__inner {
  display: grid;
  grid-template-columns: minmax(360px, 2.2fr) minmax(0, 3fr) minmax(145px, 0.95fr);
  min-height: 82px;
}

.dwg-weather__summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  min-width: 0;
  gap: 14px;
  padding: 12px 18px;
  text-align: center;
}

.dwg-weather__icon,
.dwg-weather__icon svg {
  display: block;
  width: 52px;
  height: 52px;
}

.dwg-weather__icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.dwg-weather__icon svg,
.dwg-weather-day__icon svg {
  filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.08));
}

.dwg-weather__main-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.dwg-weather__place {
  margin-bottom: 4px;
  color: var(--dwg-muted);
  font-size: 0.66rem;
  font-weight: 600;
  line-height: 1;
  text-transform: uppercase;
}

.dwg-weather__main-text strong {
  font-family: "Newsreader", Georgia, serif;
  font-size: 1.08rem;
  font-weight: 650;
  line-height: 1.15;
}

.dwg-weather__source {
  margin-top: 4px;
  color: var(--dwg-muted);
  font-size: 0.48rem;
  line-height: 1;
  text-decoration: none;
  opacity: 0.55;
}

.dwg-weather__source:hover {
  text-decoration: underline;
  opacity: 0.9;
}

.dwg-weather__temperature {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 88px;
  text-align: center;
}

.dwg-weather__temperature span,
.dwg-weather__item-label,
.dwg-weather__date-number {
  font-size: 0.7rem;
}

.dwg-weather__temperature span {
  margin-bottom: 5px;
  color: var(--dwg-muted);
  line-height: 1;
  white-space: nowrap;
}

.dwg-weather__temperature strong {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1;
}

.dwg-weather__stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-width: 0;
  border-left: 1px solid var(--dwg-border);
}

.dwg-weather__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 12px;
  text-align: center;
}

.dwg-weather__item + .dwg-weather__item {
  border-left: 1px solid var(--dwg-border);
}

.dwg-weather__item-label,
.dwg-weather__date-number {
  color: var(--dwg-muted);
  font-weight: 500;
  line-height: 1.1;
}

.dwg-weather__item strong {
  margin-top: 6px;
  font-size: 0.84rem;
  font-weight: 650;
  line-height: 1.1;
  white-space: nowrap;
}

.dwg-weather__date {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  padding: 12px 15px;
  border-left: 1px solid var(--dwg-border);
  text-align: center;
}

.dwg-weather__day {
  margin-top: 5px;
  font-family: "Newsreader", Georgia, serif;
  font-size: 1.18rem;
  font-weight: 700;
  line-height: 1.05;
}

.dwg-weather__controls {
  display: grid;
  grid-template-columns: minmax(100px, 1fr) auto minmax(100px, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 5px 6px 5px 14px;
  border-bottom: 1px solid var(--dwg-border);
  background: var(--dwg-soft);
}

.dwg-weather__control-source {
  justify-self: start;
  color: var(--dwg-muted);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.62rem;
  font-weight: 700;
  text-decoration: none;
}

.dwg-weather__control-source:hover,
.dwg-weather__control-source:focus-visible {
  color: var(--dwg-text);
}

.dwg-weather__control-titles {
  min-width: 150px;
  text-align: center;
}

.dwg-weather__control-titles span,
.dwg-weather__control-titles strong,
.dwg-weather__control-titles small {
  display: block;
}

.dwg-weather__control-titles strong {
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.1;
  text-transform: uppercase;
}

.dwg-weather__control-titles small {
  margin-top: 3px;
  color: var(--dwg-muted);
  font-family: "Newsreader", Georgia, serif;
  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.dwg-weather__segments {
  justify-self: end;
}

.dwg-weather__segments button {
  border: 0;
  background: transparent;
  cursor: pointer;
}

.dwg-weather__segments button.is-active {
  color: var(--dwg-surface);
  background: var(--dwg-text);
}

.dwg-weather__segments button:disabled {
  cursor: wait;
  opacity: 0.45;
}

.dwg-weather__forecast {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  min-height: 128px;
}

.dwg-weather-day {
  display: grid;
  grid-template-rows: auto 38px minmax(2.25em, auto) auto;
  align-items: center;
  justify-items: center;
  min-width: 0;
  padding: 9px 7px 10px;
  text-align: center;
}

.dwg-weather-day + .dwg-weather-day {
  border-left: 1px solid var(--dwg-border);
}

.dwg-weather-day__head {
  display: flex;
  align-items: baseline;
  justify-content: center;
  width: 100%;
  gap: 5px;
}

.dwg-weather-day__head strong {
  font-size: 0.76rem;
  line-height: 1;
}

.dwg-weather-day__head span,
.dwg-weather-day__condition,
.dwg-weather-day__precip {
  color: var(--dwg-muted);
  font-size: 0.62rem;
  line-height: 1.15;
}

.dwg-weather-day__icon,
.dwg-weather-day__icon svg {
  width: 36px;
  height: 36px;
}

.dwg-weather-day__condition {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.dwg-weather-day__temperature {
  display: flex;
  align-items: baseline;
  gap: 5px;
  margin-top: 3px;
}

.dwg-weather-day__temperature strong {
  font-size: 1rem;
  line-height: 1;
}

.dwg-weather-day__temperature span {
  color: var(--dwg-muted);
  font-size: 0.72rem;
}

.dwg-weather-day__precip {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-top: 4px;
}

.dwg-weather-day__precip svg {
  width: 11px;
  height: 11px;
  fill: none;
  stroke: #3293e6;
  stroke-width: 1.8;
}

@media (max-width: 980px) {
  .dwg-weather {
    margin-top: 14px;
  }

  .dwg-weather__inner {
    grid-template-columns: minmax(300px, 1.9fr) minmax(0, 2.5fr) minmax(125px, 0.85fr);
    min-height: 72px;
  }

  .dwg-weather__summary {
    gap: 9px;
    padding: 10px;
  }

  .dwg-weather__icon,
  .dwg-weather__icon svg {
    width: 40px;
    height: 40px;
  }

  .dwg-weather__main-text strong {
    font-size: 0.9rem;
  }

  .dwg-weather__place {
    font-size: 0.54rem;
  }

  .dwg-weather__source {
    font-size: 0.43rem;
  }

  .dwg-weather__temperature {
    min-width: 78px;
  }

  .dwg-weather__temperature strong {
    font-size: 1.35rem;
  }

  .dwg-weather__item {
    padding: 9px 5px;
  }

  .dwg-weather__item strong {
    margin-top: 4px;
    font-size: 0.67rem;
  }

  .dwg-weather__date {
    padding: 9px 7px;
  }

  .dwg-weather__day {
    margin-top: 4px;
    font-size: 1.08rem;
  }
}

/* Na mobile .dwg-weather__controls (Open-Meteo/tytul/Dzis-7dni) jest
   schowany domyslnie (widoczny tylko po rozwinieciu szczegolow) - ten
   pasek to osobny, zawsze widoczny naglowek z sama nazwa, tej samej
   wysokosci co pasek w kafelkach "Przeslane przez mieszkancow" /
   "Podsumowanie wczorajszego dnia" ponizej (patrz .dwg-card--homepage-panel__head
   w @media max-width:640px). */
.dwg-weather__mobile-head {
  display: none;
}

/* Osobny (waszy niz reszta widgetu pogody) prog @media 640px - dokladnie
   ten sam, co dla .dwg-card--homepage-panel__head w kafelkach ponizej.
   Wczesniej ten pasek chowal/pokazywal sie razem z reszta widgetu pogody
   przy 700px, wiec w zakresie 641-700px mial juz wersje mobilna, podczas
   gdy paski w kafelkach byly jeszcze w wersji desktopowej (40px) -
   rozne wysokosci w tym zakresie szerokosci. */
@media (max-width: 640px) {
  .dwg-weather__mobile-head {
    display: flex;
    order: 0;
    align-items: center;
    justify-content: center;
    /* Ta sama stala wysokosc co .dwg-card--homepage-panel__head na mobile -
       patrz komentarz przy tamtej regule (tu nie ma ikonki, wiec bez
       jawnej wartosci ten pasek wychodzil odrobine nizszy). */
    min-height: 20px;
    padding: 4px 12px;
    border-bottom: 1px solid var(--dwg-border);
    background: var(--dwg-soft);
  }

  /* [data-weather-heading] jest bezposrednim dzieckiem .dwg-weather__mobile-head
     (display:flex), wiec staje sie elementem flex - bez wlasnego font-size
     dziedziczy domyslne 16px przegladarki i przy tym rozmiarze przegladarka
     liczy dla niego "belke" wiersza (~25px) niezaleznie od dużo mniejszego
     <strong> w srodku (0.6rem = 9.6px), robiac caly pasek wyzszym niz
     analogiczny pasek w kafelkach, gdzie nie ma takiego dodatkowego
     opakowania. Font-size/line-height musza wiec byc tez na samym spanie. */
  .dwg-weather__mobile-head [data-weather-heading],
  .dwg-weather__mobile-head strong {
    font-size: 0.6rem;
    line-height: 1.1;
  }

  .dwg-weather__mobile-head strong {
    color: var(--dwg-navy);
    font-family: "Albert Sans", Arial, sans-serif;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-transform: uppercase;
  }
}

@media (max-width: 700px) {
  .dwg-weather__panel {
    display: flex;
    flex-direction: column;
  }

  .dwg-weather__controls {
    display: none;
    order: 3;
    min-height: 0;
    padding: 4px;
    background: var(--dwg-surface);
  }

  .dwg-weather.is-expanded .dwg-weather__controls {
    display: block;
  }

  .dwg-weather__inner,
  .dwg-weather__week {
    order: 1;
  }

  .dwg-weather__control-source,
  .dwg-weather__control-titles {
    display: none;
  }

  .dwg-weather__segments {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    background: var(--dwg-surface);
  }

  .dwg-weather__segments button {
    width: 100%;
  }
.dwg-weather {
    width: min(var(--dwg-container, 1200px), calc(100% - 28px));
    margin-top: 12px;
  }

  .dwg-weather__inner {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    min-height: 0;
  }

  .dwg-weather__summary {
    grid-column: 1 / 4;
    grid-row: 1;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 6px;
    padding: 9px 7px;
  }

  .dwg-weather__date {
    grid-column: 4;
    grid-row: 1;
    padding: 9px 4px;
    border-left: 1px solid var(--dwg-border);
  }

  .dwg-weather__stats {
    display: none;
    grid-column: 1 / -1;
    grid-row: 2;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--dwg-border);
    border-left: 0;
  }

  .dwg-weather.is-expanded .dwg-weather__stats {
    display: grid;
  }

  .dwg-weather__astro {
    order: 2;
  }

  .dwg-weather__astro-item {
    flex-direction: column;
    gap: 3px;
    padding: 7px 2px;
  }

  .dwg-weather__astro-item span {
    font-size: 0.5rem;
  }

  .dwg-weather__astro-item strong {
    overflow: hidden;
    max-width: 100%;
    font-size: 0.57rem;
    text-overflow: ellipsis;
  }

  .dwg-weather__expand {
    order: 4;
    height: 22px;
    border-top: 1px solid var(--dwg-border);
  }

  .dwg-weather.is-expanded .dwg-weather__expand {
    border-top: 0;
  }

  .dwg-weather__expand-source {
    position: absolute;
    left: 10px;
    display: block;
    color: var(--dwg-muted);
    font-family: "Albert Sans", Arial, sans-serif;
    font-size: 0.52rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
  }

  .dwg-weather__expand-source:hover,
  .dwg-weather__expand-source:focus-visible {
    color: var(--dwg-text);
  }

  .dwg-weather__icon,
  .dwg-weather__icon svg {
    width: 34px;
    height: 34px;
  }

  .dwg-weather__place {
    font-size: 0.7rem;
  }

  .dwg-weather__main-text strong {
    font-size: 0.74rem;
  }

  .dwg-weather__source {
    margin-top: 3px;
    font-size: 0.38rem;
  }

  .dwg-weather__temperature {
    min-width: 63px;
  }

  .dwg-weather__temperature strong {
    font-size: 1.2rem;
  }

  .dwg-weather__day {
    margin-top: 4px;
    font-size: 1rem;
  }

  .dwg-weather__item {
    padding: 9px 3px;
  }

  .dwg-weather__item strong {
    margin-top: 4px;
    font-size: 0.65rem;
  }

  .dwg-weather__forecast {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    min-height: 98px;
    overflow: hidden;
  }

  .dwg-weather-day {
    grid-template-rows: auto 30px auto;
    min-width: 0;
    padding: 7px 2px 8px;
  }

  .dwg-weather-day__head {
    display: block;
  }

  .dwg-weather-day__head strong {
    display: block;
    overflow: hidden;
    font-size: 0.58rem;
    text-overflow: clip;
  }

  .dwg-weather-day__head span,
  .dwg-weather-day__condition {
    display: none;
  }

  .dwg-weather-day__icon,
  .dwg-weather-day__icon svg {
    width: 28px;
    height: 28px;
  }

  .dwg-weather-day__temperature {
    gap: 2px;
    margin-top: 2px;
  }

  .dwg-weather-day__temperature strong {
    font-size: 0.76rem;
  }

  .dwg-weather-day__temperature span {
    font-size: 0.58rem;
  }
}

@media (max-width: 380px) {
  .dwg-weather__summary {
    gap: 4px;
    padding-right: 5px;
    padding-left: 5px;
  }

  .dwg-weather__icon,
  .dwg-weather__icon svg {
    width: 29px;
    height: 29px;
  }

  .dwg-weather__main-text strong {
    font-size: 0.67rem;
  }

  .dwg-weather__temperature {
    min-width: 55px;
  }

  .dwg-weather__temperature strong {
    font-size: 1.05rem;
  }

  .dwg-weather__date {
    padding-right: 3px;
    padding-left: 3px;
  }

  .dwg-weather__day {
    font-size: 0.9rem;
  }

  .dwg-weather__item strong {
    font-size: 0.61rem;
  }
}
@media (min-width: 981px) {
  .dwg-weather__controls {
    min-height: 40px;
    padding-top: 4px;
    padding-bottom: 4px;
  }

  .dwg-weather__inner {
    min-height: 72px;
  }

  .dwg-weather__summary {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .dwg-weather__item,
  .dwg-weather__date {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .dwg-weather__astro-item {
    min-height: 50px;
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .dwg-weather__astro-item span {
    font-size: 0.68rem;
  }

  .dwg-weather__astro-item strong {
    font-size: 0.8rem;
  }

  .dwg-weather__astro-item [data-weather-moon] {
    font-size: 1.15rem;
  }
}
/* v2.14: consistent content width across the front page and subpages */
.dwg-page__header,
.dwg-content--page,
.dwg-article__header-main {
  width: 100%;
  max-width: none;
}
.dwg-article__header {
  max-width: none;
}
/* v2.15: centered page titles */
.dwg-page__header {
  text-align: center;
}
.dwg-page__header h1 {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
/* Sponsored link form and LAP-compatible sponsored card. */
.dwg-sponsored-form {
  width: 100%;
  color: var(--dwg-text);
  font-family: "Albert Sans", Arial, sans-serif;
}

.dwg-sponsored-form > form {
  position: relative;
  padding: 22px;
  border: 1px solid var(--dwg-border);
  border-radius: var(--dwg-radius);
  background: var(--dwg-surface);
}

.dwg-sponsored-form h2 {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.2;
  letter-spacing: 0;
}

.dwg-sponsored-form__intro {
  margin: 0;
  color: var(--dwg-muted);
  font-size: 0.86rem;
  line-height: 1.5;
}

.dwg-sponsored-form__submit + .dwg-sponsored-form__intro {
  padding-top: 16px;
}

.dwg-sponsored-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 18px;
  margin-top: 20px;
}

.dwg-sponsored-form__field {
  display: grid;
  min-width: 0;
  gap: 6px;
  color: var(--dwg-text);
  font-size: 0.86rem;
  font-weight: 700;
}

.dwg-sponsored-form__field--full {
  grid-column: 1 / -1;
}

.dwg-sponsored-form__field input {
  box-sizing: border-box;
  width: 100%;
  min-height: 42px;
  margin: 0;
  padding: 9px 11px;
  border: 1px solid var(--dwg-border);
  border-radius: 5px;
  color: var(--dwg-text);
  background: var(--dwg-surface);
  font: inherit;
  font-weight: 400;
}

.dwg-sponsored-form__field input:focus {
  border-color: #146bd1;
  outline: 2px solid rgba(20, 107, 209, 0.2);
  outline-offset: 1px;
}

.dwg-sponsored-form__field small {
  min-height: 1.2em;
  color: var(--dwg-muted);
  font-size: 0.78rem;
  font-weight: 400;
  line-height: 1.4;
}

.dwg-sponsored-form__images {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: end;
  gap: 12px;
}

.dwg-sponsored-form__images[hidden] {
  display: none;
}

.dwg-sponsored-form__image-promo {
  margin: 12px 0 0;
  padding: 12px 14px;
  border-left: 3px solid #075fbe;
  color: var(--dwg-muted);
  background: color-mix(in srgb, var(--dwg-surface) 92%, #075fbe);
  font-size: 0.84rem;
  line-height: 1.45;
}

.dwg-sponsored-form__image-promo strong {
  color: var(--dwg-text);
}

.dwg-sponsored-form__image-promo a {
  color: #075fbe;
  font-weight: 800;
  white-space: nowrap;
}

.dwg-sponsored-form__or {
  padding-bottom: 12px;
  color: var(--dwg-muted);
  font-size: 0.78rem;
  font-weight: 700;
  text-align: center;
}

.dwg-sponsored-form__submit {
  min-height: 42px;
  margin-top: 18px;
  padding: 0 18px;
  border: 1px solid #075dbb;
  border-radius: 5px;
  color: #fff;
  background: #075fbe;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.dwg-sponsored-form__submit:hover,
.dwg-sponsored-form__submit:focus-visible {
  background: #084f9b;
}

.dwg-sponsored-form__trap {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.dwg-sponsored-form__notice {
  margin-bottom: 16px;
  padding: 12px 14px;
  border-left: 4px solid;
  border-radius: 4px;
  background: var(--dwg-surface);
}

.dwg-sponsored-form__notice--success {
  border-color: #18864b;
}

.dwg-sponsored-form__notice--error {
  border-color: #c62d3c;
}

.dwg-card--sponsored .dwg-card__sponsored-meta,
.dwg-card--sponsored.dwg-card--text-only .dwg-card__sponsored-meta {
  justify-content: center;
  text-align: center;
}

.dwg-card--lap.dwg-card--sponsored .dwg-card__title,
.dwg-card--lap.dwg-card--sponsored .dwg-card__title a {
  color: #d96500;
}

.dwg-card--sponsored .dwg-card__sponsored-label {
  width: 100%;
  color: #d96500;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: center;
  text-transform: uppercase;
}

html[data-dwg-theme="dark"] .dwg-card--lap.dwg-card--sponsored .dwg-card__title,
html[data-dwg-theme="dark"] .dwg-card--lap.dwg-card--sponsored .dwg-card__title a,
html[data-dwg-theme="dark"] .dwg-card--sponsored .dwg-card__sponsored-label {
  color: #ff9b42;
}

@media (max-width: 640px) {
  .dwg-sponsored-form > form {
    padding: 16px;
  }

  .dwg-sponsored-form__grid,
  .dwg-sponsored-form__images {
    grid-template-columns: minmax(0, 1fr);
  }

  .dwg-sponsored-form__or {
    padding: 0;
  }
}
/* Header search: icon submit inside the field on desktop and tablet. */
.dwg-header-search {
  position: relative;
  gap: 0;
}

.dwg-header-search input {
  width: 100%;
  padding-right: 46px;
  padding-left: 14px;
}

.dwg-header-search input::-webkit-search-cancel-button {
  display: none;
  -webkit-appearance: none;
}

.dwg-header-search .dwg-header-search__submit {
  position: absolute;
  top: 50%;
  right: 4px;
  width: 34px;
  min-width: 34px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 5px;
  color: var(--dwg-muted);
  background: transparent;
  transform: translateY(-50%);
}

.dwg-header-search .dwg-header-search__submit::before {
  content: none;
}

.dwg-header-search .dwg-header-search__submit svg {
  display: block;
  width: 18px;
  height: 18px;
}

.dwg-header-search .dwg-header-search__submit:hover,
.dwg-header-search .dwg-header-search__submit:focus-visible {
  color: var(--dwg-text);
  background: var(--dwg-soft);
  transform: translateY(-50%);
  outline: none;
}

html[data-dwg-theme="dark"] .dwg-header-search .dwg-header-search__submit {
  color: var(--dwg-muted);
  background: transparent;
  border-color: transparent;
}

html[data-dwg-theme="dark"] .dwg-header-search .dwg-header-search__submit:hover,
html[data-dwg-theme="dark"] .dwg-header-search .dwg-header-search__submit:focus-visible {
  color: var(--dwg-text);
  background: var(--dwg-soft);
}

/* Tablet menu search: submit icon inside the field. */
@media (min-width: 641px) and (max-width: 980px) {
  .dwg-mobile-search .dwg-search {
    position: relative;
    display: block;
  }

  .dwg-mobile-search .dwg-search__field {
    display: block;
    width: 100%;
  }

  .dwg-mobile-search .dwg-search__icon {
    display: none;
  }

  .dwg-mobile-search .dwg-search__field input {
    box-sizing: border-box;
    width: 100%;
    padding-right: 46px;
    padding-left: 14px;
  }

  .dwg-mobile-search .dwg-search__field input::-webkit-search-cancel-button {
    display: none;
    -webkit-appearance: none;
  }

  .dwg-mobile-search .dwg-search button {
    position: absolute;
    top: 50%;
    right: 4px;
    width: 34px;
    min-width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 5px;
    color: var(--dwg-muted);
    background: transparent;
    font-size: 0;
    transform: translateY(-50%);
  }

  .dwg-mobile-search .dwg-search button::before {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    margin: auto;
    background: currentColor;
    -webkit-mask: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10.75 4.5a6.25 6.25 0 1 0 0 12.5 6.25 6.25 0 0 0 0-12.5Zm-8 6.25a8 8 0 1 1 14.1 5.17l4.36 4.36a.75.75 0 0 1-1.06 1.06l-4.36-4.36A8 8 0 0 1 2.75 10.75Z"/></svg>') center / contain no-repeat;
    mask: url('data:image/svg+xml;utf8,<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M10.75 4.5a6.25 6.25 0 1 0 0 12.5 6.25 6.25 0 0 0 0-12.5Zm-8 6.25a8 8 0 1 1 14.1 5.17l4.36 4.36a.75.75 0 0 1-1.06 1.06l-4.36-4.36A8 8 0 0 1 2.75 10.75Z"/></svg>') center / contain no-repeat;
  }

  .dwg-mobile-search .dwg-search button:hover,
  .dwg-mobile-search .dwg-search button:focus-visible {
    color: var(--dwg-text);
    background: var(--dwg-soft);
    outline: none;
  }

  html[data-dwg-theme="dark"] .dwg-mobile-search .dwg-search button {
    color: var(--dwg-muted);
    background: transparent;
    border-color: transparent;
  }

  html[data-dwg-theme="dark"] .dwg-mobile-search .dwg-search button:hover,
  html[data-dwg-theme="dark"] .dwg-mobile-search .dwg-search button:focus-visible {
    color: var(--dwg-text);
    background: var(--dwg-soft);
  }
}

/* Circular search submit without square glow. */
.dwg-header-search .dwg-header-search__submit {
  border: 1px solid var(--dwg-border-strong);
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
}

.dwg-header-search .dwg-header-search__submit:hover,
.dwg-header-search .dwg-header-search__submit:focus-visible {
  border-color: var(--dwg-text);
  background: transparent;
  box-shadow: none;
  outline: none;
}

html[data-dwg-theme="dark"] .dwg-header-search .dwg-header-search__submit,
html[data-dwg-theme="dark"] .dwg-header-search .dwg-header-search__submit:hover,
html[data-dwg-theme="dark"] .dwg-header-search .dwg-header-search__submit:focus-visible {
  border-color: var(--dwg-border-strong);
  background: transparent;
  box-shadow: none;
}

@media (min-width: 641px) and (max-width: 980px) {
  .dwg-mobile-search .dwg-search button {
    border: 1px solid var(--dwg-border-strong);
    border-radius: 50%;
    background: transparent;
    box-shadow: none;
  }

  .dwg-mobile-search .dwg-search button:hover,
  .dwg-mobile-search .dwg-search button:focus-visible {
    border-color: var(--dwg-text);
    background: transparent;
    box-shadow: none;
    outline: none;
  }

  html[data-dwg-theme="dark"] .dwg-mobile-search .dwg-search button,
  html[data-dwg-theme="dark"] .dwg-mobile-search .dwg-search button:hover,
  html[data-dwg-theme="dark"] .dwg-mobile-search .dwg-search button:focus-visible {
    border-color: var(--dwg-border-strong);
    background: transparent;
    box-shadow: none;
  }
}

/* Public local-link submission form. */
.dwg-user-link-form {
  width: 100%;
  color: var(--dwg-text);
  font-family: "Albert Sans", Arial, sans-serif;
}

.dwg-user-link-form > form {
  position: relative;
  padding: 22px;
  border: 1px solid var(--dwg-border);
  border-radius: 6px;
  background: var(--dwg-surface);
}

.dwg-user-link-form h2 {
  margin: 0;
  font-size: 1.35rem;
  line-height: 1.2;
  letter-spacing: 0;
  text-align: left;
}

.dwg-user-link-form__intro {
  max-width: 760px;
  margin: 8px 0 0;
  color: var(--dwg-muted);
  font-size: 0.88rem;
  line-height: 1.5;
}

.dwg-user-link-form__field {
  display: grid;
  gap: 6px;
  margin-top: 20px;
  font-size: 0.86rem;
  font-weight: 700;
}

.dwg-user-link-form__field input {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 5px;
  color: var(--dwg-text);
  background: var(--dwg-surface);
  font: inherit;
  font-weight: 400;
}

.dwg-user-link-form__field input:focus {
  border-color: #146bd1;
  outline: 2px solid rgba(20, 107, 209, 0.2);
  outline-offset: 1px;
}

.dwg-user-link-form__terms {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 18px 0;
  font-size: 0.86rem;
  font-weight: 700;
  line-height: 1.4;
}

.dwg-user-link-form__terms input {
  width: 17px;
  height: 17px;
  margin: 2px 0 0;
  flex: 0 0 17px;
}

.dwg-user-link-form__terms a {
  color: var(--dwg-blue);
  text-decoration: none;
}

.dwg-user-link-form__submit {
  min-height: 42px;
  padding: 0 18px;
  border: 1px solid #075dbb;
  border-radius: 5px;
  color: #fff;
  background: #075fbe;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.dwg-user-link-form__submit:hover,
.dwg-user-link-form__submit:focus-visible {
  background: #084f9b;
}

.dwg-user-link-form__trap {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.dwg-user-link-form__notice {
  margin: 0 0 18px;
  padding: 12px 14px;
  border-left: 4px solid;
  border-radius: 4px;
  background: var(--dwg-surface);
}

.dwg-user-link-form__notice--success {
  border-color: #18864b;
}

.dwg-user-link-form__notice--error {
  border-color: #c62d3c;
}

@media (max-width: 640px) {
  .dwg-user-link-form > form {
    padding: 16px;
  }

  .dwg-user-link-form__submit {
    width: 100%;
  }
}
/* Stronger text-link contrast in light mode. */
html:not([data-dwg-theme="dark"]) .dwg-content p a,
html:not([data-dwg-theme="dark"]) .dwg-content li a,
html:not([data-dwg-theme="dark"]) .dwg-content blockquote a,
html:not([data-dwg-theme="dark"]) .dwg-user-link-form__intro a,
html:not([data-dwg-theme="dark"]) .dwg-user-link-form__terms a,
html:not([data-dwg-theme="dark"]) .dwgo-terms a,
html:not([data-dwg-theme="dark"]) .dwgo-image-promo a,
html:not([data-dwg-theme="dark"]) .dwg-sponsored-form__intro a,
html:not([data-dwg-theme="dark"]) .dwg-sponsored-form__image-promo a {
  color: #075fbe;
  text-decoration-line: underline;
  text-decoration-color: rgba(7, 95, 190, 0.42);
  text-decoration-thickness: 1px;
  text-underline-offset: 0.18em;
}

html:not([data-dwg-theme="dark"]) .dwg-content p a:hover,
html:not([data-dwg-theme="dark"]) .dwg-content p a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwg-content li a:hover,
html:not([data-dwg-theme="dark"]) .dwg-content li a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwg-content blockquote a:hover,
html:not([data-dwg-theme="dark"]) .dwg-content blockquote a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwg-user-link-form__intro a:hover,
html:not([data-dwg-theme="dark"]) .dwg-user-link-form__intro a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwg-user-link-form__terms a:hover,
html:not([data-dwg-theme="dark"]) .dwg-user-link-form__terms a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwgo-terms a:hover,
html:not([data-dwg-theme="dark"]) .dwgo-terms a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwgo-image-promo a:hover,
html:not([data-dwg-theme="dark"]) .dwgo-image-promo a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwg-sponsored-form__intro a:hover,
html:not([data-dwg-theme="dark"]) .dwg-sponsored-form__intro a:focus-visible,
html:not([data-dwg-theme="dark"]) .dwg-sponsored-form__image-promo a:hover,
html:not([data-dwg-theme="dark"]) .dwg-sponsored-form__image-promo a:focus-visible {
  color: #004a96;
  text-decoration-color: currentColor;
}
/* Offer submission shortcut button. */
.dwg-offer-add-button {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  margin: 0 0 18px;
}

.dwg-offer-add-button .dwg-ranking__segments {
  flex: 0 0 auto;
}

.dwg-offer-add-button a {
  white-space: nowrap;
}
/* Full-width offer shortcut on mobile. */
@media (max-width: 782px) {
  .dwg-offer-add-button {
    display: block !important;
    align-self: stretch;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
  }

  .dwg-offer-add-button .dwg-ranking__segments {
    display: block !important;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
  }

  .dwg-offer-add-button .dwg-ranking__segments > a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
  }
}
/* Empty offers call to action. */
.dwgo-empty strong {
  color: var(--dwg-text);
}

.dwgo-empty a {
  color: #075fbe;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 0.16em;
}

html[data-dwg-theme="dark"] .dwgo-empty a {
  color: var(--dwg-blue);
}
/* Collapsible and scrollable mobile navigation. */
.dwg-submenu-toggle {
  display: none;
}

@media (max-width: 980px) {
  body.dwg-menu-open {
    overflow: hidden;
  }

  .dwg-nav {
    inset: 74px 0 auto;
    max-height: calc(100vh - 74px);
    max-height: calc(100dvh - 74px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }

  .dwg-menu > .menu-item-has-children {
    position: relative;
  }

  .dwg-menu > .menu-item-has-children > a {
    padding-right: 52px;
  }

  .dwg-submenu-toggle {
    position: absolute;
    top: 3px;
    right: 0;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid var(--dwg-border);
    border-radius: 6px;
    color: var(--dwg-muted);
    background: var(--dwg-surface);
    cursor: pointer;
  }

  .dwg-submenu-toggle:hover,
  .dwg-submenu-toggle:focus-visible {
    color: var(--dwg-text);
    border-color: currentColor;
  }

  .dwg-submenu-toggle span {
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    transition: transform 160ms ease;
  }

  .dwg-menu--enhanced .menu-item-has-children > .sub-menu {
    display: none !important;
  }

  .dwg-menu--enhanced .menu-item-has-children.is-submenu-open > .sub-menu {
    display: block !important;
  }

  .menu-item-has-children.is-submenu-open > .dwg-submenu-toggle span {
    transform: translateY(2px) rotate(225deg);
  }

  .dwg-mobile-social {
    padding-bottom: 28px;
  }
}
/* Hide category labels in offer cards. */
.dwgo-card__category {
  display: none !important;
}
/* Square offer thumbnails with flowing text at every viewport width. */
.dwgo-wrap .dwgo-card--image {
  display: flow-root;
  min-height: 0;
  padding: 15px;
}

.dwgo-wrap .dwgo-card--image > .dwgo-card__image,
.dwgo-wrap .dwgo-card--image > .dwgo-card__image-link {
  float: left;
  width: 220px;
  height: 220px;
  min-height: 0;
  aspect-ratio: 1 / 1;
  margin: 0 16px 9px 0;
  object-fit: cover;
}

.dwgo-wrap .dwgo-card--image > .dwgo-card__image-link .dwgo-card__image {
  float: none;
  width: 100%;
  height: 100%;
  min-height: 0;
  margin: 0;
  object-fit: cover;
}

.dwgo-wrap .dwgo-card--image .dwgo-card__body {
  display: contents;
}

.dwgo-wrap .dwgo-card--image .dwgo-card__body > * + * {
  margin-top: 8px;
}


@media (max-width: 900px) {
  .dwgo-wrap .dwgo-card--image > .dwgo-card__image,
  .dwgo-wrap .dwgo-card--image > .dwgo-card__image-link {
    width: 170px;
    height: 170px;
    margin-right: 15px;
    margin-bottom: 8px;
  }
}

@media (max-width: 760px) {
  .dwgo-wrap .dwgo-card--image > .dwgo-card__image,
  .dwgo-wrap .dwgo-card--image > .dwgo-card__image-link {
    width: 150px;
    height: 150px;
  }
}

@media (max-width: 640px) {
  .dwgo-wrap .dwgo-card--image {
    padding: 13px;
  }

  .dwgo-wrap .dwgo-card--image > .dwgo-card__image,
  .dwgo-wrap .dwgo-card--image > .dwgo-card__image-link {
    width: 132px;
    height: 132px;
    margin-right: 13px;
    margin-bottom: 6px;
  }
}

@media (max-width: 420px) {
  .dwgo-wrap .dwgo-card--image {
    padding: 12px;
  }

  .dwgo-wrap .dwgo-card--image > .dwgo-card__image,
  .dwgo-wrap .dwgo-card--image > .dwgo-card__image-link {
    width: 108px;
    height: 108px;
    margin-right: 11px;
    margin-bottom: 5px;
  }
}
/* Offer form character counters. */
.dwgo-character-count {
  display: block;
  justify-self: end;
  margin-top: -2px;
  color: var(--dwg-muted);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.7rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: right;
}

.dwgo-character-count.is-near-limit {
  color: #9a6700;
}

.dwgo-character-count.is-at-limit {
  color: #b42318;
  font-weight: 800;
}

html[data-dwg-theme="dark"] .dwgo-character-count.is-near-limit {
  color: #f0bd55;
}

html[data-dwg-theme="dark"] .dwgo-character-count.is-at-limit {
  color: #ff8c84;
}
/* Compact weather controls row on desktop and tablet. */
@media (min-width: 701px) {
  .dwg-weather__controls {
    min-height: 40px;
    padding: 2px 5px 2px 12px;
  }

  .dwg-weather__inner {
    min-height: 65px;
  }

  .dwg-weather__segments button {
    min-height: 30px;
    padding-top: 4px;
    padding-bottom: 4px;
  }
}

@media (min-width: 981px) {
  .dwg-weather__summary {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
/* Page links generated from matching child categories. */
.dwg-page-category-tools {
  display: grid;
  justify-items: end;
  gap: 14px;
  width: 100%;
  margin-top: -10px;
  margin-bottom: 24px;
}

.dwg-page-subcategory-nav {
  justify-content: flex-end;
  width: 100%;
  margin: 0;
}

.dwg-page-subcategory-nav .dwg-ranking__group {
  align-items: end;
  max-width: 100%;
}

.dwg-page-subcategory-nav .dwg-ranking__label {
  text-align: right;
}

.dwg-page-subcategory-nav .dwg-ranking__segments {
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  padding: 0;
  border: 0;
  background: transparent;
}

.dwg-page-subcategory-nav .dwg-ranking__segments a {
  border: 1px solid var(--dwg-border);
  border-radius: 5px;
  background: var(--dwg-ranking-inactive-bg);
}

.dwg-page-subcategory-nav__toggle {
  display: none;
}

.dwg-page-category-tools__add,
.dwg-page-category-tools__add .dwg-offer-add-button {
  width: auto;
  margin: 0;
}

.dwg-page-category-tools__add .dwg-offer-add-button {
  justify-content: flex-end;
}

@media (min-width: 641px) and (max-width: 782px) {
  .dwg-page-category-tools__add,
  .dwg-page-category-tools__add .dwg-offer-add-button,
  .dwg-page-category-tools__add .dwg-offer-add-button .dwg-ranking__segments {
    display: flex !important;
    width: auto !important;
    max-width: none !important;
  }

  .dwg-page-category-tools__add .dwg-offer-add-button .dwg-ranking__segments > a {
    width: auto !important;
    max-width: none !important;
  }
}

@media (max-width: 640px) {
  .dwg-page-category-tools {
    align-items: stretch;
    justify-items: stretch;
    gap: 10px;
    margin-top: -8px;
    margin-bottom: 24px;
  }

  .dwg-ranking.dwg-page-subcategory-nav {
    margin: 0;
  }

  .dwg-page-subcategory-nav .dwg-ranking__group {
    align-items: stretch;
    width: 100%;
  }

  .dwg-page-subcategory-nav .dwg-ranking__label {
    text-align: center;
  }

  .dwg-ranking.dwg-page-subcategory-nav > .dwg-ranking__group .dwg-ranking__segments {
    display: grid;
    grid-auto-flow: row;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    padding: 0;
    border: 0;
    background: transparent;
  }

  .dwg-page-subcategory-nav .dwg-ranking__segments a:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  .dwg-page-subcategory-nav:not(.is-expanded) .dwg-page-subcategory-nav__extra {
    display: none;
  }

  .dwg-page-subcategory-nav__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: center;
    min-height: 30px;
    margin-top: 2px;
    padding: 4px 10px;
    border: 0;
    color: var(--dwg-muted);
    background: transparent;
    font: 700 0.7rem/1.2 "Albert Sans", Arial, sans-serif;
    cursor: pointer;
  }

  .dwg-page-subcategory-nav__toggle:hover,
  .dwg-page-subcategory-nav__toggle:focus-visible {
    color: var(--dwg-text);
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  .dwg-page-category-tools__add,
  .dwg-page-category-tools__add .dwg-offer-add-button,
  .dwg-page-category-tools__add .dwg-offer-add-button .dwg-ranking__segments,
  .dwg-page-category-tools__add .dwg-offer-add-button .dwg-ranking__segments > a {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100% !important;
  }
}

.dwgo-osm-attribution {
  margin: 14px 0 0;
  color: var(--dwg-muted);
  font-size: 0.7rem;
  line-height: 1.4;
  text-align: right;
}

.dwgo-osm-attribution a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.dwgo-offer-card-tools {
  display: flex;
  clear: both;
  align-items: center;
  justify-content: space-between;
  gap: 8px 14px;
  margin: 8px 12px 10px;
  padding-top: 9px;
  border-top: 1px solid var(--dwg-border);
}

.dwgo-admin-delete {
  display: flex;
  flex: 0 0 auto;
  margin: 0;
}

.dwgo-admin-delete button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 1px solid rgba(150, 25, 35, 0.4);
  border-radius: 5px;
  color: #fff;
  background: rgba(150, 25, 35, 0.88);
  cursor: pointer;
  transition: background-color 160ms ease, border-color 160ms ease;
}

.dwgo-admin-delete button:hover,
.dwgo-admin-delete button:focus-visible {
  border-color: rgba(190, 28, 40, 1);
  background: rgba(190, 28, 40, 0.98);
}

.dwgo-admin-delete .dashicons {
  width: 14px;
  height: 14px;
  font-size: 14px;
  line-height: 14px;
}

.dwgo-update-toggle {
  flex: 0 0 auto;
  padding: 0;
  border: 0;
  color: var(--dwg-muted);
  background: transparent;
  font: 700 0.68rem/1.3 "Albert Sans", Arial, sans-serif;
  text-align: left;
  cursor: pointer;
}

.dwgo-update-toggle:hover,
.dwgo-update-toggle:focus-visible,
.dwgo-update-toggle[aria-expanded="true"] {
  color: var(--dwg-text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.dwgo-osm-card-meta {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 5px 10px;
  margin-left: auto;
  color: var(--dwg-muted);
  font-size: 0.64rem;
  line-height: 1.3;
  text-align: right;
}

.dwgo-osm-card-meta:empty {
  display: none;
}

.dwgo-osm-card-badge {
  color: inherit;
  font-weight: 700;
  text-decoration: none;
}

.dwgo-osm-card-badge:hover,
.dwgo-osm-card-badge:focus-visible {
  color: var(--dwg-text);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.dwgo-image-credit {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.dwgo-image-credit:hover,
.dwgo-image-credit:focus-visible {
  color: var(--dwg-text);
}
.dwgo-card__description:not(:has(p)) {
  display: none;
}

.dwgo-update {
  clear: both;
  margin: 0 12px 12px;
  color: var(--dwg-text);
}

.dwgo-update[hidden] {
  display: none !important;
}
.dwgo-update__form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px 12px;
  margin-top: 12px;
  padding: 14px;
  border: 1px solid var(--dwg-border);
  border-radius: 6px;
  background: var(--dwg-soft);
}

.dwgo-update__form > label:not(.dwgo-update__confirm),
.dwgo-update__image-choice > label {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--dwg-text);
  font-size: 0.74rem;
  font-weight: 700;
}

.dwgo-update__form input,
.dwgo-update__form textarea {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 8px 9px;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 5px;
  color: var(--dwg-text);
  background: var(--dwg-surface);
  font: 400 0.82rem/1.4 "Albert Sans", Arial, sans-serif;
}

.dwgo-update__form textarea {
  resize: vertical;
}

.dwgo-update__full {
  grid-column: 1 / -1;
}

.dwgo-update__location {
  display: grid;
  gap: 5px;
}

.dwgo-update__location > span {
  color: var(--dwg-text);
  font-size: 0.74rem;
  font-weight: 700;
}

.dwgo-update__location > p {
  margin: 0;
  color: var(--dwg-muted);
  font-size: 0.72rem;
  line-height: 1.4;
}

.dwgo-update__map-status {
  min-height: 1.1em;
  margin: 0;
  color: var(--dwg-muted);
  font-size: 0.7rem;
  line-height: 1.4;
}

.dwgo-update__map {
  z-index: 1;
  width: 100%;
  height: 240px;
  margin-top: 3px;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 5px;
  background: #e8ebef;
}
.dwgo-update__image-choice {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: end;
  gap: 12px;
}

.dwgo-update__or {
  padding-bottom: 10px;
  color: var(--dwg-muted);
  font-size: 0.72rem;
  font-weight: 700;
  text-align: center;
}

.dwgo-update__phone {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: stretch;
}

.dwgo-update__phone b {
  display: flex;
  align-items: center;
  padding: 0 9px;
  border: 1px solid var(--dwg-border-strong);
  border-right: 0;
  border-radius: 5px 0 0 5px;
  background: var(--dwg-surface);
}

.dwgo-update__phone input {
  border-radius: 0 5px 5px 0;
}

.dwgo-update__confirm {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--dwg-muted);
  font-size: 0.72rem;
  line-height: 1.4;
}

.dwgo-update__confirm input {
  width: 16px;
  flex: 0 0 16px;
  margin-top: 1px;
}

.dwgo-update__actions {
  display: flex;
  justify-content: flex-start;
}

.dwgo-update__actions button {
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 5px;
  color: var(--dwg-text);
  background: var(--dwg-surface);
  font: 700 0.75rem/1.2 "Albert Sans", Arial, sans-serif;
  cursor: pointer;
}

.dwgo-update__actions button:hover,
.dwgo-update__actions button:focus-visible {
  border-color: var(--dwg-text);
}

.dwgo-update__hp {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.dwgo-update-notice {
  margin-top: 10px;
  padding: 9px 10px;
  border-left: 3px solid;
  color: var(--dwg-text);
  background: var(--dwg-soft);
  font-size: 0.74rem;
}

.dwgo-update-notice--success { border-color: #18864b; }
.dwgo-update-notice--error { border-color: #c62d3c; }

@media (max-width: 640px) {
  .dwgo-offer-card-tools {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .dwgo-osm-card-meta {
    flex: 1 1 auto;
  }

  .dwgo-update {
    margin-right: 0;
    margin-left: 0;
  }

  .dwgo-update__form {
    grid-template-columns: minmax(0, 1fr);
    padding: 12px;
  }

  .dwgo-update__image-choice {
    grid-template-columns: minmax(0, 1fr);
  }

  .dwgo-update__or {
    padding: 0;
  }

  .dwgo-update__full {
    grid-column: auto;
  }

  .dwgo-update__actions button {
    width: 100%;
  }
}

/* Strona [podsumowanie] - /podsumowanie-dnia/ */
.dwg-summary__picker {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin: 0 0 24px;
  font-family: "Albert Sans", Arial, sans-serif;
}

.dwg-summary__picker label {
  font-weight: 700;
  font-size: 0.88rem;
}

.dwg-summary__picker select,
.dwg-summary__picker input[type="date"] {
  padding: 7px 10px;
  border: 1px solid var(--dwg-border);
  border-radius: 6px;
  background: var(--dwg-surface);
  color: var(--dwg-text);
  font: 600 0.88rem/1.2 "Albert Sans", Arial, sans-serif;
}

.dwg-summary__empty {
  color: var(--dwg-muted);
  font-size: 0.95rem;
}

.dwg-summary__event {
  margin: 0 0 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--dwg-border);
  scroll-margin-top: 96px;
}

.dwg-summary__event:last-child {
  border-bottom: 0;
}

.dwg-summary__event-text {
  margin: 0 0 14px;
  font-family: "Newsreader", Georgia, serif;
  font-size: 1.36rem;
  font-weight: 600;
  line-height: 1.14;
  color: var(--dwg-text);
}

@media (max-width: 640px) {
  .dwg-summary__event-text {
    font-size: 1.2rem;
  }
}

/* Wiersz "Pokaż więcej linków" (lewa) + "Komentarze (X)" (prawa, przycisk
   w stylu identycznym jak w sekcji "Na żywo"). */
.dwg-summary__event-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin-top: 10px;
}

.dwg-summary__event-actions > .dwg-summary__toggle:last-child:not(:only-child) {
  margin-left: auto;
}

/* Filtr kategorii w bloku "Pokaz wszystkie linki" (podsumowanie dnia) -
   .dwg-ranking__group--category poza swoim oryginalnym kontekstem (siatka
   .dwg-ranking na stronie glownej) rozciaga sie na cala szerokosc panelu i
   dotyka pierwszej karty ponizej, wiec ograniczamy szerokosc, dodajemy
   odstep i (na tablecie/pc) przesuwamy na prawa strone. Na mobile ma byc
   pelna szerokosc, tak jak siatka linkow ponizej. */
.dwg-summary .dwg-articles-browser > .dwg-ranking__group--category {
  max-width: 260px;
  margin-bottom: 16px;
  margin-left: auto;
}
@media (max-width: 640px) {
  .dwg-summary .dwg-articles-browser > .dwg-ranking__group--category {
    max-width: 100%;
    margin-left: 0;
  }
}

.dwg-summary .dwg-articles-browser {
  margin: 10px 0 0;
}

.dwg-summary__toggle {
  display: inline-flex;
  align-items: center;
  margin-top: 14px;
  padding: 6px 12px;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 999px;
  background: var(--dwg-surface);
  color: var(--dwg-navy);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  cursor: pointer;
  transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}

.dwg-summary__toggle:hover,
.dwg-summary__toggle:focus-visible {
  border-color: var(--dwg-navy);
  background: var(--dwg-navy);
  color: var(--dwg-bg);
  outline: none;
}

/* Data i "X temu" sa zbedne w podsumowaniu dnia - wszystkie karty dotycza tego samego dnia. */
.dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-meta {
  display: none;
}

/* Tytul w podsumowaniu dnia - tylko jedna linia, reszta ucinana wielokropkiem,
   czcionka zamieniona miejscami z opisem wydarzenia (.dwg-summary__event-text). */
html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__title {
  display: block;
  min-height: 0;
  font-size: 1.15rem;
  font-weight: 400;
  line-height: 1.55;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Karty artykulow w podsumowaniu dnia - o polowe nizsze i bardziej kwadratowe
   miniaturki niz zwykle karty listy (wezsza kolumna, bez powiekszania). */
html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only),
html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-grid:has(.dwg-card--lap:not(.dwg-card--text-only)) .dwg-card--lap.dwg-card--text-only {
  grid-template-columns: 110px minmax(0, 1fr);
  align-items: stretch;
}

/* Wysokosc miniaturki dopasowuje sie do faktycznej wysokosci wiersza (tekstu obok),
   zeby zdjecie nigdy nie konczylo sie wyzej niz kolumna tekstu. */
html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only) .dwg-card__image--lap {
  height: auto;
  align-self: stretch;
}

html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only)::after {
  left: 76px;
  width: 54px;
}

html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__body {
  min-height: 70px;
}

@media (max-width: 640px) {
  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only),
  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-grid:has(.dwg-card--lap:not(.dwg-card--text-only)) .dwg-card--lap.dwg-card--text-only {
    grid-template-columns: 80px minmax(0, 1fr);
  }

  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap:not(.dwg-card--text-only)::after {
    left: 50px;
    width: 40px;
  }

  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__body {
    min-height: 66px;
  }
}

@media (max-width: 640px) {
  .dwg-summary__picker {
    flex-wrap: wrap;
  }
}

/* Strona [na_zywo] - /na-zywo/. Reuzywa .dwg-summary__picker/__toggle/__empty
   (identyczny wyglad selektora daty i przyciskow rozwijanych - patrz wyzej),
   ponizej tylko elementy specyficzne dla tej strony (formularz, lista
   zgloszen, komentarze). */
.dwg-live__add {
  margin: 0 0 20px;
  scroll-margin-top: 96px;
  text-align: right;
}

.dwg-live__add--bottom {
  margin: 24px 0 0;
}

.dwg-live__add-form,
.dwg-live__comment-form {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 14px;
  border: 1px solid var(--dwg-border);
  border-radius: 6px;
  background: var(--dwg-soft);
  text-align: left;
}

/* Reguly autora maja ten sam priorytet co domyslne [hidden]{display:none}
   przegladarki, wiec przy remisie wygrywa autor - bez tego jawnego
   nadpisania panel bylby zawsze widoczny mimo atrybutu hidden. */
.dwg-live__add-form[hidden],
.dwg-live__comment-form[hidden],
.dwg-summary__toggle[hidden] {
  display: none;
}

.dwg-live__hp {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.dwg-live__add-form textarea,
.dwg-live__comment-form textarea,
.dwg-live__add-form input[type="file"],
.dwg-live__comment-form input[type="file"] {
  box-sizing: border-box;
  width: 100%;
  padding: 8px 9px;
  border: 1px solid var(--dwg-border-strong);
  border-radius: 5px;
  color: var(--dwg-text);
  background: var(--dwg-surface);
  font: 400 0.85rem/1.4 "Albert Sans", Arial, sans-serif;
  resize: vertical;
}

.dwg-live__file-label {
  display: grid;
  gap: 5px;
  color: var(--dwg-text);
  font-size: 0.74rem;
  font-weight: 700;
}

.dwg-live__counter {
  margin-top: -4px;
  color: var(--dwg-muted);
  font-size: 0.72rem;
}

.dwg-live__terms {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 12px 0;
  color: var(--dwg-muted);
  font-size: 0.78rem;
  line-height: 1.4;
}

.dwg-live__terms input {
  width: 16px;
  flex: 0 0 16px;
  margin-top: 2px;
}

/* Wygladaja teraz jak .dwg-summary__toggle ("Dodaj zgloszenie"/"Dodaj
   komentarz") - patrz ta klasa na przyciskach submit w markupie ponizej,
   tu tylko pozycjonowanie w gridzie formularza i stan disabled podczas wysylki. */
.dwg-live__add-form button[type="submit"],
.dwg-live__comment-form button[type="submit"] {
  justify-self: start;
}

.dwg-live__add-form button[type="submit"]:disabled,
.dwg-live__comment-form button[type="submit"]:disabled {
  opacity: 0.6;
  cursor: default;
}

.dwg-live__form-message {
  min-height: 1.2em;
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
}

.dwg-live__list {
  display: grid;
  gap: 16px;
  margin-top: 8px;
}

.dwg-live__report {
  scroll-margin-top: 96px;
  padding: 16px;
  border: 1px solid var(--dwg-border);
  border-radius: var(--dwg-radius);
  background: var(--dwg-surface);
}

.dwg-live__report-meta {
  margin: 0 0 8px;
  color: var(--dwg-muted);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.74rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.dwg-live__report-text {
  margin: 0 0 10px;
  color: var(--dwg-text);
  font-family: "Newsreader", Georgia, serif;
  font-size: 1.25rem;
  line-height: 1.5;
}

.dwg-live__report-image {
  margin: 0 0 12px;
  border-radius: 6px;
  overflow: hidden;
}

.dwg-live__report-image img {
  display: block;
  width: 100%;
  height: auto;
}

.dwg-live__report-actions {
  display: flex;
}

.dwg-live__comments-panel {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--dwg-border);
}

.dwg-live__add-comment {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 10px;
}

/* "Pokaz wiecej komentarzy" (jesli obecny) po lewej, "Dodaj komentarz"
   zawsze po prawej - niezaleznie od tego, czy ten pierwszy jest akurat
   widoczny (jest renderowany, ale ukryty atrybutem hidden, dopoki nie ma
   kolejnej strony komentarzy). */
.dwg-live__add-comment > *:last-child {
  margin-left: auto;
}

.dwg-live-comments {
  display: grid;
  gap: 12px;
  margin-bottom: 10px;
}

.dwg-live-comments__empty {
  margin: 0;
  color: var(--dwg-muted);
  font-size: 0.82rem;
}

.dwg-live-comment {
  padding: 10px 12px;
  border-radius: 6px;
  background: var(--dwg-soft);
}

.dwg-live-comment__meta {
  margin: 0 0 4px;
  color: var(--dwg-muted);
  font-size: 0.68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.dwg-live-comment__text {
  margin: 0 0 6px;
  color: var(--dwg-text);
  font-size: 1.02rem;
  line-height: 1.5;
}

.dwg-live-comment__image img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: 5px;
}

@media (max-width: 640px) {
  .dwg-live__add-form,
  .dwg-live__comment-form {
    padding: 12px;
  }
}

/* Lista "Zobacz poprzednie dni" - wspolna dla /podsumowanie-dnia/ i /na-zywo/. */
.dwg-summary__archive-links {
  margin-top: 28px;
}

.dwg-summary__archive-links p {
  margin: 0 0 8px;
  color: var(--dwg-muted);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
}

.dwg-summary__archive-links ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.dwg-summary__archive-links a {
  padding: 5px 10px;
  border: 1px solid var(--dwg-border);
  border-radius: 999px;
  color: var(--dwg-text);
  font-size: 0.78rem;
  text-decoration: none;
}

.dwg-summary__archive-links a:hover {
  border-color: var(--dwg-navy);
}

/* Wrapper na kafelki "Podsumowanie dnia" / "Na żywo" pod panelem pogody na
   stronie glownej - poza siatka artykulow .dwg-grid, wiec sam ustawia
   ulozenie w kolumnie i odstep od nastepnej sekcji (ktora ma juz wlasny
   padding-top 44px z .dwg-section, stad brak dolnego odstepu tutaj). */
.dwg-home-panels {
  display: grid;
  gap: 16px;
  padding-top: 16px;
}

/* Przycisk "Dodaj informacje" pod kafelkiem "Przeslane przez mieszkancow",
   po lewej stronie - wyglad 1:1 jak przycisk "Dodaj link" (.dwg-ranking__add
   a), ale bez reuzywania tamtych klas: .dwg-ranking__add ma wlasne
   grid-column/grid-row liczone wzgledem paska sortowania, a tutaj rodzicem
   jest siatka .dwg-home-panels z kafelkami - explicit grid-row wymusilby
   kolizje w auto-placement i przestawil kolejnosc kafelkow. */
.dwg-home-panels__add a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  padding: 6px 10px;
  border: 1px solid var(--dwg-border);
  border-radius: 5px;
  background: var(--dwg-soft);
  color: var(--dwg-muted);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.15;
  text-decoration: none;
  white-space: nowrap;
}

/* Ten sam mobilny font-size co przycisk "Dodaj link" (.dwg-ranking__segments
   a) - bez tego na mobile czcionki tych dwoch, wizualnie identycznych
   przyciskow, sie rozjezdzaly (0.76rem tutaj vs 0.7rem tam). */
@media (max-width: 640px) {
  .dwg-home-panels__add a {
    padding-right: 7px;
    padding-left: 7px;
    font-size: 0.7rem;
  }
}

.dwg-home-panels__add a svg {
  width: 14px;
  height: 14px;
  margin-right: 5px;
  flex: 0 0 14px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.dwg-home-panels__add a:hover,
.dwg-home-panels__add a:focus-visible {
  border-color: var(--dwg-navy);
  color: var(--dwg-text);
}

/* Naglowek kafelkow "Przeslane przez mieszkancow" / "Podsumowanie
   wczorajszego dnia" - taki sam pasek jak gorna belka widgetu pogody
   (.dwg-weather__controls: szare tlo, dolna kreska, wysrodkowany,
   pogrubiony, wersalikowy tekst .dwg-weather__control-titles strong).
   To osobny wiersz w normalnym układzie (nie position:absolute jak
   dawny .dwg-label), wiec kafelek jest o jego wysokosc wyzszy - reszta
   (.dwg-card__body) zostaje bez zmian, tylko przesuwa sie nizej. */
/* Caly pasek jest jednym linkiem (3-kolumnowy grid: pusty spacer / tekst
   wysrodkowany / ikonka odnosnika po prawej) - ta sama struktura co gorna
   belka widgetu pogody (.dwg-weather__controls: Open-Meteo / tytul / Dzis
   7 dni), tylko zamiast trzech osobnych elementow mamy jeden link z
   dekoracyjnym spacerem, zeby tekst realnie wypadal na srodku paska mimo
   ikony po prawej. min-height 40px = faktyczna wysokosc
   .dwg-weather__controls na PC/tablet - 48px to tylko wartosc bazowa
   widgetu pogody dla waskich szerokosci, obowiazuje "compact" 40px od
   @media (min-width: 701px), czyli w praktyce na kazdym realnym PC/tablecie. */
.dwg-card--homepage-panel__head {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 20px 1fr 20px;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 0 18px;
  border-bottom: 1px solid var(--dwg-border);
  background: var(--dwg-soft);
  text-decoration: none;
}

.dwg-card--homepage-panel__head-text {
  grid-column: 2;
  justify-self: center;
  color: var(--dwg-navy);
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.68rem;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.dwg-card--homepage-panel__head:hover .dwg-card--homepage-panel__head-text,
.dwg-card--homepage-panel__head:focus-visible .dwg-card--homepage-panel__head-text {
  text-decoration: underline;
}

@media (max-width: 640px) {
  .dwg-card--homepage-panel__head {
    /* Stala wysokosc (nie 0/auto), zeby sie zgadzala z analogicznym
       paskiem pogody (.dwg-weather__mobile-head) - patrz reguła tam. */
    min-height: 20px;
    grid-template-columns: 14px 1fr 14px;
    padding: 4px 12px;
  }

  .dwg-card--homepage-panel__head-text {
    font-size: 0.6rem;
  }
}

/* Przyciski "Dodaj informacje" (Przeslane przez mieszkancow) i "Wiecej"
   (Podsumowanie wczorajszego dnia) - ten sam wiersz (ten sam "bottom") co
   strzalki nawigacji ticker'a, tylko po lewej stronie - bez podwyzszania
   wysokosci kafelka, tak jak strzalki tez nie zwiekszaja wysokosci (sa
   position:absolute nad tekstem). */
.dwg-live-panel__add,
.dwg-summary-panel__add {
  position: absolute;
  left: 18px;
  bottom: 14px;
  z-index: 2;
}

@media (max-width: 640px) {
  .dwg-live-panel__add,
  .dwg-summary-panel__add {
    left: 14px;
    bottom: 10px;
  }
}

/* Homepage panels use the same compact row structure as LAP list cards. */
.dwg-card--homepage-panel {
  position: relative;
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  grid-template-rows: none;
  align-items: start;
  min-height: 0;
  aspect-ratio: auto;
  isolation: isolate;
}

.dwg-card--homepage-panel::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: 170px;
  width: 100px;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.35) 8%, rgba(255, 255, 255, 0.68) 16%, rgba(255, 255, 255, 0.9) 22%, var(--dwg-surface) 25.93%, var(--dwg-surface) 100%);
  pointer-events: none;
}

html[data-dwg-theme="dark"] .dwg-card--homepage-panel::after {
  background: linear-gradient(to right, rgba(23, 29, 36, 0) 0%, rgba(23, 29, 36, 0.35) 10%, rgba(23, 29, 36, 0.68) 20%, rgba(23, 29, 36, 0.9) 28%, var(--dwg-surface) 33.33%, var(--dwg-surface) 100%);
}

/* Warianty bez miniaturki (kafelki pod panelem pogody) - jedna kolumna na
   cala szerokosc, bez gradientowego przejscia obrazka w tlo. Podwojna klasa
   daje wyzszy priorytet niz .dwg-card--homepage-panel powyzej, wiec dziala
   niezaleznie od kolejnosci w pliku. */
.dwg-card--homepage-panel.dwg-card--homepage-panel--no-image {
  grid-template-columns: minmax(0, 1fr);
}

.dwg-card--homepage-panel.dwg-card--homepage-panel--no-image::after {
  display: none;
}

.dwg-card--homepage-panel .dwg-card__image--lap {
  position: static;
  align-self: start;
  width: 100%;
  height: 140px;
  overflow: hidden;
}

.dwg-card--homepage-panel .dwg-card__image--lap img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center;
  transform: none;
}

.dwg-card--homepage-panel .dwg-card__body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 140px;
  min-height: 140px;
  overflow: hidden;
  padding: 14px 18px;
  background: none;
}

.dwg-card--homepage-panel .dwg-label {
  align-self: flex-start;
  margin: 0 0 8px;
  text-align: left;
  text-transform: none;
  transform: none;
}

.dwg-card--homepage-panel .dwg-card--summary__row {
  display: block;
  min-width: 0;
}

.dwg-card--homepage-panel .dwg-card--summary__nav {
  position: static;
  float: right;
  margin: 44px 0 0 12px;
  shape-outside: border-box;
  shape-margin: 0;
}

.dwg-card--homepage-panel .dwg-card__title {
  display: block;
  font-size: 1.2rem;
  font-weight: 600;
  line-height: 1.14;
  width: auto;
  max-height: calc(3 * 1.14em);
  min-height: 0;
  margin: 0;
  overflow: visible;
  text-align: center;
  transform: none;
  -webkit-line-clamp: unset;
}
.dwg-card--homepage-panel .dwg-card--summary__slide {
  display: -webkit-box;
  overflow: hidden;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-decoration: none;
  text-align: center;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.dwg-card--homepage-panel .dwg-card--summary__slide[hidden] {
  display: none;
}

@media (max-width: 640px) {
  .dwg-card--homepage-panel {
    grid-template-columns: 108px minmax(0, 1fr);
  }

  .dwg-card--homepage-panel::after {
    left: 81px;
    width: 54px;
  }

  .dwg-card--homepage-panel .dwg-card__image--lap {
    height: 132px;
  }

  .dwg-card--homepage-panel .dwg-card__body {
    height: 132px;
    min-height: 132px;
    padding: 10px 14px 10px 1px;
  }

  .dwg-card--homepage-panel .dwg-card__title {
    max-height: calc(4 * 1.14em);
    font-size: 0.92rem;
    font-weight: 400;
  }

  .dwg-card--homepage-panel .dwg-card--summary__slide {
    -webkit-line-clamp: 4;
  }

  .dwg-card--homepage-panel .dwg-card--summary__nav {
    margin: 32px 0 0 10px;
  }
}
/* Keep homepage panel copy centered while controls stay anchored to the corner. */
.dwg-card--homepage-panel .dwg-card__body {
  justify-content: center;
  padding: 14px 18px;
}

.dwg-card--homepage-panel .dwg-card--summary__row {
  display: flex;
  align-items: center;
  min-height: 0;
}

.dwg-card--homepage-panel .dwg-card--summary__nav {
  position: absolute;
  right: 18px;
  bottom: 14px;
  float: none;
  margin: 0;
}

.dwg-card--homepage-panel .dwg-card__title {
  padding-right: 58px;
}

@media (max-width: 640px) {
  .dwg-card--homepage-panel .dwg-card__body {
    padding: 10px 14px 10px 1px;
  }

  .dwg-card--homepage-panel .dwg-card--summary__nav {
    right: 14px;
    bottom: 10px;
  }

  .dwg-card--homepage-panel .dwg-card__title {
    padding-right: 48px;
  }
}
/* Let the final title line flow around the panel navigation controls. */
.dwg-card--homepage-panel .dwg-card--summary__row {
  display: block;
}

.dwg-card--homepage-panel .dwg-card--summary__nav {
  position: static;
  float: right;
  margin: 44px 0 0 12px;
  shape-outside: border-box;
  shape-margin: 0;
}

.dwg-card--homepage-panel .dwg-card__title {
  padding-right: 0;
}

@media (max-width: 640px) {
  .dwg-card--homepage-panel .dwg-card--summary__nav {
    margin: 32px 0 0 10px;
  }

  .dwg-card--homepage-panel .dwg-card__title {
    padding-right: 0;
  }
}
/* Stable alignment for homepage summary and live panels. */
.dwg-card--homepage-panel .dwg-card__body {
  position: relative;
  display: block;
  box-sizing: border-box;
  padding: 0;
}

.dwg-card--homepage-panel .dwg-label {
  position: absolute;
  top: 14px;
  left: 18px;
  z-index: 2;
  margin: 0;
}

/* Tekst ma byc wysrodkowany PIONOWO, ale nie w calej wysokosci
   .dwg-card__body (bylo za daleko od paska u gory), i nie doklejony do
   samej gory (flex-start bylo za blisko) - tylko w przestrzeni miedzy
   paskiem a dolnym pasem zarezerwowanym pod strzalki/przycisk. Padding na
   flex-kontenerze zmniejsza "strefe centrowania" (align-items:center liczy
   sie juz wzgledem obszaru po odjeciu paddingu), ale NIE rusza samego
   pudelka rowa (inset zostaje), wiec strzalki (position:absolute wzgledem
   tego samego rowa) zostaja dokladnie tam, gdzie byly - padding na
   kontenerze nie przesuwa jego wlasnych krawedzi, tylko obszar liczenia
   layoutu w srodku. */
.dwg-card--homepage-panel .dwg-card--summary__row {
  position: absolute;
  inset: 0 18px;
  display: flex;
  align-items: center;
  /* Dol musi zmiescic caly przycisk "Dodaj informacje"/"Wiecej" (bottom:14px
     + jego wlasna wysokosc ok. 34px = ok. 48px), inaczej tekst blizszy
     limitowi linii nachodzi na przycisk. */
  padding: 8px 0 50px;
}

.dwg-card--homepage-panel .dwg-card__title {
  width: 100%;
  padding-right: 1px;
  padding-left: 1px;
}

.dwg-card--homepage-panel .dwg-card--summary__nav {
  position: absolute;
  right: 18px;
  bottom: 14px;
  float: none;
  margin: 0;
}

@media (max-width: 640px) {
  .dwg-card--homepage-panel .dwg-label {
    top: 10px;
    left: 1px;
  }

  .dwg-card--homepage-panel .dwg-card--summary__row {
    inset: 0 14px 0 1px;
  }

  .dwg-card--homepage-panel .dwg-card__title {
    padding-right: 48px;
  }

  .dwg-card--homepage-panel .dwg-card--summary__nav {
    right: 14px;
    bottom: 10px;
  }

  /* Bez miniaturki lewa krawedz body to lewa krawedz calej karty (nie ma juz
     108px kolumny obrazka), wiec 1px z wariantu z obrazkiem jest za ciasne. */
  .dwg-card--homepage-panel.dwg-card--homepage-panel--no-image .dwg-card--summary__row {
    left: 14px;
  }
}

/* Etykieta ("Podsumowanie wczorajszego dnia" / "Przeslane przez
   mieszkancow") wysrodkowana w poziomie zamiast przyklejona do lewej
   krawedzi - dotyczy tylko wariantu bez miniaturki, na kazdej szerokosci.
   left+transform:translateX(-50%) tu nie dziala - przy position:absolute z
   samym "left" przegladarka liczy szerokosc "shrink-to-fit" tylko z
   polowy szerokosci kontenera (do prawej krawedzi), wiec dluzszy tekst
   zawija sie do dwoch linii zanim transform w ogole zadziala (transform nie
   wplywa na uklad, tylko na rysowanie). left:0 + right:0 + margin:auto
   daje pelna szerokosc kontenera do wyliczenia "shrink-to-fit", wiec tekst
   miesci sie w jednej linii, a potem margin:auto centruje caly box. */
.dwg-card--homepage-panel.dwg-card--homepage-panel--no-image .dwg-label {
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 640px) {
  /* A float is required for the title to occupy the space beside the controls. */
  .dwg-card--homepage-panel .dwg-card--summary__row {
    position: static;
    inset: auto;
    display: block;
    padding-top: 44px;
  }

  .dwg-card--homepage-panel .dwg-card--summary__nav {
    position: static;
    float: right;
    margin: 61px 12px 0 10px;
    shape-outside: border-box;
    shape-margin: 0;
  }

  .dwg-card--homepage-panel .dwg-card__title {
    padding-right: 0;
  }
}
@media (max-width: 640px) {
  .dwg-card--homepage-panel .dwg-card__title {
    width: auto;
  }
}
@media (max-width: 640px) {
  /* Strzalki sa juz niezalezne od tego rowa (position:absolute wzgledem
     niego, ale nie floated w tytule - patrz regula .dwg-card--summary__nav
     nizej w tym pliku), wiec row moze teraz bezpiecznie centrowac tekst w
     pionie tak jak desktop: flex + padding gora/dol (dol wiekszy, zeby
     zostawic miejsce na strzalki/przycisk na samym dole kafelka). */
  .dwg-card--homepage-panel .dwg-card--summary__row {
    position: absolute;
    inset: 0 14px 0 1px;
    display: flex;
    align-items: center;
    /* Dol musi zmiescic caly przycisk "Dodaj informacje"/"Wiecej" (bottom:10px
       + jego wlasna wysokosc ok. 33px = ok. 43px), inaczej dluzszy (blizszy
       limitowi 5 linii) tekst nachodzi na przycisk. */
    padding: 6px 0 46px;
  }

  .dwg-card--homepage-panel .dwg-card--summary__nav {
    position: static;
    float: right;
    display: inline-flex;
    align-items: flex-end;
    height: 88px;
    margin: 0 12px 0 10px;
    vertical-align: top;
    shape-outside: border-box;
    shape-margin: 0;
  }

  .dwg-card--homepage-panel .dwg-card__title {
    width: auto;
    padding-right: 0;
  }
}
@media (max-width: 640px) {
  .dwg-card--homepage-panel [data-dwg-summary-ticker] {
    display: inline;
  }

  .dwg-card--homepage-panel .dwg-card--summary__slide {
    display: inline;
    overflow: visible;
    -webkit-box-orient: initial;
    -webkit-line-clamp: unset;
  }

  .dwg-card--homepage-panel .dwg-card--summary__slide[hidden] {
    display: none;
  }
}
@media (max-width: 640px) {
  .dwg-card--homepage-panel .dwg-card--summary__nav {
    shape-outside: polygon(0 74%, 100% 74%, 100% 100%, 0 100%);
  }
}
@media (max-width: 640px) {
  .dwg-card--homepage-panel .dwg-card__title {
    max-height: calc(5 * 1.14em);
    overflow: hidden;
  }

  .dwg-card--homepage-panel .dwg-card--summary__nav {
    height: 84px;
    margin-right: 6px;
  }

  /* Kafelek "Przeslane przez mieszkancow" na mobile pokazuje tylko 3 linie
     tekstu, reszta ucieta - na mobile -webkit-line-clamp jest wylaczony
     (patrz "unset" wyzej), wiec faktyczne obciecie steruje tu wysokoscia
     .dwg-card__title (overflow:hidden), a nie liczba linii per se. Podwojna
     klasa daje wyzszy priorytet niz reguly .dwg-card--homepage-panel
     powyzej, wiec wygrywa niezaleznie od kolejnosci w pliku. */
  .dwg-card--homepage-panel.dwg-card--homepage-panel--live .dwg-card__title {
    max-height: calc(3 * 1.14em);
  }

  /* Strzalki nawigacji (.dwg-card--summary__nav) sa position:static i
     floated wewnatrz .dwg-card__title, ktory ma overflow:hidden - przy
     stalej wysokosci 84px (dopasowanej do 5 linii) wystawaly poza
     skrocony do 3 linii kontener i byly obciete (niewidoczne). Ta sama
     formula co max-height tytulu wyzej, zeby zawsze byly zsynchronizowane. */
  .dwg-card--homepage-panel.dwg-card--homepage-panel--live .dwg-card--summary__nav {
    height: calc(3 * 1.14em);
  }

  /* Kafelek "Podsumowanie wczorajszego dnia" pokazuje 6 linii (a nie 5
     wspolnych dla panelu) - display:-webkit-box + line-clamp zamiast
     samego max-height, zeby ucieta tresc konczyla sie "..." zamiast
     twardego obciecia w polowie slowa. Cialo karty jest odpowiednio
     wyzsze, zeby tych 6 linii zmiescilo sie bez zachodzenia na przycisk
     "Pelne podsumowanie" (patrz padding-bottom .dwg-card--summary__row). */
  .dwg-card--homepage-panel.dwg-card--homepage-panel--summary .dwg-card__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    max-height: none;
    overflow: hidden;
  }

  .dwg-card--homepage-panel.dwg-card--homepage-panel--summary .dwg-card__body {
    height: 156px;
    min-height: 156px;
  }
}
@media (max-width: 640px) {
  /* Koniec z float+shape-outside wewnatrz .dwg-card__title (display:
     -webkit-box) - ta kombinacja przy kazdej zmianie inset/wysokosci
     tytulu w nieoczywisty sposob przesuwala lub obcinala strzalki.
     Zamiast tego strzalki dostaja to samo, proste position:absolute
     wzgledem .dwg-card--summary__row co na desktopie (patrz reguly
     bez media query wyzej) - stabilne, niezalezne od tytulu. Ta regula
     jest ostatnia w tej kaskadzie, wiec wygrywa ze wszystkimi
     wczesniejszymi float-owymi wersjami dla mobile. */
  .dwg-card--homepage-panel .dwg-card--summary__nav {
    position: absolute;
    right: 14px;
    bottom: 10px;
    top: auto;
    left: auto;
    float: none;
    display: inline-flex;
    height: auto;
    margin: 0;
    shape-outside: none;
  }

  .dwg-card--homepage-panel .dwg-card__title {
    padding-right: 1px;
    padding-left: 1px;
  }
}
.dwg-live__comments-panel--empty {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
}
/* Linki w podsumowaniu dnia: ten sam, stały wiersz dla podglądu i po rozwinięciu.
   Brak lub błąd miniatury pozostawia pustą kolumnę, ale nie zmienia typografii ani wysokości. */
html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  grid-template-rows: 76px;
  align-items: stretch;
  width: 100%;
  height: 76px;
  min-height: 76px;
  aspect-ratio: auto;
  padding: 0;
}

html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__image--lap {
  grid-column: 1;
  width: 100%;
  height: 76px;
  min-height: 76px;
  align-self: stretch;
}

html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__body {
  box-sizing: border-box;
  grid-column: 2;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: auto;
  height: 76px;
  min-height: 76px;
  padding: 5px 18px;
  overflow: hidden;
}

html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-label {
  display: inline-flex;
  align-self: flex-start;
  justify-self: flex-start;
  max-width: 100%;
  margin: 0 0 2px;
  color: #0000FF;
  font-family: "Albert Sans", Arial, sans-serif;
  font-size: 0.74rem;
  font-weight: 800;
  line-height: 1.1;
  text-align: left;
  text-transform: lowercase;
  letter-spacing: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transform: none;
}

html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__title {
  display: -webkit-box;
  min-height: 0;
  margin: auto 0;
  color: var(--dwg-text);
  font-size: 1.15rem;
  font-weight: 400;
  line-height: 1.1;
  text-align: left;
  white-space: normal;
  overflow: hidden;
  text-overflow: clip;
  transform: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__title a {
  color: inherit;
}

@media (max-width: 640px) {
  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap {
    grid-template-columns: 80px minmax(0, 1fr);
    grid-template-rows: 72px;
    height: 72px;
    min-height: 72px;
  }

  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__image--lap,
  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__body {
    height: 72px;
    min-height: 72px;
  }

  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__body {
    padding: 5px 14px;
  }

  html[data-dwg-lap-layout="list"] .dwg-summary .dwg-articles-browser .dwg-card--lap .dwg-card__title {
    font-size: 0.92rem;
  }
}