/* Region-Magazin – Ergänzungen zu base.css / region.css (gleiche Tokens, Schrift, Radien, Schatten).
   region.html = Übersicht (Hub), je Thema eine Seite mit Mini-Karte, Themen-Reiterleiste und „Nächstes Thema“. Verhalten: region-magazin.js */
:root{--mag-gap:clamp(.75rem,1.6vw,1.25rem);--mm-land:#f3f2ed;--mm-out:#e7e8e3}
/* Themenfarben der 11 Themen + plan/prak stehen in base.css (erzeugt von tools/site/region.py); hier nur die Umgebungs-Ebenen */
[data-c=einkaufen]{--pc:#3f7d5a}
[data-c=essen]{--pc:#c0623a}
[data-c=praktisch]{--pc:#4a6a8f}
[data-c=baden]{--pc:#2a8ca8}

/* Themen-Reiter (wie das Untermenü der Region, aber Seiten statt Abschnitte) */
.mag-tabs{position:sticky;top:var(--head-h);z-index:40;background:color-mix(in srgb,var(--c-bg) 84%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.5);backdrop-filter:blur(20px) saturate(1.5);border-bottom:1px solid var(--c-line)}
.mag-tabs ul{display:flex;gap:.4rem;list-style:none;margin:0;padding:.6rem var(--gutter);overflow-x:auto;scrollbar-width:none;scroll-padding-inline:var(--gutter);overscroll-behavior-x:contain}
.mag-tabs ul::-webkit-scrollbar{display:none}
.mag-tabs ul:not(.is-end){-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 3rem),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 3rem),transparent)}
.mag-tabs ul:not(.is-start):not(.is-end){-webkit-mask-image:linear-gradient(90deg,transparent,#000 3rem,#000 calc(100% - 3rem),transparent);mask-image:linear-gradient(90deg,transparent,#000 3rem,#000 calc(100% - 3rem),transparent)}
.mag-tabs ul.is-end:not(.is-start){-webkit-mask-image:linear-gradient(90deg,transparent,#000 3rem);mask-image:linear-gradient(90deg,transparent,#000 3rem)}
.mag-tabs a{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:.3rem .95rem;border-radius:999px;white-space:nowrap;text-decoration:none;color:var(--c-text);border:1px solid var(--c-line);font-size:.92rem;font-weight:500;transition:background-color .25s,border-color .25s,color .25s}
.mag-tabs a:hover{background:var(--c-surface)}
.mag-tabs li{flex:none}
.mag-tabs a .ico{flex:none;width:1.05em;height:1.05em}
.mag-tabs a i{width:.55rem;height:.55rem;border-radius:50%;background:var(--pc);flex:none}
.mag-tabs a[aria-current]{background:var(--c-dark);border-color:var(--c-dark);color:var(--c-dark-ink)}
.mag-tabs a[aria-current] i{box-shadow:0 0 0 2px var(--c-dark-ink)}
/* Rechner: ab 1260 px alle Reiter in einer Zeile – kurze Namen („Slowenien“, „Anreise“), „Übersicht“ bis 1599 px nur als Symbol;
   reicht der Platz trotzdem nicht (größere Schrift), umbrechen statt Reiter hinter dem Rand zu verstecken. Darunter: wischen. */
@media (min-width:1100px){.mag-tabs ul{gap:.15rem;padding-inline:1rem}.mag-tabs a{padding:.3rem .5rem;font-size:.83rem;gap:.3rem}.mag-tabs .mt-x{display:none}}
@media (min-width:1100px) and (max-width:1599px){.mag-tabs .mt-hl{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.mag-tabs a:has(.mt-hl){padding-inline:.65rem}}
@media (min-width:1260px){.mag-tabs ul{flex-wrap:wrap;justify-content:center;overflow:visible;-webkit-mask-image:none !important;mask-image:none !important}}
/* English labels are longer (Getting here, Excursions …): slightly narrower pills so the bar stays on one line from 1260 px */
@media (min-width:1100px) and (max-width:1599px){html[lang=en] .mag-tabs a{padding-inline:.38rem}html[lang=en] .mag-tabs a:has(.mt-hl){padding-inline:.55rem}}
@media (min-width:1600px){.mag-tabs ul{gap:.25rem}.mag-tabs a{padding:.3rem .7rem;font-size:.86rem}}

/* Kopfbild der Themenseiten */
.mag-hero .hero__stage{min-height:max(26rem,min(66svh,42rem))}
.mag-hero--hub .hero__stage{min-height:max(32rem,min(84svh,52rem))}
/* Lesbarkeit auf hellen Fotos (Hausfassade, Markt, Himmel): kräftigerer Verlauf unter dem Text, oben einer fürs Logo */
.mag-hero .hero__media::before{content:"";position:absolute;inset:0 0 auto;height:min(13rem,40%);z-index:1;pointer-events:none;background:linear-gradient(to bottom,rgb(14 22 44 / .62),rgb(14 22 44 / .28) 55%,transparent)}
.mag-hero .hero__media::after{background:linear-gradient(to top,rgb(14 22 44 / .82),rgb(14 22 44 / .66) 34%,rgb(14 22 44 / .3) 60%,transparent 78%)}
@media (min-width:900px) and (orientation:landscape){.mag-hero .hero__media::after{background:linear-gradient(to right,rgb(14 22 44 / .72),rgb(14 22 44 / .5) 34%,transparent 64%),linear-gradient(to top,rgb(14 22 44 / .5),transparent 50%)}}
.mag-hero__facts{display:flex;flex-wrap:wrap;gap:.45rem;margin:0;font-size:.82rem;font-weight:600}
.mag-hero__facts span{padding:.32rem .8rem;border-radius:999px;background:rgb(255 255 255 / .16);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-shadow:none;border:1px solid rgb(255 255 255 / .28)}
.hero__credit{position:absolute;z-index:2;right:var(--gutter);bottom:.55rem;max-width:min(60%,30rem);margin:0;text-align:right;font-size:.68rem;line-height:1.35;color:rgb(255 255 255 / .88);text-shadow:0 1px 2px rgb(0 0 0 / .7)}
.hero__credit a{color:inherit}
@media (max-width:699px){.mag-hero .hero__content{padding-bottom:3.2rem}
.hero__credit{max-width:calc(100% - 2 * var(--gutter))}
}
/* Überschriften der Magazin-Bausteine */
.mag-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:.2rem .7rem;font-size:clamp(1.4rem,1.1rem + 1.1vw,2rem);margin:0 0 1rem}
.mag-h span{font-size:.9rem;font-weight:500;color:var(--c-muted);letter-spacing:0}
.mag-head{align-items:end;margin-bottom:.6rem}
.mag-head h2{margin:0}
.mag-head--start{margin-top:clamp(2rem,5vw,3.5rem)}
.mag-head .more{white-space:nowrap}

/* Themenkarten (Hub: Raster, Startseite: Seitwärts-Leiste) */
.mag-cats{list-style:none;margin:0;padding:0;display:grid;gap:var(--mag-gap);grid-template-columns:repeat(2,minmax(0,1fr))}
.mag-cats > :is(:nth-child(1),:nth-child(7),:nth-child(8)){grid-column:span 2}
@media (min-width:900px){.mag-cats{grid-template-columns:repeat(4,minmax(0,1fr))}
.mag-cats > :is(:nth-child(2)){grid-column:span 2}
}
.mag-cat a{position:relative;display:grid;align-items:end;height:100%;min-height:clamp(12.5rem,30vw,20rem);border-radius:var(--r);overflow:hidden;color:#fff;text-decoration:none;isolation:isolate;box-shadow:var(--shadow);background:var(--c-dark)}
.mag-cats > :is(:nth-child(1),:nth-child(2)) a{min-height:clamp(17rem,34vw,28rem)}
.mag-cat picture{position:absolute;inset:0;z-index:-2}
.mag-cat img{transition:transform .9s var(--ease)}
.mag-cat a:hover img{transform:scale(1.04)}
.mag-cat a::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgb(18 26 50 / .86),rgb(18 26 50 / .4) 48%,transparent 78%)}
.mag-cat__tx{display:grid;gap:.3rem;padding:clamp(.95rem,2.2vw,1.6rem);text-shadow:0 1px 2px rgb(0 0 0 / .35)}
.mag-cat__no{display:flex;align-items:center;gap:.55rem;font-size:.74rem;font-weight:600;letter-spacing:.16em}
.mag-cat__no::before{content:"";width:1.6rem;height:3px;border-radius:2px;background:color-mix(in srgb,var(--pc) 55%,#fff)}
.mag-cat b{font-size:clamp(1.2rem,1rem + 1vw,2rem);font-weight:650;letter-spacing:-.02em;line-height:1.1}
.mag-cat__t{font-size:.93rem;line-height:1.4;opacity:.93;max-width:30rem}
.mag-cat small{font-size:.76rem;font-weight:600;opacity:.82;margin-top:.15rem}
@media (max-width:899px){.mag-cats > :nth-child(6){grid-column:span 2}  /* 1 · 2+3 · 4+5 · 6 · 7 · 8 – keine Lücke */
.mag-cats > :not(:nth-child(1),:nth-child(6),:nth-child(7),:nth-child(8)) .mag-cat__t{display:none}
.mag-cats > :not(:nth-child(1),:nth-child(6),:nth-child(7),:nth-child(8)) small{font-size:.7rem}
}
.mag-cats-rail{--col:min(72%,17.5rem)}
.mag-cats-rail .mag-cat a{min-height:0;aspect-ratio:4 / 5}

/* Seitwärts-Leisten (.mag-rail …), Wetter-Umschalter (.wxseg, .wx-p) und Karten (.rcard, .picks): gemeinsame Komponente in base.css / app.js */
.wx .chapter-head{margin-bottom:clamp(1rem,3vw,1.8rem)}

/* Mini-Karten (statisch aus karte.json, OSM) */
.mm{position:relative;margin:0;border-radius:var(--r);overflow:hidden;background:var(--mm-out);box-shadow:0 0 0 1px var(--c-line),var(--shadow);aspect-ratio:4 / 3;contain:paint;user-select:none;-webkit-user-select:none}
.mm-svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.mm-svg path,.mm-svg polyline{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.mm-out{fill:var(--mm-out)}
.mm-land{fill:var(--mm-land)}
.mm-svg path.mm-lk{fill:#a7cbe8;stroke:#6fa3d1;stroke-width:.8}
.mm-svg path.mm-wl{fill:#d3e2c9;stroke:#a9c49a;stroke-width:.8}
.mm-svg path.mm-rv{stroke:#7fb0dc;stroke-width:1.6}
.mm-svg path.mm-rl{stroke:#8d93a3;stroke-width:1.2;stroke-dasharray:5 3}
.mm-svg path.mm-r3{stroke:#e2ddd1;stroke-width:1.4}
.mm-svg path.mm-r2c{stroke:#d6d0c2;stroke-width:4}
.mm-svg path.mm-r2{stroke:#fff;stroke-width:2.4}
.mm-svg path.mm-r1c{stroke:#cfa65c;stroke-width:4.6}
.mm-svg path.mm-r1{stroke:#f2d7a1;stroke-width:2.8}
.mm-svg path.mm-bd{stroke:var(--c-accent);stroke-width:1.8;stroke-dasharray:7 4 1.5 4;opacity:.75}
.mm-svg polyline.mm-route{stroke:var(--c-accent);stroke-width:2.6;stroke-dasharray:1 6;opacity:.9}
.mm-ov{position:absolute;inset:0;pointer-events:none}
.mm-ov > *{position:absolute}
.mm-t{transform:translate(-50%,-50%);font:500 11px/1.15 var(--f);color:#5d6478;white-space:nowrap;text-shadow:0 0 2px var(--mm-land),0 0 2px var(--mm-land),0 0 4px var(--mm-land)}
.mm-t--tn{font-weight:650;color:#3f475c;font-size:11.5px}
.mm-t--pk::before{content:"▲ ";font-size:.8em;color:#8a6a4c}
.mm-t--w{font-style:italic;color:#2f6ea8;text-shadow:0 0 2px #a7cbe8,0 0 3px #a7cbe8}
.mm-t--way{font-weight:600;color:var(--c-accent)}
.mm-home{width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;display:grid;place-items:center;background:var(--c-accent);color:#fff;box-shadow:0 0 0 2.5px #fff,0 2px 6px rgb(20 30 60 / .4);z-index:2}
.mm-home svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mm-home b{position:absolute;left:calc(100% + 5px);top:50%;transform:translateY(-50%);padding:4px 8px;border-radius:999px;background:var(--c-accent);color:#fff;font:600 12px/1 var(--f);white-space:nowrap;box-shadow:0 1px 3px rgb(20 30 60 / .25)}
.mm-home--l b{left:auto;right:calc(100% + 5px)}
.mm-home--t b,.mm-home--b b{left:50%;top:auto;bottom:calc(100% + 5px);transform:translateX(-50%)}
.mm-home--b b{bottom:auto;top:calc(100% + 5px)}
.mm-pin{width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;display:grid;place-items:center;background:var(--pc);color:#fff;font:700 12px/1 var(--f);text-decoration:none;box-shadow:0 0 0 2px #fff,0 1px 4px rgb(20 30 60 / .45);pointer-events:auto;transition:transform .3s var(--ease),box-shadow .3s;z-index:1}
.mm-pin.is-hl{transform:scale(1.35);z-index:3;box-shadow:0 0 0 2.5px #fff,0 0 0 7px color-mix(in srgb,var(--pc) 30%,transparent),0 2px 8px rgb(20 30 60 / .45)}
.mm-pin--dot{width:15px;height:15px;margin:-7.5px 0 0 -7.5px}
.mm-l{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);padding:4px 8px;border-radius:999px;background:#fff;color:var(--c-text);font:600 11.5px/1 var(--f);white-space:nowrap;box-shadow:0 1px 3px rgb(20 30 60 / .3);opacity:0;transition:opacity .2s;pointer-events:none}
.mm-pin--dot:hover .mm-l,.mm-pin--dot.is-hl .mm-l{opacity:1}
.mm-way{width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#fff;border:2.5px solid var(--c-accent)}
.mm-edge{transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:.3rem;padding:4px 9px 4px 5px;border-radius:999px;background:var(--c-dark);color:#fff;font:600 11px/1 var(--f);white-space:nowrap;box-shadow:0 1px 4px rgb(20 30 60 / .35);pointer-events:auto}
.mm-edge svg{width:14px;height:14px;transform:rotate(var(--a));fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.mm-poi{width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;background:var(--pc);box-shadow:0 0 0 1.5px #fff,0 1px 2px rgb(20 30 60 / .35);pointer-events:auto;transition:transform .25s var(--ease)}
.mm-poi.is-hl{transform:scale(1.8);z-index:3}
.mm-n{position:absolute;right:10px;top:8px;font:700 11px/1 var(--f);color:#5d6478;pointer-events:none}
.mm-sb{position:absolute;left:12px;top:24px;height:6px;border:2px solid #5d6478;border-top:0;pointer-events:none}
.mm-sb b{position:absolute;left:0;bottom:7px;font:600 10.5px/1 var(--f);color:#3f475c;white-space:nowrap;text-shadow:0 0 2px var(--mm-land),0 0 3px var(--mm-land)}
.mm-attr{position:absolute;right:0;bottom:0;padding:3px 7px;font-size:10px;line-height:1.2;background:rgb(255 255 255 / .78);color:#5d6478;border-top-left-radius:8px;text-decoration:none}
.mm-attr:hover{text-decoration:underline}
@media (max-width:520px){.mm-t:not(.mm-t--tn):not(.mm-t--way){display:none}
.mm-home b{font-size:11px;padding:3px 7px}
.mm-pin{width:23px;height:23px;margin:-11.5px 0 0 -11.5px;font-size:11px}
}

/* Themenseite: Überblick = Inhaltsverzeichnis + Karte */
.mag-over{padding-block:clamp(2.2rem,5vw,4rem) clamp(.5rem,2vw,1.5rem)}
.mag-over__grid{display:grid;gap:clamp(1rem,3vw,2.5rem)}
.mag-over__map .mm{max-width:46rem}
@media (min-width:900px){.mag-over__grid{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start}
.mag-over__map{position:sticky;top:calc(var(--head-h) + var(--sub-h,3.75rem) + 1.2rem);order:2}
}
.mag-idx{--col:min(66%,14.5rem)}
.mag-idx a{position:relative;display:grid;grid-template-rows:auto 1fr;height:100%;border-radius:16px;overflow:hidden;background:var(--c-surface);border:1px solid var(--c-line);color:inherit;text-decoration:none;transition:background-color .25s,border-color .25s,translate .3s var(--ease)}
.mag-idx a:hover{border-color:var(--c-primary)}
.mag-idx picture{aspect-ratio:16 / 10}
.mag-idx__no{position:absolute;left:.55rem;top:.55rem;z-index:1;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--pc,var(--c-primary));color:#fff;font:700 12px/1 var(--f);box-shadow:0 0 0 2px #fff}
.mag-idx a:not([data-pin]) .mag-idx__no{background:var(--c-muted)}
.mag-idx__tx{display:grid;align-content:start;gap:.2rem;padding:.7rem .85rem .85rem}
.mag-idx__tx b{font-size:.98rem;font-weight:600;line-height:1.25}
.mag-idx__tx small{font-size:.8rem;line-height:1.35;color:var(--c-primary);font-weight:500}
.mag-idx--plain a{grid-template-rows:auto;grid-template-columns:auto 1fr;align-items:center;padding:.6rem .4rem .6rem .7rem}
.mag-idx--plain .mag-idx__no{position:static;box-shadow:none;background:var(--c-dark)}
.mag-idx--plain{--col:min(70%,15rem)}
.mag-idx--plain .mag-idx__tx{padding:.2rem .6rem}
@media (min-width:900px){.mag-over__idx .mag-railwrap{margin-inline:0}
.mag-over__idx .mag-idx{grid-auto-flow:row;grid-template-columns:1fr;grid-auto-columns:auto;gap:.45rem;overflow:visible;padding:0;scroll-snap-type:none}
.mag-over__idx .mag-idx a{grid-template-rows:auto;grid-template-columns:4.6rem 1fr;align-items:center;background:var(--c-bg)}
.mag-over__idx .mag-idx a:hover{background:var(--c-surface);translate:3px 0}
.mag-over__idx .mag-idx picture{aspect-ratio:auto;height:100%;min-height:4.2rem}
.mag-over__idx .mag-idx__no{left:.3rem;top:.3rem;width:22px;height:22px;font-size:11px}
.mag-over__idx .mag-idx__tx{padding:.55rem .9rem}
.mag-idx--plain{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))!important}
.mag-over > .wrap .mag-railwrap{margin-inline:0}
.mag-over > .wrap .mag-idx--plain{grid-auto-flow:row;grid-auto-columns:auto;overflow:visible;padding:0;scroll-snap-type:none}
}
.mag-box{margin-top:1.2rem}
.mag-box p{margin:0}
.mag-box .mag-box__h{font-size:.78rem;font-weight:600;line-height:1;letter-spacing:.16em;text-transform:uppercase;color:var(--c-primary);margin:0 0 .6rem}

/* Artikel: Nummer passend zur Karte */
.mag-arts{padding-top:clamp(1.5rem,4vw,3rem)}
.mag-no{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin:0 0 .7rem;font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--c-muted)}
.mag-no b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--pc,var(--c-primary));color:#fff;font-size:12.5px;letter-spacing:0}
.mag-no a{margin-left:auto;font-size:.78rem;letter-spacing:.02em;text-transform:none;font-weight:600;text-decoration:none}
.mag-no a:hover{text-decoration:underline}
@media (min-width:900px){.mag-arts .longplace > picture{top:calc(var(--head-h) + var(--sub-h,3.75rem) + 1.5rem)}
}

/* Blättern: vorheriges / nächstes Thema */
.mag-pager{display:grid;gap:var(--mag-gap);padding-block:clamp(2rem,5vw,4rem) clamp(1rem,3vw,2rem)}
@media (min-width:700px){.mag-pager{grid-template-columns:minmax(0,1fr) minmax(0,2.2fr)}
}
.mag-pager a{position:relative;display:grid;align-content:end;gap:.3rem;border-radius:var(--r);overflow:hidden;text-decoration:none;isolation:isolate}
.mag-pager__prev{min-height:6.5rem;padding:1.2rem 1.4rem;background:var(--c-surface);color:var(--c-text);border:1px solid var(--c-line)}
.mag-pager__prev:hover{border-color:var(--c-primary)}
.mag-pager__next{min-height:clamp(12rem,24vw,16rem);padding:clamp(1.2rem,3vw,2rem);color:#fff;background:var(--c-dark);box-shadow:var(--shadow)}
.mag-pager__next picture{position:absolute;inset:0;z-index:-2}
.mag-pager__next img{transition:transform .9s var(--ease)}
.mag-pager__next:hover img{transform:scale(1.04)}
.mag-pager__next::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(to top,rgb(18 26 50 / .85),rgb(18 26 50 / .3) 60%,rgb(18 26 50 / .1))}
.mag-pager small{display:inline-flex;align-items:center;gap:.4rem;font-size:.74rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;opacity:.85}
.mag-pager small .ico{width:1em;height:1em}
.mag-pager b{display:inline-flex;align-items:center;gap:.5rem;font-size:clamp(1.3rem,1rem + 1.3vw,2.1rem);font-weight:650;letter-spacing:-.02em;line-height:1.1}
.mag-pager__prev b{font-size:1.2rem}
.mag-pager__next span{font-size:.95rem;opacity:.9;max-width:34rem;text-shadow:0 1px 2px rgb(0 0 0 / .3)}
.mag-note{font-size:.82rem;color:var(--c-muted);margin-block:0 1rem}
.mag-band .band{margin-top:clamp(1rem,3vw,2rem);margin-bottom:clamp(3rem,7vw,5rem)}
.mag-hub-prak .mag-band .band{margin-bottom:0}

/* Hub: Karte + Legende */
.mag-hub-map__grid{display:grid;gap:clamp(1.5rem,4vw,3rem)}
@media (min-width:1000px){.mag-hub-map__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center}
}
.mag-legend{list-style:none;margin:1.2rem 0 1.4rem;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}
.mag-legend a{display:inline-flex;align-items:center;gap:.5rem;min-height:40px;padding:.3rem .9rem .3rem .7rem;border-radius:999px;border:1px solid var(--c-line);color:var(--c-text);text-decoration:none;font-size:.9rem;font-weight:500;background:var(--c-bg)}
.mag-legend a:hover{border-color:var(--pc);background:color-mix(in srgb,var(--pc) 8%,var(--c-bg))}
.mag-legend i{width:.75rem;height:.75rem;border-radius:50%;background:var(--pc);box-shadow:0 0 0 2px #fff,0 0 0 3px color-mix(in srgb,var(--pc) 40%,transparent)}
.mag-legend small{color:var(--c-muted);font-weight:600}
.mag-btns{display:flex;flex-wrap:wrap;gap:.6rem;margin:0}
.mag-hub-intro .chapter-head h2{margin-bottom:.6em}

/* Hub: Tagespläne-Karten */
.mag-plancards{--col:min(80%,20rem)}
.mag-plancard a{position:relative;display:grid;align-content:start;gap:.35rem;height:100%;padding:1.2rem 1.25rem 1.3rem;border-radius:var(--r);background:var(--c-surface);border:1px solid var(--c-line);color:inherit;text-decoration:none;transition:border-color .25s,translate .3s var(--ease)}
.mag-plancard a:hover{border-color:var(--c-primary);translate:0 -3px}
.mag-plancard .mag-idx__no{position:static;margin-bottom:.4rem;background:var(--c-dark);box-shadow:none}
.mag-plancard b{font-size:1.12rem;line-height:1.25}
.mag-plancard small{font-size:.85rem;color:var(--c-muted)}
.mag-plancard span:last-child{font-size:.85rem;color:var(--c-primary);font-weight:500;line-height:1.5;margin-top:.3rem}

/* Hub: Praktisch-Kacheln */
.mag-tiles{list-style:none;margin:0;padding:0;display:grid;gap:var(--mag-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr))}
.mag-tiles a{display:grid;align-content:start;gap:.4rem;height:100%;padding:1.3rem 1.3rem 1.4rem;border-radius:var(--r);background:var(--c-bg);border:1px solid var(--c-line);color:inherit;text-decoration:none;transition:border-color .25s,translate .3s var(--ease)}
.mag-tiles a:hover{border-color:var(--c-primary);translate:0 -3px}
.mag-tiles b{font-size:1.15rem}
.mag-tiles b::after{content:" →";color:var(--c-primary)}
.mag-tiles span{font-size:.92rem;color:var(--c-muted);line-height:1.45}

/* Tagespläne mit Karte */
.mag-plans{display:grid;gap:clamp(1.2rem,3vw,2rem)}
.mag-plan{display:grid;gap:clamp(1rem,3vw,2.2rem);padding:clamp(1rem,2.6vw,1.8rem);background:var(--c-bg);border:1px solid var(--c-line);border-radius:calc(var(--r) + 4px);}
@media (min-width:900px){.mag-plan{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start}
.mag-plan__map{position:sticky;top:calc(var(--head-h) + var(--sub-h,3.75rem) + 1.2rem)}
}
.mag-plan .plan{border:0;padding:0;background:none}
.mag-plan .mag-no b{background:var(--c-dark)}
.mag-plan .plan li.has-pin::before{content:attr(data-n);left:-.72rem;top:.05rem;width:1.35rem;height:1.35rem;display:grid;place-items:center;background:var(--c-accent);color:#fff;font:700 .7rem/1 var(--f);box-shadow:0 0 0 2px var(--c-bg)}
.mag-plan .plan li b a{color:inherit;text-decoration-color:color-mix(in srgb,var(--c-primary) 50%,transparent)}
.mag-plan .mm-pin{--pc:var(--c-accent)}

/* Rund ums Haus (umgebung.json) */
.uv-grid{display:grid;gap:clamp(1.2rem,3vw,2.5rem)}
@media (min-width:1000px){.uv-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start}
}
.uv-layers{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 .9rem;padding:0;border:0}
.uv-layers input{position:absolute;opacity:0;width:1px;height:1px}
.uv-layers label{display:inline-flex;align-items:center;gap:.5rem;min-height:42px;padding:.3rem .95rem .3rem .65rem;border-radius:999px;border:1px solid var(--c-line);background:var(--c-bg);font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color .2s,border-color .2s}
.uv-layers label small{color:var(--c-muted);font-weight:600}
.uv-layers label i{width:15px;height:15px;border-radius:50%;border:2px solid var(--pc);display:grid;place-items:center}
.uv-layers input:checked + label{border-color:var(--pc);background:color-mix(in srgb,var(--pc) 10%,var(--c-bg))}
.uv-layers input:checked + label i{background:var(--pc)}
.uv-layers input:checked + label i::after{content:"";width:6px;height:3.5px;border:solid #fff;border-width:0 0 2px 2px;transform:translateY(-1px) rotate(-45deg)}
.uv-layers input:focus-visible + label{outline:3px solid var(--c-primary);outline-offset:2px}
.uv:has(#ly-einkaufen:not(:checked)) :is(.mm-poi,.uv-col)[data-c=einkaufen],
.uv:has(#ly-essen:not(:checked)) :is(.mm-poi,.uv-col)[data-c=essen],
.uv:has(#ly-praktisch:not(:checked)) :is(.mm-poi,.uv-col)[data-c=praktisch],
.uv:has(#ly-baden:not(:checked)) :is(.mm-poi,.uv-col)[data-c=baden]{display:none}
.uv-near ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.uv-near li{display:grid;gap:.1rem;padding:.75rem .85rem;border-radius:14px;background:var(--c-surface);border-left:4px solid var(--pc)}
.uv-near small{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted)}
.uv-near b{font-size:.95rem;line-height:1.25;font-weight:600;overflow-wrap:anywhere}
.uv-near span{font-size:.8rem;color:var(--c-primary);font-weight:500;line-height:1.3}
.uv-h{margin-top:clamp(2rem,5vw,3rem)}
.uv-cols{--col:min(84%,20rem)}
.uv-col{border-radius:var(--r);background:var(--c-surface);padding:1.1rem 1.2rem 1.2rem;border-top:4px solid var(--pc)}
.uv-col h3{display:flex;align-items:baseline;flex-wrap:wrap;gap:.2rem .6rem;font-size:1.15rem;margin:0 0 .6rem}
.uv-col h3 small{font-size:.78rem;color:var(--c-muted);font-weight:500;letter-spacing:0}
.uv-col h3 i{width:.7rem;height:.7rem;border-radius:50%;background:var(--pc);align-self:center}
.uv-col ol{list-style:none;margin:0;padding:0;display:grid;gap:.1rem}
.uv-col li{display:grid;padding:.42rem 0;border-top:1px solid var(--c-line);font-size:.9rem;line-height:1.3;cursor:default}
.uv-col li:first-child{border-top:0}
.uv-col li span{font-size:.78rem;color:var(--c-muted)}
.uv .hint{margin-top:1rem;max-width:52rem}
@media (min-width:1100px){.uv-cols{grid-auto-flow:row;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-columns:auto;overflow:visible;scroll-snap-type:none}
.mag-uv .mag-railwrap{margin-inline:0}
.mag-uv .uv-cols{padding-inline:0}
}
.mm--uv .mm-home{z-index:4}
.mag-hub-intro .season{background:var(--c-bg)}
.mm-edge--l{transform:translate(0,-50%)}
.mm-edge--r{transform:translate(-100%,-50%);flex-direction:row-reverse;padding:4px 5px 4px 9px}
.mm-edge--t{transform:translate(-50%,0)}
.mm-edge--b{transform:translate(-50%,-100%)}
.mm-edge em{font-style:normal}
.mm-edge em + span{display:none}
@media (max-width:620px){.mm--hub .mm-edge em{display:none}.mm--hub .mm-edge em + span{display:inline}}
.mm-edge{z-index:0}
.mm-pin{z-index:3}.mm-pin.is-hl{z-index:4}
@media (max-width:899px){.mag-plan__map{order:-1}}
@media (max-width:599px){.uv-near li:nth-child(n+9){display:none}}

/* Mini-Karten entzerren (region-magazin.js): Linie vom echten Ort zum verschobenen Pin */
.mm-lead{position:absolute;height:1.5px;margin-top:-.75px;transform-origin:0 50%;background:color-mix(in srgb,var(--pc,var(--c-dark)) 75%,#fff);pointer-events:none;z-index:0}
.mm-lead::before{content:"";position:absolute;left:-3px;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:var(--pc,var(--c-dark));box-shadow:0 0 0 1.5px #fff}
.mm-lead--poi{height:1px;margin-top:-.5px}
.mm-lead--poi::before{width:4px;height:4px;left:-2px;margin-top:-2px;box-shadow:0 0 0 1px #fff}
.mm-home--x b{display:none}
.mm-pin--lb .mm-l{bottom:auto;top:calc(100% + 6px)}
.mm-pin--dot:focus-visible .mm-l{opacity:1}
/* Artikel: Links zur Mini-Karte oben und zur großen Karte */
.mag-no__go{display:inline-flex;flex-wrap:wrap;gap:.2rem 1rem;margin-left:auto}
.mag-no__go a{margin-left:0}
/* Hub: Knopf „Alle Ziele auf der Karte“ im Kopfbild */
.mag-hero__cta{margin:1.1rem 0 0}
.mag-hero__cta .btn{gap:.55rem}
.mag-hero__cta .ico{width:1.2em;height:1.2em}
.mm-pin.mm-pin--dot{width:15px;height:15px;margin:-7.5px 0 0 -7.5px}
@media (max-width:520px){.mm-pin.mm-pin--dot{width:13px;height:13px;margin:-6.5px 0 0 -6.5px}}
