/* TW K116 – gemeinsame Originalregeln, Reihenfolge erhalten */
* {
            box-sizing: border-box;
            font-family: "Inter", sans-serif !important;
        }
html, body {
            margin: 0 !important;
            padding: 0 !important;
            width: 100vw !important;
            height: 100vh !important;
            background-color: #D4D6CB !important; 
            color: #0f172a !important;
            overflow: hidden !important;
        }
.tw-page-wrapper {
            position: absolute !important;
            top: 0 !important;
            left: 0 !important;
            right: 0 !important;
            bottom: 0 !important;
            width: 100vw !important;
            height: 100vh !important;
            border-radius: 0 !important;
            box-shadow: none !important;
            background-color: #D4D6CB !important;
            overflow: hidden !important;
        }
.tw-app-wrapper {
            width: 100% !important;
            height: 100% !important;
            display: flex;
            flex-direction: column;
            overflow: hidden !important;
        }
.tw-main-content {
            display: flex;
            flex-direction: row;
            flex: 1;
            height: 100% !important;
            width: 100%;
            overflow: hidden;
            position: relative;
        }
/* Linke Spalte (Karte) */
.tw-left-pane {
            width: 70%;
            flex: 0 0 70%;
            display: flex;
            flex-direction: column;
            position: relative;
            background-color: #D4D6CB !important;
            height: 100%;
            transition: width 0.3s ease, flex 0.3s ease;
        }
.tw-left-pane.tw-map-fullscreen {
            width: 100% !important;
            flex: 0 0 100% !important;
        }
#map {
            width: 100%;
            height: 100%;
            background-color: #D4D6CB !important;
        }
.leaflet-tile-pane {
            filter: grayscale(100%) brightness(1.05) contrast(1.05) !important;
        }
/* Rechte Spalte (Tabs & Inhalt) */
.tw-right-pane {
            width: 30%;
            flex: 0 0 30%;
            display: flex;
            flex-direction: column;
            background-color: #EBEBE9 !important;
            color: #131615 !important;
            border-left: 1px solid #A1A69F !important;
            height: 100%;
            overflow-y: auto !important;
            position: relative;
            transition: transform 0.3s ease, width 0.3s ease;
        }
.tw-right-pane.tw-pane-hidden {
            display: none !important;
        }
/* ==========================================================================
           TABLET & IPAD PRO (Porträt & Querformat)
           ========================================================================== */
@media screen and (min-width: 768px) and (max-width: 1366px) {
            html, body {
                margin: 0 !important;
                padding: 0 !important;
                width: 100% !important;
                min-width: 0 !important;
                height: auto !important;
                min-height: 100% !important;
                overflow-x: hidden !important;
                overflow-y: auto !important;
                -webkit-overflow-scrolling: touch !important;
            }

            .tw-page-wrapper,
            .tw-app-wrapper,
            .tw-main-content,
            .tw-right-pane {
                position: relative !important;
                width: 100% !important;
                height: auto !important;
                min-height: 0 !important;
                overflow: visible !important;
            }

            .tw-page-wrapper,
            .tw-app-wrapper {
                top: auto !important;
                right: auto !important;
                bottom: auto !important;
                left: auto !important;
            }

            .tw-main-content {
                display: flex !important;
                flex-direction: column !important;
            }

            .tw-left-pane {
                width: 100% !important;
                height: 50vh !important;
                min-height: 400px !important;
                flex: none !important;
                position: relative !important;
                overflow: visible !important;
            }

            @media (orientation: landscape) {
                .tw-left-pane {
                    height: 60vh !important;
                    min-height: 450px !important;
                }
            }

            .tw-left-pane.tw-map-fullscreen {
                height: 100vh !important;
                min-height: 100vh !important;
            }

            .tw-right-pane {
                display: block !important;
                flex: none !important;
                border-left: none !important;
                border-top: 2px solid #A1A69F !important;
                box-shadow: 0 -10px 25px rgba(0,0,0,0.15) !important;
                z-index: 1000 !important;
            }

            .tw-right-pane.tw-pane-hidden {
                display: none !important;
            }

            .tw-tabs-wrapper {
                position: -webkit-sticky !important;
                position: sticky !important;
                top: 0 !important;
                left: auto !important;
                right: auto !important;
                width: 100% !important;
                min-height: 58px !important;
                height: auto !important;
                display: flex !important;
                align-items: center !important;
                margin: 0 !important;
                padding-top: 0 !important;
                background-color: #EBEBE9 !important;
                border-bottom: 1px solid #A1A69F !important;
                box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
                z-index: 999999 !important;
                flex-shrink: 0 !important;
                transform: translateZ(0) !important;
                -webkit-transform: translateZ(0) !important;
            }

            .tw-tabs-nav {
                display: flex !important;
                flex-direction: row !important;
                flex-wrap: nowrap !important;
                width: 100% !important;
                min-width: 0 !important;
                overflow-x: auto !important;
                overflow-y: hidden !important;
                padding: 0 5px !important;
                gap: 15px !important;
                flex: 1 1 auto !important;
                scrollbar-width: none !important;
                -ms-overflow-style: none !important;
                -webkit-overflow-scrolling: touch !important;
                overscroll-behavior-x: contain !important;
                touch-action: pan-x !important;
            }

            .tw-tabs-nav::-webkit-scrollbar {
                display: none !important;
            }

            .tw-tab-btn {
                flex: 0 0 auto !important;
            }

            .tw-tabs-content {
                position: relative !important;
                width: 100% !important;
                height: auto !important;
                min-height: 0 !important;
                display: block !important;
                overflow: visible !important;
                padding: 20px 25px 80px 25px !important;
                background-color: #EBEBE9 !important;
            }

            .tw-tab-pane {
                position: relative !important;
                width: 100% !important;
                height: auto !important;
                min-height: 0 !important;
            }

            .tw-tab-pane.active {
                display: block !important;
            }
        }
/* Back-to-Top Button */
.tw-back-to-top-btn {
            position: fixed;
            bottom: 30px;
            right: 30px;
            width: 48px;
            height: 48px;
            background-color: #434C49 !important;
            color: #EBEBE9 !important;
            border: none;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            box-shadow: 0 4px 15px rgba(0,0,0,0.3);
            z-index: 999999;
            transition: background-color 0.2s ease, transform 0.2s ease, opacity 0.3s ease, visibility 0.3s ease;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
        }
.tw-back-to-top-btn.is-visible {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
        }
.tw-back-to-top-btn:hover {
            background-color: #697772 !important;
            transform: scale(1.05);
        }
.tw-tab-btn {
            background: none !important;
            border: none !important;
            border-bottom: 3px solid transparent !important;
            color: #64748b !important;
            padding: 16px 12px !important;
            font-size: 12.5px !important;
            font-weight: 600 !important;
            cursor: pointer !important;
            white-space: nowrap !important;
            flex: 0 0 auto !important;
            transition: color 0.2s ease !important;
        }
.tw-tab-btn:hover {
            color: #A1A69F !important;
        }
.tw-tab-btn.active {
            color: #131615 !important;
            border-bottom: 3px solid #697772 !important;
        }
.tw-tabs-content {
            padding: 20px 25px 25px 25px !important;
            flex: 1;
            display: flex;
            flex-direction: column;
            overflow-y: auto !important;
            background-color: #EBEBE9 !important;
        }
.tw-tab-pane {
            display: none;
            height: 100%;
        }
.tw-tab-pane.active {
            display: flex !important;
            flex-direction: column;
        }
.tw-tab-pane > *:first-child {
            margin-top: 30px !important;
        }
.tw-wysiwyg-content p,
        .tw-wysiwyg-content li,
        .tw-wysiwyg-content span:not([class*="chapter"]),
        .tw-wysiwyg-content div,
        .tw-right-pane p,
        .tw-right-pane li {
            color: #131615 !important;
            font-size: 13px !important;
            line-height: 1.6 !important;
        }
#mapRegionSelect {
            width: 100% !important;
            background-color: #131615 !important;
            color: #EBEBE9 !important;
            border: none !important;
            border-radius: 6px;
            padding: 6px 8px;
            font-size: 12px;
            outline: none;
        }
.tw-adm-switch { display:flex; flex-direction:column; gap:4px; min-width:70px; }
.tw-adm-switch label { font-size:10px; font-weight:700; color:#EBEBE9; }
#twAdmLevelSelect { background:#131615; color:#EBEBE9; border:0; border-radius:6px; padding:6px; font-size:12px; max-width:90px; }
#twAdmLevelSelect:disabled { opacity:.55; }
#incidentSearchInput {
            background: #131615 !important;
            color: #EBEBE9 !important;
            border: none !important;
            border-radius: 6px !important;
            padding: 8px 10px !important;
            font-size: 12px !important;
            outline: none !important;
        }
#incidentSearchInput::placeholder {
            color: #EBEBE9 !important;
            opacity: 0.8;
        }
#twFilterToggleBtn {
            width: 36px !important;
            height: 34px !important;
            cursor: pointer !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            background-color: #131615 !important;
            border: none !important;
            border-radius: 6px !important;
            transition: background-color 0.2s ease !important;
        }
#twFilterToggleBtn svg {
            color: #EBEBE9 !important;
            stroke: #EBEBE9 !important;
            fill: none !important;
        }
.tw-map-region-filter {
            position: absolute;
            top: 20px !important;
            left: 20px;
            z-index: 1000;
            background: rgba(105, 119, 114, 0.95) !important;
            backdrop-filter: blur(8px);
            border: 1px solid rgba(255, 255, 255, 0.2);
            padding: 18px;
            border-radius: 14px;
            width: 320px;
            color: #EBEBE9 !important;
            box-shadow: 0 10px 25px rgba(0,0,0,0.15);
        }
.tw-filter-top-row {
            display: flex;
            align-items: flex-end;
            gap: 10px;
        }
.tw-filter-row-item {
            flex: 1;
        }
.tw-filter-row-item label {
            font-size: 10px !important;
            font-weight: bold;
            color: #EBEBE9 !important;
            display: block;
            margin-bottom: 6px;
        }
.tw-score-slider-container {
            margin-top: 15px !important;
        }
.tw-score-slider-header {
            font-size: 10px !important;
            color: #EBEBE9 !important;
            margin-bottom: 6px;
            display: flex;
            justify-content: space-between;
            font-weight: bold;
        }
#scoreSlider {
            -webkit-appearance: none;
            width: 100%;
            height: 6px;
            background: #1D201E !important;
            border-radius: 3px;
            outline: none;
        }
#scoreSlider::-webkit-slider-thumb {
            -webkit-appearance: none;
            appearance: none;
            width: 14px;
            height: 14px;
            border-radius: 50%;
            background: #8D938A !important;
            cursor: pointer;
        }
.tw-risk-row {
            position: absolute;
            bottom: 25px;
            left: 20px;
            z-index: 1000;
            width: 320px !important;
        }
.tw-risk-card {
            background: rgba(105, 119, 114, 0.95) !important;
            backdrop-filter: blur(8px);
            border: 1px solid rgba(255, 255, 255, 0.2);
            border-radius: 14px;
            padding: 20px !important;
            box-shadow: 0 10px 25px rgba(0,0,0,0.15);
            color: #EBEBE9 !important;
            width: 100% !important;
        }
/* Senkrechte Navigation oben platziert mit feinen Trennstrichen */
.tw-vertical-menu {
            position: absolute;
            right: 25px;
            top: 20px;
            z-index: 1000;
            display: flex;
            flex-direction: column;
            background: rgba(235, 235, 233, 0.95);
            backdrop-filter: blur(8px);
            border: 1px solid rgba(0, 0, 0, 0.12);
            border-radius: 12px;
            box-shadow: 0 10px 25px rgba(0,0,0,0.08);
            overflow: hidden;
        }
.tw-vertical-menu a {
            color: #0f172a !important;
            text-decoration: none !important;
            font-size: 12px;
            font-weight: bold;
            padding: 12px 14px;
            writing-mode: vertical-rl;
            text-orientation: mixed;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: rgba(235, 235, 233, 0.95);
            border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
            transition: background-color 0.2s ease, color 0.2s ease !important;
        }
.tw-vertical-menu a:last-child {
            border-bottom: none !important;
        }
.tw-vertical-menu a:hover {
            background-color: #434C49 !important;
            color: #EBEBE9 !important;
        }
/* 3x3 Raster für den Menü-Button */
.tw-menu-dots-grid {
            display: grid;
            grid-template-columns: repeat(3, 3px);
            grid-gap: 3px;
            padding: 4px;
        }
.tw-menu-dots-grid span {
            width: 3px;
            height: 3px;
            background-color: #0f172a;
            border-radius: 50%;
        }
.tw-vertical-menu a:hover .tw-menu-dots-grid span {
            background-color: #EBEBE9;
        }
/* Login direkt unter dem Neun-Punkte-Menü */
.tw-vertical-menu .tw-vertical-login {
            min-height: 48px;
            padding: 12px 14px !important;
            writing-mode: horizontal-tb !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
        }
.tw-vertical-menu .tw-vertical-login img {
            display: block;
            width: 21px;
            height: 21px;
            object-fit: contain;
        }
.tw-vertical-menu .tw-vertical-login:hover img { filter: brightness(0) invert(1); }
/* Sticky Tabs & Scroll-Pfeile */
.tw-tabs-wrapper {
            position: sticky !important;
            top: 0 !important;
            z-index: 999999 !important;
            display: flex !important;
            align-items: center !important;
            background-color: #EBEBE9 !important;
            width: 100% !important;
            border-bottom: 1px solid #A1A69F !important;
            padding: 0 5px !important;
            flex-shrink: 0 !important;
            transform: translateZ(0);
            -webkit-transform: translateZ(0);
        }
.tw-tab-scroll-btn {
            background: none !important;
            border: none !important;
            color: #64748b !important;
            font-size: 14px !important;
            font-weight: bold !important;
            cursor: pointer !important;
            padding: 12px 8px !important;
            z-index: 5 !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            flex-shrink: 0 !important;
        }
.tw-tab-scroll-btn:disabled {
            opacity: 0.28 !important;
            cursor: default !important;
            pointer-events: none !important;
        }
.tw-tab-scroll-btn:hover {
            color: #131615 !important;
        }
.tw-tabs-nav {
            display: flex !important;
            flex-direction: row !important;
            flex-wrap: nowrap !important;
            overflow-x: auto !important;
            background-color: #EBEBE9 !important;
            padding: 0 5px !important;
            gap: 15px !important;
            flex: 1 !important;
            scrollbar-width: none !important;
            -ms-overflow-style: none !important;
            -webkit-overflow-scrolling: touch !important;
            scroll-behavior: smooth;
        }
.tw-tabs-nav::-webkit-scrollbar {
            display: none !important;
        }
/* Modernes Layout für den Basisdaten-Tab (Untereinander in Reihe) */
.tw-basisdaten-container {
            display: flex !important;
            flex-direction: column !important;
            gap: 0 !important;
            background: #EBEBE9 !important;
            border-radius: 10px !important;
            overflow: hidden !important;
            box-shadow: 0 4px 15px rgba(0,0,0,0.06);
        }
.tw-accordion-item {
            background: transparent !important;
            border: none !important;
            box-shadow: none !important;
            margin-bottom: 0 !important;
            border-radius: 0 !important;
        }
.tw-accordion-header {
            width: 100% !important;
            padding: 16px 20px !important;
            background: #6C7B76 !important;
            color: #EBEBE9 !important;
            border: none !important;
            border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
            display: flex !important;
            justify-content: space-between !important;
            align-items: center !important;
            cursor: pointer !important;
            font-weight: 600 !important;
            font-size: 13.5px !important;
            border-radius: 0 !important;
            transition: background 0.2s ease;
        }
.tw-accordion-header:hover {
            background: #5b6965 !important;
        }
.tw-accordion-content {
            background: #DFDFDD !important;
            color: #131615 !important;
            border: none !important;
            border-bottom: 1px solid rgba(0,0,0,0.08) !important;
            padding: 15px !important;
            margin-top: 0 !important;
            border-radius: 0 !important;
        }
/* Unterpunkte untereinander in Reihe */
.tw-basis-grid {
            display: flex;
            flex-direction: column;
            gap: 10px;
            padding: 5px;
        }
.tw-basis-card {
            background: #FFFFFF;
            border: 1px solid #D5D8D4;
            border-radius: 6px;
            padding: 10px 14px;
            display: flex;
            flex-direction: column;
            justify-content: center;
            width: 100%;
        }
.tw-basis-label {
            font-size: 9.5px;
            font-weight: 700;
            color: #64748b;
            letter-spacing: 0.5px;
            margin-bottom: 4px;
            text-transform: uppercase;
        }
.tw-basis-value {
            font-size: 12.5px;
            font-weight: 600;
            color: #131615;
            word-break: break-word;
        }
/* Spalten-Toggle Button exakt mit 25px Abstand vom rechten Rand */
#twTogglePaneBtn {
            position: absolute;
            top: 20px;
            right: 25px;
            z-index: 1000;
            background: rgba(105, 119, 114, 0.95);
            border: 1px solid rgba(255, 255, 255, 0.2);
            color: #EBEBE9;
            width: 38px;
            height: 38px;
            border-radius: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            box-shadow: 0 4px 15px rgba(0,0,0,0.15);
        }
#twToggleLayerBtn {
            background: rgba(235, 235, 233, 0.9) !important;
            color: #434C49 !important;
            border: 1px solid rgba(0, 0, 0, 0.12) !important;
            padding: 0 !important;
            border-radius: 6px !important;
            cursor: pointer !important;
            width: 34px !important;
            height: 30px !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            flex-shrink: 0 !important;
        }
#twToggleLayerBtn img {
            width: 16px !important;
            height: 16px !important;
            object-fit: contain !important;
            filter: brightness(0.2) sepia(1) hue-rotate(100deg) saturate(1.5) !important;
        }
/* =========================================================
   ANALYSE – MODERNES KARTEN-DESIGN
   ========================================================= */
#tab-analyse {
            padding: 0 !important;
        }
#tab-analyse .tw-wysiwyg-content {
            width: 100% !important;
            display: flex !important;
            flex-direction: column !important;
            gap: 8px !important;
        }
.tw-analysis-item {
            position: relative !important;
            width: 100% !important;
            margin: 0 !important;
            background: #F7F8F7 !important;
            border: 1px solid #E0E3E1 !important;
            border-radius: 7px !important;
            overflow: hidden !important;
            box-shadow: 0 2px 8px rgba(0,0,0,0.035) !important;
            transition: box-shadow 0.2s ease, transform 0.2s ease !important;
        }
.tw-analysis-item:hover {
            box-shadow: 0 5px 16px rgba(0,0,0,0.07) !important;
        }
/* Echte Weltkarte als Hintergrund der Analyse-Karte */
.tw-analysis-map {
            position: absolute !important;
            right: 8px !important;
            top: 0 !important;
            width: 42% !important;
            height: 100% !important;
            min-height: 118px !important;
            z-index: 1 !important;
            pointer-events: none !important;
            overflow: hidden !important;
            opacity: 0.22 !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
        }
.tw-analysis-map svg {
            width: 100% !important;
            height: 100% !important;
            display: block !important;
            overflow: visible !important;
        }
.tw-analysis-map path,
        .tw-analysis-map polygon,
        .tw-analysis-map polyline,
        .tw-analysis-map rect {
            fill: #AEB7B3 !important;
            stroke: #8E9893 !important;
            stroke-width: 0.35 !important;
            vector-effect: non-scaling-stroke !important;
        }
.tw-analysis-map .tw-svg-highlight,
        .tw-analysis-map .tw-svg-highlight * {
            fill: #D9362E !important;
            stroke: #B52C26 !important;
            stroke-width: 0.65 !important;
            vector-effect: non-scaling-stroke !important;
        }
.tw-analysis-item:nth-child(even) .tw-analysis-map .tw-svg-highlight,
        .tw-analysis-item:nth-child(even) .tw-analysis-map .tw-svg-highlight * {
            fill: #0756A6 !important;
            stroke: #06447F !important;
        }
.tw-analysis-map .tw-svg-dot {
            fill: #D9362E !important;
            stroke: #FFFFFF !important;
            stroke-width: 1.5 !important;
            vector-effect: non-scaling-stroke !important;
        }
.tw-analysis-item:nth-child(even) .tw-analysis-map .tw-svg-dot {
            fill: #0756A6 !important;
        }
.tw-analysis-header {
            position: relative !important;
            z-index: 2 !important;
            width: 100% !important;
            min-height: 118px !important;
            padding: 17px 54px 17px 58px !important;
            cursor: pointer !important;
            border: none !important;
            display: flex !important;
            flex-direction: column !important;
            align-items: flex-start !important;
            justify-content: center !important;
            background: transparent !important;
        }
.tw-analysis-header::before {
            content: "▤";
            position: absolute;
            left: 14px;
            top: 17px;
            width: 29px;
            height: 29px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 6px;
            background: #D9362E;
            color: #FFFFFF;
            font-size: 15px;
            font-weight: 700;
            line-height: 1;
        }
.tw-analysis-item:nth-child(even) .tw-analysis-header::before {
            background: #0756A6;
        }
.tw-analysis-header::after {
            content: "ANALYSE";
            position: absolute;
            left: 58px;
            top: 17px;
            color: #D9362E;
            font-size: 9px;
            line-height: 1;
            font-weight: 800;
            letter-spacing: 0.2px;
        }
.tw-analysis-item:nth-child(even) .tw-analysis-header::after {
            color: #0756A6;
        }
.tw-analysis-title {
            position: relative !important;
            z-index: 2 !important;
            margin: 17px 34px 7px 0 !important;
            max-width: calc(100% - 30px) !important;
            font-size: 14px !important;
            line-height: 1.25 !important;
            font-weight: 800 !important;
            color: #101820 !important;
        }
.tw-analysis-preview {
            position: relative !important;
            z-index: 2 !important;
            max-width: 82% !important;
            margin: 0 !important;
            font-size: 9.5px !important;
            line-height: 1.45 !important;
            color: #59615E !important;
            display: -webkit-box !important;
            -webkit-line-clamp: 3 !important;
            -webkit-box-orient: vertical !important;
            overflow: hidden !important;
        }
.tw-analysis-header .tw-accordion-arrow {
            position: absolute !important;
            right: 12px !important;
            top: 50% !important;
            width: 29px !important;
            height: 29px !important;
            margin: 0 !important;
            transform: translateY(-50%) !important;
            display: flex !important;
            align-items: center !important;
            justify-content: center !important;
            border-radius: 50% !important;
            background: #F0F2F1 !important;
            border: 1px solid #DDE1DF !important;
            color: #52605B !important;
            font-size: 12px !important;
            line-height: 1 !important;
            transition: transform 0.25s ease, background 0.2s ease, color 0.2s ease !important;
        }
.tw-analysis-header:hover .tw-accordion-arrow {
            background: #E5E9E7 !important;
        }
.tw-analysis-body {
            position: relative !important;
            z-index: 3 !important;
            display: none;
            margin: 0 !important;
            padding: 0 58px 22px 58px !important;
            border-top: 1px solid rgba(224,227,225,0.9) !important;
            background: rgba(247,248,247,0.96) !important;
        }
/* Die Karte bleibt auch beim geöffneten Akkordeon als zusammenhängender
           Hintergrund erhalten. */
.tw-analysis-item:has(.tw-analysis-body[style*="display: block"]) {
            background: #F7F8F7 !important;
            box-shadow: 0 5px 18px rgba(0,0,0,0.06) !important;
        }
.tw-analysis-item:has(.tw-analysis-body[style*="display: block"])::after {
            opacity: 0.45 !important;
        }
.tw-analysis-text {
            max-width: 100% !important;
            padding-top: 20px !important;
            font-size: 13px !important;
            line-height: 1.65 !important;
            color: #252927 !important;
        }
.tw-analysis-text p {
            margin: 0 0 16px 0 !important;
            padding: 0 !important;
            line-height: 1.65 !important;
        }
.tw-analysis-text p:last-child {
            margin-bottom: 0 !important;
        }
.tw-analysis-text h2 {
            margin: 25px 0 12px 0 !important;
            font-size: 19px !important;
            line-height: 1.3 !important;
            font-weight: 800 !important;
            color: #101820 !important;
        }
.tw-analysis-text h3 {
            margin: 21px 0 9px 0 !important;
            font-size: 16px !important;
            line-height: 1.35 !important;
            font-weight: 800 !important;
            color: #101820 !important;
        }
.tw-analysis-text h4 {
            margin: 18px 0 8px 0 !important;
            font-size: 14px !important;
            line-height: 1.4 !important;
            font-weight: 800 !important;
            color: #101820 !important;
        }
.tw-analysis-text ul,
        .tw-analysis-text ol {
            margin: 10px 0 18px 22px !important;
            padding: 0 !important;
        }
.tw-analysis-text li {
            margin-bottom: 6px !important;
            line-height: 1.6 !important;
        }
.tw-analysis-text strong {
            font-weight: 800 !important;
            color: #101820 !important;
        }
.tw-analysis-text a {
            color: #087D91 !important;
            text-decoration: underline !important;
        }
.tw-analysis-text a:hover {
            text-decoration: none !important;
        }
.tw-analysis-text blockquote {
            margin: 20px 0 !important;
            padding: 13px 17px !important;
            border-left: 3px solid #087D91 !important;
            background: #F2F5F4 !important;
            color: #454B48 !important;
            font-style: italic !important;
        }
.tw-analysis-empty {
            color: #64748B !important;
            font-size: 13px !important;
            margin: 20px 0 !important;
        }
.tw-analysis-pdf {
            margin-top: 20px !important;
        }
.tw-analysis-pdf a {
            display: inline-flex !important;
            align-items: center !important;
            padding: 8px 14px !important;
            border-radius: 5px !important;
            background: #101820 !important;
            color: #FFFFFF !important;
            text-decoration: none !important;
            font-size: 11px !important;
            font-weight: 700 !important;
        }
.tw-analysis-pdf a:hover {
            background: #52605B !important;
        }
@media screen and (max-width: 767px) {

            #tab-analyse .tw-wysiwyg-content {
                gap: 7px !important;
            }

            .tw-analysis-header {
                min-height: 112px !important;
                padding: 16px 48px 16px 54px !important;
            }

            .tw-analysis-header::before {
                left: 12px;
                top: 15px;
                width: 27px;
                height: 27px;
            }

            .tw-analysis-header::after {
                left: 54px;
                top: 16px;
            }

            .tw-analysis-title {
                font-size: 13px !important;
                margin-top: 17px !important;
            }

            .tw-analysis-preview {
                max-width: 88% !important;
                font-size: 9px !important;
            }

            .tw-analysis-body {
                padding: 0 20px 20px 20px !important;
                background: rgba(247,248,247,0.97) !important;
            }

            .tw-analysis-text {
                font-size: 13px !important;
                line-height: 1.65 !important;
            }
        }
/* =========================================================
           TW FIX – RECHTE SPALTE / BASISDATEN SCROLL
           Desktop: Nur der Inhaltsbereich scrollt.
           Die obere Tab-Leiste bleibt sichtbar und horizontal scrollbar.
           ========================================================= */
@media screen and (min-width: 1367px) {
            .tw-right-pane {
                overflow: hidden !important;
                min-height: 0 !important;
            }

            .tw-tabs-wrapper {
                position: relative !important;
                top: auto !important;
                flex: 0 0 auto !important;
                width: 100% !important;
                z-index: 999999 !important;
            }

            .tw-tabs-nav {
                min-width: 0 !important;
                overflow-x: auto !important;
                overflow-y: hidden !important;
                -webkit-overflow-scrolling: touch !important;
            }

            .tw-tabs-content {
                flex: 1 1 auto !important;
                min-height: 0 !important;
                height: auto !important;
                overflow-x: hidden !important;
                overflow-y: auto !important;
                -webkit-overflow-scrolling: touch !important;
                overscroll-behavior: contain !important;
            }

            .tw-tab-pane {
                height: auto !important;
                min-height: 100% !important;
            }

            .tw-tab-pane.active {
                display: flex !important;
                flex-direction: column !important;
            }

            #tab-analytics {
                height: auto !important;
                min-height: 100% !important;
                overflow: visible !important;
            }

            #tab-analytics .tw-basisdaten-container {
                overflow: visible !important;
                flex: 0 0 auto !important;
            }
        }
/* TW 3.50 – Datenbereiche sofort sichtbar, ohne Akkordeon */
.tw-stat-section-heading { margin: 0 0 12px !important; font-size: 13px !important; font-weight: 800 !important; color: #434C49 !important; }
.tw-core-threat-stats { margin-bottom: 22px !important; overflow: visible !important; }
.tw-stat-visible { display: block !important; padding: 0 !important; }
.tw-counter-grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
.tw-counter-card { background: #fff; border: 1px solid #D5D8D4; border-radius: 7px; padding: 15px; }
.tw-counter-card h3 { margin: 0 0 8px !important; font-size: 12px !important; color: #434C49 !important; }
.tw-counter-card p { margin: 0 0 7px !important; font-size: 12px !important; }
.tw-counter-card .tw-counter-pending { color: #64748b !important; font-style: italic; margin-bottom: 0 !important; }
#tab-countermeasures.active { display: flex !important; flex-direction: column !important; }
#tab-countermeasures #counter-subtab-data.active { display: block !important; height: auto !important; min-height: 0 !important; }
#tab-countermeasures #counter-subtab-text.active { display: block !important; height: auto !important; }
/* TW 3.52 – Isolierter Bekämpfungs-Tab; Ausschließlich der gewählte Bekämpfungs-Untertab ist sichtbar. */
#tab-countermeasures.active > .tw-subtabs-nav { display: flex !important; visibility: visible !important; }
#tab-countermeasures #counter-subtab-data:not(.active),
        #tab-countermeasures #counter-subtab-text:not(.active) { display: none !important; }
#tab-countermeasures #counter-subtab-data.active,
        #tab-countermeasures #counter-subtab-text.active { display: block !important; visibility: visible !important; opacity: 1 !important; }
/* TW FIX – Tab-Leiste per Maus ziehen */
.tw-tabs-nav {
            cursor: grab !important;
            user-select: none !important;
            scroll-behavior: smooth;
        }
.tw-tabs-nav.tw-tabs-dragging {
            cursor: grabbing !important;
            scroll-behavior: auto !important;
        }
.tw-tabs-nav.tw-tabs-dragging * {
            pointer-events: none !important;
        }
/* TW-Single-Flyout 1.0: öffnet direkt links der rechten Informationsspalte */
#twSingleFlyout{position:absolute;top:0;bottom:0;right:30%;width:min(760px,70%);z-index:1600;background:#f1eee6;box-shadow:-14px 0 38px rgba(23,39,29,.18);border-right:1px solid #b9c0b5;transform:none;opacity:0;visibility:hidden;pointer-events:none;transition:none;display:flex;flex-direction:column;overflow:hidden}
#twSingleFlyout.tw-open{transform:none;opacity:1;visibility:visible;pointer-events:auto}
#twSingleFlyout .tw-flyout-head{height:48px;flex:0 0 48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 17px;background:#e5e7df;border-bottom:1px solid #cbd1c7;color:#36453c;font-size:12px;font-weight:700}
#twSingleFlyout .tw-flyout-close{border:0;background:transparent;color:#334a3c;cursor:pointer;font-size:25px;line-height:1;padding:4px 8px}
#twSingleFlyout iframe{border:0;display:block;width:100%;flex:1;min-height:0;background:#f1eee6}
#twSingleFlyout .tw-flyout-fallback{padding:10px 16px;font-size:12px}
/* Auf Desktop und Tablet bleibt die vorhandene rechte Länderspalte sichtbar. */
@media(min-width:768px){#twSingleFlyout{right:30%!important;width:min(760px,70%)!important;position:absolute!important}}
/* Nur auf schmalen Smartphones wird die Beitragsfläche über die Karte gelegt. */
@media(max-width:767px){#twSingleFlyout{position:fixed;right:0;width:100vw;top:0;bottom:0;z-index:999990}}
.tw-right-pane{z-index:1}
#twSingleFlyout{z-index:1600}
#twSingleFlyout .tw-flyout-close:focus-visible{outline:2px solid #20553f;outline-offset:3px}
@media(prefers-reduced-motion:reduce){#twSingleFlyout{transition:none}}
/* 1.4: Nur Beitrag und X – keine Titelzeile und kein äußerer Rahmen. */
#twSingleFlyout{background:#f1eee6!important;border:0!important;box-shadow:none!important;padding:0!important;isolation:isolate}
#twSingleFlyout .tw-flyout-close{position:absolute!important;right:14px!important;top:12px!important;z-index:10!important;width:32px;height:32px;border:0!important;border-radius:50%;background:#f1eee6!important;color:#34483b!important;font-size:23px!important;line-height:1!important;display:grid!important;place-items:center!important;box-shadow:none!important}
#twSingleFlyout iframe{height:100%!important;min-height:0!important;flex:1 1 auto!important;background:#f1eee6!important}
/* Das Kartenlogo bleibt unter der geöffneten Beitragsfläche, nie darüber. */
.tw-main-content:has(#twSingleFlyout.tw-open) .tw-map-logo-overlay{z-index:0!important;pointer-events:none!important}
/* TW Flyout 2.5: variable Beitragshöhe, maximal Bildschirmhöhe. */
#twSingleFlyout.tw-open{top:0!important;bottom:auto!important;height:var(--tw-article-height,100dvh)!important;max-height:100dvh!important;min-height:0!important}
#twSingleFlyout #twFlyoutFrame{height:100%!important;min-height:0!important;flex:1 1 auto!important}
@media(max-width:767px){#twSingleFlyout.tw-open{top:0!important;bottom:auto!important;max-height:100dvh!important}}
/* TW Flyout 3.4: Kurze Beiträge vertikal mittig, volle Höhe bleibt sichtbar.
   Die natürliche Beitragshöhe wird weiterhin durch Flyout 3.3 ermittelt. */
#twSingleFlyout.tw-open {
    top: 50% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    height: var(--tw-article-height, 100dvh) !important;
    max-height: 100dvh !important;
}
@media (max-width: 767px) {
    #twSingleFlyout.tw-open {
        top: 50% !important;
        bottom: auto !important;
        transform: translateY(-50%) !important;
    }
}
/* TW Login Popup – vollständig sichtbare, responsive Dialogebene */
#twLoginPopup{position:fixed!important;inset:0!important;z-index:2147483000!important;display:none!important;align-items:center!important;justify-content:center!important;padding:20px!important;background:rgba(15,23,19,.54)!important;backdrop-filter:blur(3px);overflow-y:auto!important}
#twLoginPopup.tw-visible{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
#twLoginPopup .tw-login-card{position:relative;width:min(100%,385px);margin:auto;background:#f1eee6;border:1px solid #d8d8ce;border-radius:22px;padding:49px 32px 30px;box-shadow:0 20px 70px rgba(0,0,0,.25);color:#263b30;text-align:center}
#twLoginPopup .tw-login-close{position:absolute;top:11px;right:13px;width:30px;height:30px;border:0;border-radius:50%;background:transparent;color:#405148;font-size:25px;cursor:pointer}
#twLoginPopup .tw-login-logo{width:94px;height:94px;margin:-90px auto 20px;border-radius:50%;background:#f1eee6;display:flex;align-items:center;justify-content:center;box-shadow:0 3px 12px rgba(0,0,0,.09);padding:13px}
#twLoginPopup .tw-login-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}
#twLoginPopup .tw-login-title{font-size:14px;font-weight:800;letter-spacing:1.5px;margin-bottom:22px}
#twLoginPopup .tw-login-field{display:flex;align-items:center;gap:10px;width:100%;height:45px;margin:0 0 11px;background:#405b50;border:1px solid #405b50;border-radius:5px;padding:0 12px}
#twLoginPopup .tw-login-field-icon{display:flex;flex:0 0 20px;color:#e5e9e3}
#twLoginPopup .tw-login-field-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7}
#twLoginPopup .tw-login-field input{min-width:0;width:100%;height:100%;border:0!important;outline:none!important;background:transparent!important;color:#fff!important;font-size:13px!important;box-shadow:none!important}
#twLoginPopup .tw-login-field input::placeholder{color:#d5ddd7;opacity:.9}
#twLoginPopup .tw-login-options{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:23px 0 22px;text-align:left;font-size:10px;color:#47584e}
#twLoginPopup .tw-login-options label{display:flex;align-items:center;gap:6px;white-space:nowrap}
#twLoginPopup .tw-login-options a,#twLoginPopup .tw-login-signed a{color:#405b50;text-decoration:underline}
#twLoginPopup .tw-login-submit{width:100%;min-height:45px;border:0;border-radius:8px;background:#6c7b76;color:#fff;font-size:12px;font-weight:800;letter-spacing:1px;cursor:pointer}
#twLoginPopup .tw-login-submit:hover{background:#435a50}
#twLoginPopup .tw-login-error{font-size:12px;color:#a52c31;margin:0 0 14px}
#twLoginPopup .tw-login-signed{font-size:13px;line-height:1.8}
@media(max-width:480px){#twLoginPopup .tw-login-card{padding-left:22px;padding-right:22px}}
/* TW Phase 7.2: Artikel-Flyout auf Smartphone UND Tablet als echtes Vollbild.
   Nur bis 1024px; Desktop, Karte, Marker und Tabs bleiben unverändert. */
@media screen and (max-width:1024px) {
  #twSingleFlyout,
  #twSingleFlyout.tw-open {
    position:fixed!important;
    inset:0!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    width:100dvw!important;
    max-width:none!important;
    min-width:0!important;
    height:100vh!important;
    height:100dvh!important;
    min-height:100vh!important;
    min-height:100dvh!important;
    max-height:100vh!important;
    max-height:100dvh!important;
    transform:none!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    z-index:2147482000!important;
    overflow:hidden!important;
  }
  #twSingleFlyout #twFlyoutFrame {
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    flex:1 1 auto!important;
    display:block!important;
  }
  .tw-linked-article-layer {
    position:fixed!important;
    inset:0!important;
    width:100dvw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    transform:none!important;
    z-index:2147482500!important;
  }
}
/* TW 6.1 – Tastaturfokus und reduzierte Animationen (barrierearme Navigation). */
#twTabsNavContainer > .tw-tab-btn:focus-visible,
.tw-tabs-wrapper .tw-tab-scroll-btn:focus-visible {
    outline: 2px solid #1C201F !important;
    outline-offset: -3px !important;
    border-radius: 4px;
}
@media (prefers-reduced-motion: reduce) {
    #twTabsNavContainer { scroll-behavior: auto !important; }
    #twTabsNavContainer > .tw-tab-btn,
    .tw-tabs-wrapper .tw-tab-scroll-btn { transition: none !important; }
}
.tw-mobile-nav-toggle {display:none!important;}
@media screen and (max-width:767px) {
  #twMobileNavToggle {
    display:flex!important;position:absolute!important;top:10px!important;right:10px!important;
    left:auto!important;z-index:1155!important;align-items:center!important;justify-content:center!important;
    gap:7px!important;min-width:88px!important;height:44px!important;padding:0 12px!important;
    border:1px solid rgba(0,0,0,.12)!important;border-radius:8px!important;
    background:#EBEBE9!important;color:#1C201F!important;font-size:12px!important;font-weight:700!important;
    cursor:pointer!important;box-shadow:0 3px 12px rgba(0,0,0,.13)!important;
  }
  #twMobileNavToggle:focus-visible {outline:3px solid #6C7B76!important;outline-offset:2px!important;}
  #twMobileNavToggle[aria-expanded="true"] {background:#6C7B76!important;color:#fff!important;}
  #twSiteNavigation.tw-vertical-menu {
    display:none!important;position:absolute!important;top:60px!important;right:10px!important;
    left:auto!important;bottom:auto!important;width:min(275px,calc(100% - 20px))!important;
    max-width:calc(100% - 20px)!important;z-index:1154!important;flex-direction:column!important;
    align-items:stretch!important;gap:0!important;padding:5px!important;border-radius:10px!important;
    background:#EBEBE9!important;box-shadow:0 12px 30px rgba(0,0,0,.24)!important;
  }
  #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open {display:flex!important;}
  #twSiteNavigation.tw-vertical-menu a,
  #twSiteNavigation.tw-vertical-menu .tw-vertical-login {
    display:flex!important;flex:0 0 auto!important;width:100%!important;min-height:44px!important;
    padding:11px 13px!important;writing-mode:horizontal-tb!important;text-orientation:mixed!important;
    align-items:center!important;justify-content:flex-start!important;white-space:normal!important;
    font-size:13px!important;line-height:1.3!important;text-align:left!important;
    border-right:0!important;border-bottom:1px solid #D5D8D4!important;border-radius:5px!important;
  }
  #twSiteNavigation.tw-vertical-menu a:last-child {border-bottom:0!important;}
  #twSiteNavigation .tw-menu-dots-grid {margin-right:8px!important;}
}
@media screen and (max-width:767px) and (orientation:landscape) and (max-height:550px) {
  #twMobileNavToggle {top:6px!important;height:40px!important;}
  #twSiteNavigation.tw-vertical-menu {top:50px!important;max-height:min(65dvh,calc(100% - 56px))!important;overflow-y:auto!important;overscroll-behavior:contain!important;}
}
@media screen and (max-width:767px) {
  #twMobileNavToggle {
    position:fixed!important;top:var(--tw-mobile-nav-top, 190px)!important;
    right:12px!important;left:auto!important;width:44px!important;min-width:44px!important;
    height:44px!important;padding:0!important;gap:0!important;z-index:1160!important;
  }
  #twMobileNavToggle span {display:none!important;}
  #twMobileNavToggle[aria-expanded="true"] {display:none!important;}
  #twSiteNavigation.tw-vertical-menu {
    position:fixed!important;top:var(--tw-mobile-nav-top, 190px)!important;
    right:12px!important;left:auto!important;bottom:auto!important;
    width:min(300px,calc(100vw - 24px))!important;
    max-height:var(--tw-mobile-nav-height, 55dvh)!important;
    overflow-x:hidden!important;overflow-y:auto!important;
    z-index:1161!important;
  }
  #twMobileNavClose {
    display:block!important;align-self:flex-end!important;flex:0 0 40px!important;
    width:40px!important;height:40px!important;border:0!important;
    border-radius:6px!important;background:transparent!important;color:#1C201F!important;
    font-size:26px!important;line-height:1!important;cursor:pointer!important;
  }
  #twMobileNavClose:focus-visible {outline:2px solid #6C7B76!important;}
}
@media screen and (min-width:768px) {
  #twMobileNavClose {display:none!important;}
}
html[data-tw-theme="light"] #scrollContainer.tw-right-pane,
html[data-tw-theme="dark"] #scrollContainer.tw-right-pane {
  background:#191b23!important;
  background-color:#191b23!important;
  color:#f4f5fb!important;
}
/* Der Switch gehört nicht zur Karte; andere Bedienelemente bleiben sichtbar. */
#tw-theme-switch, .tw-theme-switch, #twThemeSwitch, #tw-theme-toggle,
.tw-theme-toggle, [data-tw-theme-toggle] {display:none!important;}
@media screen and (max-width:767px) {
  html,body {width:100%!important;max-width:100%!important;height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;}
  .tw-page-wrapper {position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:100dvh!important;overflow:visible!important;}
  .tw-app-wrapper {width:100%!important;height:auto!important;min-height:100dvh!important;overflow:visible!important;}
  .tw-main-content {display:flex!important;flex-direction:column!important;width:100%!important;height:auto!important;min-height:100dvh!important;overflow:visible!important;}
  .tw-left-pane {position:relative!important;display:block!important;width:100%!important;flex:0 0 auto!important;height:100dvh!important;min-height:540px!important;overflow:hidden!important;border:0!important;}
  .tw-left-pane .cyber-map-container {width:100%!important;height:100%!important;overflow:hidden!important;}
  #map {width:100%!important;height:100%!important;min-height:540px!important;}
  .tw-right-pane#scrollContainer {position:relative!important;display:flex!important;flex-direction:column!important;width:100%!important;flex:0 0 auto!important;height:auto!important;min-height:350px!important;overflow:visible!important;border-left:0!important;border-top:1px solid #A1A69F!important;}
  .tw-right-pane.tw-pane-hidden {display:none!important;}
  .tw-tabs-wrapper {position:sticky!important;top:0!important;max-width:100%!important;}
  .tw-tabs-content {width:100%!important;min-width:0!important;overflow:visible!important;}
  .tw-vertical-menu {position:absolute!important;top:10px!important;left:10px!important;right:10px!important;width:auto!important;max-width:calc(100% - 20px)!important;display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:stretch!important;border-radius:8px!important;z-index:1100!important;}
  .tw-vertical-menu a {writing-mode:horizontal-tb!important;text-orientation:mixed!important;flex:1 1 0!important;min-width:0!important;min-height:42px!important;padding:8px 3px!important;font-size:clamp(8px,2.3vw,11px)!important;text-align:center!important;line-height:1.15!important;border-bottom:0!important;border-right:1px solid rgba(0,0,0,.08)!important;overflow-wrap:anywhere!important;}
  .tw-vertical-menu a:last-child {border-right:0!important;}
  .tw-vertical-menu .tw-vertical-login {flex:0 0 42px!important;min-height:42px!important;padding:8px!important;}
  .tw-map-region-filter {position:absolute!important;top:65px!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important;padding:11px!important;border-radius:9px!important;z-index:1050!important;}
  .tw-filter-top-row {display:flex!important;align-items:flex-end!important;gap:6px!important;min-width:0!important;}
  .tw-filter-row-item {min-width:0!important;flex:1 1 auto!important;}
  #mapRegionSelect {min-width:0!important;width:100%!important;font-size:11px!important;}
  .tw-adm-switch {min-width:60px!important;flex:0 0 60px!important;}
  #twAdmLevelSelect {width:100%!important;max-width:100%!important;}
  #twToggleLayerBtn {flex:0 0 34px!important;}
  .tw-risk-row {position:absolute!important;left:10px!important;right:10px!important;bottom:15px!important;width:auto!important;max-width:none!important;z-index:1050!important;}
  .tw-risk-card {padding:14px!important;border-radius:10px!important;}
  #twTogglePaneBtn {top:180px!important;right:10px!important;}
  #twSingleFlyout,#twSingleFlyout.tw-open {position:fixed!important;inset:0!important;width:100dvw!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;transform:none!important;z-index:2147482000!important;}
}
@media screen and (min-width:768px) and (max-width:1024px) {
  html,body {width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  .tw-page-wrapper,.tw-app-wrapper,.tw-main-content {width:100%!important;max-width:100%!important;}
  .tw-main-content {display:flex!important;flex-direction:column!important;}
  .tw-left-pane {position:relative!important;width:100%!important;flex:0 0 auto!important;height:75dvh!important;min-height:480px!important;overflow:hidden!important;}
  .tw-left-pane .cyber-map-container,#map {width:100%!important;height:100%!important;}
  .tw-right-pane#scrollContainer {width:100%!important;flex:0 0 auto!important;min-width:0!important;border-left:0!important;border-top:1px solid #A1A69F!important;}
  .tw-vertical-menu {position:absolute!important;top:12px!important;right:12px!important;left:auto!important;display:flex!important;flex-direction:row!important;max-width:calc(100% - 24px)!important;z-index:1100!important;}
  .tw-vertical-menu a {writing-mode:horizontal-tb!important;text-orientation:mixed!important;min-height:44px!important;padding:10px 9px!important;font-size:11px!important;border-bottom:0!important;border-right:1px solid rgba(0,0,0,.08)!important;}
  .tw-vertical-menu a:last-child {border-right:0!important;}
  .tw-vertical-menu .tw-vertical-login {min-height:44px!important;padding:10px!important;}
  .tw-map-region-filter {position:absolute!important;top:70px!important;left:12px!important;width:min(360px,calc(100% - 24px))!important;max-width:calc(100% - 24px)!important;padding:13px!important;z-index:1050!important;}
  .tw-filter-top-row {min-width:0!important;gap:7px!important;}
  .tw-filter-row-item {min-width:0!important;}
  .tw-risk-row {position:absolute!important;left:12px!important;bottom:15px!important;width:min(320px,calc(100% - 24px))!important;max-width:calc(100% - 24px)!important;z-index:1050!important;}
  #twTogglePaneBtn {top:130px!important;right:12px!important;}
  #twSingleFlyout.tw-open {position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;transform:none!important;z-index:2147482000!important;}
}
@media screen and (max-width:1024px) {
  #twMapLogoOverlay.tw-map-logo-overlay { display:none!important; visibility:hidden!important; }
}
@media screen and (max-width:767px) {
  .tw-vertical-menu {gap:0!important;min-width:0!important;}
  .tw-vertical-menu a {min-width:0!important;min-height:44px!important;white-space:normal!important;hyphens:auto!important;}
  .tw-vertical-menu a[title="Menü öffnen"] {flex:0 0 42px!important;padding:7px!important;}
  .tw-vertical-menu .tw-vertical-login {flex:0 0 42px!important;}
  .tw-map-region-filter {box-sizing:border-box!important;}
  .tw-filter-top-row > * {min-width:0!important;}
  .tw-map-region-filter select,.tw-map-region-filter button {min-height:34px!important;}
  .tw-risk-row,.tw-risk-card {box-sizing:border-box!important;}
  .tw-tabs-content {padding:16px 14px 32px!important;}
  .tw-tabs-wrapper {min-width:0!important;}
  .tw-tabs-nav {min-width:0!important;}
}
@media screen and (min-width:768px) and (max-width:1024px) {
  .tw-vertical-menu {gap:0!important;}
  .tw-vertical-menu a {min-height:44px!important;}
  .tw-map-region-filter select,.tw-map-region-filter button {min-height:34px!important;}
  .tw-tabs-content {padding:20px clamp(16px,3vw,28px) 40px!important;}
}
@media screen and (max-width:1024px) and (orientation:landscape) and (max-height:550px) {
  .tw-left-pane {
    height:max(100dvh,360px)!important;
    min-height:360px!important;
  }
  .tw-left-pane .cyber-map-container,
  .tw-left-pane #map {height:100%!important;min-height:0!important;}
  .tw-vertical-menu {top:6px!important;}
  .tw-vertical-menu a,
  .tw-vertical-menu .tw-vertical-login {min-height:38px!important;padding-top:5px!important;padding-bottom:5px!important;}
  .tw-map-region-filter {
    top:51px!important;
    padding:8px 10px!important;
    border-radius:8px!important;
  }
  .tw-score-slider-container {margin-top:7px!important;}
  .tw-risk-row {bottom:8px!important;}
  .tw-risk-card {padding:9px 12px!important;}
}
@media screen and (max-width:767px) {
  .tw-map-region-filter {top:35px!important;}
}
@media screen and (max-width:767px) and (orientation:landscape) and (max-height:550px) {
  .tw-map-region-filter {top:21px!important;}
}
@media screen and (min-width:768px) and (max-width:1024px) {
  #twMobileNavToggle {display:none!important;}
  #twSiteNavigation.tw-vertical-menu,
  #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open {
    display:flex!important;position:absolute!important;
    top:12px!important;right:12px!important;left:auto!important;bottom:auto!important;
    width:auto!important;min-width:0!important;max-width:none!important;
    flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
    gap:0!important;padding:0!important;border-radius:12px!important;
    overflow:hidden!important;z-index:1154!important;
  }
  #twSiteNavigation.tw-vertical-menu a {
    display:flex!important;flex:0 0 auto!important;width:auto!important;min-width:42px!important;
    min-height:44px!important;padding:12px 13px!important;
    writing-mode:vertical-rl!important;text-orientation:mixed!important;
    align-items:center!important;justify-content:center!important;
    white-space:nowrap!important;hyphens:none!important;overflow-wrap:normal!important;
    font-size:12px!important;line-height:1.2!important;
    border-right:0!important;border-bottom:1px solid rgba(0,0,0,.08)!important;
  }
  #twSiteNavigation.tw-vertical-menu .tw-vertical-login {
    width:auto!important;min-width:42px!important;min-height:44px!important;
    flex:0 0 auto!important;padding:12px!important;writing-mode:horizontal-tb!important;
    align-items:center!important;justify-content:center!important;
  }
  #twSiteNavigation.tw-vertical-menu a:last-child {border-bottom:0!important;}
}
@media screen and (min-width:768px) and (max-width:1024px) {
  #twSiteNavigation.tw-vertical-menu {
    max-height:calc(100vh - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    scrollbar-color:#A1A69F #EBEBE9;
  }
  #twSiteNavigation.tw-vertical-menu a:focus-visible,
  #twSiteNavigation.tw-vertical-menu .tw-vertical-login:focus-visible {
    outline:2px solid #1C201F!important;
    outline-offset:-3px!important;
  }
}
@media screen and (max-width:767px) {
  .tw-map-region-filter {min-width:0!important;max-width:calc(100% - 20px)!important;}
  .tw-map-region-filter .tw-filter-top-row {display:flex!important;flex-wrap:nowrap!important;gap:6px!important;align-items:flex-end!important;}
  .tw-map-region-filter .tw-filter-row-item {flex:1 1 0!important;min-width:0!important;}
  .tw-map-region-filter #mapRegionSelect {display:block!important;width:100%!important;max-width:100%!important;text-overflow:ellipsis!important;}
  .tw-map-region-filter .tw-adm-switch {flex:0 0 64px!important;min-width:0!important;}
  .tw-map-region-filter #twAdmLevelSelect {width:100%!important;max-width:100%!important;}
  .tw-map-region-filter #twToggleLayerBtn {flex:0 0 34px!important;}
  .tw-map-region-filter .tw-score-slider-container {min-width:0!important;}
  .tw-map-region-filter #scoreSlider {display:block!important;width:100%!important;max-width:100%!important;}
  .tw-risk-row {max-width:calc(100% - 20px)!important;}
}
@media screen and (max-width:359px) {
  .tw-map-region-filter {left:8px!important;right:8px!important;max-width:calc(100% - 16px)!important;padding:9px!important;}
  .tw-map-region-filter .tw-filter-top-row {gap:4px!important;}
  .tw-map-region-filter .tw-adm-switch {flex-basis:58px!important;}
  .tw-risk-row {left:8px!important;right:8px!important;max-width:calc(100% - 16px)!important;}
}
@media screen and (min-width:768px) and (max-width:1024px) {
  .tw-map-region-filter {box-sizing:border-box!important;min-width:0!important;}
  .tw-map-region-filter .tw-filter-top-row {display:flex!important;min-width:0!important;align-items:flex-end!important;}
  .tw-map-region-filter .tw-filter-row-item {min-width:0!important;}
  .tw-map-region-filter #mapRegionSelect {max-width:100%!important;text-overflow:ellipsis!important;}
}
@media screen and (max-width:767px) {
  #twSiteNavigation.tw-vertical-menu {
    max-height:calc(100vh - 68px)!important;
    max-height:calc(100dvh - 68px - env(safe-area-inset-bottom, 0px))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    scrollbar-color:#A1A69F #EBEBE9;
  }
  #twSiteNavigation.tw-vertical-menu a:focus-visible,
  #twSiteNavigation.tw-vertical-menu button:focus-visible {
    outline:2px solid #1C201F!important;
    outline-offset:-3px!important;
  }
}
@media screen and (max-width:767px) and (orientation:landscape) and (max-height:550px) {
  #twSiteNavigation.tw-vertical-menu {
    max-height:calc(100vh - 56px)!important;
    max-height:calc(100dvh - 56px - env(safe-area-inset-bottom, 0px))!important;
  }
}
@media screen and (max-width:1024px) {
  #scrollContainer.tw-right-pane {
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
  }
  #scrollContainer .tw-tabs-wrapper {
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
  }
  #scrollContainer .tw-tabs-nav {
    min-width:0!important;
    max-width:100%!important;
    overscroll-behavior-x:contain;
  }
  #scrollContainer .tw-tab-btn {
    flex-shrink:0!important;
    white-space:nowrap!important;
  }
  #scrollContainer .tw-tabs-content {
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
  }
  #scrollContainer .tw-tabs-content img,
  #scrollContainer .tw-tabs-content video,
  #scrollContainer .tw-tabs-content iframe {
    max-width:100%!important;
  }
  #scrollContainer .tw-tabs-content img,
  #scrollContainer .tw-tabs-content video {height:auto;}
  #scrollContainer .tw-tabs-content p,
  #scrollContainer .tw-tabs-content li {
    overflow-wrap:break-word;
  }
}
@media screen and (max-width:767px) {
  #scrollContainer .tw-tab-scroll-btn {
    flex:0 0 36px!important;
    min-width:36px!important;
    min-height:44px!important;
    padding:8px 6px!important;
  }
  #scrollContainer .tw-tabs-nav {gap:9px!important;}
}
@media screen and (max-width:1024px) {
  #twSingleFlyout,
  #twSingleFlyout #twFlyoutFrame {
    box-sizing:border-box!important;
    min-width:0!important;
  }
  #twSingleFlyout .tw-flyout-fallback {
    max-width:100%;
    box-sizing:border-box;
    overflow-wrap:anywhere;
  }
  #twSingleFlyout .tw-flyout-close:focus-visible {
    outline:2px solid #6C7B76!important;
    outline-offset:2px!important;
  }
}
@media screen and (max-width:767px) {
  #twSingleFlyout .tw-flyout-close {
    min-width:44px!important;
    min-height:44px!important;
    top:max(4px,env(safe-area-inset-top,0px))!important;
    right:max(4px,env(safe-area-inset-right,0px))!important;
  }
}
@media screen and (max-width:1024px) {
  .tw-main-content, .tw-left-pane, .tw-right-pane,
  #scrollContainer, #scrollContainer .tw-tabs-wrapper,
  #scrollContainer .tw-tabs-content {
    box-sizing:border-box!important;
    min-width:0!important;
    max-width:100%!important;
  }
  #scrollContainer .tw-tabs-content img,
  #scrollContainer .tw-tabs-content video,
  #scrollContainer .tw-tabs-content iframe {
    max-width:100%!important;
  }
  #scrollContainer .tw-tabs-content table {
    display:block;
    max-width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
}
/* Phase 30: Die Menühöhe wird ausschließlich durch Phase 25 gesteuert.
   Dadurch bleibt die Safe-Area-Korrektur im Hoch- und Querformat erhalten. */
@media screen and (max-width:1366px) {
  #scrollContainer .tw-tabs-wrapper,
  .tw-right-pane .tw-tabs-wrapper {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    -webkit-transform: none !important;
  }
}
@media screen and (min-width:1367px) {
  #mainContent.tw-main-content {position:relative!important;isolation:isolate!important;}
  #mainContent > #leftPane.tw-left-pane {
    width:100%!important;flex:0 0 100%!important;max-width:100%!important;
  }
  #mainContent > #scrollContainer.tw-right-pane {
    position:absolute!important;
    top:16px!important;right:16px!important;bottom:16px!important;left:auto!important;
    width:clamp(410px,30vw,590px)!important;
    height:auto!important;max-height:calc(100% - 32px)!important;
    flex:none!important;min-width:0!important;
    z-index:1100!important;
    overflow:hidden!important;
    border:0!important;
    border-radius:18px!important;
    background:#191B23!important;
    color:#f4f5fb!important;
    box-shadow:0 18px 65px rgba(0,0,0,.38),0 3px 14px rgba(0,0,0,.18)!important;
    -webkit-backdrop-filter:blur(22px) saturate(115%);
    backdrop-filter:blur(22px) saturate(115%);
  }
  #scrollContainer .tw-tabs-wrapper {
    background:rgba(32,36,47,.74)!important;
    border-bottom:1px solid rgba(184,190,205,.17)!important;
    border-radius:18px 18px 0 0!important;
  }
  #scrollContainer .tw-tabs-nav {background:transparent!important;}
  #scrollContainer .tw-tab-btn {color:#b8becd!important;}
  #scrollContainer .tw-tab-btn:hover {color:#fff!important;}
  #scrollContainer .tw-tab-btn.active {color:#fff!important;border-bottom-color:#6797bf!important;}
  #scrollContainer .tw-tab-scroll-btn {color:#b8becd!important;}
  #scrollContainer .tw-tabs-content {background:transparent!important;}
  #scrollContainer #incidentSearchInput {background:rgba(8,11,18,.50)!important;color:#f4f5fb!important;border:1px solid rgba(184,190,205,.14)!important;}
  #scrollContainer #twFilterToggleBtn {background:rgba(8,11,18,.50)!important;}
  #scrollContainer .tw-tabs-content {scrollbar-width:thin;scrollbar-color:rgba(184,190,205,.35) transparent;}
  #mainContent > #scrollContainer.tw-pane-hidden {display:none!important;}
  /* K95: Navigation und Spaltenumschalter liegen links neben dem schwebenden Panel. */
  #leftPane .cyber-map-container {overflow:visible!important;}
  #leftPane #twTogglePaneBtn {
    position:absolute!important;top:20px!important;
    right:calc(clamp(410px,30vw,590px) + 28px)!important;
    left:auto!important;z-index:1250!important;
    display:flex!important;visibility:visible!important;opacity:1!important;
  }
  /* K96: Senkrechte Navigation mittig am Kartenrand, unabhängig vom Toggle-Button. */
  #leftPane #twSiteNavigation.tw-vertical-menu {
    position:absolute!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    right:calc(clamp(410px,30vw,590px) + 28px)!important;
    left:auto!important;z-index:1250!important;
    display:flex!important;flex-direction:column!important;
    visibility:visible!important;opacity:1!important;
  }
  #mainContent.tw-k95-panel-closed #leftPane #twTogglePaneBtn,
  #mainContent.tw-k95-panel-closed #leftPane #twSiteNavigation.tw-vertical-menu {
    right:24px!important;
  }
  /* Der bestehende Karten-/Pane-Umschalter bleibt sichtbar und funktionsfähig. */
  #mainContent > #leftPane.tw-map-fullscreen {width:100%!important;flex:0 0 100%!important;}
}
@media screen and (min-width:1367px) and (max-height:650px) {
  #mainContent > #scrollContainer.tw-right-pane {top:10px!important;right:10px!important;bottom:10px!important;max-height:calc(100% - 20px)!important;border-radius:13px!important;}
}
@media (prefers-reduced-motion:reduce) {
  #scrollContainer.tw-right-pane {transition:none!important;}
}
/* Exakt dieselbe Filteroberflaeche wie .tw-map-region-filter. */
html:not([data-tw-theme="light"]) body #tw-riskcard-fallback.tw-risk-card.tw-riskcard-standalone {
 background:#191b23!important;background-color:#191b23!important;background-image:none!important;
 color:#f4f5fb!important;border:1px solid rgba(184,190,205,.18)!important;
 border-radius:14px!important;box-shadow:none!important;
}
/* Kachelflächen transparent, damit exakt die äußere Farbe durchscheint. */
body #tw-riskcard-fallback #tw-burden-panel,
body #tw-riskcard-fallback #tw-burden-panel .twb-toolbar,
body #tw-riskcard-fallback #tw-burden-panel .twb-hero,
body #tw-riskcard-fallback #tw-burden-panel .twb-facts,
body #tw-riskcard-fallback #tw-burden-panel .twb-victims,
body #tw-riskcard-fallback #tw-burden-panel .twb-victims-grid,
body #tw-riskcard-fallback #tw-burden-panel .twb-victims-grid > div,
body #tw-riskcard-fallback #tw-burden-panel .twb-hero > div,
body #tw-riskcard-fallback #tw-burden-panel .twb-facts > div {
 background:transparent!important;background-color:transparent!important;background-image:none!important;
 box-shadow:none!important;
}
body #tw-riskcard-fallback #tw-burden-panel .twb-hero {
 border:0!important;border-radius:0!important;padding:10px 0!important;
}
body #tw-riskcard-fallback #tw-burden-panel .twb-victims-grid > div {border:1px solid rgba(255,255,255,.18)!important;}
body #tw-riskcard-fallback #tw-burden-panel :is(.twb-caption,.twb-kicker,.twb-unit,.twb-facts span,.twb-facts small,.twb-victims summary,.twb-victims small,.twb-hero strong,.twb-facts strong) {color:#fff!important;}
/* Dropdown wie Regions-/ADM2-Auswahl oben. */
html:not([data-tw-theme="light"]) body #tw-riskcard-fallback #tw-burden-year {
 background:#131615!important;background-color:#131615!important;color:#fff!important;
 border:0!important;border-radius:6px!important;box-shadow:none!important;
}
/* Ampelfarbe für den Weltvergleich bleibt als einzige separate Statusfläche erhalten. */
body #tw-riskcard-fallback #tw-burden-panel .twb-compare[data-direction="down"] {background:#073d2c!important;background-color:#073d2c!important;color:#b5f8d1!important;}
body #tw-riskcard-fallback #tw-burden-panel .twb-compare[data-direction="up"] {background:#472323!important;background-color:#472323!important;color:#ffd0ca!important;}
/* Nur die Panel-Oberflaechen, niemals alle Nachfahren: SVGs und Eilmeldung bleiben erhalten. */
html:not([data-tw-theme="light"]) #scrollContainer.tw-right-pane {background:#191b23!important;color:#f4f5fb!important}
#scrollContainer.tw-right-pane .tw-tabs-wrapper,
#scrollContainer.tw-right-pane .tw-tabs-content,
#scrollContainer.tw-right-pane #postsContainer {background:transparent!important}
#scrollContainer.tw-right-pane .tw-post-item,
#scrollContainer.tw-right-pane .post-item {background:transparent!important}
/* Risiko-Zahl wird wieder nach ihrem Wert gefaerbt. */
/* Ereignisicons: keine erzwungenen Hintergrundbilder oder Hintergrundfarben. */
#scrollContainer .tw-event-icon svg,
#scrollContainer .event-icon svg,
#scrollContainer .post-icon svg {background:transparent!important;display:inline-block}
/* Ereignisicons: kein weißer Kachelhintergrund; SVG-Konturen im Dunkelmodus hell. */
html:not([data-tw-theme="light"]) #postsContainer :is(.tw-event-icon,.event-icon,.post-icon) {
  background:transparent!important;background-color:transparent!important;
  box-shadow:none!important;border:0!important;
}
html:not([data-tw-theme="light"]) #postsContainer :is(.tw-event-icon,.event-icon,.post-icon) svg {
  display:inline-block!important;background:transparent!important;
  fill:currentColor; color:#f4f5fb!important;
}
html:not([data-tw-theme="light"]) #postsContainer :is(.tw-event-icon,.event-icon,.post-icon) svg [fill="none"] {fill:none!important}
html:not([data-tw-theme="light"]) #postsContainer :is(.tw-event-icon,.event-icon,.post-icon) img {
  background:transparent!important;background-color:transparent!important;
  object-fit:contain!important;
}
/* Eilmeldung: eigener roter Signalbereich, bewusst nicht Beige/Dunkelblau. */
#tw-break-slot {background:transparent!important;}
#scrollContainer #tw-break-slot > *,
#scrollContainer :is(.tw-break-banner,.tw-breaking-banner,.tw-break-card,.tw-breaking-card) {
  box-sizing:border-box!important;border-radius:10px!important;
  padding:14px 16px!important;
  border:0!important;outline:0!important;
}
html:not([data-tw-theme="light"]) #scrollContainer #tw-break-slot > *,
html:not([data-tw-theme="light"]) #scrollContainer :is(.tw-break-banner,.tw-breaking-banner,.tw-break-card,.tw-breaking-card) {
  background:#3b2028!important;color:#f8edf0!important;
}
html:not([data-tw-theme="light"]) #scrollContainer #tw-break-slot > * :is(h1,h2,h3,h4,p,span,strong,small,a),
html:not([data-tw-theme="light"]) #scrollContainer :is(.tw-break-banner,.tw-breaking-banner,.tw-break-card,.tw-breaking-card) :is(h1,h2,h3,h4,p,span,strong,small,a) {
  color:#f8edf0!important;
}
/* Die Desktop-K94-Regel hat hoehere Spezifitaet als K104; hier exakt denselben Zielcontainer ansprechen. */
html:not([data-tw-theme="light"]) #mainContent > #scrollContainer.tw-right-pane {
  background:#191B23!important; background-color:#191B23!important;
  color:#F4F5FB!important; border:0!important; outline:0!important;
}
/* Tabs und Suche sind Bestandteile derselben Panel-Oberflaeche. */
/* Eilmeldung ist eine hervorgehobene Flaeche, niemals eine umrandete Karte. */
#scrollContainer #tw-break-slot > *,
#scrollContainer :is(.tw-break-banner,.tw-breaking-banner,.tw-break-card,.tw-breaking-card) {
  border:0!important; border-left:0!important; outline:0!important; box-shadow:none!important;
}
/* Keine Kachelrahmen um einzelne Ereignisse. */
#scrollContainer #postsContainer :is(.tw-post-item,.post-item) {
  border-left:0!important; border-right:0!important;
  box-shadow:none!important;
}
/* Ampelwert ist unabhängig vom Textmodus und darf nicht weiß erzwungen werden. */
html body #tw-riskcard-fallback #tw-burden-panel #tw-burden-score {color:var(--tw-risk-score-color,#75a58b)!important}
html body #tw-riskcard-fallback #tw-burden-panel .twb-compare,
html body #tw-riskcard-fallback #tw-burden-panel .twb-compare[data-direction="down"],
html body #tw-riskcard-fallback #tw-burden-panel .twb-compare[data-direction="up"] {
  background:color-mix(in srgb,var(--tw-risk-compare-color,#6fa388) 18%,#191B23)!important;
  background-color:color-mix(in srgb,var(--tw-risk-compare-color,#6fa388) 18%,#191B23)!important;
  border-color:var(--tw-risk-compare-color,#6fa388)!important;
  color:#fff!important;
}
html body #tw-riskcard-fallback #tw-burden-panel .twb-compare :is(span,strong,small,b,svg,i) {
  color:#fff!important;
}
/* Alle Ereignislisten-Container, einschliesslich Wrapper aus dem Karten-JavaScript. */
html body #scrollContainer.tw-right-pane #postsContainer,
html body #scrollContainer.tw-right-pane #postsContainer > :not(#tw-break-slot),
html body #scrollContainer.tw-right-pane #postsContainer > :not(#tw-break-slot) :is(div,section,article,ul,li),
html body #scrollContainer.tw-right-pane #postsContainer :is(.tw-post-row,.tw-post-item,.post-item),
html body #scrollContainer.tw-right-pane #postsContainer :is(.tw-post-row,.tw-post-item,.post-item):is(:hover,:focus-within) {
  background:#191B23!important;
  background-color:#191B23!important;
  background-image:none!important;
  box-shadow:none!important;
}
/* Jede Meldung durch genau eine dezente Linie trennen, ohne Kartenrahmen. */
html body #scrollContainer.tw-right-pane #postsContainer :is(.tw-post-row,.tw-post-item,.post-item) {
  border:0!important;
  border-bottom:1px solid rgba(184,190,205,.35)!important;
  border-radius:0!important;
  outline:0!important;
}
html body #tw-riskcard-fallback #tw-burden-panel .twb-compare #twb-arrow,
html body #tw-riskcard-fallback #tw-burden-panel .twb-compare .twb-arrow,
html body #tw-burden-panel .twb-compare[data-direction="up"] .twb-arrow,
html body #tw-burden-panel .twb-compare[data-direction="down"] .twb-arrow,
html body #tw-burden-panel .twb-compare[data-direction="equal"] .twb-arrow {
  background:#000000!important;
  background-color:#000000!important;
  background-image:none!important;
  color:#FFFFFF!important;
  -webkit-text-fill-color:#FFFFFF!important;
  border:0!important;
  border-radius:50%!important;
  box-shadow:none!important;
}
/* TW Flyout V5: Desktopkante der vorhandenen schwebenden Ereignisleiste.
   Variablen werden aus den tatsaechlichen DOM-Rechtecken berechnet. */
@media screen and (min-width:1025px) {
  #twSingleFlyout, #twSingleFlyout.tw-open {
    position:absolute!important;left:var(--tw-v5-left,0px)!important;right:auto!important;
    width:var(--tw-v5-width,760px)!important;max-width:none!important;
    box-sizing:border-box!important;
  }
  #twSingleFlyout.tw-open {top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;}
}

/* TW Mobile V29 – ausschließlich Smartphone/Tablet. Desktop bleibt unverändert. */
@media screen and (max-width:1024px){
 /* Das frühere Platzhalter-Panel wird nicht mehr als zweite Riskcard angezeigt. */
 #twMobileRiskPanel.tw-risk-row{display:none!important;}
 body.tw-v25-risk-open #twMobileRiskPanel.tw-risk-row{display:none!important;}
 /* Die tatsächliche, vom bestehenden Riskcard-System erzeugte Karte. */
 body #tw-riskcard-fallback.tw-risk-card{
   position:fixed!important;left:12px!important;right:auto!important;
   bottom:calc(72px + env(safe-area-inset-bottom,0px))!important;
   top:auto!important;width:min(340px,calc(100vw - 24px))!important;
   max-width:calc(100vw - 24px)!important;max-height:58px!important;
   overflow:hidden!important;z-index:1302!important;
   padding:0!important;border-radius:14px!important;
   background:#191b23!important;color:#f4f5fb!important;
   transition:max-height .24s ease!important;
 }
 body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded{
   max-height:min(78dvh,720px)!important;overflow-y:auto!important;
 }
 #twMobileRiskExpand{
   display:flex!important;align-items:center!important;gap:9px!important;
   width:100%!important;min-height:56px!important;padding:8px 12px!important;
   border:0!important;background:#191b23!important;color:#f4f5fb!important;
   text-align:left!important;cursor:pointer!important;
 }
 #twMobileRiskExpand .tw-v29-flag{width:26px!important;height:26px!important;object-fit:cover!important;border-radius:50%!important;flex:none!important;}
 #twMobileRiskExpand span:not(.tw-v29-arrow){font-size:12px!important;font-weight:700!important;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
 #twMobileRiskExpand strong{margin-left:auto;font-size:10px!important;color:#e6d275!important;white-space:nowrap;}
 #twMobileRiskExpand .tw-v29-arrow{font-size:19px!important;transform:rotate(180deg);animation:tw-v29-hint 1.8s ease-in-out 3;}
 #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand .tw-v29-arrow{transform:none;animation:none;}
 @keyframes tw-v29-hint{50%{translate:0 -4px}}
 /* Separater unterer Button öffnet ausschließlich die bestehenden Tabs. */
 #twMobileSheetToggle.tw-m19-sheet-toggle{bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;}
 #twMobileSheetToggle #twMobileScoreValue{display:none!important;}
 /* Menüs 24px vom oberen Rand, beide dunkelblau. */
 #twMobileNavToggle.tw-mobile-nav-toggle,#twMobileFilterToggle.tw-m19-filter-toggle{top:calc(24px + env(safe-area-inset-top,0px))!important;background:#191b23!important;border-color:#454959!important;color:#f4f5fb!important;}
}
@media (prefers-reduced-motion:reduce){#twMobileRiskExpand .tw-v29-arrow{animation:none!important}}


/* TW Mobile V30: Leerraum des ausgeblendeten Theme-Switchers entfernen.
   Der mobile Filter besteht nur noch aus Region/ADM und Score-Slider. */
@media screen and (max-width:1024px) {
  .tw-map-region-filter {
    height:auto!important;
    min-height:0!important;
    padding-bottom:10px!important;
  }
  .tw-map-region-filter > :not(.tw-filter-top-row):not(.tw-score-slider-container) {
    display:none!important;
  }
  .tw-map-region-filter > .tw-score-slider-container {
    margin-bottom:0!important;
    padding-bottom:0!important;
    min-height:0!important;
  }
}

/* TW Mobile V31 – Filterhoehe nach Entfernen des Theme-Switchers.
   Nur Smartphone: alte reservierte Schalterzeile darf keine Hoehe behalten. */
@media screen and (max-width:767px) {
  html body .tw-map-region-filter {
    height:124px!important;
    min-height:0!important;
    max-height:124px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    padding:9px 10px 8px!important;
  }
  html body .tw-map-region-filter .tw-filter-top-row {
    margin-bottom:0!important;
  }
  html body .tw-map-region-filter .tw-score-slider-container {
    margin-top:7px!important;
    margin-bottom:0!important;
    padding-bottom:0!important;
  }
}


/* TW Mobile V32 – Geoeffnete Ereignis-Tabs als Vollbild.
   Keine Aenderung an Desktop, Leaflet oder Tab-Inhalten. */
@media screen and (max-width:1024px) {
  html body.tw-m19-sheet-open #mainContent > #scrollContainer.tw-right-pane {
    position:fixed!important;
    inset:0!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    min-height:100dvh!important;
    margin:0!important;
    border-radius:0!important;
    border:0!important;
    transform:translateY(0)!important;
    z-index:3000!important;
    pointer-events:auto!important;
  }
  html body.tw-m19-sheet-open #twMobileFilterToggle,
  html body.tw-m19-sheet-open #twMobileNavToggle,
  html body.tw-m19-sheet-open .tw-map-region-filter {
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html body.tw-m19-sheet-open #scrollContainer .tw-m19-sheet-toolbar {
    min-height:calc(44px + env(safe-area-inset-top,0px))!important;
    padding-top:env(safe-area-inset-top,0px)!important;
    box-sizing:border-box!important;
  }
  html body.tw-m19-sheet-open #twMobileSheetSize {
    display:none!important;
  }
  html body.tw-m19-sheet-open #twMobileSheetClose {
    top:calc(5px + env(safe-area-inset-top,0px))!important;
    right:12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    z-index:2!important;
  }
  html body.tw-m19-sheet-open #scrollContainer .tw-tabs-content {
    min-height:0!important;
    flex:1 1 auto!important;
    overflow-y:auto!important;
  }
}

/* TW Mobile V33: mehr Luft zwischen Dropdowns und Score-Filter. */
@media screen and (max-width:767px) {
  html body .tw-map-region-filter {
    height:140px!important;
    max-height:140px!important;
  }
  html body .tw-map-region-filter .tw-score-slider-container {
    margin-top:19px!important;
  }
}
@media screen and (min-width:768px) and (max-width:1024px) {
  html body .tw-map-region-filter .tw-score-slider-container {
    margin-top:19px!important;
  }
}

/* TW Mobile V34: harte Trennung. Mobil erzeugter Riskcard-Schalter darf
   unter keinen Umständen auf dem Desktop erscheinen. */
@media screen and (min-width:1025px) {
  html body #twMobileRiskExpand { display:none!important; }
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    max-height:none;
    overflow:visible;
  }
}

/* TW Mobile V35: Tab-Leiste ganz oben, direkt darunter der aktive Inhalt.
   Die Tabs sind horizontal wischbar; Schliessen bleibt erreichbar.
   Ausschliesslich geoeffnetes mobiles Tab-Panel, Desktop unangetastet. */
@media screen and (max-width:1024px) {
  html body.tw-m19-sheet-open #scrollContainer.tw-right-pane {
    padding:0!important;
    gap:0!important;
    overflow:hidden!important;
  }
  html body.tw-m19-sheet-open #scrollContainer .tw-m19-sheet-toolbar {
    position:absolute!important;
    top:0!important;
    right:0!important;
    left:auto!important;
    width:46px!important;
    height:50px!important;
    min-height:0!important;
    max-height:50px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    background:#191b23!important;
    z-index:1000001!important;
    pointer-events:none!important;
  }
  html body.tw-m19-sheet-open #scrollContainer #twMobileSheetSize {
    display:none!important;
  }
  html body.tw-m19-sheet-open #scrollContainer #twMobileSheetClose {
    display:flex!important;
    position:absolute!important;
    top:5px!important;
    right:5px!important;
    width:38px!important;
    height:38px!important;
    padding:0!important;
    align-items:center!important;
    justify-content:center!important;
    pointer-events:auto!important;
    z-index:1000002!important;
  }
  html body.tw-m19-sheet-open #scrollContainer #twTabsWrapper.tw-tabs-wrapper {
    position:relative!important;
    top:0!important;
    width:100%!important;
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
    margin:0!important;
    padding:0 46px 0 0!important;
    flex:0 0 50px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:#191b23!important;
  }
  html body.tw-m19-sheet-open #scrollContainer .tw-tab-scroll-btn {
    display:none!important;
  }
  html body.tw-m19-sheet-open #scrollContainer #twTabsNavContainer.tw-tabs-nav {
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    height:50px!important;
    margin:0!important;
    padding:0 8px!important;
    flex:1 1 auto!important;
    gap:14px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    white-space:nowrap!important;
    touch-action:pan-x!important;
    -webkit-overflow-scrolling:touch!important;
    scrollbar-width:none!important;
    scroll-snap-type:x proximity;
    background:#191b23!important;
  }
  html body.tw-m19-sheet-open #scrollContainer #twTabsNavContainer .tw-tab-btn {
    flex:0 0 auto!important;
    height:50px!important;
    min-height:50px!important;
    padding:0 8px!important;
    scroll-snap-align:start;
  }
  html body.tw-m19-sheet-open #scrollContainer > .tw-tabs-content {
    margin:0!important;
    padding-top:0!important;
    min-height:0!important;
    flex:1 1 auto!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain;
  }
}


/* TW Mobile V36: Vorfalls-Flyout muss ÜBER der Vollbild-Tab-Leiste liegen.
   Auf Desktop keinerlei Änderung. */
@media screen and (max-width:1024px) {
 html body > #twSingleFlyout.tw-open {
   position:fixed!important;
   inset:0!important;
   top:0!important;
   left:0!important;
   right:0!important;
   bottom:0!important;
   transform:none!important;
   width:100vw!important;
   height:100dvh!important;
   max-width:none!important;
   max-height:100dvh!important;
   min-height:0!important;
   margin:0!important;
   z-index:2147483000!important;
   display:flex!important;
   flex-direction:column!important;
   overflow:hidden!important;
   background:#f2efe8!important;
 }
 html body > #twSingleFlyout.tw-open #twFlyoutFrame {
   display:block!important;
   width:100%!important;
   height:100%!important;
   min-height:0!important;
   flex:1 1 auto!important;
 }
 html body > #twSingleFlyout.tw-open #twFlyoutClose {
   z-index:10!important;
 }
}



/* V41 – Smartphone-Riskcard: genau ein Zustand, keine kumulierten V37–V40-Regeln. */
@media screen and (max-width:600px){
 html body #tw-riskcard-fallback.tw-risk-card:not(.tw-v29-risk-expanded){position:fixed!important;inset:auto auto calc(76px + env(safe-area-inset-bottom,0px)) 0!important;width:46px!important;min-width:46px!important;max-width:46px!important;height:180px!important;min-height:180px!important;max-height:180px!important;padding:0!important;margin:0!important;zoom:1!important;transform:none!important;overflow:hidden!important;border-radius:0 13px 13px 0!important;z-index:1302!important;background:#191b23!important}
 html body #tw-riskcard-fallback.tw-risk-card:not(.tw-v29-risk-expanded)>:not(#twMobileRiskExpand){display:none!important}
 html body #tw-riskcard-fallback.tw-risk-card:not(.tw-v29-risk-expanded) #twMobileRiskExpand{position:relative!important;width:46px!important;height:180px!important;min-height:180px!important;padding:8px 4px!important;margin:0!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;gap:7px!important;background:#191b23!important;border:0!important}
 html body #tw-riskcard-fallback:not(.tw-v29-risk-expanded) #twMobileRiskExpand .tw-v29-flag{width:24px!important;height:24px!important;min-width:24px!important;object-fit:cover!important;border-radius:50%!important;flex:none!important;align-self:center!important;margin:0!important}
 html body #tw-riskcard-fallback:not(.tw-v29-risk-expanded) #twMobileRiskExpand span:not(.tw-v29-arrow){writing-mode:vertical-rl!important;transform:rotate(180deg)!important;font-size:11px!important;font-weight:700!important;line-height:1!important;max-height:95px!important;min-width:0!important;text-overflow:ellipsis!important;overflow:hidden!important;white-space:nowrap!important;flex:none!important}
 html body #tw-riskcard-fallback:not(.tw-v29-risk-expanded) #twMobileRiskExpand .tw-v29-arrow{display:block!important;transform:none!important;font-size:22px!important;line-height:1!important;animation:tw-v41-nudge 1.8s ease-in-out 3!important}
 @keyframes tw-v41-nudge{50%{translate:3px 0}}
 html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded{position:fixed!important;left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;width:min(340px,calc((100vw - 24px) / .75))!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:calc((100dvh - 24px) / .75)!important;padding:0!important;margin:0!important;zoom:1!important;transform:translate(-50%,-50%) scale(.75)!important;transform-origin:center center!important;overflow-y:auto!important;border-radius:14px!important;z-index:1100000!important;background:#191b23!important}
 html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand{position:absolute!important;top:3px!important;right:4px!important;left:auto!important;width:38px!important;min-width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;background:#191b23!important;border-radius:9px!important;z-index:10!important}
 html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand .tw-v29-flag,html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand span:not(.tw-v29-arrow){display:none!important}
 html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand .tw-v29-arrow{display:block!important;transform:rotate(180deg)!important;font-size:28px!important;animation:none!important}
}
@media(prefers-reduced-motion:reduce){#twMobileRiskExpand .tw-v29-arrow{animation:none!important}}

/* V42: Geoeffnet ist es die ORIGINAL-Riskcard (inkl. rechter Laenderleiste).
   Keine eigene Kopfzeile, kein verschobener Inhalt. 75% und mittig. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    width:350px!important;
    max-width:none!important;
    height:auto!important;
    max-height:calc((100dvh - 20px) / .75)!important;
    transform:translate(-50%,-50%) scale(.75)!important;
    transform-origin:center center!important;
    overflow:visible!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded .twb-country-rail {
    display:flex!important;
    visibility:visible!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #tw-burden-panel {
    padding-top:0!important;
  }
  /* Einziger Zusatz: kleines Schliessenfeld, keine neue Titel-/Laenderzeile. */
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand {
    position:absolute!important;
    top:2px!important;
    right:48px!important;
    left:auto!important;
    width:27px!important;
    min-width:27px!important;
    height:27px!important;
    min-height:27px!important;
    border-radius:6px!important;
    background:#191b23!important;
    z-index:15!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand .tw-v29-arrow {
    font-size:20px!important;
    transform:rotate(180deg)!important;
  }
}

/* TW Mobile V43: die eingeklappte Länderlasche sitzt links in der
   Bildschirmmitte. Die geöffnete Original-Riskcard bleibt mittig. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-risk-card:not(.tw-v29-risk-expanded) {
    top:50%!important;
    bottom:auto!important;
    left:0!important;
    right:auto!important;
    transform:translateY(-50%)!important;
  }
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    top:50%!important;
    left:50%!important;
    right:auto!important;
    bottom:auto!important;
    transform:translate(-50%,-50%) scale(.75)!important;
  }
}

/* TW Mobile V44: NUR aufgeklappte Riskcard unmittelbar oberhalb des
   unteren Buttons Ereignisse & Themen positionieren. Desktop unberuehrt. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    position:fixed!important;
    left:50%!important;
    top:auto!important;
    bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
    right:auto!important;
    transform:translateX(-50%) scale(.75)!important;
    transform-origin:bottom center!important;
    z-index:1100000!important;
  }
}


/* TW Mobile V45: Riskcard-Abstand und sichtbarer Einklapp-Pfeil.
   Die Original-Riskcard bleibt erhalten; nur Smartphone. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    bottom:calc(94px + env(safe-area-inset-bottom,0px))!important;
    cursor:pointer;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand {
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    position:absolute!important;
    top:4px!important;
    right:49px!important;
    left:auto!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    padding:0!important;
    border:1px solid #667185!important;
    border-radius:8px!important;
    background:#2b3040!important;
    color:#fff!important;
    align-items:center!important;
    justify-content:center!important;
    cursor:pointer!important;
    z-index:999!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand .tw-v29-arrow {
    display:block!important;
    color:#fff!important;
    font-size:31px!important;
    font-weight:700!important;
    line-height:1!important;
    transform:none!important;
    opacity:1!important;
  }
  /* Innenabstand im Inhaltsbereich, ohne die rechte Original-Länderleiste zu verändern. */
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #tw-burden-panel {
    box-sizing:border-box!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
}

/* TW Mobile V46: Bei geöffnetem Ereignisse-&-Themen-Panel
   sind die Riskcard und die eingeklappte Länderlasche vollständig verdeckt.
   Nach Schließen stellt die vorhandene Zustandslogik die Riskcard wieder dar. */
@media screen and (max-width:1024px) {
  html body.tw-m19-sheet-open #tw-riskcard-fallback,
  html body.tw-m19-sheet-open #twMobileRiskExpand,
  html body.tw-m19-sheet-open #twMobileRiskPanel {
    visibility:hidden!important;
    pointer-events:none!important;
  }
  html body.tw-m19-sheet-open #mainContent>#scrollContainer.tw-right-pane {
    z-index:2147480000!important;
  }
}

/* TW Mobile V47 – Einklapppfeil links oben an der Riskcard. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand {
    left:4px!important;
    right:auto!important;
    top:4px!important;
    transform:none!important;
  }
}

/* TW Mobile V48: Einklapppfeil AUSSERHALB links, exakt 2 px Abstand. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    overflow:visible!important; /* Sonst wird der außerhalb liegende Pfeil abgeschnitten */
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand {
    position:absolute!important;
    top:4px!important;
    left:-40px!important; /* 38px Pfeilbreite + 2px Abstand */
    right:auto!important;
    width:38px!important;
    height:38px!important;
    transform:none!important;
    z-index:9999!important;
  }
}

/* TW Mobile V49: Unterer Innenabstand der Original-Riskcard.
   Der Pfeil links ausserhalb (2 px) bleibt wie in V48. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #tw-burden-panel {
    padding-bottom:28px!important;
  }
}

/* V50: Smartphone, 20px oberer Innenabstand im Statistikbereich. */
@media screen and (max-width:600px) {
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #tw-burden-panel {
    padding-top:20px!important;
  }
}

/* TW Mobile V51 – Hauptmenü im geöffneten Zustand über ALLEN Karten-Panels.
   Breite exakt 25 % des Smartphone-Viewports. Desktop unverändert. */
@media screen and (max-width:767px) {
  body > #twSiteNavigation.tw-vertical-menu {
    display:none!important;
    position:fixed!important;
    inset:0 0 0 auto!important;
    top:0!important;right:0!important;bottom:0!important;left:auto!important;
    width:25vw!important;
    min-width:0!important;
    max-width:25vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    box-sizing:border-box!important;
    padding:56px 4px 12px!important;
    margin:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    flex-direction:column!important;
    align-items:stretch!important;
    border-radius:0!important;
    background:#191b23!important;
    color:#f4f5fb!important;
    border-left:1px solid #454959!important;
    box-shadow:-12px 0 35px rgba(0,0,0,.55)!important;
    z-index:2147483646!important;
    transform:none!important;
    isolation:isolate!important;
  }
  body > #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open {
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }
  body > #twSiteNavigation.tw-vertical-menu a,
  body > #twSiteNavigation.tw-vertical-menu .tw-vertical-login {
    display:flex!important;
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:46px!important;
    padding:10px 5px!important;
    border:0!important;
    border-bottom:1px solid #343a4c!important;
    background:transparent!important;
    color:#f4f5fb!important;
    font-size:11px!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
    text-align:left!important;
    writing-mode:horizontal-tb!important;
  }
  body > #twSiteNavigation #twMobileNavClose {
    display:flex!important;
    position:absolute!important;
    top:9px!important;right:8px!important;
    width:34px!important;height:34px!important;
    align-items:center!important;justify-content:center!important;
    padding:0!important;
    color:#f4f5fb!important;
    background:#2b3040!important;
    border:1px solid #454959!important;
    border-radius:8px!important;
    z-index:1!important;
  }
  #twMobileNavToggle[aria-expanded="true"] {visibility:hidden!important;}
}

/* V52: Smartphone-Hauptmenue als Vollbild, 100 % Breite und Hoehe. */
@media screen and (max-width:767px) {
  body > #twSiteNavigation.tw-vertical-menu,
  body > #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open {
    inset:0!important;
    top:0!important;right:0!important;bottom:0!important;left:0!important;
    width:100vw!important;min-width:100vw!important;max-width:100vw!important;
    height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    border-left:0!important;
    padding:60px 20px 24px!important;
  }
  body > #twSiteNavigation.tw-vertical-menu a,
  body > #twSiteNavigation.tw-vertical-menu .tw-vertical-login {
    font-size:15px!important;
    padding:14px 12px!important;
  }
}

/* TW V53 – Login: kein blauer Fokusrahmen im Formular.
   Passwortmanager-Erweiterungen koennen eigene Overlays zeichnen. */
#twLoginPopup .tw-login-field,
#twLoginPopup .tw-login-field:focus,
#twLoginPopup .tw-login-field:focus-within,
#twLoginPopup .tw-login-field input,
#twLoginPopup .tw-login-field input:focus,
#twLoginPopup .tw-login-field input:focus-visible {
  outline:none!important;
  outline-offset:0!important;
  box-shadow:none!important;
  -webkit-box-shadow:none!important;
}
#twLoginPopup .tw-login-field:focus-within {
  border-color:#51576a!important;
}
#twLoginPopup .tw-login-field input {
  -webkit-appearance:none;
  appearance:none;
}


/* TW V56 – Tablet Hoch- und Querformat (768–1024px).
   Smartphone und Desktop bleiben unverändert. */
@media screen and (min-width:768px) and (max-width:1024px) {
  /* Echte Riskcard: im Ruhezustand als Länderlasche links, vertikal mittig. */
  html body #tw-riskcard-fallback.tw-risk-card:not(.tw-v29-risk-expanded) {
    position:fixed!important;top:50%!important;left:0!important;right:auto!important;bottom:auto!important;
    transform:translateY(-50%)!important;zoom:1!important;
    width:46px!important;min-width:46px!important;max-width:46px!important;
    height:180px!important;min-height:180px!important;max-height:180px!important;
    margin:0!important;padding:0!important;overflow:hidden!important;
    border-radius:0 13px 13px 0!important;background:#191b23!important;z-index:1302!important;
  }
  html body #tw-riskcard-fallback.tw-risk-card:not(.tw-v29-risk-expanded) > :not(#twMobileRiskExpand) {display:none!important;}
  html body #tw-riskcard-fallback:not(.tw-v29-risk-expanded) #twMobileRiskExpand {
    display:flex!important;position:relative!important;flex-direction:column!important;
    align-items:center!important;justify-content:center!important;gap:7px!important;
    width:46px!important;min-height:180px!important;height:180px!important;
    margin:0!important;padding:8px 4px!important;border:0!important;background:#191b23!important;
  }
  html body #tw-riskcard-fallback:not(.tw-v29-risk-expanded) #twMobileRiskExpand .tw-v29-flag {
    display:block!important;width:24px!important;height:24px!important;flex:none!important;
    border-radius:50%!important;object-fit:cover!important;
  }
  html body #tw-riskcard-fallback:not(.tw-v29-risk-expanded) #twMobileRiskExpand span:not(.tw-v29-arrow) {
    writing-mode:vertical-rl!important;transform:rotate(180deg)!important;
    max-height:95px!important;overflow:hidden!important;white-space:nowrap!important;
    font-size:11px!important;line-height:1!important;
  }
  html body #tw-riskcard-fallback:not(.tw-v29-risk-expanded) #twMobileRiskExpand .tw-v29-arrow {
    display:block!important;transform:none!important;font-size:22px!important;line-height:1!important;
  }
  /* Aufgeklappt: originale Karte 75%, direkt neben der linken Kante, mittig. */
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    position:fixed!important;left:52px!important;right:auto!important;top:50%!important;bottom:auto!important;
    width:350px!important;min-width:350px!important;max-width:none!important;
    height:auto!important;min-height:0!important;
    max-height:calc((100dvh - 28px) / .75)!important;
    transform:translateY(-50%) scale(.75)!important;transform-origin:left center!important;
    zoom:1!important;margin:0!important;padding:0!important;
    overflow:visible!important;border-radius:14px!important;z-index:1303!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand {
    position:absolute!important;left:-42px!important;right:auto!important;top:10px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:40px!important;min-width:40px!important;height:40px!important;min-height:40px!important;
    padding:0!important;border-radius:8px!important;background:#2b3040!important;z-index:20!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand .tw-v29-flag,
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand span:not(.tw-v29-arrow) {display:none!important;}
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #twMobileRiskExpand .tw-v29-arrow {
    display:block!important;transform:none!important;font-size:26px!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #tw-burden-panel {
    padding-top:20px!important;padding-bottom:20px!important;
  }
  /* Vorhandene senkrechte Navigation an die rechte Bildschirmmitte. */
  html body #leftPane #twSiteNavigation.tw-vertical-menu,
  html body #twSiteNavigation.tw-vertical-menu {
    position:fixed!important;top:50%!important;right:12px!important;left:auto!important;bottom:auto!important;
    transform:translateY(-50%)!important;
    max-height:calc(100dvh - 20px)!important;overflow-y:auto!important;
    z-index:1154!important;
  }
  /* Geöffnete Ereignisübersicht überdeckt die Riskcard wie auf Smartphone. */
  html body.tw-m19-sheet-open #tw-riskcard-fallback {visibility:hidden!important;pointer-events:none!important;}
}

/* TW V56 – Tablet Hoch- und Querformat: Riskcard mit 20px Innenabstand
   und unmittelbar oberhalb des Buttons „Ereignisse & Themen“. */
@media screen and (min-width:768px) and (max-width:1024px) {
  html body #tw-riskcard-fallback.tw-risk-card.tw-v29-risk-expanded {
    top:auto!important;
    bottom:90px!important;
    transform:scale(.75)!important;
    transform-origin:left bottom!important;
  }
  html body #tw-riskcard-fallback.tw-v29-risk-expanded #tw-burden-panel {
    box-sizing:border-box!important;
    padding:20px!important;
  }
}

/* TW V57 – Tablet: Hamburger öffnet dieselbe Vollbildnavigation wie Smartphone.
   Im geschlossenen Zustand bleibt die vorhandene senkrechte Leiste rechts mittig. */
@media screen and (min-width:768px) and (max-width:1024px) {
  html body #twMobileNavToggle.tw-mobile-nav-toggle {
    display:flex!important;position:fixed!important;
    top:24px!important;right:24px!important;left:auto!important;
    align-items:center!important;justify-content:center!important;
    width:42px!important;height:42px!important;
    border-radius:12px!important;background:#191b23!important;
    color:#f4f5fb!important;border:1px solid #454959!important;
    z-index:2147483645!important;pointer-events:auto!important;
  }
  html body #twMobileNavToggle.tw-mobile-nav-toggle[aria-expanded="true"] {
    visibility:hidden!important;
  }
  html body > #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open {
    display:flex!important;visibility:visible!important;opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;inset:0!important;
    top:0!important;right:0!important;bottom:0!important;left:0!important;
    transform:none!important;
    width:100vw!important;min-width:100vw!important;max-width:100vw!important;
    height:100dvh!important;min-height:100dvh!important;max-height:100dvh!important;
    box-sizing:border-box!important;
    flex-direction:column!important;align-items:stretch!important;
    padding:60px 20px 24px!important;margin:0!important;gap:0!important;
    overflow-y:auto!important;overflow-x:hidden!important;
    border:0!important;border-radius:0!important;
    background:#191b23!important;color:#f4f5fb!important;
    box-shadow:none!important;z-index:2147483646!important;
  }
  html body > #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open a,
  html body > #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open .tw-vertical-login {
    display:flex!important;flex:0 0 auto!important;align-items:center!important;
    width:100%!important;min-width:0!important;max-width:100%!important;
    min-height:52px!important;padding:14px 12px!important;
    font-size:15px!important;line-height:1.4!important;
    color:#f4f5fb!important;writing-mode:horizontal-tb!important;
    text-align:left!important;white-space:normal!important;
    border-bottom:1px solid #343a4c!important;
  }
  html body > #twSiteNavigation.tw-vertical-menu.tw-mobile-nav-open #twMobileNavClose {
    display:flex!important;position:fixed!important;top:12px!important;right:14px!important;
    width:38px!important;height:38px!important;align-items:center!important;
    justify-content:center!important;background:#2b3040!important;
    border:1px solid #454959!important;border-radius:9px!important;
    color:#f4f5fb!important;z-index:2147483647!important;
  }
}
