/* Radio Tell Wetter – Frontend CSS */
:root{
    --rtw-red:#e30613;--rtw-dark:#1a1a1a;--rtw-gray:#555;
    --rtw-light:#f5f5f5;--rtw-border:#ddd;--rtw-white:#fff;
    --rtw-shadow:0 2px 8px rgba(0,0,0,.08);--rtw-radius:8px
}

/* ── Map wrap ── */
.rtw-map-wrap{
    margin-bottom:8px;
    position:relative;
    /* isolate creates a new stacking context with z-index:0 baseline
       This ensures ALL children (incl. Leaflet's z-index:400+ panes)
       stay BELOW the OnAir2 fixed menu (z-index:9999) */
    isolation:isolate;
    z-index:0;
}
.rtw-map{
    width:100%;
    border-radius:var(--rtw-radius);
    overflow:hidden;
    border:1px solid var(--rtw-border);
    box-shadow:var(--rtw-shadow);
    position:relative;
    /* Do NOT set z-index here – let isolation:isolate handle containment */
}
/* Kein oberer Radius wenn Toolbar drüber */
.rtw-map-toolbar + .rtw-map {
    border-radius:0;
    border-top:none;
}

/* Scroll hint overlay */
.rtw-scroll-hint{
    position:absolute;bottom:44px;left:50%;transform:translateX(-50%);
    background:rgba(0,0,0,.62);color:#fff;font-size:12px;font-weight:500;
    padding:6px 16px;border-radius:20px;pointer-events:none;
    white-space:nowrap;transition:opacity .4s;
    /* within stacking context of .rtw-map-wrap, just needs to be above map tiles */
    z-index:500;
}
.rtw-scroll-hint--hidden{opacity:0}

/* ── Markers ── */
.rtw-marker{
    background:#fff;
    border:1.5px solid #e30613;
    border-radius:5px;
    padding:2px 3px 3px;
    display:inline-flex;
    flex-direction:column;
    align-items:center;
    box-shadow:0 1px 5px rgba(0,0,0,.25);
    cursor:pointer;
    transition:transform .15s;
    white-space:nowrap;
}
.rtw-marker:hover{transform:scale(1.15)}
.rtw-marker img{display:block;width:21px;height:21px;}
.rtw-marker-temp{font-size:10px;font-weight:700;line-height:1;margin-top:1px;}

/* ── Popup ── */
.rtw-popup{min-width:160px;font-family:-apple-system,sans-serif}
.rtw-popup-title{font-size:15px;font-weight:700;color:var(--rtw-dark);margin:0 0 6px;border-bottom:2px solid var(--rtw-red);padding-bottom:5px}
.rtw-popup-grid{display:grid;grid-template-columns:auto auto;gap:3px 10px;font-size:12px}
.rtw-popup-label{color:var(--rtw-gray)}
.rtw-popup-val{font-weight:600;color:var(--rtw-dark)}
.rtw-popup-temp{font-size:16px;font-weight:700}

/* ── Forecast grid ── */
.rtw-forecast-wrap{margin:16px 0}
.rtw-forecast-grid{display:grid;grid-template-columns:repeat(var(--rtw-cols,4),1fr);gap:12px;margin-bottom:8px}
@media(max-width:900px){.rtw-forecast-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){.rtw-forecast-grid{grid-template-columns:repeat(2,1fr)}}
.rtw-forecast-card{
    background:var(--rtw-white);border:1px solid var(--rtw-border);
    border-top:3px solid var(--rtw-red);border-radius:var(--rtw-radius);
    padding:14px 10px 12px;text-align:center;box-shadow:var(--rtw-shadow);
    transition:transform .15s,box-shadow .15s
}
.rtw-forecast-card:hover{transform:translateY(-3px);box-shadow:0 6px 16px rgba(0,0,0,.12)}
.rtw-fc-icon img,.rtw-fc-icon .rtw-weather-svg{display:block;margin:0 auto 4px;width:50px;height:50px}
.rtw-fc-name{font-size:13px;font-weight:700;color:var(--rtw-dark);margin-bottom:4px}
.rtw-fc-temp{margin-bottom:3px}
.rtw-fc-temp-cur{font-size:22px;font-weight:700;color:var(--rtw-red);line-height:1}
.rtw-fc-temp-range{display:block;font-size:11px;color:var(--rtw-gray);margin-top:2px}
.rtw-fc-cond{font-size:11px;color:var(--rtw-gray);margin-bottom:6px;min-height:14px}
.rtw-fc-details{display:flex;justify-content:center;gap:8px;font-size:11px;color:var(--rtw-gray)}

/* ── Region text ── */
.rtw-region-text{
    background:var(--rtw-white);border-left:4px solid var(--rtw-red);
    border-radius:0 var(--rtw-radius) var(--rtw-radius) 0;
    padding:16px 20px;margin-bottom:16px;box-shadow:var(--rtw-shadow)
}
.rtw-rt-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.rtw-rt-icon{flex-shrink:0;width:48px;height:48px}
.rtw-weather-svg{width:48px;height:48px}
.rtw-rt-meta{flex:1}
.rtw-rt-region{margin:0 0 3px;font-size:14px;font-weight:700;color:var(--rtw-dark)}
.rtw-rt-temp{font-size:13px;color:var(--rtw-red);font-weight:600}
.rtw-rt-body{font-size:14px;line-height:1.65;color:var(--rtw-dark);margin:0 0 8px}

/* ── Timestamps ── */
.rtw-map-updated,.rtw-forecast-updated,.rtw-rt-updated{font-size:11px;color:#aaa;margin:4px 0 0;text-align:right}
.rtw-updated-label{font-weight:600}

/* ── Notices ── */
.rtw-notice{background:#fff8e6;border:1px solid #f5c842;border-radius:var(--rtw-radius);padding:12px 16px;font-size:13px;color:var(--rtw-dark)}

/* ═══════════════════════════════════════════════════════
   rtw-spot – Einzel-Ort Widget (Sidebar)
   Selektoren mit .rtw-spot-prefix verstärkt gegen OnAir2-Resets
   ═══════════════════════════════════════════════════════ */
.rtw-spot{
    background:#ffffff !important;
    border-radius:var(--rtw-radius) !important;
    border:1px solid var(--rtw-border) !important;
    box-shadow:var(--rtw-shadow) !important;
    overflow:hidden !important;
    font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
    padding:0 !important;
    margin:0 !important;
}

/* Header – !important to survive WPBakery/OnAir2 widget CSS resets */
.rtw-spot .rtw-spot-header{
    background:#e30613 !important;
    background-color:#e30613 !important;
    padding:10px 14px 9px !important;
    display:flex !important;
    align-items:baseline !important;
    gap:8px !important;
    border:none !important;
    border-radius:0 !important;
    margin:0 !important;
}
.rtw-spot .rtw-spot-name{
    font-size:15px !important;
    font-weight:700 !important;
    color:#ffffff !important;
    line-height:1.2 !important;
    background:none !important;
    padding:0 !important;
}
.rtw-spot .rtw-spot-region{
    font-size:10px !important;
    color:rgba(255,255,255,.75) !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
    background:none !important;
    padding:0 !important;
}

/* Hero: icon + temp */
.rtw-spot .rtw-spot-hero{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    padding:14px 14px 12px !important;
    background:#ffffff !important;
}
.rtw-spot .rtw-spot-icon .rtw-weather-svg,
.rtw-spot .rtw-spot-icon img{
    width:64px !important;height:64px !important;flex-shrink:0 !important;
    filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));
}
.rtw-spot .rtw-spot-temps{
    display:flex !important;flex-direction:column !important;gap:2px !important;
}
.rtw-spot .rtw-spot-temp{
    font-size:36px !important;font-weight:800 !important;
    line-height:1 !important;letter-spacing:-.5px !important;
    background:none !important;padding:0 !important;
}
.rtw-spot .rtw-spot-minmax{
    font-size:12px !important;color:#555555 !important;font-weight:500 !important;
}
.rtw-spot .rtw-spot-cond{
    font-size:12px !important;color:#1a1a1a !important;font-weight:500 !important;
    margin-top:2px !important;
}

/* Details row */
.rtw-spot .rtw-spot-details{
    display:flex !important;flex-direction:column !important;gap:0 !important;
    border-top:1px solid #dddddd !important;
    padding:8px 14px 10px !important;
    background:#ffffff !important;
}
.rtw-spot .rtw-spot-detail-item{
    display:grid !important;grid-template-columns:20px 1fr auto !important;
    align-items:center !important;gap:6px !important;
    padding:4px 0 !important;
    border-bottom:1px solid #f0f0f0 !important;
    font-size:12px !important;
    background:none !important;
}
.rtw-spot .rtw-spot-detail-item:last-child{border-bottom:none !important;}
.rtw-spot .rtw-spot-detail-icon{font-size:13px !important;text-align:center !important;}
.rtw-spot .rtw-spot-detail-label{color:#555555 !important;}
.rtw-spot .rtw-spot-detail-val{
    font-weight:600 !important;color:#1a1a1a !important;
    text-align:right !important;white-space:nowrap !important;
}
.rtw-spot .rtw-spot-wind-arrow{
    font-size:14px !important;margin-left:2px !important;
    display:inline-block !important;
}

/* Divider */
.rtw-spot .rtw-spot-divider{
    height:1px !important;background:#dddddd !important;
    margin:0 !important;
}

/* 3-day mini forecast */
.rtw-spot .rtw-spot-forecast{
    display:grid !important;grid-template-columns:repeat(3,1fr) !important;
    padding:10px 8px 12px !important;gap:4px !important;
    background:#ffffff !important;
}
.rtw-spot .rtw-spot-fc-day{
    display:flex !important;flex-direction:column !important;align-items:center !important;
    gap:2px !important;padding:6px 4px !important;
    border-radius:6px !important;
    background:#f5f5f5 !important;
    text-align:center !important;
    border:none !important;
}
.rtw-spot .rtw-spot-fc-label{
    font-size:11px !important;font-weight:700 !important;
    color:#555555 !important;text-transform:uppercase !important;
    letter-spacing:.03em !important;background:none !important;
}
.rtw-spot .rtw-spot-fc-icon .rtw-weather-svg,
.rtw-spot .rtw-spot-fc-icon img{
    width:32px !important;height:32px !important;
}
.rtw-spot .rtw-spot-fc-max{
    font-size:13px !important;font-weight:700 !important;
    color:#1a1a1a !important;background:none !important;
}
.rtw-spot .rtw-spot-fc-min{
    font-size:11px !important;color:#555555 !important;background:none !important;
}
.rtw-spot .rtw-spot-fc-pop{
    font-size:10px !important;color:#2196a0 !important;font-weight:500 !important;
}

/* Timestamp */
.rtw-spot .rtw-spot-updated{
    padding:6px 14px 8px !important;
    font-size:10px !important;color:#aaaaaa !important;
    text-align:right !important;border-top:1px solid #dddddd !important;
    background:#ffffff !important;
}

/* ── Timestamp / Stand-Zeile ─────────────────────────────────────────────── */
.rtw-map-updated,
.rtw-forecast-updated {
    margin: 5px 0 0;
    font-size: 11px;
    color: #999;
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap;
}
.rtw-updated-label {
    font-weight: 600;
    color: #777;
}
.rtw-age {
    color: #bbb;
}
.rtw-refreshing {
    color: #f0a500;
    font-size: 11px;
    animation: rtw-pulse 1.8s ease-in-out infinite;
}
@keyframes rtw-pulse {
    0%, 100% { opacity: 1; }
    50%       { opacity: 0.4; }
}

/* ══════════════════════════════════════════════════════════════════════════
   RainViewer Radar-Toolbar
   ══════════════════════════════════════════════════════════════════════════ */

.rtw-radar-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    background: #fff;
    border: 1px solid var(--rtw-border);
    border-bottom: none;
    border-radius: var(--rtw-radius) var(--rtw-radius) 0 0;
    flex-wrap: wrap;
}
.rtw-radar-btn {
    background: none;
    border: 1px solid var(--rtw-border);
    border-radius: 5px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--rtw-dark);
    white-space: nowrap;
    transition: background .15s, border-color .15s;
    line-height: 1.4;
}
.rtw-radar-btn:hover { background: var(--rtw-light); }
.rtw-radar-toggle--active {
    background: #e8f4ff !important;
    border-color: #2196f3 !important;
    color: #1565c0 !important;
}
.rtw-radar-controls {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
    flex-wrap: wrap;
}
.rtw-radar-slider {
    flex: 1;
    min-width: 80px;
    max-width: 220px;
    height: 4px;
    accent-color: #2196f3;
    cursor: pointer;
}
.rtw-radar-time {
    font-size: 12px;
    font-weight: 600;
    color: #444;
    white-space: nowrap;
    min-width: 60px;
}
.rtw-radar-nowcast {
    display: inline-block;
    background: #ff8c00;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    padding: 1px 5px;
    border-radius: 3px;
    text-transform: uppercase;
    letter-spacing: .03em;
    margin-left: 3px;
}
.rtw-radar-badge {
    font-size: 11px;
    color: #888;
    animation: rtw-pulse 1.4s ease-in-out infinite;
}
/* Karte nahtlos unter Toolbar wenn Radar aktiv */
.rtw-map-wrap .rtw-radar-toolbar + .rtw-map {
    border-top: none;
    border-radius: 0 0 var(--rtw-radius) var(--rtw-radius);
}


/* ══════════════════════════════════════════════════════════════════════════
   Wetterwarnung-Banner
   ══════════════════════════════════════════════════════════════════════════ */

.rtw-warn-banner {
    border-radius: var(--rtw-radius);
    overflow: hidden;
    margin-bottom: 12px;
    border: 1.5px solid rgba(0,0,0,.12);
    box-shadow: 0 2px 8px rgba(0,0,0,.10);
    background: var(--rtw-warn-bg, #f5c400);
    color: var(--rtw-warn-text, #1a1a1a);
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.rtw-warn-header {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    font-weight: 700;
    font-size: 14px;
    cursor: default;
    position: relative;
}
.rtw-warn-header[data-toggle] {
    cursor: pointer;
    user-select: none;
}
.rtw-warn-header[data-toggle]:hover { filter: brightness(0.95); }
.rtw-warn-title { flex: 1; line-height: 1.3; }
.rtw-warn-chevron {
    font-size: 11px;
    transition: transform .25s;
    flex-shrink: 0;
}
.rtw-warn-banner--collapsed .rtw-warn-chevron {
    transform: rotate(180deg);
}
.rtw-warn-close {
    background: none;
    border: none;
    color: inherit;
    opacity: 0.6;
    cursor: pointer;
    font-size: 14px;
    padding: 2px 4px;
    line-height: 1;
    flex-shrink: 0;
    border-radius: 3px;
    transition: opacity .15s, background .15s;
}
.rtw-warn-close:hover { opacity: 1; background: rgba(0,0,0,.1); }

/* Einzel-Warnung */
.rtw-warn-single {
    padding: 4px 14px 10px;
    font-size: 13px;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

/* Listen-Warnungen */
.rtw-warn-list {
    list-style: none;
    margin: 0;
    padding: 0;
    border-top: 1px solid rgba(0,0,0,.08);
}
.rtw-warn-list.rtw-warn-list--hidden { display: none; }

.rtw-warn-item {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px 14px;
    border-bottom: 1px solid rgba(0,0,0,.06);
    background: rgba(255,255,255,.15);
    font-size: 13px;
}
.rtw-warn-item:last-child { border-bottom: none; }

.rtw-warn-item-badge {
    display: inline-block;
    background: var(--rtw-item-bg, #f5c400);
    color: var(--rtw-item-text, #1a1a1a);
    font-size: 11px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 10px;
    white-space: nowrap;
    flex-shrink: 0;
}
.rtw-warn-item-type {
    font-weight: 700;
    flex-shrink: 0;
}
.rtw-warn-item-text {
    color: inherit;
    opacity: .9;
    flex: 1;
}
.rtw-warn-item-until {
    font-size: 11px;
    opacity: .75;
    white-space: nowrap;
    flex-shrink: 0;
}

/* Quelle */
.rtw-warn-source {
    padding: 5px 14px;
    font-size: 10px;
    opacity: .65;
    border-top: 1px solid rgba(0,0,0,.08);
    background: rgba(0,0,0,.05);
}

/* Warnstufen-Farbvarianten (für spezifische Overrides) */
.rtw-warn-level-1 { --rtw-warn-bg: #f5c400; --rtw-warn-text: #1a1a1a; }
.rtw-warn-level-2 { --rtw-warn-bg: #ff8c00; --rtw-warn-text: #ffffff; }
.rtw-warn-level-3 { --rtw-warn-bg: #e30613; --rtw-warn-text: #ffffff; }
.rtw-warn-level-4 { --rtw-warn-bg: #7b0099; --rtw-warn-text: #ffffff; }

/* Einklapp-Animation */
.rtw-warn-list {
    transition: max-height .3s ease;
    overflow: hidden;
    max-height: 500px;
}
.rtw-warn-list--hidden {
    max-height: 0 !important;
    display: block !important; /* override display:none für Animation */
}

/* Warn-Banner JS-Interaktivität wird inline geladen */

/* ═══════════════════════════════════════════════════════════════════════
   NEUE LAYOUT-SEKTIONEN v1.4.0
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Gemeinsame Sektions-Typografie ─────────────────────────────────── */
.rtw-section-title {
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #1a1a1a;
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #e30613;
    display: flex;
    align-items: baseline;
    gap: 8px;
}
.rtw-section-loc,
.rtw-section-sub {
    font-size: 11px;
    font-weight: 500;
    color: #888;
    text-transform: none;
    letter-spacing: 0;
}
.rtw-source-note {
    font-size: 10px;
    color: #bbb;
    margin: 8px 0 0;
}

/* ── TAGESINFO ──────────────────────────────────────────────────────── */
.rtw-tagesinfo {
    margin: 24px 0;
}
.rtw-ti-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
@media (max-width: 700px) {
    .rtw-ti-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 400px) {
    .rtw-ti-grid { grid-template-columns: 1fr; }
}
.rtw-ti-card {
    background: #fff;
    border-radius: 8px;
    border: 1px solid #ebebeb;
    box-shadow: 0 1px 3px rgba(0,0,0,.04);
    padding: 14px 12px 12px;
    text-align: center;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.rtw-ti-icon {
    font-size: 22px;
    margin-bottom: 4px;
    line-height: 1;
}
.rtw-ti-label {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #888;
    margin-bottom: 8px;
}
.rtw-ti-big {
    font-size: 36px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1;
    margin-bottom: 4px;
}
.rtw-ti-big .rtw-ti-unit { font-size: 14px; font-weight: 500; color: #888; }
.rtw-ti-muted { color: #ccc !important; }
.rtw-ti-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 6px;
}
.rtw-ti-sub {
    font-size: 10px;
    color: #888;
    margin-top: 4px;
    line-height: 1.4;
}
/* Sonnen-Karte */
.rtw-ti-sun-times {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin: 6px 0 4px;
}
.rtw-ti-sun-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}
.rtw-ti-sun-emoji { font-size: 18px; }
.rtw-ti-sun-val {
    font-size: 16px;
    font-weight: 700;
    color: #1a1a1a;
}
.rtw-ti-sun-sep { color: #ccc; font-size: 14px; }
/* Wind-Kompass */
.rtw-ti-compass {
    display: flex;
    justify-content: center;
    margin: 6px 0 4px;
}
/* AQI Bar */
.rtw-ti-aq-bar-wrap {
    background: #eee;
    border-radius: 4px;
    height: 5px;
    margin: 8px 0 4px;
    overflow: hidden;
}
.rtw-ti-aq-bar {
    height: 100%;
    border-radius: 4px;
    transition: width .4s ease;
    min-width: 4px;
}

/* ── WETTERVORSCHAU ─────────────────────────────────────────────────── */
.rtw-vorschau {
    margin: 24px 0;
}
.rtw-vorschau-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}
.rtw-vorschau-head .rtw-section-title { margin-bottom: 0; }
.rtw-tab-btns {
    display: flex;
    gap: 4px;
}
.rtw-tab-btn {
    background: transparent;
    border: 1px solid #ddd;
    border-radius: 20px;
    padding: 4px 14px;
    font-size: 12px;
    font-weight: 600;
    color: #666;
    cursor: pointer;
    transition: background .2s, color .2s, border-color .2s;
}
.rtw-tab-btn:hover { background: #f5f5f5; border-color: #bbb; color: #1a1a1a; }
.rtw-tab-btn.rtw-tab-active {
    background: #e30613;
    border-color: #e30613;
    color: #fff;
}
.rtw-fc-panel { display: none; }
.rtw-fc-panel.rtw-fc-panel-active { display: block; }
.rtw-fc-row {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 8px;
}
.rtw-fc-row-10 {
    grid-template-columns: repeat(5, 1fr);
}
@media (max-width: 640px) {
    .rtw-fc-row, .rtw-fc-row-10 { grid-template-columns: repeat(5, 1fr); gap: 4px; }
}
@media (max-width: 400px) {
    .rtw-fc-row, .rtw-fc-row-10 { grid-template-columns: repeat(4, 1fr); }
}
.rtw-fc-day {
    background: #fff;
    border-radius: 8px;
    border: 1px solid #ebebeb;
    padding: 10px 6px;
    text-align: center;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    box-shadow: 0 1px 3px rgba(0,0,0,.04);
}
.rtw-fc-day-name {
    font-size: 11px;
    font-weight: 700;
    color: #555;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: 2px;
}
.rtw-fc-day-date {
    font-size: 10px;
    color: #bbb;
    margin-bottom: 6px;
}
.rtw-fc-day-icon {
    width: 36px;
    height: 36px;
    margin: 0 auto 6px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.rtw-fc-day-icon svg { width: 36px !important; height: 36px !important; }
.rtw-fc-day-max {
    font-size: 16px;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1;
}
.rtw-fc-day-min {
    font-size: 12px;
    color: #888;
    margin-top: 1px;
}
.rtw-fc-day-pop {
    font-size: 10px;
    color: #2196a0;
    font-weight: 600;
    margin-top: 4px;
}
.rtw-fc-om-note {
    font-size: 10px;
    color: #bbb;
    margin: 8px 0 0;
    text-align: right;
}

/* ── POLLENFLUG ─────────────────────────────────────────────────────── */
.rtw-pollen {
    margin: 24px 0;
}
.rtw-pollen-grid {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.rtw-pollen-row {
    display: grid;
    grid-template-columns: 160px 1fr 70px;
    gap: 10px;
    align-items: center;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
@media (max-width: 500px) {
    .rtw-pollen-row { grid-template-columns: 120px 1fr 60px; gap: 6px; }
}
.rtw-pollen-meta {
    display: flex;
    align-items: center;
    gap: 6px;
}
.rtw-pollen-icon { font-size: 18px; }
.rtw-pollen-name { font-size: 13px; font-weight: 700; color: #1a1a1a; }
.rtw-pollen-season { font-size: 10px; color: #aaa; display: block; margin-top: 1px; }
.rtw-pollen-bar-wrap {
    background: #eee;
    border-radius: 6px;
    height: 10px;
    overflow: hidden;
}
.rtw-pollen-bar {
    height: 100%;
    border-radius: 6px;
    transition: width .5s ease;
    min-width: 4px;
}
.rtw-pollen-label {
    font-size: 11px;
    font-weight: 700;
    text-align: right;
}

/* ── LUFTQUALITÄT ───────────────────────────────────────────────────── */
.rtw-luftq {
    margin: 24px 0;
}
.rtw-luftq-grid {
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.rtw-luftq-row {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.rtw-luftq-city {
    font-size: 14px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 5px;
}
.rtw-luftq-bar-wrap {
    background: #eee;
    border-radius: 6px;
    height: 12px;
    overflow: hidden;
    margin-bottom: 5px;
}
.rtw-luftq-bar {
    height: 100%;
    border-radius: 6px;
    transition: width .5s ease;
    min-width: 4px;
}
.rtw-luftq-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 3px;
}
.rtw-luftq-detail {
    font-size: 11px;
    color: #aaa;
}

/* ── SCHNEE & LAWINEN ───────────────────────────────────────────────── */
.rtw-schnee {
    margin: 24px 0;
}
.rtw-lawine-banner {
    background: #fff3cd;
    border: 1px solid #ffc107;
    border-radius: 6px;
    padding: 8px 12px;
    font-size: 13px;
    color: #856404;
    margin-bottom: 14px;
}
.rtw-lawine-banner a { color: #856404; font-weight: 700; }
.rtw-schnee-grid {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.rtw-schnee-row {
    display: grid;
    grid-template-columns: 1fr auto 140px auto;
    gap: 10px;
    align-items: center;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
@media (max-width: 500px) {
    .rtw-schnee-row { grid-template-columns: 1fr 80px; }
    .rtw-schnee-bar-wrap, .rtw-schnee-elev { display: none; }
}
.rtw-schnee-region { font-size: 13px; font-weight: 700; color: #1a1a1a; }
.rtw-schnee-elev { font-size: 11px; color: #aaa; white-space: nowrap; }
.rtw-schnee-bar-wrap {
    background: #eee;
    border-radius: 6px;
    height: 10px;
    overflow: hidden;
}
.rtw-schnee-bar {
    height: 100%;
    border-radius: 6px;
    transition: width .5s ease;
    min-width: 4px;
}
.rtw-schnee-val {
    font-size: 13px;
    font-weight: 700;
    text-align: right;
    white-space: nowrap;
}

/* ═══════════════════════════════════════════════════════════════════════
   KARTEN-TOOLBAR, ORT-SWITCHER, CONTENT-CARDS  v1.5.0
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Karte: kein oberer Radius wenn Toolbar drüber ─────────────────────*/
.rtw-map-toolbar + .rtw-map {
    border-radius: 0;
    border-top: none;
}

/* ── Karten-Toolbar ─────────────────────────────────────────────────── */
.rtw-map-wrap { position: relative; }
.rtw-map-toolbar {
    display: flex;
    gap: 2px;
    padding: 0;
    background: #1c1c1c;
    border-radius: 8px 8px 0 0;
    overflow: hidden;
}
.rtw-map-btn {
    background: transparent;
    border: none;
    border-right: 1px solid rgba(255,255,255,.08);
    color: rgba(255,255,255,.7);
    font-size: 12px;
    font-weight: 600;
    padding: 9px 16px;
    cursor: pointer;
    transition: background .15s, color .15s;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    white-space: nowrap;
    letter-spacing: .01em;
}
.rtw-map-btn:last-child { border-right: none; }
.rtw-map-btn:hover { background: rgba(255,255,255,.1); color: #fff; }
.rtw-map-btn--active { background: var(--rtw-red); color: #fff; }
.rtw-map-btn--active:hover { background: #c8040f; }

/* ── Ort-Switcher ────────────────────────────────────────────────────── */
.rtw-orte-switcher {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px 3px;
    padding: 10px 12px 10px;
    background: #fff;
    border: 1px solid var(--rtw-border);
    border-top: none;
    border-radius: 0 0 8px 8px;
    margin-bottom: 24px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
.rtw-orte-label { display: none; }  /* kein "ORT:" Label */
.rtw-ort-btn {
    background: transparent;
    border: none;
    border-radius: 4px;
    padding: 4px 8px;
    font-size: 13px;
    font-weight: 500;
    color: #555;
    cursor: pointer;
    transition: background .12s, color .12s;
    display: inline-flex;
    align-items: baseline;
    gap: 3px;
    white-space: nowrap;
    line-height: 1.4;
}
.rtw-ort-btn:hover {
    background: #f0f0f0;
    color: #1a1a1a;
}
.rtw-ort-btn--active {
    background: var(--rtw-red);
    color: #fff;
    font-weight: 600;
}
.rtw-ort-temp {
    font-size: 11px;
    font-weight: 600;
    color: #999;
}
.rtw-ort-btn--active .rtw-ort-temp { color: rgba(255,255,255,.8); }

/* ── Content-Wrapper: transparenter Hintergrund ─────────────────────── */
/* Die Wrapper #rtw-tagesinfo-content / #rtw-vorschau-content haben
   keinen eigenen Rahmen – die inneren Sektionen (rtw-tagesinfo,
   rtw-vorschau) bringen ihr eigenes Styling mit               */
#rtw-tagesinfo-content,
#rtw-vorschau-content {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0;
}

/* ── Tagesinfo-Karten: weiss, kein grauer Hintergrund ───────────────── */
.rtw-tagesinfo {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0 0 20px;
}
.rtw-ti-card {
    background: #fff;
    border: 1px solid var(--rtw-border);
    border-radius: 8px;
    box-shadow: 0 1px 4px rgba(0,0,0,.05);
    padding: 14px 12px 12px;
}

/* ── Vorschau: weiss, kein grauer Hintergrund ───────────────────────── */
.rtw-vorschau {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0 0 20px;
}
.rtw-fc-day {
    background: #fff;
    border: 1px solid var(--rtw-border);
    border-radius: 8px;
    box-shadow: 0 1px 4px rgba(0,0,0,.05);
}

/* ── Pollen / Luftqualität / Schnee: transparente Wrapper ───────────── */
.rtw-pollen,
.rtw-luftq,
.rtw-schnee {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 0;
    margin: 0 0 20px;
}

/* ── Loading-State ───────────────────────────────────────────────────── */
.rtw-loading {
    opacity: .45;
    pointer-events: none;
    transition: opacity .2s;
}
