/* Optional WRN Waldgrün. Existing layouts, content and semantic status colours remain. */
:root[data-theme="forest"] {
  color-scheme: dark;
  --bg: #031d12;
  --surface: #082a1b;
  --surface-2: #0b2e1e;
  --surface-3: #123a28;
  --text: #f4efdc;
  --muted: #c4d4c8;
  --soft-copy: #c4d4c8;
  --cyan: #9bf0cb;
  --cyan-soft: rgba(155, 240, 203, .12);
  --cyan-border: #648775;
  --border: #648775;
  --chrome: #03180f;
  --chrome-strong: #03180f;
  --card-bg: #082a1b;
  --shadow: 0 10px 28px rgba(0, 12, 6, .25);
  --forest-on-accent: #09251b;
  --forest-card-line: #294a38;
}

:root[data-theme="forest"] body { background: var(--bg); }
:root[data-theme="forest"] :is(h1,h2,h3,.home-story__body button strong) {
  font-family: Georgia, 'Times New Roman', serif;
}
:root[data-theme="forest"] :is(.home-hero,.home-story,.news-card,.podcast-card,.event-card) {
  border-color: var(--forest-card-line);
  border-radius: 12px;
  background: var(--card-bg);
}
:root[data-theme="forest"] .home-hero { min-height: 0; }
:root[data-theme="forest"] .home-hero:not(:has(.home-hero__image)),
:root[data-theme="forest"] .home-story:not(:has(.home-story__image)) { grid-template-columns: minmax(0,1fr); }
:root[data-theme="forest"] .home-hero__image {
  min-height: 210px;
  padding: 0;
  background: var(--surface-2);
}
:root[data-theme="forest"] .home-hero__image img { object-fit: cover; max-height: 310px; }
:root[data-theme="forest"] .home-hero__content { padding: clamp(16px, 3vw, 28px); }
:root[data-theme="forest"] .home-story { min-height: 112px; }
:root[data-theme="forest"] .home-story__image { min-height: 112px; }
:root[data-theme="forest"] .home-story__body { padding: 12px; }
:root[data-theme="forest"] .home-hero .card-actions :is(.small-action,.translate-card) {
  color: var(--cyan);
  border-color: var(--border);
  background: var(--surface-2);
}
:root[data-theme="forest"] .home-hero .card-actions .red-black-star {
  color: var(--cyan);
  background: none;
  -webkit-text-stroke: 0;
  text-shadow: none;
}

:root[data-theme="forest"] :is(.primary-button,.global-search button,#next-dialog-translate,
  .media-button-row .btn-media-play,#global-media-play,#global-media-pause) {
  background: var(--cyan);
  border-color: var(--cyan);
  color: var(--forest-on-accent);
}
:root[data-theme="forest"] :is(.secondary-button,.icon-button,.dialog-actions button,
  .global-media-controls button,.global-media-close,select,input,textarea) {
  border-color: var(--border);
}
:root[data-theme="forest"] :is(.secondary-button,.global-media-close) {
  color: var(--text);
  background: var(--surface-2);
}
:root[data-theme="forest"] .bottom-nav { background: var(--chrome-strong); }
:root[data-theme="forest"] .bottom-nav button.active {
  color: var(--cyan);
  background: var(--cyan-soft);
}
:root[data-theme="forest"] .bottom-nav button span:first-child {
  color: var(--text);
  -webkit-text-stroke: 0;
  text-shadow: none;
}
:root[data-theme="forest"] .bottom-nav button.active span:first-child { color: var(--cyan); }
:root[data-theme="forest"] :is(.article-back-button,#next-dialog-save) {
  border-color: var(--border);
  color: var(--cyan);
  -webkit-text-stroke: 0;
  text-shadow: none;
}
:root[data-theme="forest"] .article-back-button span:first-child { color: var(--cyan); }
:root[data-theme="forest"] #next-dialog-save[aria-pressed="true"] {
  color: var(--cyan);
  border-color: var(--cyan);
  background: var(--cyan-soft);
}
:root[data-theme="forest"] #next-dialog-translate .red-black-star {
  color: var(--forest-on-accent);
  background: none;
  -webkit-text-stroke: 0;
  text-shadow: none;
}
:root[data-theme="forest"] .dialog-actions button[aria-pressed="true"] {
  color: var(--cyan);
  background: var(--cyan-soft);
  border-color: var(--cyan);
}
:root[data-theme="forest"] .global-media-bar {
  background: var(--surface);
  border-color: var(--border);
  color: var(--text);
  border-radius: 12px;
}
:root[data-theme="forest"] :is(progress,input[type="range"]) { accent-color: var(--cyan); }
:root[data-theme="forest"] :is(button,a,input,select,textarea,summary):focus-visible {
  outline: 3px solid var(--cyan);
  outline-offset: 3px;
}
:root[data-theme="forest"][data-font-size="200"] { font-size: 200%; }

@media (min-width: 920px) {
  :root[data-theme="forest"] .global-media-bar { bottom: max(12px,env(safe-area-inset-bottom)); }
}

@media (max-width: 919px) {
  :root[data-theme="forest"] {
    --forest-nav-height: max(68px,calc(2rem + 14px + env(safe-area-inset-bottom)));
  }
  :root[data-theme="forest"] .bottom-nav { height: var(--forest-nav-height); }
  :root[data-theme="forest"] .bottom-nav button { overflow: hidden; }
  :root[data-theme="forest"] .bottom-nav button span:first-child { line-height: 1; }
  :root[data-theme="forest"] .bottom-nav button span:last-child {
    display: block;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1.2;
  }
  :root[data-theme="forest"] .global-media-bar {
    bottom: calc(var(--forest-nav-height) + 10px);
    max-height: calc(100dvh - var(--forest-nav-height) - 100px);
    overflow-y: auto;
    overflow-x: hidden;
  }
  :root[data-theme="forest"] .global-media-controls {
    grid-column: 1 / -1;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  :root[data-theme="forest"] .global-media-tools { flex-wrap: wrap; overflow: visible; }
}

@media (max-width: 640px) {
  :root[data-theme="forest"] .next-header__inner { flex-wrap: wrap; gap: 6px; }
  :root[data-theme="forest"] .header-actions { flex-wrap: wrap; min-width: 0; max-width: 100%; gap: 6px; }
  :root[data-theme="forest"] .header-actions > * { flex-shrink: 0; }
  :root[data-theme="forest"] .home-hero__image { min-height: 0; }
  :root[data-theme="forest"] .home-hero__image img { max-height: 230px; }
  :root[data-theme="forest"][data-font-size="200"] .home-story { grid-template-columns: minmax(0,1fr); }
}
