/* Svampsäsongen 2026 */

.svampsasongen-2026-page .main-wrapper,
.svampsasongen-2026-page .news-page {
  max-width: 100%;
  overflow-x: clip;
}

.svamp-2026 {
  --svamp-ink: var(--region-text, #14241a);
  --svamp-ink-soft: var(--region-text-muted, #33463a);
  --svamp-paper: var(--region-bg, #f3f6f1);
  --svamp-elevated: var(--region-bg-elevated, #fff);
  --svamp-line: color-mix(in srgb, var(--region-border, #d5ddd6) 70%, #9aab9e 30%);
  --svamp-accent: color-mix(in srgb, var(--region-primary, #1f4a32) 88%, #0f2a1c 12%);
  --svamp-gold: #d4a017;
  --svamp-moss: #1a3324;
  --svamp-warn: #8a2b12;
  color: var(--svamp-ink);
  min-width: 0;
  max-width: 100%;
  overflow-x: clip;
}

[data-theme="dark"] .svamp-2026 {
  --svamp-ink: var(--region-text, #e8f0ea);
  --svamp-ink-soft: var(--region-text-muted, #a9b8ae);
  --svamp-paper: var(--region-bg, #101814);
  --svamp-elevated: var(--region-bg-elevated, #162018);
  --svamp-line: color-mix(in srgb, var(--region-border, #334139) 78%, #64786b 22%);
  --svamp-accent: color-mix(in srgb, var(--region-primary, #7cba8f) 86%, #d7f0df 14%);
  --svamp-moss: #0f1c14;
  --svamp-warn: #f0a090;
}

.svamp-2026__hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  gap: 1rem;
  min-height: 18rem;
  margin-bottom: 1.75rem;
  padding: clamp(1.2rem, 3vw, 2.1rem);
  border: 1px solid color-mix(in srgb, var(--svamp-accent) 24%, var(--svamp-line) 76%);
  background-color: #13261c;
  color: #f5faf6;
}

.svamp-2026__hero-photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 68% 50%;
}

.svamp-2026__hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(
      105deg,
      rgba(10, 24, 16, 0.92) 0%,
      rgba(10, 24, 16, 0.72) 38%,
      rgba(12, 28, 20, 0.38) 100%
    );
}

.svamp-2026__hero:not(.has-photo)::after {
  background:
    radial-gradient(ellipse at 78% 30%, rgba(212, 160, 23, 0.18), transparent 42%),
    linear-gradient(
      105deg,
      rgba(12, 28, 20, 0.94) 0%,
      rgba(12, 28, 20, 0.78) 42%,
      rgba(18, 38, 26, 0.55) 100%
    );
}

.svamp-2026__hero > *:not(.svamp-2026__hero-photo) {
  position: relative;
  z-index: 1;
}

.svamp-2026__kicker,
.svamp-2026__section-kicker,
.svamp-2026__aside-label,
.svamp-2026__species-kicker {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.svamp-2026__kicker,
.svamp-2026__aside-label {
  color: color-mix(in srgb, #fff 76%, #8fd4a4 24%);
}

.svamp-2026__title {
  margin: 0.2rem 0 0;
  max-width: 16ch;
  font-size: clamp(1.7rem, 5vw, 2.7rem);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: -0.04em;
}

.svamp-2026__intro {
  max-width: 40rem;
  margin: 0.7rem 0 0;
  color: color-mix(in srgb, #fff 86%, transparent);
  font-size: 1.02rem;
  line-height: 1.5;
}

.svamp-2026__region-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 1rem;
}

.svamp-2026__region-link {
  padding: 0.35rem 0.7rem;
  border: 1px solid color-mix(in srgb, #fff 28%, transparent);
  color: inherit;
  text-decoration: none;
  font-weight: 700;
}

.svamp-2026__region-link:hover,
.svamp-2026__region-link:focus-visible,
.svamp-2026__region-link.is-active {
  background: color-mix(in srgb, #fff 16%, transparent);
  border-color: #fff;
}

.svamp-2026__hero-jump {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin-top: 1rem;
}

.svamp-2026__button {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  padding: 0.55rem 0.9rem;
  border: 1px solid transparent;
  background: var(--svamp-gold);
  color: #1a1406;
  font-weight: 800;
  text-decoration: none;
}

.svamp-2026__button:hover,
.svamp-2026__button:focus-visible {
  filter: brightness(1.05);
}

.svamp-2026__button--ghost {
  background: transparent;
  border-color: color-mix(in srgb, #fff 42%, transparent);
  color: #fff;
}

.svamp-2026__hero-aside {
  align-self: end;
  padding: 0.95rem 1rem 1.05rem;
  border: 1px solid color-mix(in srgb, #fff 18%, transparent);
  background: color-mix(in srgb, #0c1c14 62%, transparent);
  backdrop-filter: blur(8px);
}

.svamp-2026__aside-season {
  margin: 0.35rem 0 0;
  font-size: 1.45rem;
  font-weight: 900;
  letter-spacing: -0.03em;
}

.svamp-2026__aside-lead {
  margin: 0.4rem 0 0;
  color: color-mix(in srgb, #fff 82%, transparent);
  font-size: 0.92rem;
  line-height: 1.45;
}

.svamp-2026__month-rail {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0.85rem 0 0;
  padding: 0;
  list-style: none;
}

.svamp-2026__month-rail li {
  padding: 0.2rem 0.5rem;
  border: 1px solid color-mix(in srgb, var(--svamp-gold) 55%, transparent);
  background: color-mix(in srgb, var(--svamp-gold) 18%, transparent);
  color: #f7e7b0;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.svamp-2026__caution {
  margin: 0.85rem 0 0;
  color: color-mix(in srgb, #fff 78%, transparent);
  font-size: 0.9rem;
  line-height: 1.45;
}

.svamp-2026__main,
.svamp-2026__news,
.svamp-2026__news-carousel {
  min-width: 0;
  max-width: 100%;
}

.svamp-2026__section + .svamp-2026__section {
  margin-top: 2rem;
  padding-top: 1.6rem;
  border-top: 1px solid var(--svamp-line);
}

.svamp-2026__news-carousel {
  display: grid;
}

.svamp-2026__section-header h2 {
  margin: 0.25rem 0 0;
  font-size: clamp(1.3rem, 3vw, 1.75rem);
  letter-spacing: -0.03em;
}

.svamp-2026__section-kicker {
  color: var(--svamp-accent);
}

.svamp-2026__section-lead {
  max-width: 42rem;
  margin: 0.5rem 0 0;
  color: var(--svamp-ink-soft);
  line-height: 1.5;
}

.svamp-2026__calendar {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
  margin: 1.1rem 0 0;
  padding: 0;
  list-style: none;
}

.svamp-2026__calendar li {
  display: grid;
  gap: 0.2rem;
  padding: 0.75rem 0.85rem;
  border: 1px solid var(--svamp-line);
  border-left: 3px solid var(--svamp-gold);
  background: var(--svamp-elevated);
}

.svamp-2026__calendar strong {
  font-size: 0.92rem;
}

.svamp-2026__calendar span {
  color: var(--svamp-ink-soft);
  font-size: 0.9rem;
  line-height: 1.4;
}

.svamp-2026__pick {
  display: grid;
  gap: 1rem;
  margin-top: 1.2rem;
}

.svamp-2026__pick-figure {
  margin: 0;
  overflow: hidden;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-moss);
}

.svamp-2026__pick-figure img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.svamp-2026__prose {
  max-width: 42rem;
}

.svamp-2026__prose h3 {
  margin: 0 0 0.4rem;
  font-size: 1.05rem;
}

.svamp-2026__guide-nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.55rem;
  margin-top: 1rem;
}

.svamp-2026__guide-nav-link {
  display: grid;
  grid-template-columns: 3.4rem minmax(0, 1fr);
  align-items: center;
  gap: 0.55rem;
  min-width: 0;
  padding: 0.35rem 0.55rem 0.35rem 0.35rem;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
  color: inherit;
  text-decoration: none;
  font-weight: 800;
}

.svamp-2026__guide-nav-link img {
  width: 3.4rem;
  height: 2.55rem;
  object-fit: cover;
  object-position: center 42%;
  background: var(--svamp-moss);
}

.svamp-2026__guide-nav-link:hover,
.svamp-2026__guide-nav-link:focus-visible {
  border-color: var(--svamp-accent);
}

.svamp-2026__guide-nav-link.is-toxic {
  border-color: color-mix(in srgb, var(--svamp-warn) 45%, var(--svamp-line) 55%);
}

.svamp-2026__species-grid {
  display: grid;
  gap: 1rem;
  margin-top: 1.1rem;
}

.svamp-2026__species {
  display: grid;
  overflow: hidden;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
}

.svamp-2026__species--toxic {
  border-color: color-mix(in srgb, var(--svamp-warn) 55%, var(--svamp-line) 45%);
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--svamp-warn) 8%, var(--svamp-elevated) 92%) 0%,
      var(--svamp-elevated) 7rem
    );
}

.svamp-2026__species-figure {
  display: grid;
  grid-template-rows: auto auto;
  margin: 0;
  background: var(--svamp-moss);
}

.svamp-2026__species-figure img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

.svamp-2026__species-figure figcaption {
  position: static;
  padding: 0.45rem 0.8rem 0.55rem;
  border-top: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
  color: var(--svamp-ink-soft);
  font-size: 0.78rem;
  line-height: 1.35;
}

.svamp-2026__species-body {
  padding: 1rem 1rem 1.1rem;
}

.svamp-2026__species-kicker {
  color: var(--svamp-accent);
}

.svamp-2026__species--toxic .svamp-2026__species-kicker {
  color: var(--svamp-warn);
}

.svamp-2026__species-name {
  margin: 0.2rem 0 0;
  font-size: 1.3rem;
}

.svamp-2026__species-latin {
  margin: 0.15rem 0 0;
  color: var(--svamp-ink-soft);
  font-style: italic;
}

.svamp-2026__species-facts {
  display: grid;
  gap: 0.7rem;
  margin: 0.85rem 0 0;
}

.svamp-2026__species-facts dt {
  margin: 0;
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--svamp-accent);
}

.svamp-2026__species--toxic .svamp-2026__species-facts dt {
  color: var(--svamp-warn);
}

.svamp-2026__species-facts dd {
  margin: 0.2rem 0 0;
  line-height: 1.5;
}

.svamp-2026__places {
  display: grid;
  gap: 0.8rem;
  margin: 1rem 0 0;
  padding: 0;
  list-style: none;
}

.svamp-2026__places li {
  padding: 0.9rem 1rem;
  border: 1px solid var(--svamp-line);
  border-left: 3px solid color-mix(in srgb, var(--svamp-accent) 70%, var(--svamp-gold) 30%);
  background: var(--svamp-elevated);
}

.svamp-2026__places p {
  margin: 0.35rem 0 0;
  color: var(--svamp-ink-soft);
  line-height: 1.5;
}

.svamp-2026__news-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.7rem;
  margin-bottom: 0.7rem;
}

.svamp-2026__news-carousel-title {
  margin: 0;
  font-size: 1rem;
}

.svamp-2026__carousel-nav {
  display: flex;
  gap: 0.3rem;
}

.svamp-2026__carousel-btn {
  width: 2.1rem;
  height: 2.1rem;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
  color: var(--svamp-ink);
  font-size: 1.2rem;
  line-height: 1;
}

.svamp-2026__carousel-btn:disabled {
  opacity: 0.35;
}

.svamp-2026__carousel-shell {
  position: relative;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.svamp-2026__carousel-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(15rem, 18.5rem);
  gap: 0.85rem;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  padding-bottom: 0.5rem;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}

.svamp-2026__article-card {
  display: grid;
  overflow: hidden;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
  color: inherit;
  text-decoration: none;
  scroll-snap-align: start;
}

.svamp-2026__article-card:hover,
.svamp-2026__article-card:focus-visible {
  border-color: var(--svamp-accent);
}

.svamp-2026__article-card-media {
  aspect-ratio: 16 / 9;
  background: #1a3324;
}

.svamp-2026__article-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.svamp-2026__article-card-fallback {
  display: grid;
  place-items: center;
  height: 100%;
  color: #d7f0df;
  font-weight: 800;
}

.svamp-2026__article-card-body {
  display: grid;
  gap: 0.3rem;
  padding: 0.7rem 0.8rem 0.85rem;
}

.svamp-2026__article-card-date {
  font-size: 0.78rem;
  color: var(--svamp-ink-soft);
}

.svamp-2026__article-card-title {
  font-size: 1.05rem;
  font-weight: 800;
  line-height: 1.25;
}

.svamp-2026__faq {
  display: grid;
  gap: 0.55rem;
  margin-top: 1rem;
}

.svamp-2026__faq-item {
  padding: 0.7rem 0.9rem;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
  color: var(--svamp-ink);
}

.svamp-2026__faq-item summary {
  cursor: pointer;
  font-weight: 800;
  color: var(--svamp-ink);
  list-style: none;
}

.svamp-2026__faq-item summary::-webkit-details-marker {
  display: none;
}

.svamp-2026__faq-item p {
  margin: 0.55rem 0 0;
  color: var(--svamp-ink-soft);
  line-height: 1.5;
}

@media (min-width: 640px) {
  .svamp-2026__calendar {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

@media (min-width: 800px) {
  .svamp-2026__hero {
    grid-template-columns: minmax(0, 1.65fr) minmax(15rem, 0.75fr);
    align-items: end;
  }

  .svamp-2026__pick {
    grid-template-columns: minmax(14rem, 0.8fr) minmax(0, 1.2fr);
    align-items: center;
  }

  .svamp-2026__guide-nav {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .svamp-2026__guide-nav-link {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 0.4rem;
    padding: 0.4rem 0.45rem 0.55rem;
    text-align: center;
    font-size: 0.86rem;
  }

  .svamp-2026__guide-nav-link img {
    width: 100%;
    height: auto;
    aspect-ratio: 4 / 3;
  }

  .svamp-2026__species {
    grid-template-columns: minmax(16rem, 22rem) minmax(0, 1fr);
  }

  .svamp-2026__species--toxic {
    grid-column: 1 / -1;
  }

  .svamp-2026__places {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Läget i hero-rutan */

.svamp-2026__aside-index {
  font-size: 2.3rem;
  line-height: 1;
}

.svamp-2026__aside-index-max {
  margin-left: 0.15rem;
  color: color-mix(in srgb, #fff 62%, transparent);
  font-size: 0.95rem;
  font-weight: 700;
}

.svamp-2026__aside-slu {
  margin: 0.7rem 0 0;
  padding-top: 0.6rem;
  border-top: 1px solid color-mix(in srgb, #fff 16%, transparent);
  color: color-mix(in srgb, #fff 84%, transparent);
  font-size: 0.88rem;
  line-height: 1.45;
}

.svamp-2026__aside-slu strong {
  color: #f7e7b0;
}

/* Svampläget just nu */

.svamp-2026__status-grid {
  display: grid;
  gap: 0.9rem;
  margin-top: 1.1rem;
}

.svamp-2026__card {
  min-width: 0;
  padding: 1rem 1.05rem 1.1rem;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
}

.svamp-2026__card--slu {
  border-left: 4px solid var(--svamp-gold);
}

.svamp-2026__card--index {
  border-left: 4px solid var(--svamp-accent);
}

.svamp-2026__card--rain {
  border-left: 4px solid #1d4ed8;
}

.svamp-2026__card--gbif {
  border-left: 4px solid #7a4a1e;
}

.svamp-2026__card--fynd {
  border-left: 4px solid #2f7a4a;
}

.svamp-2026__card-kicker {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.6rem;
  align-items: baseline;
  margin: 0;
  color: var(--svamp-accent);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.svamp-2026__card-kicker span {
  color: var(--svamp-ink-soft);
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: none;
}

.svamp-2026__card-title {
  margin: 0.35rem 0 0;
  font-size: 1.2rem;
  line-height: 1.2;
  letter-spacing: -0.02em;
}

.svamp-2026__card-text {
  margin: 0.55rem 0 0;
  color: var(--svamp-ink-soft);
  line-height: 1.5;
}

.svamp-2026__card-list {
  margin: 0.7rem 0 0;
  padding-left: 1.1rem;
  color: var(--svamp-ink);
  line-height: 1.5;
}

.svamp-2026__card-list li + li {
  margin-top: 0.3rem;
}

.svamp-2026__card-quote {
  margin: 0.9rem 0 0;
  padding: 0.7rem 0.9rem;
  border-left: 3px solid var(--svamp-gold);
  background: color-mix(in srgb, var(--svamp-gold) 10%, transparent);
}

.svamp-2026__card-quote p {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 700;
  font-style: italic;
}

.svamp-2026__card-quote cite {
  display: block;
  margin-top: 0.3rem;
  color: var(--svamp-ink-soft);
  font-size: 0.85rem;
  font-style: normal;
}

.svamp-2026__card-note {
  margin: 0.8rem 0 0;
  color: var(--svamp-ink-soft);
  font-size: 0.8rem;
  line-height: 1.45;
}

.svamp-2026__card-note a {
  color: var(--svamp-accent);
}

.svamp-2026__card-note span {
  display: block;
}

.svamp-2026__chart-title {
  margin: 1rem 0 0.4rem;
  font-size: 0.85rem;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.svamp-2026__chart {
  min-width: 0;
  overflow: hidden;
}

.svamp-2026__chart svg {
  display: block;
  max-width: 100%;
  font-family: inherit;
}

.svamp-2026__index-fallback {
  display: grid;
  gap: 0.25rem;
  margin: 0.4rem 0 0;
  padding: 0;
  list-style: none;
}

.svamp-2026__index-fallback li {
  display: flex;
  justify-content: space-between;
  gap: 0.6rem;
  padding: 0.25rem 0;
  border-bottom: 1px solid var(--svamp-line);
  font-size: 0.9rem;
}

.svamp-2026__index-fallback li.is-local {
  font-weight: 700;
}

.svamp-2026__index-fallback li.is-current strong {
  color: var(--svamp-gold);
}

.svamp-2026__rain-sums {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem 1.4rem;
  margin: 0.5rem 0 0.3rem;
  color: var(--svamp-ink-soft);
  font-size: 0.88rem;
}

.svamp-2026__rain-sums strong {
  color: var(--svamp-ink);
  font-size: 1.5rem;
  font-weight: 900;
  letter-spacing: -0.03em;
}

.svamp-2026__taxon-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: 0.8rem 0 0.4rem;
}

.svamp-2026__taxon-tab {
  padding: 0.35rem 0.7rem;
  border: 1px solid var(--svamp-line);
  background: transparent;
  color: var(--svamp-ink);
  font: inherit;
  font-size: 0.85rem;
  font-weight: 700;
  cursor: pointer;
}

.svamp-2026__taxon-tab.is-active {
  border-color: var(--svamp-gold);
  background: color-mix(in srgb, var(--svamp-gold) 18%, transparent);
}

.svamp-2026__gbif-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.5rem;
  margin: 0.8rem 0 0;
}

.svamp-2026__gbif-stats div {
  padding: 0.5rem 0.65rem;
  border: 1px solid var(--svamp-line);
  background: color-mix(in srgb, var(--svamp-paper) 70%, transparent);
}

.svamp-2026__gbif-stats dt {
  font-size: 0.78rem;
  font-weight: 800;
}

.svamp-2026__gbif-stats dd {
  margin: 0.15rem 0 0;
  color: var(--svamp-ink-soft);
  font-size: 0.78rem;
  line-height: 1.35;
}

.svamp-2026__gbif-stats dd strong {
  display: block;
  color: var(--svamp-ink);
  font-size: 1.3rem;
  font-weight: 900;
  letter-spacing: -0.02em;
}

.svamp-2026__reserves {
  display: grid;
  gap: 0.35rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.svamp-2026__reserves li {
  display: grid;
  padding: 0.35rem 0;
  border-bottom: 1px solid var(--svamp-line);
  font-size: 0.9rem;
}

.svamp-2026__reserves span {
  color: var(--svamp-ink-soft);
  font-size: 0.82rem;
}

/* Karta */

.svamp-2026__map-shell {
  margin-top: 1.1rem;
  border: 1px solid var(--svamp-line);
  background: var(--svamp-elevated);
}

.svamp-2026__map {
  position: relative;
  height: clamp(18rem, 60vw, 30rem);
  background: color-mix(in srgb, var(--svamp-moss) 22%, var(--svamp-paper) 78%);
}

.svamp-2026__map-loading {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: grid;
  place-items: center;
  margin: 0;
  color: var(--svamp-ink-soft);
  font-size: 0.9rem;
  pointer-events: none;
}

.svamp-2026__map.has-error .svamp-2026__map-loading {
  padding: 1rem;
  text-align: center;
}

.svamp-2026__map .mapboxgl-popup-content {
  padding: 0.7rem 0.9rem 0.75rem;
  border-radius: 0;
  color: #14241a;
  font-family: inherit;
  font-size: 0.85rem;
  line-height: 1.4;
}

.svamp-2026__map .mapboxgl-popup-content p {
  margin: 0.3rem 0 0;
}

.svamp-2026__map .mapboxgl-popup-content .svamp-2026__popup-kind {
  margin: 0 0 0.1rem;
  color: #2f7a4a;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.svamp-2026__map-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.9rem;
  padding: 0.6rem 0.9rem;
  border-top: 1px solid var(--svamp-line);
  font-size: 0.78rem;
  font-weight: 600;
}

.svamp-2026__legend-item {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

.svamp-2026__legend-item i {
  width: 0.85rem;
  height: 0.85rem;
  border: 2px dashed var(--legend-color, #2f7a4a);
  background: color-mix(in srgb, var(--legend-color, #2f7a4a) 25%, transparent);
}

.svamp-2026__legend-item--find i {
  border: 2px solid #fff;
  border-radius: 50%;
  background: #e0a51a;
  box-shadow: 0 0 0 1px #9aab9e;
}

.svamp-2026__area-grid {
  display: grid;
  gap: 0.7rem;
  margin-top: 1rem;
}

.svamp-2026__area {
  display: grid;
  align-content: start;
  gap: 0.3rem;
  padding: 0.85rem 0.95rem 0.95rem;
  border: 1px solid var(--svamp-line);
  border-left: 3px solid var(--area-color, var(--svamp-accent));
  background: var(--svamp-elevated);
}

.svamp-2026__area-kind {
  margin: 0;
  color: var(--area-color, var(--svamp-accent));
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.svamp-2026__area-name {
  margin: 0;
  font-size: 1.02rem;
  line-height: 1.2;
}

.svamp-2026__area-text {
  margin: 0;
  color: var(--svamp-ink-soft);
  font-size: 0.92rem;
  line-height: 1.5;
}

.svamp-2026__area-rules {
  margin: 0;
  color: var(--svamp-warn);
  font-size: 0.8rem;
  font-weight: 700;
}

.svamp-2026__area-button {
  justify-self: start;
  margin-top: 0.3rem;
  padding: 0.3rem 0.65rem;
  border: 1px solid var(--svamp-line);
  background: transparent;
  color: var(--svamp-accent);
  font: inherit;
  font-size: 0.8rem;
  font-weight: 800;
  cursor: pointer;
}

.svamp-2026__area-button:hover,
.svamp-2026__area-button:focus-visible {
  border-color: var(--svamp-accent);
}

.svamp-2026__finds {
  margin-top: 1.2rem;
  padding: 0.9rem 1rem 1rem;
  border: 1px solid var(--svamp-line);
  background: color-mix(in srgb, var(--svamp-paper) 70%, transparent);
}

.svamp-2026__finds .svamp-2026__chart-title {
  margin-top: 0;
}

.svamp-2026__finds-list {
  display: grid;
  gap: 0.3rem;
  margin: 0.4rem 0 0;
  padding: 0;
  list-style: none;
}

.svamp-2026__finds-list li {
  display: flex;
  flex-wrap: wrap;
  gap: 0.2rem 0.6rem;
  padding: 0.3rem 0;
  border-bottom: 1px solid var(--svamp-line);
  font-size: 0.9rem;
}

.svamp-2026__finds-list span {
  color: var(--svamp-ink-soft);
}

.svamp-2026__finds-empty {
  margin: 0.4rem 0 0;
  color: var(--svamp-ink-soft);
  line-height: 1.5;
}

.svamp-2026__faq-link {
  color: var(--svamp-accent);
  font-weight: 700;
}

.svamp-2026__sources {
  margin: 2rem 0 0;
  padding-top: 1rem;
  border-top: 1px solid var(--svamp-line);
  color: var(--svamp-ink-soft);
  font-size: 0.8rem;
  line-height: 1.5;
}

@media (min-width: 720px) {
  .svamp-2026__status-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .svamp-2026__card--slu {
    grid-column: 1 / -1;
  }

  .svamp-2026__card--slu .svamp-2026__card-list {
    columns: 2;
    column-gap: 1.5rem;
  }

  .svamp-2026__card--slu .svamp-2026__card-list li {
    break-inside: avoid;
  }

  .svamp-2026__area-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .svamp-2026__gbif-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1100px) {
  .svamp-2026__area-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
