<!doctype html>
<html lang="de">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1,viewport-fit=cover">
<base href="__BSW_BASE__">
<title>Live Bodensee Schiffspositionen</title>
<style>html,body{margin:0;padding:0;background:#fff;width:100%;}html{overflow:hidden;}body{overflow:visible;}</style>
</head>
<body>

<meta charset="UTF-8">

<style>
/* === Widget Styles === */
.bsw-widget { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, sans-serif; color: #0C2A4E; display: flex; flex-direction: column; width: 100%; min-height: 0; background: #fff; border: 1px solid #e0e0e0; border-radius: 6px; overflow: hidden; box-shadow: 0 2px 8px rgba(0,0,0,0.06); position: relative; }
.bsw-widget.bsw-fullscreen { position: fixed !important; top:0; left:0; width:100vw !important; height:100vh !important; max-width: 100vw !important; margin: 0 !important; z-index: 99999; border-radius: 0; border: none; }
.bsw-widget.bsw-fullscreen .bsw-header { padding-top: max(50px, calc(env(safe-area-inset-top, 0px) + 12px)); padding-right: max(16px, env(safe-area-inset-right, 0px)); padding-left: max(16px, env(safe-area-inset-left, 0px)); }
.bsw-widget.bsw-fullscreen .bsw-footer { padding-bottom: max(40px, calc(env(safe-area-inset-bottom, 0px) + 12px)); }
.bsw-header { background: #0C2A4E; color: #fff; padding: 10px 16px; display: flex; align-items: center; justify-content: space-between; }
.bsw-header-spacer { width: 28px; height: 28px; }
.bsw-header-title { font-size: 18px; font-weight: 700; }
.bsw-fs-btn { background: transparent; border: none; color: #fff; width: 28px; height: 28px; cursor: pointer; padding: 0; display: flex; align-items: center; justify-content: center; border-radius: 4px; }
@media (pointer: coarse) { .bsw-fs-btn { visibility: hidden !important; pointer-events: none !important; } }
.bsw-fs-btn:hover { background: rgba(255,255,255,0.15); }
.bsw-fs-btn svg { width: 20px; height: 20px; }
.bsw-timebar { background: #0C2A4E; color: #fff; padding: 0 16px 6px; font-size: 12px; display: flex; justify-content: flex-end; align-items: center; gap: 8px; }
.bsw-live-dot { width: 8px; height: 8px; border-radius: 50%; background: #2ecc71; box-shadow: 0 0 0 0 rgba(46,204,113, 0.7); animation: bsw-pulse 2s infinite; }
@keyframes bsw-pulse { 0% { box-shadow: 0 0 0 0 rgba(46,204,113, 0.7);} 70% { box-shadow: 0 0 0 8px rgba(46,204,113, 0);} 100% { box-shadow: 0 0 0 0 rgba(46,204,113, 0);} }
.bsw-live-label { font-weight: 600; }
.bsw-map-container { position: relative; width: 100%; min-height: 200px; background: #d6e8f5; }
.bsw-map { width: 100%; height: 100%; min-height: 0; }
.bsw-error { position: absolute; top: 10px; left: 50%; transform: translateX(-50%); background: rgba(220, 40, 40, 0.95); color: #fff; padding: 8px 16px; border-radius: 6px; font-size: 13px; z-index: 1500; box-shadow: 0 2px 6px rgba(0,0,0,0.2); max-width: 80%; text-align: center; }
.bsw-info { position: absolute; top: 10px; left: 50%; transform: translateX(-50%); background: rgba(12, 42, 78, 0.92); color: #fff; padding: 8px 16px; border-radius: 6px; font-size: 13px; z-index: 1500; box-shadow: 0 2px 6px rgba(0,0,0,0.2); max-width: 80%; text-align: center; }
.bsw-footer { background: linear-gradient(to right, #D9EEFA, #F4FAFF); padding: 8px 16px; display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.bsw-footer .bsw-time-fields { order: 1; }
.bsw-footer .bsw-slider-wrap { order: 2; }
.bsw-footer .bsw-onboard-btn { order: 3; margin-left: auto; }
@media (max-width: 560px) {
  .bsw-footer { display: grid; grid-template-columns: 1fr auto; grid-template-areas: "slider slider" "time onboard"; column-gap: 10px; row-gap: 8px; }
  .bsw-footer .bsw-slider-wrap { grid-area: slider; min-width: 0; order: 0; }
  .bsw-footer .bsw-time-fields { grid-area: time; order: 0; }
  .bsw-footer .bsw-onboard-btn { grid-area: onboard; order: 0; margin-left: 0; justify-self: end; align-self: center; }
}
.bsw-time-fields { display: flex; align-items: center; gap: 2px; padding: 4px 6px; background: #fff; border: 1px solid #c0c8d5; border-radius: 4px; position: relative; }
.bsw-time-fields.bsw-invalid { border-color: #e74c3c; }
.bsw-tf { width: 28px; padding: 3px 0; border: none; text-align: center; font-size: 12px; font-family: inherit; color: #0C2A4E; background: transparent; outline: none; }
.bsw-tf-year { width: 38px; }
.bsw-tf::-webkit-inner-spin-button, .bsw-tf::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.bsw-tf { -moz-appearance: textfield; }
.bsw-tf:focus { background: #f0f6fc; border-radius: 2px; }
.bsw-tf-sep { color: #888; font-size: 11px; font-weight: 600; user-select: none; }
.bsw-cal-btn { width: 26px; height: 24px; margin-left: 4px; background: #1a6b9a; color: #fff; border: none; border-radius: 3px; cursor: pointer; font-size: 14px; display: flex; align-items: center; justify-content: center; padding: 0; }
.bsw-cal-btn:hover { background: #155a83; }
.bsw-cal-popup { position: absolute; bottom: 100%; left: 0; margin-bottom: 6px; background: #fff; border: 1px solid #c0c8d5; border-radius: 6px; box-shadow: 0 4px 16px rgba(0,0,0,0.15); padding: 8px; z-index: 2500; min-width: 230px; }
.bsw-cal-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; gap: 4px; }
.bsw-cal-nav { background: #f0f6fc; border: none; width: 24px; height: 24px; border-radius: 4px; cursor: pointer; font-size: 14px; color: #0C2A4E; }
.bsw-cal-nav:hover { background: #d9eefa; }
.bsw-cal-title { font-weight: 600; font-size: 12px; color: #0C2A4E; flex: 1; text-align: center; }
.bsw-cal-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 2px; }
.bsw-cal-wd { font-size: 10px; color: #888; text-align: center; padding: 2px 0; font-weight: 600; }
.bsw-cal-day { padding: 4px 0; text-align: center; font-size: 11px; cursor: pointer; border-radius: 3px; color: #0C2A4E; }
.bsw-cal-day:hover { background: #d9eefa; }
.bsw-cal-day.bsw-cal-other { color: #bbb; }
.bsw-cal-day.bsw-cal-today { background: #f0f6fc; font-weight: 700; }
.bsw-cal-day.bsw-cal-selected { background: #1a6b9a; color: #fff; }
.bsw-slider-wrap { flex: 1; min-width: 220px; display: flex; flex-direction: column; gap: 2px; }
.bsw-slider { width: 100%; -webkit-appearance: none; appearance: none; height: 6px; border-radius: 3px; background: linear-gradient(to right, #c0d4e3 0%, #1a6b9a 50%, #c0d4e3 100%); outline: none; }
.bsw-slider::-webkit-slider-thumb { -webkit-appearance: none; appearance: none; width: 18px; height: 18px; border-radius: 50%; background: #1a6b9a; cursor: pointer; border: 2px solid #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.3); }
.bsw-slider::-moz-range-thumb { width: 18px; height: 18px; border-radius: 50%; background: #1a6b9a; cursor: pointer; border: 2px solid #fff; box-shadow: 0 1px 3px rgba(0,0,0,0.3); }
.bsw-slider-labels { display: flex; justify-content: space-between; align-items: center; font-size: 10px; color: #555; padding: 0 2px; }
.bsw-slider-labels span:nth-child(2) { font-weight: 700; color: #e53935; font-size: 40px; cursor: pointer; user-select: none; line-height: 1; padding: 2px 10px; border-radius: 3px; }
.bsw-slider-labels span:nth-child(2):hover { background: rgba(229,57,53,0.1); }
.bsw-onboard-btn { padding: 7px 12px; background: #1a6b9a; color: #fff; border: none; border-radius: 4px; cursor: pointer; font-size: 12px; font-family: inherit; font-weight: 600; }
.bsw-onboard-btn:hover { background: #155a83; }
.bsw-onboard-btn.bsw-active { background: #2ecc71; }
.bsw-onboard-modal { position: absolute; bottom: 60px; right: 14px; background: #fff; border: 1px solid #d0d8e3; border-radius: 6px; padding: 8px; box-shadow: 0 4px 16px rgba(0,0,0,0.15); z-index: 2000; min-width: 220px; max-height: 320px; overflow-y: auto; }
.bsw-onboard-title { font-size: 11px; font-weight: 600; color: #0C2A4E; padding: 4px 8px; border-bottom: 1px solid #eee; margin-bottom: 4px; }
.bsw-onboard-item { padding: 6px 10px; cursor: pointer; border-radius: 4px; font-size: 12px; display: flex; align-items: center; gap: 8px; }
.bsw-onboard-item:hover { background: #f0f6fc; }
.bsw-onboard-item.bsw-active { background: #e0f0e5; font-weight: 600; }
.bsw-onboard-item img { width: 22px; height: 14px; mix-blend-mode: multiply; }
.bsw-empty { padding: 8px 12px; font-size: 11px; color: #777; font-style: italic; }
.bsw-ship-divicon { background: none !important; border: none !important; }
.bsw-ship-icon { width: 32px; height: 22px; position: relative; display: flex; align-items: center; justify-content: center; }
.bsw-ship-icon img { width: 32px; height: 20px; mix-blend-mode: multiply; display: block; }
.bsw-ship-icon.bsw-flip img, .bsw-ship-icon.bsw-flip .bsw-ship-fallback { transform: scaleX(-1); }
.bsw-ship-icon.bsw-gps { animation: bsw-ring 1.6s infinite; border-radius: 50%; }
@keyframes bsw-ring { 0% { box-shadow: 0 0 0 0 rgba(46, 204, 113, 0.55);} 70% { box-shadow: 0 0 0 14px rgba(46, 204, 113, 0);} 100% { box-shadow: 0 0 0 0 rgba(46, 204, 113, 0);} }
.bsw-ship-fallback { width: 32px; height: 20px; border-radius: 4px; color: #fff; font-size: 9px; font-weight: 700; display: flex; align-items: center; justify-content: center; text-shadow: 0 1px 2px rgba(0,0,0,0.4); }
.bsw-popup-title { font-weight: 700; color: #0C2A4E; font-size: 13px; margin-bottom: 4px; }
.bsw-popup-row { font-size: 12px; line-height: 1.5; }
.bsw-popup-row strong { color: #1a6b9a; }
.bsw-popup-info { background: #fff4e0; padding: 4px 6px; border-radius: 3px; font-size: 11px; color: #8b6914; margin-top: 4px; }
.bsw-port-popup { min-width: 260px; }
.bsw-port-popup-title { font-size: 15px; font-weight: 700; text-align: center; color: #0C2A4E; border-bottom: 1px solid #d8e2ec; padding-bottom: 5px; margin-bottom: 6px; }
.bsw-port-popup-row { display: grid; grid-template-columns: 38px 1fr auto 1fr; gap: 8px; align-items: center; padding: 5px 0; border-bottom: 1px dashed #eef1f4; }
.bsw-port-popup-row:last-child { border-bottom: 0; }
.bsw-port-popup-ship .bsw-port-popup-name { font-size: 12px; font-weight: 600; color: #0C2A4E; line-height: 1.2; }
.bsw-port-popup-ship .bsw-port-popup-kurs { font-size: 10px; color: #8a98a8; line-height: 1.2; margin-top: 1px; }
.bsw-port-popup-time { font-size: 12px; font-weight: 700; color: #1a6b9a; font-variant-numeric: tabular-nums; white-space: nowrap; }
.bsw-port-popup-nach { display: grid; grid-template-columns: auto 1fr; column-gap: 4px; align-items: center; font-size: 11px; color: #233; line-height: 1.3; }
.bsw-port-popup-nach-label { font-weight: 600; color: #1a6b9a; align-self: center; }
.bsw-port-popup-nach-list { align-self: center; }
.bsw-port-popup-empty { font-size: 12px; color: #666; text-align: center; padding: 6px 0 2px; }

/* === Leaflet 1.9.4 CSS (inline, no <link>) === */
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane > svg,.leaflet-pane > canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0;}
.leaflet-container{overflow:hidden;}
.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;}
.leaflet-tile::selection{background:transparent;}
.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast;}
.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0;}
.leaflet-marker-icon,.leaflet-marker-shadow{display:block;}
.leaflet-container .leaflet-overlay-pane svg{max-width:none !important;max-height:none !important;}
.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none !important;max-height:none !important;width:auto;padding:0;}
.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter;}
.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y;}
.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom;}
.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none;}
.leaflet-container{-webkit-tap-highlight-color:transparent;}
.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,0.4);}
.leaflet-tile{filter:inherit;visibility:hidden;}
.leaflet-tile-loaded{visibility:inherit;}
.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800;}
.leaflet-overlay-pane svg{-moz-user-select:none;}
.leaflet-pane{z-index:400;}
.leaflet-tile-pane{z-index:200;}
.leaflet-overlay-pane{z-index:400;}
.leaflet-shadow-pane{z-index:500;}
.leaflet-marker-pane{z-index:600;}
.leaflet-tooltip-pane{z-index:650;}
.leaflet-popup-pane{z-index:700;}
.leaflet-map-pane canvas{z-index:100;}
.leaflet-map-pane svg{z-index:200;}
.leaflet-vml-shape{width:1px;height:1px;}
.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto;}
.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none;}
.leaflet-top{top:0;}.leaflet-right{right:0;}.leaflet-bottom{bottom:0;}.leaflet-left{left:0;}
.leaflet-control{float:left;clear:both;}
.leaflet-right .leaflet-control{float:right;}
.leaflet-top .leaflet-control{margin-top:10px;}.leaflet-bottom .leaflet-control{margin-bottom:10px;}.leaflet-left .leaflet-control{margin-left:10px;}.leaflet-right .leaflet-control{margin-right:10px;}
.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity 0.2s linear;-moz-transition:opacity 0.2s linear;transition:opacity 0.2s linear;}
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1;}
.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0;}
svg.leaflet-zoom-animated{will-change:transform;}
.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform 0.25s cubic-bezier(0,0,0.25,1);-moz-transition:-moz-transform 0.25s cubic-bezier(0,0,0.25,1);transition:transform 0.25s cubic-bezier(0,0,0.25,1);}
.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none;}
.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden;}
.leaflet-interactive{cursor:pointer;}
.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab;}
.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair;}
.leaflet-popup-pane,.leaflet-control{cursor:auto;}
.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing;}
.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane > svg path,.leaflet-tile-container{pointer-events:none;}
.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane > svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto;}
.leaflet-container{background:#d6e8f5;outline-offset:1px;}
.leaflet-container a{color:#0078A8;}
.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,0.5);}
.leaflet-container{font-family:"Helvetica Neue",Arial,Helvetica,sans-serif;font-size:12px;font-size:0.75rem;line-height:1.5;}
.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,0.65);border-radius:4px;}
.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:black;}
.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block;}
.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4;}
.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px;}
.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none;}
.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb;}
.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px;}
.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:bold 18px 'Lucida Console',Monaco,monospace;text-indent:1px;}
.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px;}
.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,0.8);margin:0;}
.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4;}
.leaflet-control-attribution a{text-decoration:none;}
.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline;}
.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none;}
.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,0.2);background-clip:padding-box;}
.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px;}
.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:8px;}
.leaflet-popup-content{margin:10px 18px 10px 14px;line-height:1.3;font-size:13px;min-height:1px;}
.leaflet-popup-content p{margin:17px 0;margin:1.3em 0;}
.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none;}
.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:white;color:#333;box-shadow:0 3px 14px rgba(0,0,0,0.25);}
.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent;}
.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858;}
.leaflet-popup-scrolled{overflow:auto;}
.leaflet-div-icon{background:transparent;border:none;}
.leaflet-tooltip{position:absolute;padding:4px 8px;background-color:#fff;border:1px solid #ddd;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,0.2);font-size:11px;}
.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto;}
.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:"";}
.leaflet-tooltip-bottom{margin-top:6px;}
.leaflet-tooltip-top{margin-top:-6px;}
.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px;}
.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff;}
.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff;}
.leaflet-tooltip-left{margin-left:-6px;}
.leaflet-tooltip-right{margin-left:6px;}
</style>

<div class="bsw-widget" data-bsw-root></div>

<script>
(function(){
  var UID = 'bsw_' + Math.random().toString(36).slice(2, 7) + '_';

  // ---- Configuration ----
  var WIDGET_TITLE = 'Live Bodensee Schiffspositionen';
  var REFRESH_INTERVAL_MS = 30000;

  var PORTS = {
    'Konstanz':        [47.66021, 9.17936],
    'Kreuzlingen':     [47.6480,  9.1737],
    'Mainau':          [47.70679, 9.20160],
    'Meersburg':       [47.69184, 9.27256],
    'Hagnau':          [47.67244, 9.31356],
    'Immenstaad':      [47.66094, 9.36772],
    'Friedrichshafen': [47.64999, 9.48304],
    'Langenargen':     [47.59418, 9.53927],
    'Kressbronn':      [47.58510, 9.59833],
    'Nonnenhorn':      [47.57477, 9.60468],
    'Wasserburg':      [47.56486, 9.63025],
    'Lindau':          [47.54344, 9.68300],
    'Bregenz':         [47.50709, 9.74720],
    'Überlingen':      [47.76558, 9.15966],
    'Unteruhldingen':  [47.72277, 9.22594],
    'Dingelsdorf':     [47.74168, 9.15859],
    'Rorschach':       [47.4787,  9.4898]
  };

  // Bei Klick auf einen Hafenpunkt werden in der "Nach …"-Spalte
  // NUR diese 7 Haupthäfen als Ziele angezeigt (Kleinhäfen wie Hagnau,
  // Immenstaad, Nonnenhorn etc. werden in der Liste weggelassen).
  var MAIN_PORTS = { 'Überlingen':1, 'Konstanz':1, 'Mainau':1, 'Meersburg':1, 'Friedrichshafen':1, 'Lindau':1, 'Bregenz':1 };

  // Schifffahrts-Routen: direkt aus Kordinaten.xlsx (Blatt "Rutenverlauf").
  // Key = "Starthafen|Zielhafen", Wert = Liste von [lat,lng]-Punkten
  // (erster Punkt = Starthafen, letzter Punkt = Zielhafen, dazwischen Wasserwegpunkte).
  // Schiffe fahren in geraden Linien zwischen aufeinanderfolgenden Punkten.
  // Rückrichtung wird automatisch durch Umdrehen der Punktliste erzeugt.
  var ROUTES = {
    'Bregenz|Lindau':              [[47.50709,9.74720],[47.54344,9.68300]],
    'Lindau|Wasserburg':           [[47.54344,9.68300],[47.52822,9.67938],[47.56486,9.63025]],
    'Wasserburg|Nonnenhorn':       [[47.56486,9.63025],[47.56107,9.62209],[47.57046,9.59702],[47.57477,9.60468]],
    'Nonnenhorn|Kressbronn':       [[47.57477,9.60468],[47.58510,9.59833]],
    'Kressbronn|Langenargen':      [[47.58510,9.59833],[47.58054,9.58223],[47.57983,9.55126],[47.59418,9.53927]],
    'Langenargen|Friedrichshafen': [[47.59418,9.53927],[47.59478,9.51932],[47.64999,9.48304]],
    'Friedrichshafen|Immenstaad':  [[47.64999,9.48304],[47.64018,9.47660],[47.66094,9.36772]],
    'Immenstaad|Hagnau':           [[47.66094,9.36772],[47.65727,9.36458],[47.65592,9.34640],[47.67244,9.31356]],
    'Hagnau|Meersburg':            [[47.67244,9.31356],[47.67115,9.30633],[47.68288,9.27435],[47.69184,9.27256]],
    'Meersburg|Mainau':            [[47.69184,9.27256],[47.68547,9.24816],[47.70679,9.20160]],
    'Mainau|Konstanz':             [[47.70679,9.20160],[47.66744,9.23119],[47.65684,9.20738],[47.66021,9.17936]],
    'Meersburg|Konstanz':          [[47.69184,9.27256],[47.65684,9.20738],[47.66021,9.17936]],
    'Lindau|Meersburg':            [[47.54344,9.68300],[47.53025,9.67784],[47.67361,9.26265],[47.69184,9.27256]],
    'Mainau|Unteruhldingen':       [[47.70679,9.20160],[47.72277,9.22594]],
    'Unteruhldingen|Dingelsdorf':  [[47.72277,9.22594],[47.74168,9.15859]],
    'Dingelsdorf|Überlingen':      [[47.74168,9.15859],[47.76558,9.15966]],
    'Meersburg|Unteruhldingen':    [[47.69184,9.27256],[47.68715,9.26490],[47.69880,9.22906],[47.72277,9.22594]],
    'Unteruhldingen|Überlingen':   [[47.72277,9.22594],[47.75184,9.16740],[47.76558,9.15966]],
    'Meersburg|Dingelsdorf':       [[47.69184,9.27256],[47.68584,9.25986],[47.74137,9.17387],[47.74168,9.15859]],
    'Dingelsdorf|Mainau':          [[47.74168,9.15859],[47.74137,9.17387],[47.71487,9.20519],[47.70679,9.20160]]
  };

  // Bewirtung-Mapping pro Kurs + Saison (direkt aus den BSB-PDFs übernommen).
  // 'besteck' = Restaurant an Bord (Messer/Gabel überkreuzt im Original-Fahrplan)
  // 'glas'    = Getränke an Bord (Glas-Symbol)
  // Lookup-Key: kurs als String (auch für 4001e, 4000e usw.).
  var BEWIRTUNG_OFF = {  // Nebenseison
    '111':'besteck','131':'besteck','157':'glas','153':'glas','135':'glas',
    '141':'besteck','113':'glas','115':'besteck','145':'besteck',
    '158':'glas','150':'glas','142':'besteck','112':'besteck','114':'besteck','116':'besteck','146':'besteck',
    '130':'glas','132':'glas',
    '4001e':'glas','411':'besteck','401':'besteck','4003e':'glas','4005e':'glas','403':'besteck','4007e':'glas','4009e':'glas','413':'besteck','151':'glas','405':'besteck','415':'besteck',
    '4000e':'glas','402':'besteck','4002e':'glas','4004e':'glas','412':'besteck','4006e':'glas','4008e':'glas','404':'besteck','152':'glas','414':'besteck','416':'besteck','406':'besteck'
  };
  var BEWIRTUNG_MAIN = {  // Hauptseison
    '111':'besteck','131':'glas','157':'glas','153':'glas','135':'glas',
    '141':'besteck','121':'glas','123':'glas','113':'besteck','143':'besteck','115':'besteck','125':'glas','145':'besteck',
    '158':'glas','150':'glas','142':'besteck','122':'glas','124':'glas','112':'besteck','114':'besteck','144':'besteck','116':'besteck','126':'glas','146':'besteck',
    '130':'glas','132':'glas',
    '401':'besteck','411':'besteck','4001e':'glas','461':'glas','403':'besteck','4003e':'glas','463':'glas','413':'besteck','151':'glas','4005e':'glas','4007e':'glas','133':'glas','405':'besteck','415':'besteck',
    '4000e':'glas','402':'besteck','412':'besteck','4002e':'glas','462':'glas','4004e':'glas','152':'glas','404':'besteck','464':'glas','4006e':'glas','134':'glas','414':'besteck','406':'besteck','416':'besteck'
  };

  // Inline-SVGs (für Popup-Anzeige; aus Besteck.svg / Glas.svg)
  var SVG_GLAS = '<svg viewBox="0 0 673 671" width="14" height="14" style="vertical-align:-3px;color:#0C2A4E" xmlns="http://www.w3.org/2000/svg"><path d="M236.594 104.688 434.802 104.688 439.688 195.417 230.312 195.417 236.594 104.688ZM420.844 573.687C409.677 570.896 397.115 568.104 381.76 567.406 366.406 562.521 354.542 554.844 354.542 545.771L354.542 382.458C400.604 382.458 485.75 335.698 481.562 289.635L466.208 73.2812 209.375 73.2812 191.229 289.635C187.74 335 271.49 382.458 316.854 382.458L316.854 545.073C316.854 554.844 304.292 561.823 289.635 566.708 275.677 568.802 262.417 570.198 251.948 572.99L251.25 572.99C233.104 577.875 222.635 584.156 222.635 591.833 222.635 607.885 273.583 620.448 336.396 620.448 398.51 620.448 450.156 607.885 450.156 591.833 448.76 584.854 437.594 578.573 420.844 573.687Z" fill="currentColor"/></svg>';
  var SVG_BESTECK = '<svg viewBox="0 0 676 671" width="14" height="14" style="vertical-align:-3px;color:#0C2A4E" xmlns="http://www.w3.org/2000/svg"><g><path d="M548.562 219.146C639.292 117.25 606.49 81.6562 606.49 81.6562 595.323 70.4896 577.875 70.4896 566.708 81.6562L302.198 346.167 71.8854 561.125C55.8333 577.177 55.8333 603.698 71.8854 620.448 87.9375 636.5 114.458 636.5 131.208 620.448L341.281 390.135C351.75 395.021 379.667 408.979 388.042 399.906L548.562 219.146Z" fill="currentColor"/><path d="M619.75 561.125 436.198 387.344 408.281 418.75C403.396 423.635 395.021 429.917 381.76 430.615L561.125 620.448C577.875 636.5 604.396 636.5 620.448 620.448 635.802 603.698 635.802 577.177 619.75 561.125Z" fill="currentColor"/><path d="M250.552 332.208C250.552 332.208 263.115 329.417 277.073 331.51L282.656 325.927 330.812 277.771C328.719 264.51 331.51 251.25 331.51 251.25 336.396 221.24 324.531 186.344 288.938 150.75 230.312 92.125 146.562 37.6875 146.562 37.6875L134 50.25 274.979 191.229C279.167 195.417 279.167 201.698 274.979 205.885 270.792 210.073 264.51 210.073 260.323 205.885L119.344 64.9062 99.8021 84.4479 240.781 225.427C244.969 229.615 244.969 235.896 240.781 240.083 236.594 244.271 230.312 244.271 226.125 240.083L85.1458 99.1042 65.6042 118.646 206.583 259.625C210.771 263.812 210.771 270.094 206.583 274.281 202.396 278.469 196.115 278.469 191.927 274.281L50.25 134 37.6875 146.562C37.6875 146.562 97.0104 235.896 150.052 289.635 185.646 325.229 220.542 337.094 250.552 332.208Z" fill="currentColor"/></g></svg>';

  var SHIPS = {
    'MS Austria':       { file: 'data:image/png;base64,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',        color: '#ff8c00' },
    'MS Baden':         { file: 'data:image/png;base64,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',          color: '#daa520' },
    'MS Graf Zeppelin': { file: 'data:image/png;base64,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',  color: '#1e6bb8' },
    'MS Insel Mainau':  { file: 'data:image/png;base64,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',   color: '#00bcd4' },
    'MS Karlsruhe':     { file: 'ships/MS_Karlsruhe.png',      color: '#e91e63' },
    'MS Konstanz':      { file: 'data:image/png;base64,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',       color: '#8bc34a' },
    'MS Lindau':        { file: 'data:image/png;base64,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',         color: '#f44336' },
    'MS München':       { file: 'data:image/png;base64,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',       color: '#9c27b0' },
    'MS Schwaben':      { file: 'data:image/png;base64,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',       color: '#2e7d32' },
    'MS Stuttgart':     { file: 'data:image/png;base64,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',      color: '#e91e63' },
    'MS Überlingen':    { file: 'data:image/png;base64,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',    color: '#ff7043' },
    'MS Vorarlberg':    { file: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAEHCAYAAADYlf7fAAATnklEQVR42uzcP2sTYRzA8bSCFMHFvgD/gGB9Fd0l3vNEjBdN3FzcgqvD1SaNBvEuv8ugkSIIOvQFCHZxau7iJb3nGloFR1cHR3V5REXsIqiDtHm+H/jux/1+cNwDdyUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMoDluAQAADgizS2ek8MqR8ZrRtndXjIp7uXokhTfo5frx/0oKPfiRNxCjH36/jh3diXd0s2cqWna98xsbl48wMQAA/lH/jV4Mt1WtM6o9v5dV34tR9qDXzaofg61GtrLVECm8cn+kF5kkAAB/wpbmpNDX2+nVsRhlD3N3kvpuK/Fvh7k6xWABAPiN/l7lZDu58kSMsrNUK7n2LproG4EN5pkyAAD7hBO9tJb6L8UoO6u1hv5TTgMAANj35v/z4T/rtdPaZjjVS0wdAOC8zshfF6OsK62ltc24KJ9m8gAAZ8VTVRejrGu1E/9Z8Gp5gQ0AADhn/e3F46tJPRWjrIs9GKtbbAEAwDmSVy6IUdbVuln1QzxVy2wCAMApq8N6JEZZl+uk/otvJyFsAwDACYEN5leGjddilHW9KPdushEADit+cIK/cmIvP3fs6Oez3IlS6dOXhWY44dNAAIADeqaiefv/VXdcvc9WAOAEAF/Zu3+ctsEwDODYxklAiCO0A6V0CbcoUpbGNEIdGJopwMbaE7RTJewuvUjPgCpVCsldEHb8p2srcgH8/X6SL/Dok/L4jb7XvRfHnY14/0ii9urH+vy9JADotbvV+Vdv/v8/335/+pXfTw6dDgB6K19mhR/9Lc9DduN0AP4CoMeiVAbPVXV68/3PhzeSAKCXimX20xv/9ufuIfvihAAmAPRSF3WRFLYrN8OrYjUdSwJQACAgo93y9VM1mksCUAAgMHHcLPJldiYJQAGAgKRxffBYDW9dCwQUAAjM/qCc7OwNLyUBKAAQ3rXA63ydHUkCUAAgIINkcxo10YUkAAUAAlM2ybxYzd5JAlAAICCDpD7puvqjJAAFAAKzaXY/mwIACgAEJo2bt6YAgAIApgAACgCYAgAoAGAKAKAAgCkAgAIAL387oL0AgAIAAe4FOG67diYJQAGAwJRVuihW07EkAAUAAjJKq1dP1WguCUABgMDEcbPIl9mZJAAFAAKSxvXBYzW8ze8nh9IAFAAIyP6gnOzsDS8lASgAEN61wOt8nR1JAlAAICCDZHMaNdGFJAAFAAJTNonlQIACAAEuBzqxIhhQAMCHggAUAPChIAAFAEwBABQAMAUAUADAFABAAQBTAAAFAF7KdkB7AQAFAALcC3Dcdu1MEoACAIEpq3RRrKZjSQB/2bef1SaiKI7j9940sYsqoiBCQQoKiqDgS4iKTWYiDbZmxEUVXelW3Eza6qKFtDPtTgXp1p1rV0KSxlYzE6lYLNh13bgQ0TQzV0bwBQKdm5LvB355gMPJuX9mhg0AMECGs51TvzvDd6gEADYAwIBRKrrnB9ZlKgGADQBomQGSVd2RX51Dj/y1q0eoBgDAOC+0XviBpUlKCa0HdB0AjnMwTgqRowqpfhZ4v/ohf4ZKAACM8gLrDSfzdOOF1mM6DwA3ADCmGlwfjeLMaSqRrm53aHrp042LVAIAYMRyWMxzIjcTL7QX6EAA3AAgdVoLqYUepxJm6Fg+9ENrkkoAAFLlt+27nMTNZn6j9M0L7St0IwAglZN/svgvtoq7LML9sAmY2FkKrDKdCQDYF9VgYvTfM//Qfs7C21/xAjta2Ci98sPCePJiJt0KoBeSEhwsrnbVsc+tc3ovc1YpPRYLcULGekQImRUyVr2+1qFjIYXSUgqR01ocTd72H1LReSre3/50c9tKxdvZTPe7FqIjYqmlEprK/BcLoVXys6eV/KmE2I1juSOz0dbJzdxWqfQ6okYA+tbLL/nDK+3CtZmG41Xqzvv59dIPTsKE9J7kP+TWnPVKzfGTm5SVpn2cSQOgr3iB5cw2ymsMbUL2LzON8ubT5uSTxZY1xtQBYFQyiGbrU6sMZ0LSy1zj1levVZx2tcsn0gDSt9wuXKjUyu8YyISYyVx9apXbAACp8oP8JbfmfGQIE2I2z5o33yabcaYSgJQW/9utv+zdTWscBRjAcdooWISc/AJKLx5a7AterODFSMDuzuZldxoRvJV4EkEhUi9Cu5Nts5ud9SIehIJfoVQED4lNs7Nvs5tLtYoFr16qICgxeisIvjQxlZ2d3x9+XyBln6zxmWcMXxgPV7bDLxvd86dNJ0mP9M/+H2y9lhi6MF6q7XArTudPmVKSDr3WcPHpy9tLXxi2ML5fAhrDOX8JkHR4ffLdG09cvr30qSELvgRIylGNfultwxV8CZCUo1o7wUu1TvkHgxXsBEjK0Xnf6nZ4w0CF7ImS8FacFnwJkLT/1gfFNw1SyK5qEm64EyBpXzV6pWdXk/BrQxSybTWp3Gx05p8x1SQ9VLVu+ZrhCZOhMVj4uP794jGTTdI/9uFO6eW13sJPBidMkEHpHdNN0t8Wb89OR0nF4h9MmHp/4X5zZ65kykn6y+JhsGxYwmRa7ZTvNNPSOZNO0p+q9wrHr/UWRwYlTK6oHXbq/cJZE0/Sg5rDYMWAhFw8HrjlRoCkB2/6q3Ur9wxHcCNAUo662q2sGYrgRoCkHBWnwcxa32N/4EaApNwU352dvtK+cNMgBDcCJOWo1tC9f3AjwI0Ayb1/wI0ASe79A/kRJZWkOQrOmI6Se/9AzkSdcHO9VzhpSkoW/wCPB0qy+Ad4PFCSxT/A44GSLP4BHg+UZPEP8HigJIt/gFcIS7L4B2TqFcKN4dxp01Sy+AfkTJSEt+K0cMpUlSz+Afn7S8BGa1Q8YbJKFv8Ah4IkWfwDHAqSZPEPcChIOmBH/QgOtvj38y/H3vKTkPSo2v196pJDQZLFP8ChIEkW/4C8iJJK0hwFZ0xfyeIfkDNRJ9xc7xVOmsKSxT/A44GSXPwDPB4oyeIf4PFAyWOAh7P4N3Vk76KfhCSPB0oW/wA8HihZ/AP4/0TtsFPvF86a0pLFPyB/bw/c8gphyeIfkEPVdrjpFcKSi3+AGwGSDlq8PTsdJZUbBgvgRoCUo+JhsGygAG4EyB2AHFXvFY7/uvv4sp+EpEzeCEjdCJAOVHMYrPgvCSDLNwJag7kXTHNpH7VGxRO1buWeIQJk/BXCtxuD4DlTXXrIrnYra4YHMAmiTuWzxsiTAdK/FqfBzFrfY3+AJwMk9/4BPBkgufcPkDX1/sJ9bw+U3PsHvD1Qknv/gLcHSu79A3h7oGTxD8DbAyWLfwDeHihZ/ANwI0Cy+AfgRoC8DXDcF/+mjuxd9E8vydsDpy65ESCLfwBuBEgW/wDyIkrCxI0AWfwDcCNAsvgHkKMvARtuBGiiWk+Lr3jVL4AbAcpRH311/qlqcuFzH2wANwKUo+Jh8T0faAA3ApSjOwBxWprb/e2xFf/MkrS/dveOvt8aBvN+EspczbR0rtYp3/FNHuBgVjuL38ZpMOM3ijJTnAbPR0nY8QEG+G9q3fI3cb+44DeLsvD//F+stsOuDy7A4agP5n9sDoJ3rw9ff9JvGY1lzUFxabVbvusDC3D46v356+4EaGyqp6/+0d7dxjZx3wEcPzsG7BAeC0ICpDL2YhMdYpmQNjQm8WYvKhHbF/scJ6wT2jqkSaNSpLL1xTq5LMRJDHZ8TlgPGqX1Eq1yxTqmNgVpgxWaBz/EPptlY1PfTJ32Yt1DQ8vKyoPnP01GipLSpjacfd+v9BFtRFrp7h/97u+Lz5vUvKsplPE936vLN/khBYDK6c749FhBVpg+tOgSCaVOnXJti+rNcqwgt0cLclDV3TFVl59V864Tal6eVzQnn4zm3c+peXf8WNb7WogdPwDcV705+frRjDIoNl9iE8ZEo3vWl5QfEgvmmdHH1GfGHkv1pH3v8MMEANVLbMLEZkxsysTmTGzSxGZtscT3m81Cx+zex9J1QmyaxeZZbKLFZlpsqsXmWmyyJSMUybm3dIz7f3x4/FtT/MAAAFA5YnMtNtlisy023WLzLd3JMqOyBYoBazTX/HjH+D5epgcA4AEQm+8jY21Ph5JNn5u9CKj4rv/IROsLHHwAAB68n47v+3Mk6/yOeArwnj17bBX77P3OZNtZDjgAAMZy+HX/z5T2XWulctf3h+aHS8P/DAcZAABjCpzzdUplrShZgkn/AAcXAADjOjy6799lfgyv/G0OLAAAxmeVylTfH+WH3n3f8QRPOyAiIjJR0bzs54oKAACTvQLwn2t2J5dBRERE1ZFVKkORtGer1XrzGxxOIiIiE9Wbdzp5OQUAAJPdArBK1q1cBhEREZnsFkCxWNzAoSQiIjLZBYBFsjRwKImIiMz2CoDFYuNQEhERVU9WDgEREREXAIvKUize4FASERGZ7RaA1fIeh5KIiKg6eu+a419WqRzdkt7mcBIREVVH169LPy/TLwEW/8LhJCIiMn5Xr9W/Zrdc7SnPg4DqLG/euGW7wmElIiIyblf/63ij3vH+D3+0+9d/k8pRJOde3ZPxFXi0IgAAxhRM+UdV3dkolbvwpPcVDjAAAMYTTPrHVN3TKFWiqO6Oc5ABADDe8I/km79SuQcBWaQPuLtCRERkpHv+9nG7/YMftO/4ZVaqVGpePsGVFgAABtv5V7qY7tY44AAAmGj4i1RdfpaDDgBAdQx/q1S2ite520JERGSoe/6VL1qQg1x5AQBQHS/7W0skPg+AiIiInf+i6s27PVyBAQBgqJ1/5VOz8o7wpHeakwEAgEmGv0jLKKtCGZ/OCQEAoPKCqdaZ4W+AwlnvKU4KAACV1ZXyp8JZ507JKKl5d4QTAwBA5XSnfZejurxbMlLRvPwkJwcAgMoIZ73T0UvNsnSPeCcAAAC1JCcfksqUVSpj1puWN2/csl3hHZlERETl7WbR9tyNdbY+aYF4JwAAADWmO9VyJpL2bJUWiHcCAABQY4Ip/4VYwbVdWiDeCQAAQO293W9U1Z2NUjUUzbl4JwAAAGUZ/p5GqVpSdbmZEwcAQFkf8Wv8wnrTI0cnvf/gBAIAYJLhL0oUlbquVMvrnEQAAEwy/Gfr1T1dnEgAAEw0/EWxgquNkwkAgImGv6g/5/7ysUnPFU4qAAAmGf6i/imloTvdMsmJBQDAJMN/tmNZ7wucXAAATDT8RTFdfooTDACAiYa/KFZwuznJAACYaPiL1Iz78z0Z31852QAAmGT4z9aZbH2JEw4AgImGvyiWd3+Xkw4AYPibaPiL1CnXtp5My9ucfAAAw99kdUy0/YoFAABg+N+J2wAAANSoYKp13uHPbQAAAGpUV8qfCmedO6W74jYAAAA1qjvtuxzV5d0ScRsAAGAO4ax3OnqpWWbycxsAAGAmOfkQU/+uOsa4DQAAqF2RnPdk+C3FwcTnNgAAwCS6Uy1nImnPVqb9PKlZ17aetO/vLBQAQC0JpvwXYgXXdib9x9SVavkFiwUAUENv9xtVdWcjE/4eqQV5HwsGAFA7w9/D8P8khfW9m7rTLb9n4QAAeMSvyVJ1+ScsHgAAw99kqfnmrx2b9L7LIgIAMPxN1pGJ1ldYSAAAhr/JUnPy91hMAACGvxmfCZDhmQAAAIY/zwQAAIDhzzMBAABg+PNMAAAAGP61Ukx3P81CAwAw/E1WX9711WOT3mkWHACA4W+yetItCRYdAIDhb7JiBVcbCw8AwPA3Wdqfmtb1pH1jLEAAAMPfZEVzrsdZhACA+y2YamX4P8j6p5SGrrSfzwcAANzPz/NPhbPOnUzhB1zfJfmbR/mUQADAfdCd9l2O6vJupq9BCmV8IRYmAKCSwlnvdPRSs8zUNVCxgueL3amWyyxQAEDF5ORDTFwDphb4qGAAQGVEct6T4bcUB9PWgGmZA0tCGd/zLFQAQDl1p1rORNKerUxaAxfWmx7pTLbmWbAAgHIIpvwXYgXXdiZsFaTmXU1HM8oVFi4A4DO+3W9U1Z2NTNYq6mhWeYrFCwD4bMPfw/CvtsJjiuNIsm2YRQwA4BG/Jkv8wkZn0v8bFjMAgOFvssQvbgSTrRdZ1ACATzH8LQJTdIESiUSdVAWJX+AIpvyjLG4AwELEnIhkbg//uhlWLgIWmP2vvjr88MiIuqxaLgJ4JQAAMJ/OCf8bkUyTGP62kiUzf1q5CPhogUDApmnaKunUqaHN8Xh8ubgaKBaLFkH6+CxFoVicIQ7qXSpYNC9/KTjRNsJiBwDM6hjzn+26uHfHzNBfOodtRt0c1vkY+JaBZV6LSMztgYGBFaqqrpcu/u7cE2fj8eUjI4n1L788uHpoSF15+vTAikQi0SCcLv1F8bWhoaGVCU1bNTgYWT18/Pia4eHja44fD64RX5ullQyp6spEor8h0f9R/SXxeGh5KHSHpgXqtUCgPhR6crkQbm93BPbvtwcCgaUzbMKBAweWHHz00WWKoiwtqev47d5Nhy+2RTuTrf9k4QOAeR2ZaHsncM7f9/3er39hw4YNy9etW7di7dq1K4X169c3iK8JGzdurN+8ebNjy54t9j0lu3btctym7HIoivJ/+0sz6ODBg8uE/R/OI3u7mE2BA/Wlf75N0z78c3AwYFdVdZmQSASWapq2ZK7z58/bZolZJjbac4mvi7+XKSn9+1Jh9r83ODho1zStPl6alfH4XLPzU6sXwuGwYzAQsIvvne//O/dr4u+I4S++/8WXXlT+B2whbZw/qG/GAAAAAElFTkSuQmCC',     color: '#9ccc65' }
  };

  // Feiertage 2026 in Baden-Württemberg / Bayern (relevant für Sonderinfo 3)
  var HOLIDAYS_2026 = ['2026-01-01','2026-01-06','2026-04-03','2026-04-06','2026-05-01','2026-05-14','2026-05-25','2026-06-04','2026-08-15','2026-10-03','2026-11-01','2026-12-25','2026-12-26'];

  // ---- Embedded Fahrplandaten (auto-generated from Farplan.xlsx) ----
  var SCHEDULE_OFF_HAUPTSEE = [
    {k:111,li:"1 / 2",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Konstanz',an:null,ab:545},{p:'Meersburg',an:575,ab:585},{p:'Hagnau',an:600,ab:600},{p:'Immenstaad',an:615,ab:615},{p:'Friedrichshafen',an:645,ab:655},{p:'Langenargen',an:680,ab:680},{p:'Kressbronn',an:700,ab:700},{p:'Nonnenhorn',an:710,ab:710},{p:'Wasserburg',an:720,ab:720},{p:'Lindau',an:740,ab:745},{p:'Bregenz',an:767,ab:null}]},
    {k:131,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Mainau',an:655,ab:655},{p:'Meersburg',an:675,ab:680},{p:'Hagnau',an:695,ab:695},{p:'Immenstaad',an:710,ab:710},{p:'Friedrichshafen',an:740,ab:null}]},
    {k:157,li:"1 / 2",sch:"MS Vorarlberg",bw:true,si:1,stops:[{p:'Konstanz',an:null,ab:880},{p:'Mainau',an:915,ab:915},{p:'Meersburg',an:935,ab:940},{p:'Lindau',an:1040,ab:1045},{p:'Bregenz',an:1067,ab:null}]},
    {k:153,li:"1 / 2",sch:"MS Austria",bw:true,si:null,stops:[{p:'Konstanz',an:null,ab:915},{p:'Mainau',an:955,ab:955},{p:'Meersburg',an:975,ab:985},{p:'Hagnau',an:1000,ab:1000},{p:'Immenstaad',an:1015,ab:1015},{p:'Friedrichshafen',an:1045,ab:1055},{p:'Langenargen',an:1080,ab:1080},{p:'Kressbronn',an:1100,ab:1100},{p:'Nonnenhorn',an:1110,ab:1110},{p:'Wasserburg',an:1120,ab:1120},{p:'Lindau',an:1140,ab:1145},{p:'Bregenz',an:1167,ab:null}]},
    {k:135,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Konstanz',an:null,ab:1025},{p:'Mainau',an:1065,ab:1065},{p:'Meersburg',an:1085,ab:1095},{p:'Hagnau',an:1110,ab:1110},{p:'Immenstaad',an:1125,ab:1125},{p:'Friedrichshafen',an:1155,ab:null}]},
    {k:141,li:"2",sch:"MS München",bw:true,si:null,stops:[{p:'Lindau',an:null,ab:595},{p:'Bregenz',an:617,ab:null}]},
    {k:113,li:"2",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Lindau',an:null,ab:810},{p:'Bregenz',an:832,ab:null}]},
    {k:115,li:"2",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Lindau',an:null,ab:905},{p:'Bregenz',an:927,ab:null}]},
    {k:145,li:"2",sch:"MS München",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:995},{p:'Langenargen',an:1020,ab:1020},{p:'Kressbronn',an:1040,ab:1040},{p:'Nonnenhorn',an:1050,ab:1050},{p:'Wasserburg',an:1060,ab:1060},{p:'Lindau',an:1080,ab:1085},{p:'Bregenz',an:1107,ab:null}]},
    {k:158,li:"2 / 1",sch:"MS Vorarlberg",bw:true,si:1,stops:[{p:'Bregenz',an:null,ab:555},{p:'Lindau',an:577,ab:585},{p:'Meersburg',an:685,ab:695},{p:'Mainau',an:720,ab:720},{p:'Konstanz',an:750,ab:null}]},
    {k:150,li:"2 / 1",sch:"MS Austria",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:560},{p:'Lindau',an:582,ab:590},{p:'Wasserburg',an:610,ab:610},{p:'Nonnenhorn',an:620,ab:620},{p:'Kressbronn',an:630,ab:630},{p:'Langenargen',an:650,ab:650},{p:'Friedrichshafen',an:675,ab:685},{p:'Immenstaad',an:715,ab:715},{p:'Hagnau',an:730,ab:730},{p:'Meersburg',an:745,ab:755},{p:'Mainau',an:780,ab:780},{p:'Konstanz',an:810,ab:null}]},
    {k:142,li:"2",sch:"MS München",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:625},{p:'Lindau',an:647,ab:655},{p:'Wasserburg',an:675,ab:675},{p:'Nonnenhorn',an:685,ab:685},{p:'Kressbronn',an:695,ab:695},{p:'Langenargen',an:715,ab:715},{p:'Friedrichshafen',an:740,ab:null}]},
    {k:112,li:"2",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:780},{p:'Lindau',an:802,ab:null}]},
    {k:114,li:"2",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:840},{p:'Lindau',an:862,ab:null}]},
    {k:116,li:"2 / 1",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:940},{p:'Lindau',an:962,ab:970},{p:'Wasserburg',an:990,ab:990},{p:'Nonnenhorn',an:1000,ab:1000},{p:'Kressbronn',an:1010,ab:1010},{p:'Langenargen',an:1030,ab:1030},{p:'Friedrichshafen',an:1055,ab:1060},{p:'Immenstaad',an:1090,ab:1090},{p:'Hagnau',an:1105,ab:1105},{p:'Meersburg',an:1120,ab:1130},{p:'Konstanz',an:1160,ab:null}]},
    {k:146,li:"2",sch:"MS München",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:1115},{p:'Lindau',an:1137,ab:null}]},
    {k:130,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:550},{p:'Immenstaad',an:580,ab:580},{p:'Hagnau',an:595,ab:595},{p:'Meersburg',an:610,ab:620},{p:'Mainau',an:640,ab:640}]},
    {k:132,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:750},{p:'Immenstaad',an:780,ab:780},{p:'Hagnau',an:795,ab:795},{p:'Meersburg',an:810,ab:820},{p:'Konstanz',an:850,ab:null}]}
  ];

  var SCHEDULE_OFF_UEBERLINGEN = [
    {k:"4001e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:595},{p:'Unteruhldingen',an:null,ab:610}]},
    {k:411,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:545},{p:'Meersburg',an:575,ab:585},{p:'Mainau',an:605,ab:610},{p:'Unteruhldingen',an:null,ab:620},{p:'Dingelsdorf',an:null,ab:640},{p:'Überlingen',an:655,ab:null}]},
    {k:401,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:585},{p:'Meersburg',an:615,ab:null}]},
    {k:"4003e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:645},{p:'Unteruhldingen',an:null,ab:660}]},
    {k:"4005e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:695},{p:'Unteruhldingen',an:null,ab:710}]},
    {k:403,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:665},{p:'Meersburg',an:695,ab:705},{p:'Mainau',an:725,ab:730},{p:'Unteruhldingen',an:null,ab:740},{p:'Dingelsdorf',an:null,ab:760},{p:'Überlingen',an:775,ab:null}]},
    {k:"4007e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:745},{p:'Unteruhldingen',an:null,ab:760}]},
    {k:"4009e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:795},{p:'Unteruhldingen',an:null,ab:810}]},
    {k:413,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:785},{p:'Meersburg',an:815,ab:825},{p:'Mainau',an:845,ab:850},{p:'Unteruhldingen',an:null,ab:865},{p:'Dingelsdorf',an:null,ab:885},{p:'Überlingen',an:900,ab:null}]},
    {k:151,li:"3",sch:"MS Austria",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:840},{p:'Mainau',an:870,ab:null}]},
    {k:405,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:905},{p:'Meersburg',an:935,ab:945},{p:'Mainau',an:965,ab:970},{p:'Unteruhldingen',an:null,ab:985},{p:'Überlingen',an:1010,ab:null}]},
    {k:415,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:1025},{p:'Meersburg',an:1055,ab:null}]},
    {k:"4000e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:570},{p:'Mainau',an:585,ab:null}]},
    {k:402,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Meersburg',an:null,ab:625},{p:'Konstanz',an:655,ab:null}]},
    {k:"4002e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:620},{p:'Mainau',an:635,ab:null}]},
    {k:"4004e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:670},{p:'Mainau',an:685,ab:null}]},
    {k:412,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:665},{p:'Dingelsdorf',an:null,ab:675},{p:'Unteruhldingen',an:null,ab:695},{p:'Mainau',an:705,ab:710},{p:'Meersburg',an:730,ab:740},{p:'Konstanz',an:770,ab:null}]},
    {k:"4006e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:720},{p:'Mainau',an:735,ab:null}]},
    {k:"4008e",li:"3 e",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:770},{p:'Mainau',an:785,ab:null}]},
    {k:404,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:785},{p:'Dingelsdorf',an:null,ab:795},{p:'Unteruhldingen',an:null,ab:815},{p:'Mainau',an:825,ab:830},{p:'Meersburg',an:850,ab:860},{p:'Konstanz',an:890,ab:null}]},
    {k:152,li:"3",sch:"MS Austria",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:875},{p:'Konstanz',an:905,ab:null}]},
    {k:414,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:905},{p:'Dingelsdorf',an:null,ab:915},{p:'Unteruhldingen',an:null,ab:935},{p:'Mainau',an:950,ab:955},{p:'Meersburg',an:975,ab:985},{p:'Konstanz',an:1015,ab:null}]},
    {k:416,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Meersburg',an:null,ab:1060},{p:'Konstanz',an:1090,ab:null}]},
    {k:406,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:1015},{p:'Dingelsdorf',an:null,ab:1030},{p:'Mainau',an:1050,ab:1055},{p:'Unteruhldingen',an:null,ab:1065},{p:'Meersburg',an:1085,ab:1085},{p:'Konstanz',an:1115,ab:null}]}
  ];

  var SCHEDULE_MAIN_HAUPTSEE = [
    {k:111,li:"1 / 2",sch:"MS Schwaben",bw:true,si:1,stops:[{p:'Konstanz',an:null,ab:545},{p:'Meersburg',an:575,ab:585},{p:'Hagnau',an:600,ab:600},{p:'Immenstaad',an:615,ab:615},{p:'Friedrichshafen',an:645,ab:655},{p:'Langenargen',an:680,ab:680},{p:'Kressbronn',an:700,ab:700},{p:'Nonnenhorn',an:710,ab:710},{p:'Wasserburg',an:720,ab:720},{p:'Lindau',an:740,ab:745},{p:'Bregenz',an:767,ab:null}]},
    {k:131,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Mainau',an:655,ab:655},{p:'Meersburg',an:675,ab:680},{p:'Hagnau',an:695,ab:695},{p:'Immenstaad',an:710,ab:710},{p:'Friedrichshafen',an:740,ab:null}]},
    {k:157,li:"1 / 2",sch:"MS Vorarlberg",bw:true,si:3,stops:[{p:'Mainau',an:915,ab:915},{p:'Meersburg',an:935,ab:940},{p:'Lindau',an:1040,ab:1045},{p:'Bregenz',an:1067,ab:null}]},
    {k:153,li:"1 / 2",sch:"MS Austria",bw:true,si:4,stops:[{p:'Konstanz',an:null,ab:915},{p:'Mainau',an:955,ab:955},{p:'Meersburg',an:975,ab:985},{p:'Hagnau',an:1000,ab:1000},{p:'Immenstaad',an:1015,ab:1015},{p:'Friedrichshafen',an:1045,ab:1055},{p:'Langenargen',an:1080,ab:1080},{p:'Kressbronn',an:1100,ab:1100},{p:'Nonnenhorn',an:1110,ab:1110},{p:'Wasserburg',an:1120,ab:1120},{p:'Lindau',an:1140,ab:1145},{p:'Bregenz',an:1167,ab:null}]},
    {k:135,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Konstanz',an:null,ab:1025},{p:'Mainau',an:1065,ab:1065},{p:'Meersburg',an:1085,ab:1095},{p:'Hagnau',an:1110,ab:1110},{p:'Immenstaad',an:1125,ab:1125},{p:'Friedrichshafen',an:1155,ab:null}]},
    {k:141,li:"2",sch:"MS München",bw:true,si:null,stops:[{p:'Lindau',an:null,ab:595},{p:'Bregenz',an:617,ab:null}]},
    {k:121,li:"2",sch:"MS Baden",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:550},{p:'Langenargen',an:575,ab:575},{p:'Kressbronn',an:595,ab:595},{p:'Nonnenhorn',an:605,ab:605},{p:'Wasserburg',an:615,ab:615},{p:'Lindau',an:635,ab:640},{p:'Bregenz',an:662,ab:null}]},
    {k:123,li:"2",sch:"MS Baden",bw:true,si:null,stops:[{p:'Lindau',an:null,ab:700},{p:'Bregenz',an:722,ab:null}]},
    {k:113,li:"2",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Lindau',an:null,ab:810},{p:'Bregenz',an:832,ab:null}]},
    {k:143,li:"2",sch:"MS München",bw:true,si:2,stops:[{p:'Friedrichshafen',an:null,ab:750},{p:'Langenargen',an:775,ab:775},{p:'Kressbronn',an:795,ab:795},{p:'Nonnenhorn',an:805,ab:805},{p:'Wasserburg',an:815,ab:815},{p:'Lindau',an:835,ab:840},{p:'Bregenz',an:862,ab:null}]},
    {k:115,li:"2",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Lindau',an:null,ab:905},{p:'Bregenz',an:927,ab:null}]},
    {k:125,li:"2",sch:"MS Baden",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:860},{p:'Langenargen',an:885,ab:885},{p:'Kressbronn',an:905,ab:905},{p:'Nonnenhorn',an:915,ab:915},{p:'Wasserburg',an:925,ab:925},{p:'Lindau',an:945,ab:950},{p:'Bregenz',an:972,ab:null}]},
    {k:145,li:"2",sch:"MS München",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:995},{p:'Langenargen',an:1020,ab:1020},{p:'Kressbronn',an:1040,ab:1040},{p:'Nonnenhorn',an:1050,ab:1050},{p:'Wasserburg',an:1060,ab:1060},{p:'Lindau',an:1080,ab:1085},{p:'Bregenz',an:1107,ab:null}]},
    {k:158,li:"2 / 1",sch:"MS Vorarlberg",bw:true,si:3,stops:[{p:'Bregenz',an:null,ab:555},{p:'Lindau',an:577,ab:585},{p:'Meersburg',an:685,ab:695},{p:'Mainau',an:715,ab:715}]},
    {k:150,li:"2 / 1",sch:"MS Austria",bw:true,si:4,stops:[{p:'Bregenz',an:null,ab:560},{p:'Lindau',an:582,ab:590},{p:'Wasserburg',an:610,ab:610},{p:'Nonnenhorn',an:620,ab:620},{p:'Kressbronn',an:630,ab:630},{p:'Langenargen',an:650,ab:650},{p:'Friedrichshafen',an:675,ab:685},{p:'Immenstaad',an:715,ab:715},{p:'Hagnau',an:730,ab:730},{p:'Meersburg',an:745,ab:755},{p:'Mainau',an:780,ab:780},{p:'Konstanz',an:810,ab:null}]},
    {k:142,li:"2",sch:"MS München",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:625},{p:'Lindau',an:647,ab:655},{p:'Wasserburg',an:675,ab:675},{p:'Nonnenhorn',an:685,ab:685},{p:'Kressbronn',an:695,ab:695},{p:'Langenargen',an:715,ab:715},{p:'Friedrichshafen',an:740,ab:null}]},
    {k:122,li:"5",sch:"MS Baden",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:670},{p:'Lindau',an:692,ab:null}]},
    {k:124,li:"5",sch:"MS Baden",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:735},{p:'Lindau',an:757,ab:770},{p:'Wasserburg',an:790,ab:790},{p:'Nonnenhorn',an:800,ab:800},{p:'Kressbronn',an:810,ab:810},{p:'Langenargen',an:830,ab:830},{p:'Friedrichshafen',an:855,ab:null}]},
    {k:112,li:"5",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:780},{p:'Lindau',an:802,ab:null}]},
    {k:114,li:"5",sch:"MS Schwaben",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:840},{p:'Lindau',an:862,ab:null}]},
    {k:144,li:"5",sch:"MS München",bw:true,si:2,stops:[{p:'Bregenz',an:null,ab:870},{p:'Lindau',an:892,ab:900},{p:'Wasserburg',an:920,ab:920},{p:'Nonnenhorn',an:930,ab:930},{p:'Kressbronn',an:940,ab:940},{p:'Langenargen',an:960,ab:960},{p:'Friedrichshafen',an:985,ab:null}]},
    {k:116,li:"2 / 1",sch:"MS Schwaben",bw:true,si:1,stops:[{p:'Bregenz',an:null,ab:940},{p:'Lindau',an:962,ab:970},{p:'Wasserburg',an:990,ab:990},{p:'Nonnenhorn',an:1000,ab:1000},{p:'Kressbronn',an:1010,ab:1010},{p:'Langenargen',an:1030,ab:1030},{p:'Friedrichshafen',an:1055,ab:1060},{p:'Immenstaad',an:1090,ab:1090},{p:'Hagnau',an:1105,ab:1105},{p:'Meersburg',an:1120,ab:1130},{p:'Konstanz',an:1160,ab:null}]},
    {k:126,li:"5",sch:"MS Baden",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:985},{p:'Lindau',an:1007,ab:1015},{p:'Wasserburg',an:1035,ab:1035},{p:'Nonnenhorn',an:1045,ab:1045},{p:'Kressbronn',an:1055,ab:1055},{p:'Langenargen',an:1075,ab:1075},{p:'Friedrichshafen',an:1100,ab:null}]},
    {k:146,li:"5",sch:"MS München",bw:true,si:null,stops:[{p:'Bregenz',an:null,ab:1115},{p:'Lindau',an:1137,ab:null}]},
    {k:130,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:550},{p:'Immenstaad',an:580,ab:580},{p:'Hagnau',an:595,ab:595},{p:'Meersburg',an:610,ab:620},{p:'Mainau',an:645,ab:645}]},
    {k:132,li:"1",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Friedrichshafen',an:null,ab:750},{p:'Immenstaad',an:780,ab:780},{p:'Hagnau',an:795,ab:795},{p:'Meersburg',an:810,ab:820},{p:'Konstanz',an:850,ab:null}]}
  ];

  var SCHEDULE_MAIN_UEBERLINGEN = [
    {k:401,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:500},{p:'Meersburg',an:530,ab:530},{p:'Unteruhldingen',an:null,ab:550},{p:'Mainau',an:560,ab:560},{p:'Dingelsdorf',an:null,ab:580},{p:'Überlingen',an:595,ab:null}]},
    {k:411,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:580},{p:'Meersburg',an:610,ab:620},{p:'Mainau',an:640,ab:645},{p:'Unteruhldingen',an:null,ab:655},{p:'Dingelsdorf',an:null,ab:675},{p:'Überlingen',an:690,ab:null}]},
    {k:"4001e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:675},{p:'Mainau',an:710,ab:715},{p:'Unteruhldingen',an:null,ab:730}]},
    {k:461,li:"3",sch:"MS Vorarlberg",bw:false,si:3,stops:[{p:'Meersburg',an:null,ab:695},{p:'Mainau',an:715,ab:725},{p:'Unteruhldingen',an:null,ab:740},{p:'Dingelsdorf',an:null,ab:760},{p:'Überlingen',an:775,ab:null}]},
    {k:403,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:735},{p:'Meersburg',an:765,ab:775},{p:'Mainau',an:795,ab:800},{p:'Unteruhldingen',an:null,ab:815},{p:'Dingelsdorf',an:null,ab:835},{p:'Überlingen',an:850,ab:null}]},
    {k:"4003e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:820},{p:'Unteruhldingen',an:null,ab:835}]},
    {k:463,li:"3",sch:"MS Vorarlberg",bw:false,si:3,stops:[{p:'Meersburg',an:null,ab:870},{p:'Unteruhldingen',an:null,ab:890}]},
    {k:413,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:835},{p:'Meersburg',an:865,ab:875},{p:'Mainau',an:895,ab:905},{p:'Unteruhldingen',an:null,ab:920},{p:'Dingelsdorf',an:null,ab:940},{p:'Überlingen',an:955,ab:null}]},
    {k:151,li:"3",sch:"MS Austria",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:840},{p:'Mainau',an:870,ab:null}]},
    {k:"4005e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:875},{p:'Unteruhldingen',an:null,ab:890}]},
    {k:"4007e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:960},{p:'Unteruhldingen',an:null,ab:975}]},
    {k:133,li:"3",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Konstanz',an:null,ab:900},{p:'Meersburg',an:930,ab:940},{p:'Mainau',an:960,ab:965}]},
    {k:405,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:980},{p:'Meersburg',an:1010,ab:1020},{p:'Mainau',an:1040,ab:1045},{p:'Unteruhldingen',an:null,ab:1060},{p:'Dingelsdorf',an:null,ab:1080},{p:'Überlingen',an:1095,ab:null}]},
    {k:415,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Konstanz',an:null,ab:1085},{p:'Meersburg',an:1115,ab:1125},{p:'Mainau',an:1145,ab:1145},{p:'Unteruhldingen',an:null,ab:1155},{p:'Überlingen',an:1175,ab:null}]},
    {k:"4000e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:560},{p:'Mainau',an:575,ab:580},{p:'Meersburg',an:610,ab:620},{p:'Konstanz',an:665,ab:null}]},
    {k:402,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:605},{p:'Dingelsdorf',an:null,ab:615},{p:'Unteruhldingen',an:null,ab:635},{p:'Mainau',an:650,ab:660},{p:'Meersburg',an:680,ab:695},{p:'Konstanz',an:725,ab:null}]},
    {k:412,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:700},{p:'Dingelsdorf',an:null,ab:715},{p:'Unteruhldingen',an:null,ab:735},{p:'Mainau',an:750,ab:760},{p:'Meersburg',an:780,ab:790},{p:'Konstanz',an:820,ab:null}]},
    {k:"4002e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:795},{p:'Mainau',an:810,ab:null}]},
    {k:462,li:"3",sch:"MS Vorarlberg",bw:false,si:3,stops:[{p:'Überlingen',an:null,ab:790},{p:'Dingelsdorf',an:null,ab:800},{p:'Unteruhldingen',an:null,ab:820},{p:'Mainau',an:835,ab:840},{p:'Meersburg',an:860,ab:null}]},
    {k:"4004e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:850},{p:'Mainau',an:865,ab:null}]},
    {k:152,li:"3",sch:"MS Austria",bw:false,si:null,stops:[{p:'Mainau',an:null,ab:875},{p:'Konstanz',an:905,ab:null}]},
    {k:404,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:860},{p:'Dingelsdorf',an:null,ab:870},{p:'Unteruhldingen',an:null,ab:890},{p:'Mainau',an:905,ab:910},{p:'Meersburg',an:930,ab:940},{p:'Konstanz',an:970,ab:null}]},
    {k:464,li:"S",sch:"MS Vorarlberg",bw:true,si:3,stops:[{p:'Unteruhldingen',an:null,ab:895},{p:'Mainau',an:910,ab:915},{p:'Meersburg',an:935,ab:940}]},
    {k:"4006e",li:"3E",sch:"MS Insel Mainau",bw:false,si:null,stops:[{p:'Unteruhldingen',an:null,ab:930},{p:'Mainau',an:945,ab:null}]},
    {k:134,li:"3",sch:"MS Graf Zeppelin",bw:true,si:null,stops:[{p:'Mainau',an:null,ab:965},{p:'Konstanz',an:995,ab:null}]},
    {k:414,li:"3",sch:"MS Stuttgart",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:965},{p:'Dingelsdorf',an:null,ab:975},{p:'Unteruhldingen',an:null,ab:995},{p:'Mainau',an:1010,ab:1015},{p:'Meersburg',an:1035,ab:1045},{p:'Konstanz',an:1075,ab:null}]},
    {k:406,li:"3",sch:"MS Überlingen",bw:false,si:null,stops:[{p:'Überlingen',an:null,ab:1105},{p:'Dingelsdorf',an:null,ab:1115},{p:'Mainau',an:1135,ab:1135},{p:'Unteruhldingen',an:null,ab:1150},{p:'Meersburg',an:1170,ab:1175},{p:'Konstanz',an:1205,ab:null}]},
    {k:416,li:"3",sch:"MS Stuttgart",bw:false,si:5,stops:[{p:'Überlingen',an:null,ab:1180},{p:'Dingelsdorf',an:null,ab:1190},{p:'Meersburg',an:1230,ab:1230},{p:'Konstanz',an:1260,ab:null}]}
  ];

  // ---- State ----
  // baseTime: null = Live-Modus (Basis = jetzt). Date-Objekt = manuelle Basis-Zeit.
  // offsetMin: Slider-Versatz von -30 bis +30. Aktuelle Anzeige-Zeit = (baseTime||now) + offsetMin*60s.
  var ST = {
    baseTime: null,
    offsetMin: 0,
    gpsShip: null,
    gpsCoords: null,
    fullscreen: false,
    map: null,
    markers: {},
    liveInterval: null,
    geoWatchId: null,
    onboardOpen: false
  };

  // ---- DOM references (set in init) ----
  var root, mapEl, timeDisplay, liveDot, slider, timeInputs, calBtn, calPopup, fullscreenBtn, onboardBtn, onboardModal, infoBanner;

  // ---- Helpers ----
  function pad(n){ return n < 10 ? '0' + n : '' + n; }
  function isoDateStr(d){ return d.getFullYear() + '-' + pad(d.getMonth()+1) + '-' + pad(d.getDate()); }
  function fmtTimeDisplay(d){
    return d.getDate() + '.' + (d.getMonth()+1) + '.' + d.getFullYear() + ' ' + pad(d.getHours()) + ':' + pad(d.getMinutes()) + ' Uhr';
  }
  function fmtMin(m){
    if (m === null || m === undefined) return '–';
    var h = Math.floor(m/60), mm = m%60;
    return pad(h) + ':' + pad(mm);
  }
  function esc(s){
    if (s == null) return '';
    return String(s).replace(/[&]/g,'&amp;').replace(/[<]/g,'&lt;').replace(/[>]/g,'&gt;').replace(/["]/g,'&quot;');
  }

  // ---- Season detection ----
  function getSeason(d){
    var m = d.getMonth() + 1, day = d.getDate();
    // Nebensaison: 3.4. – 13.5. UND 14.9. – 18.10.
    if (m === 4 && day >= 3) return 'off';
    if (m === 5 && day <= 13) return 'off';
    if (m === 9 && day >= 14) return 'off';
    if (m === 10 && day <= 18) return 'off';
    // Hauptsaison: 14.5. – 13.9.
    if (m === 5 && day >= 14) return 'main';
    if (m === 6 || m === 7 || m === 8) return 'main';
    if (m === 9 && day <= 13) return 'main';
    return null;
  }

  function getActiveSchedules(season){
    if (season === 'off') return SCHEDULE_OFF_HAUPTSEE.concat(SCHEDULE_OFF_UEBERLINGEN);
    if (season === 'main') return SCHEDULE_MAIN_HAUPTSEE.concat(SCHEDULE_MAIN_UEBERLINGEN);
    return [];
  }

  function getCurrentTime(){
    var base = ST.baseTime ? ST.baseTime.getTime() : Date.now();
    return new Date(base + ST.offsetMin * 60000);
  }
  function isLiveMode(){ return ST.baseTime === null && ST.offsetMin === 0; }

  // ---- Sonderinfo logic ----
  function applySonderinfo(course, date){
    var si = course.si;
    if (si === null || si === undefined || (typeof si === 'string' && !si.trim())) return { show: true, text: null };
    var season = getSeason(date);
    var m = date.getMonth() + 1, day = date.getDate();
    var wd = date.getDay();
    var isSatSun = (wd === 0 || wd === 6);
    var isThuFriSatSun = (wd === 0 || wd === 4 || wd === 5 || wd === 6);
    var isHoliday = HOLIDAYS_2026.indexOf(isoDateStr(date)) >= 0;
    var info = { show: true, text: null };

    if (season === 'off') {
      if (si === 1) {
        var inWindow = (m === 9 && day >= 14) || (m === 10 && day <= 4);
        info.show = inWindow && isSatSun;
        info.text = 'Nur 14.9.–4.10., Sa/So';
      }
    } else if (season === 'main') {
      if (si === 1) {
        if (m === 7 && day === 18) info.text = 'Heute (18.7.): Umstieg in Friedrichshafen';
      } else if (si === 2) {
        if (m === 7 && day === 18) info.show = false;
        else info.text = 'Fährt nicht am 18.7.';
      } else if (si === 3) {
        var inEarly = (m === 5 && day >= 14) || m === 6 || (m === 7 && day <= 3);
        var inLate = (m === 7 && day >= 4) || m === 8 || (m === 9 && day <= 13);
        if (inEarly) { info.show = isSatSun || isHoliday; info.text = '14.5.–3.7.: nur Sa/So + Feiertage'; }
        else if (inLate) { info.show = isThuFriSatSun; info.text = '4.7.–13.9.: Do–So'; }
      } else if (si === 4) {
        if (m === 8 && day === 8) info.text = 'Heute (8.8.): Umstieg in Lindau';
      } else if (si === 5) {
        if (m === 8 && day === 8) info.show = false;
        else info.text = 'Fährt nicht am 8.8.';
      }
    }
    return info;
  }

  // ---- Wasser-Routing ----
  // Strategie: Schaue Route portA→portB in ROUTES nach. Wenn nicht vorhanden,
  // versuche umgekehrte Richtung (portB→portA) und drehe Punktliste um.
  // Schiffe fahren dann in geraden Linien zwischen den aufeinanderfolgenden Punkten.
  function getWaterWaypoints(portA, portB){
    var key = portA + '|' + portB;
    if (ROUTES[key]) return ROUTES[key];
    var revKey = portB + '|' + portA;
    if (ROUTES[revKey]) {
      var src = ROUTES[revKey];
      var out = [];
      for (var i = src.length - 1; i >= 0; i--) out.push(src[i]);
      return out;
    }
    return null;
  }

  function interpolateAlongWaypoints(waypoints, t){
    if (!waypoints || waypoints.length < 2) return null;
    // Gesamtdistanz berechnen (planar, ausreichend für kleine Distanzen am Bodensee)
    var segs = [];
    var total = 0;
    for (var i = 0; i < waypoints.length - 1; i++) {
      var a = waypoints[i], b = waypoints[i+1];
      var dlat = b[0] - a[0], dlng = b[1] - a[1];
      var d = Math.sqrt(dlat*dlat + dlng*dlng);
      segs.push({ a: a, b: b, d: d });
      total += d;
    }
    if (total === 0) return waypoints[0].slice();
    var target = t * total;
    var acc = 0;
    for (var j = 0; j < segs.length; j++) {
      if (acc + segs[j].d >= target) {
        var lt = (target - acc) / segs[j].d;
        return [
          segs[j].a[0] + lt * (segs[j].b[0] - segs[j].a[0]),
          segs[j].a[1] + lt * (segs[j].b[1] - segs[j].a[1])
        ];
      }
      acc += segs[j].d;
    }
    return waypoints[waypoints.length-1].slice();
  }

  // Hauptfunktion: liefert lat/lng für ein Schiff zwischen portA und portB bei Fortschritt t∈[0,1]
  function interpolateRoute(portA, portB, t){
    var wps = getWaterWaypoints(portA, portB);
    if (wps && wps.length >= 2) {
      return interpolateAlongWaypoints(wps, t);
    }
    // Fallback: gerade Linie (Express-Kurse über offenes Wasser)
    var pa = PORTS[portA], pb = PORTS[portB];
    if (!pa || !pb) return null;
    return [pa[0] + t * (pb[0] - pa[0]), pa[1] + t * (pb[1] - pa[1])];
  }

  // Backwards-Kompatibilität (falls noch irgendwo aufgerufen)
  function interpolateDirect(portA, portB, t){
    return interpolateRoute(portA, portB, t);
  }

  // ---- Ship position calculation ----
  function shipPosition(course, date){
    var stops = course.stops;
    if (!stops || stops.length < 1) return null;
    var nowMin = date.getHours() * 60 + date.getMinutes();
    var first = stops[0], last = stops[stops.length - 1];
    var firstT = first.ab !== null ? first.ab : first.an;
    var lastT = last.an !== null ? last.an : last.ab;
    if (firstT === null || lastT === null) return null;
    if (nowMin < firstT || nowMin > lastT) return null;

    for (var i = 0; i < stops.length; i++) {
      var s = stops[i];
      // Docked check (ship is at port)
      if (s.an !== null && s.ab !== null && nowMin >= s.an && nowMin <= s.ab) {
        var pcoords = PORTS[s.p];
        if (!pcoords) continue;
        return { lat: pcoords[0], lng: pcoords[1], status: 'docked', port: s.p, an: s.an, ab: s.ab };
      }
      if (i + 1 < stops.length) {
        var nxt = stops[i + 1];
        var dep = s.ab !== null ? s.ab : s.an;
        var arr = nxt.an !== null ? nxt.an : nxt.ab;
        if (dep === null || arr === null || arr <= dep) continue;
        if (nowMin >= dep && nowMin <= arr) {
          var pa = PORTS[s.p], pb = PORTS[nxt.p];
          if (!pa || !pb) continue;
          var t = (nowMin - dep) / (arr - dep);
          // Wasser-Routing: nutzt Wegpunkte für benachbarte Hafenpaare,
          // sonst gerade Linie über offenes Wasser
          var coords = interpolateRoute(s.p, nxt.p, t);
          if (!coords) coords = [pa[0] + t * (pb[0] - pa[0]), pa[1] + t * (pb[1] - pa[1])];
          return { lat: coords[0], lng: coords[1], status: 'cruising', from: s.p, to: nxt.p, t: t, eta: arr };
        }
      }
    }
    return null;
  }

  // ---- Markup ----
  function buildMarkup(){
    var fsIcon = '<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><polyline points="4 9 4 4 9 4"/><polyline points="20 9 20 4 15 4"/><polyline points="4 15 4 20 9 20"/><polyline points="20 15 20 20 15 20"/></svg>';
    return ''
      + '<div class="bsw-header">'
      +   '<div class="bsw-header-spacer"></div>'
      +   '<div class="bsw-header-title">' + esc(WIDGET_TITLE) + '</div>'
      +   '<button class="bsw-fs-btn" title="Vollbild" aria-label="Vollbild">' + fsIcon + '</button>'
      + '</div>'
      + '<div class="bsw-timebar">'
      +   '<span class="bsw-live-dot" data-bsw-livedot></span>'
      +   '<span class="bsw-live-label" data-bsw-livelabel>Live</span>'
      +   '<span class="bsw-time-display" data-bsw-timedisplay></span>'
      + '</div>'
      + '<div class="bsw-map-container">'
      +   '<div class="bsw-map" data-bsw-map></div>'
      +   '<div class="bsw-info" data-bsw-info style="display:none"></div>'
      + '</div>'
      + '<div class="bsw-footer">'
      +   '<div class="bsw-time-fields" data-bsw-tfwrap>'
      +     '<input type="text" inputmode="numeric" maxlength="2" placeholder="TT" class="bsw-tf" data-bsw-tf="d">'
      +     '<span class="bsw-tf-sep">.</span>'
      +     '<input type="text" inputmode="numeric" maxlength="2" placeholder="MM" class="bsw-tf" data-bsw-tf="m">'
      +     '<span class="bsw-tf-sep">.</span>'
      +     '<input type="text" inputmode="numeric" maxlength="4" placeholder="JJJJ" class="bsw-tf bsw-tf-year" data-bsw-tf="y" value="2026">'
      +     '<span class="bsw-tf-sep" style="margin-left:6px">&nbsp;</span>'
      +     '<input type="text" inputmode="numeric" maxlength="2" placeholder="HH" class="bsw-tf" data-bsw-tf="h">'
      +     '<span class="bsw-tf-sep">:</span>'
      +     '<input type="text" inputmode="numeric" maxlength="2" placeholder="MM" class="bsw-tf" data-bsw-tf="mn">'
      +     '<button class="bsw-cal-btn" data-bsw-calbtn title="Kalender öffnen" aria-label="Kalender">📅</button>'
      +     '<div class="bsw-cal-popup" data-bsw-calpopup style="display:none"></div>'
      +   '</div>'
      +   '<div class="bsw-slider-wrap">'
      +     '<input type="range" min="-30" max="30" step="1" value="0" class="bsw-slider" data-bsw-slider>'
      +     '<div class="bsw-slider-labels"><span>- 30 min</span><span data-bsw-livebtn title="Zurück zu Live-Modus">Live</span><span>+ 30 min</span></div>'
      +   '</div>'
      +   '<button class="bsw-onboard-btn" data-bsw-onboardbtn>⚓ Ich bin an Bord</button>'
      + '</div>'
      + '<div class="bsw-onboard-modal" data-bsw-onboardmodal style="display:none"></div>'
    ;
  }

  // ---- UI helpers ----
  function showError(msg){ if(!infoBanner) return; infoBanner.textContent = msg; infoBanner.className = 'bsw-error'; infoBanner.style.display = 'block'; }
  function showInfo(msg){ if(!infoBanner) return; infoBanner.textContent = msg; infoBanner.className = 'bsw-info'; infoBanner.style.display = 'block'; }
  function hideBanner(){ if(infoBanner) infoBanner.style.display = 'none'; }

  function updateTimeDisplay(d){
    timeDisplay.textContent = fmtTimeDisplay(d);
    var liveActive = isLiveMode();
    liveDot.style.display = liveActive ? '' : 'none';
    document.querySelector('[data-bsw-livelabel]').style.display = liveActive ? '' : 'none';
  }

  function buildShipIconHtml(shipName, offsetIdx, isGps, facing){
    var ship = SHIPS[shipName];
    var marginLeft = (offsetIdx || 0) * 22;
    var gpsClass = isGps ? ' bsw-gps' : '';
    // facing: 'west' → Icon horizontal spiegeln (PNG-Bug zeigt naturgemäß nach rechts/Osten)
    var flipClass = (facing === 'west') ? ' bsw-flip' : '';
    if (ship && ship.file) {
      return '<div class="bsw-ship-icon' + gpsClass + flipClass + '" style="margin-left:' + marginLeft + 'px"><img src="' + ship.file + '" alt="' + esc(shipName) + '" onerror="this.style.display=\'none\';this.parentNode.innerHTML+=\'<div class=&quot;bsw-ship-fallback&quot; style=&quot;background:' + (ship.color || '#666') + '&quot;>' + esc(shipName.replace('MS ', '')).slice(0,3) + '&lt;/div&gt;\'"></div>';
    }
    var initials = shipName.replace('MS ', '').slice(0, 3);
    return '<div class="bsw-ship-icon' + gpsClass + flipClass + '" style="margin-left:' + marginLeft + 'px"><div class="bsw-ship-fallback" style="background:' + ((ship && ship.color) || '#666') + '">' + esc(initials) + '</div></div>';
  }

  // Bestimmt die Fahrtrichtung (für Icon-Spiegelung) anhand der Längengrade
  // von Start- und Zielhafen. Ziel-lng < Start-lng → 'west', sonst 'east'.
  function facingFromPorts(fromPort, toPort){
    if (!fromPort || !toPort) return 'east';
    var pa = PORTS[fromPort], pb = PORTS[toPort];
    if (!pa || !pb) return 'east';
    return (pb[1] < pa[1]) ? 'west' : 'east';
  }

  function buildPopupHtml(course, pos, info){
    var lines = [];
    lines.push('<div class="bsw-popup-title">🚢 ' + esc(course.sch || 'Unbekannt') + '</div>');
    lines.push('<div class="bsw-popup-row"><strong>Kurs:</strong> ' + esc(course.k) + '</div>');
    if (pos.status === 'docked') {
      // Vorgänger- und Nachfolge-Hafen innerhalb dieses Kurses suchen
      var prevPort = pos.prevPort || null;
      var prevArr  = (pos.prevArr != null) ? pos.prevArr : null;
      var nextPort = null;
      for (var sIdx = 0; sIdx < course.stops.length; sIdx++) {
        if (course.stops[sIdx].p === pos.port) {
          if (!prevPort && sIdx > 0) {
            prevPort = course.stops[sIdx - 1].p;
            prevArr  = course.stops[sIdx].an;
          }
          if (sIdx + 1 < course.stops.length) {
            nextPort = course.stops[sIdx + 1].p;
          }
          break;
        }
      }
      if (prevPort) {
        lines.push('<div class="bsw-popup-row"><strong>Von:</strong> ' + esc(prevPort) + (prevArr !== null ? ' (' + fmtMin(prevArr) + ')' : '') + '</div>');
      }
      var dockTime = (pos.ab !== null) ? pos.ab : pos.an;
      var depTimeStr = (pos.ab !== null && pos.ab !== pos.an) ? 'Abfahrt ' + fmtMin(pos.ab) : fmtMin(dockTime);
      var nachLabel = nextPort ? ' nach ' + esc(nextPort) : '';
      lines.push('<div class="bsw-popup-row"><strong>📍 Liegt in:</strong> ' + esc(pos.port) + ' (' + depTimeStr + nachLabel + ')</div>');
    } else {
      // Cruising — find the matching segment's departure time for "from" port
      var fromTime = null;
      var toTime = pos.eta;
      for (var k = 0; k < course.stops.length - 1; k++) {
        if (course.stops[k].p === pos.from && course.stops[k+1].p === pos.to) {
          fromTime = (course.stops[k].ab !== null) ? course.stops[k].ab : course.stops[k].an;
          toTime = (course.stops[k+1].an !== null) ? course.stops[k+1].an : course.stops[k+1].ab;
          break;
        }
      }
      lines.push('<div class="bsw-popup-row"><strong>Von:</strong> ' + esc(pos.from) + (fromTime !== null ? ' (' + fmtMin(fromTime) + ')' : '') + '</div>');
      lines.push('<div class="bsw-popup-row"><strong>Nach:</strong> ' + esc(pos.to) + (toTime !== null ? ' (' + fmtMin(toTime) + ')' : '') + '</div>');
    }
    // Bewirtung: Symbol pro Kurs+Saison (aus BSB-PDFs)
    var season = getSeason(getCurrentTime());
    var bewMap = (season === 'main') ? BEWIRTUNG_MAIN : BEWIRTUNG_OFF;
    var bewType = bewMap[String(course.k)];
    if (bewType === 'besteck') {
      lines.push('<div class="bsw-popup-row"><strong>Bewirtung:</strong> ' + SVG_BESTECK + '</div>');
    } else if (bewType === 'glas') {
      lines.push('<div class="bsw-popup-row"><strong>Bewirtung:</strong> ' + SVG_GLAS + '</div>');
    }
    if (info && info.text) {
      lines.push('<div class="bsw-popup-info">ℹ️ ' + esc(info.text) + '</div>');
    }
    if (pos.gps) {
      lines.push('<div class="bsw-popup-info">📡 Position via GPS (An Bord)</div>');
    }
    return lines.join('');
  }

  // ---- Hafen-Popup: Abfahrten der nächsten 30 Min. ----
  function buildPortDeparturesHtml(portName){
    var now = getCurrentTime();
    var nowMin = now.getHours() * 60 + now.getMinutes();
    var windowEnd = nowMin + 30;
    var season = getSeason(now);
    var rows = [];
    if (season) {
      var schedules = getActiveSchedules(season);
      for (var i = 0; i < schedules.length; i++) {
        var c = schedules[i];
        if (!c.stops || !c.stops.length) continue;
        if (!applySonderinfo(c, now).show) continue;
        for (var s = 0; s < c.stops.length; s++) {
          var stop = c.stops[s];
          if (stop.p !== portName) continue;
          var dep = stop.ab;
          if (dep === null || dep < nowMin || dep > windowEnd) continue;
          // Folgende Haupt-Häfen entlang der Route sammeln.
          // Ausnahme: MS Insel Mainau bedient Unteruhldingen — fuer dieses Schiff
          // wird Unteruhldingen zusaetzlich zur MAIN_PORTS-Liste aufgenommen.
          var nachList = [];
          var allowExtra = (c.sch === 'MS Insel Mainau');
          for (var k = s + 1; k < c.stops.length; k++) {
            var pn = c.stops[k].p;
            if (MAIN_PORTS[pn] || (allowExtra && pn === 'Unteruhldingen')) nachList.push(pn);
          }
          var nextStop = (s + 1 < c.stops.length) ? c.stops[s + 1].p : null;
          rows.push({ dep: dep, ship: c.sch || 'Unbekannt', kurs: c.k, nach: nachList, nextStop: nextStop });
          break; // pro Kurs nur einmal listen (auch wenn Hafen mehrfach im Stops-Array vorkäme)
        }
      }
    }
    rows.sort(function(a,b){ return a.dep - b.dep; });

    var html = '<div class="bsw-port-popup">'
             + '<div class="bsw-port-popup-title">' + esc(portName) + '</div>';
    if (!rows.length) {
      html += '<div class="bsw-port-popup-empty">Keine Abfahrten in den nächsten 30 Min.</div>';
    } else {
      for (var r = 0; r < rows.length; r++) {
        var row = rows[r];
        var facing = facingFromPorts(portName, row.nextStop);
        var iconHtml = buildShipIconHtml(row.ship, 0, false, facing);
        var nachInner;
        if (row.nach.length) {
          nachInner = '<div class="bsw-port-popup-nach-label">Nach:</div>'
                    + '<div class="bsw-port-popup-nach-list">' + esc(row.nach.join('; ')) + '</div>';
        } else {
          nachInner = '<div class="bsw-port-popup-nach-label">Nach:</div>'
                    + '<div class="bsw-port-popup-nach-list" style="color:#888;font-style:italic">Endhaltestelle</div>';
        }
        html += '<div class="bsw-port-popup-row">'
              +   '<div>' + iconHtml + '</div>'
              +   '<div class="bsw-port-popup-ship">'
              +     '<div class="bsw-port-popup-name">' + esc(row.ship) + '</div>'
              +     '<div class="bsw-port-popup-kurs">Kurs: ' + esc(row.kurs) + '</div>'
              +   '</div>'
              +   '<div class="bsw-port-popup-time">' + fmtMin(row.dep) + '</div>'
              +   '<div class="bsw-port-popup-nach">' + nachInner + '</div>'
              + '</div>';
      }
    }
    html += '</div>';
    return html;
  }

  // ---- Rendering ----
  function renderShips(){
    var now = getCurrentTime();
    updateTimeDisplay(now);

    var season = getSeason(now);
    if (!season) {
      // Clear all markers
      for (var k in ST.markers) { ST.map.removeLayer(ST.markers[k]); }
      ST.markers = {};
      showInfo('Kein Fahrplan aktiv (Saison: 3.4.–18.10.). Aktuelles Datum: ' + fmtTimeDisplay(now).split(' ')[0]);
      renderOnboardModal([]);
      return;
    }
    hideBanner();

    var schedules = getActiveSchedules(season);
    var positions = [];
    var shipsHandled = {};

    for (var i = 0; i < schedules.length; i++) {
      var course = schedules[i];
      var info = applySonderinfo(course, now);
      if (!info.show) continue;
      var pos = shipPosition(course, now);
      if (!pos) continue;
      var id = (course.k != null ? course.k : 'idx_' + i) + '__' + (course.sch || '?');

      // GPS override for active ship
      if (ST.gpsShip === course.sch && ST.gpsCoords) {
        pos.lat = ST.gpsCoords[0];
        pos.lng = ST.gpsCoords[1];
        pos.gps = true;
        pos.status = 'gps';
      }

      positions.push({ id: id, course: course, pos: pos, info: info });
      shipsHandled[course.sch] = true;
    }

    // Schiff "Liegt in" zwischen Kursen: wenn Schiff X gerade keinen aktiven Kurs hat,
    // aber zuletzt einen Kurs in Hafen P beendet hat UND ein zukünftiger Kurs ab P startet,
    // zeige es als Wartend am Hafen.
    var nowMin = now.getHours() * 60 + now.getMinutes();
    var allShipNames = {};
    for (var i2 = 0; i2 < schedules.length; i2++) if (schedules[i2].sch) allShipNames[schedules[i2].sch] = true;
    for (var shipName in allShipNames) {
      if (shipsHandled[shipName]) continue;
      // Letzten beendeten Kurs finden
      var bestEndPort = null, bestEndTime = -1, bestEndCourse = null;
      for (var i3 = 0; i3 < schedules.length; i3++) {
        var c3 = schedules[i3];
        if (c3.sch !== shipName) continue;
        if (!applySonderinfo(c3, now).show) continue;
        if (!c3.stops || !c3.stops.length) continue;
        var last3 = c3.stops[c3.stops.length - 1];
        var lastT3 = (last3.an !== null) ? last3.an : last3.ab;
        if (lastT3 === null || lastT3 > nowMin) continue;
        if (lastT3 > bestEndTime) { bestEndTime = lastT3; bestEndPort = last3.p; bestEndCourse = c3; }
      }
      if (bestEndPort === null) continue;
      // Nächste Abfahrt vom selben Hafen suchen
      var nextC = null;
      for (var i4 = 0; i4 < schedules.length; i4++) {
        var c4 = schedules[i4];
        if (c4.sch !== shipName) continue;
        if (!applySonderinfo(c4, now).show) continue;
        if (!c4.stops || !c4.stops.length) continue;
        var first4 = c4.stops[0];
        if (first4.p !== bestEndPort) continue;
        var firstT4 = (first4.ab !== null) ? first4.ab : first4.an;
        if (firstT4 === null || firstT4 <= nowMin) continue;
        if (!nextC || firstT4 < nextC.t) nextC = { course: c4, t: firstT4 };
      }
      if (!nextC) continue;
      // Nur anzeigen wenn nächster Kurs innerhalb von 6 Stunden startet
      if (nextC.t - nowMin > 360) continue;
      var pcoords2 = PORTS[bestEndPort];
      if (!pcoords2) continue;
      // Vorhergehender Hafen aus dem zuletzt beendeten Kurs (für "Von:"-Zeile im Popup)
      var prevPortWait = null, prevArrWait = null;
      if (bestEndCourse && bestEndCourse.stops && bestEndCourse.stops.length >= 2) {
        prevPortWait = bestEndCourse.stops[bestEndCourse.stops.length - 2].p;
        prevArrWait = bestEndTime;
      }
      var waitPos = { lat: pcoords2[0], lng: pcoords2[1], status: 'docked', port: bestEndPort, an: bestEndTime, ab: nextC.t, waiting: true, nextKurs: nextC.course.k, prevPort: prevPortWait, prevArr: prevArrWait };
      if (ST.gpsShip === shipName && ST.gpsCoords) {
        waitPos.lat = ST.gpsCoords[0]; waitPos.lng = ST.gpsCoords[1]; waitPos.gps = true; waitPos.status = 'gps';
      }
      positions.push({
        id: 'wait__' + shipName + '__' + bestEndPort,
        course: nextC.course,
        pos: waitPos,
        info: { show: true, text: 'Liegt in ' + bestEndPort + ' — nächste Abfahrt ' + fmtMin(nextC.t) + ' Uhr (Kurs ' + nextC.course.k + ')' }
      });
    }

    renderOnboardModal(positions);

    // Schiffe im selben Hafen: STRENG HORIZONTAL nebeneinander,
    // symmetrisch um den Hafenpunkt nach Osten/Westen versetzt.
    // 1. Schiff = am Hafenpunkt, 2. = +1 nach Osten, 3. = -1 nach Westen,
    // 4. = +2 Osten, 5. = -2 Westen, ... — alle auf gleicher Latitude.
    var portList = {};
    for (var jp = 0; jp < positions.length; jp++) {
      var ppRef = positions[jp].pos;
      if (ppRef.status === 'docked') {
        (portList[ppRef.port] = portList[ppRef.port] || []).push(jp);
      }
    }
    var DOCK_LNG_STEP = 0.0014; // ~110m östlicher Schritt zwischen benachbarten Schiffen
    var seen = {};

    for (var j = 0; j < positions.length; j++) {
      var p = positions[j];
      var pp = p.pos;
      var courseId = p.id;
      seen[courseId] = true;

      var lat = pp.lat, lng = pp.lng;
      if (pp.status === 'docked') {
        var siblings = portList[pp.port];
        if (siblings && siblings.length > 0) {
          var idx = siblings.indexOf(j);
          // Versatz-Reihenfolge: +1, -1, +2, -2, +3, -3, ... — der Hafenpunkt
          // selbst bleibt frei, damit er stets sichtbar und anklickbar ist.
          var offsetSteps;
          if (idx % 2 === 0) offsetSteps = (idx / 2) + 1;       // 0→+1, 2→+2, 4→+3
          else               offsetSteps = -((idx + 1) / 2);    // 1→-1, 3→-2, 5→-3
          // Latitude bleibt am Hafenpunkt — streng horizontal
          lat = pp.lat;
          lng = pp.lng + offsetSteps * DOCK_LNG_STEP;
        }
      }

      // Fahrtrichtung bestimmen, damit das Icon in Fahrtrichtung gespiegelt werden kann
      var faceFrom = null, faceTo = null;
      if (pp.status === 'cruising') {
        faceFrom = pp.from; faceTo = pp.to;
      } else if (pp.status === 'docked') {
        // nächster Hafen aus course.stops nach pp.port
        for (var stIdx = 0; stIdx < p.course.stops.length; stIdx++) {
          if (p.course.stops[stIdx].p === pp.port && stIdx + 1 < p.course.stops.length) {
            faceFrom = pp.port; faceTo = p.course.stops[stIdx + 1].p; break;
          }
        }
      }
      var iconHtml = buildShipIconHtml(p.course.sch, 0, pp.gps, facingFromPorts(faceFrom, faceTo));
      var popupHtml = buildPopupHtml(p.course, pp, p.info);
      var iconOpts = { html: iconHtml, iconSize: [32, 22], iconAnchor: [16, 11], className: 'bsw-ship-divicon' };

      if (ST.markers[courseId]) {
        ST.markers[courseId].setLatLng([lat, lng]);
        ST.markers[courseId].setIcon(L.divIcon(iconOpts));
        ST.markers[courseId].setPopupContent(popupHtml);
      } else {
        ST.markers[courseId] = L.marker([lat, lng], { icon: L.divIcon(iconOpts), riseOnHover: true })
          .addTo(ST.map).bindPopup(popupHtml);
      }
    }

    // Remove markers no longer active
    for (var id in ST.markers) {
      if (!seen[id]) {
        ST.map.removeLayer(ST.markers[id]);
        delete ST.markers[id];
      }
    }
  }

  // ---- Onboard modal ----
  function renderOnboardModal(positions){
    if (!ST.onboardOpen) { onboardModal.style.display = 'none'; return; }
    onboardModal.style.display = '';
    var unique = {};
    for (var i = 0; i < positions.length; i++) {
      var sch = positions[i].course.sch;
      if (!unique[sch]) unique[sch] = positions[i];
    }
    var names = Object.keys(unique).sort();
    var html = '<div class="bsw-onboard-title">Auf welchem Schiff sind Sie?</div>';
    if (names.length === 0) {
      html += '<div class="bsw-empty">Keine aktiven Schiffe zur Zeit.</div>';
    } else {
      for (var k = 0; k < names.length; k++) {
        var name = names[k];
        var ship = SHIPS[name];
        var iconImg = ship && ship.file ? '<img src="' + ship.file + '">' : '';
        var activeCls = (ST.gpsShip === name) ? ' bsw-active' : '';
        html += '<div class="bsw-onboard-item' + activeCls + '" data-bsw-onboard-ship="' + esc(name) + '">' + iconImg + '<span>' + esc(name) + '</span></div>';
      }
      if (ST.gpsShip) {
        html += '<div class="bsw-onboard-item" data-bsw-onboard-ship="">↩ GPS deaktivieren</div>';
      }
    }
    onboardModal.innerHTML = html;
    var items = onboardModal.querySelectorAll('[data-bsw-onboard-ship]');
    for (var m = 0; m < items.length; m++) {
      items[m].addEventListener('click', function(e){
        var ship = e.currentTarget.getAttribute('data-bsw-onboard-ship');
        selectOnboardShip(ship);
      });
    }
  }

  function selectOnboardShip(name){
    if (!name || ST.gpsShip === name) {
      // Deactivate
      if (ST.geoWatchId !== null && navigator.geolocation) {
        navigator.geolocation.clearWatch(ST.geoWatchId);
      }
      ST.gpsShip = null;
      ST.gpsCoords = null;
      ST.geoWatchId = null;
      onboardBtn.classList.remove('bsw-active');
      onboardBtn.textContent = '⚓ Ich bin an Bord';
    } else {
      ST.gpsShip = name;
      if (navigator.geolocation) {
        ST.geoWatchId = navigator.geolocation.watchPosition(
          function(p){ ST.gpsCoords = [p.coords.latitude, p.coords.longitude]; renderShips(); },
          function(err){ showError('GPS verweigert: ' + (err.message || 'unbekannt')); ST.gpsShip = null; },
          { enableHighAccuracy: true, maximumAge: 5000 }
        );
      } else {
        showError('Geolocation nicht verfügbar');
        ST.gpsShip = null;
      }
      onboardBtn.classList.add('bsw-active');
      onboardBtn.textContent = '📡 An Bord: ' + name;
    }
    ST.onboardOpen = false;
    onboardModal.style.display = 'none';
    renderShips();
  }

  // ---- Event handlers ----
  function onSliderChange(e){
    var v = parseInt(e.target.value, 10);
    ST.offsetMin = v;
    // baseTime bleibt erhalten: bei Manual-Zeit ist Slider relativ dazu;
    // bei Live (baseTime=null) ist Slider relativ zu jetzt.
    renderShips();
  }

  function resetToLive(){
    ST.baseTime = null;
    ST.offsetMin = 0;
    if (slider) slider.value = 0;
    // Clear time fields
    if (timeInputs) {
      timeInputs.d.value = ''; timeInputs.m.value = ''; timeInputs.h.value = ''; timeInputs.mn.value = '';
      timeInputs.y.value = '2026';
      var tfWrap = root.querySelector('[data-bsw-tfwrap]');
      if (tfWrap) tfWrap.classList.remove('bsw-invalid');
    }
    renderShips();
  }

  function readTimeFields(){
    var d = parseInt(timeInputs.d.value, 10);
    var m = parseInt(timeInputs.m.value, 10);
    var y = parseInt(timeInputs.y.value, 10);
    var h = parseInt(timeInputs.h.value, 10);
    var mn = parseInt(timeInputs.mn.value, 10);
    return { d: d, m: m, y: y, h: h, mn: mn };
  }

  function writeTimeFields(date){
    timeInputs.d.value = date.getDate();
    timeInputs.m.value = date.getMonth() + 1;
    timeInputs.y.value = date.getFullYear();
    timeInputs.h.value = date.getHours();
    timeInputs.mn.value = pad(date.getMinutes());
  }

  function onTimeFieldsChange(){
    var v = readTimeFields();
    var tfWrap = root.querySelector('[data-bsw-tfwrap]');
    // Wenn alles leer → Live-Modus
    if (isNaN(v.d) && isNaN(v.m) && isNaN(v.h) && isNaN(v.mn)) {
      ST.baseTime = null; ST.offsetMin = 0;
      if (slider) slider.value = 0;
      tfWrap.classList.remove('bsw-invalid');
      renderShips();
      return;
    }
    // Wenn nur Uhrzeit eingegeben (kein Tag): nimm heute
    var today = new Date();
    if (isNaN(v.d)) v.d = today.getDate();
    if (isNaN(v.m)) v.m = today.getMonth() + 1;
    if (isNaN(v.y)) v.y = today.getFullYear();
    // Wenn nur Datum eingegeben (keine Uhrzeit): nimm 12:00
    if (isNaN(v.h)) v.h = 12;
    if (isNaN(v.mn)) v.mn = 0;
    // Validate
    if (v.d < 1 || v.d > 31 || v.m < 1 || v.m > 12 || v.h < 0 || v.h > 23 || v.mn < 0 || v.mn > 59) {
      tfWrap.classList.add('bsw-invalid');
      return;
    }
    var date = new Date(v.y, v.m - 1, v.d, v.h, v.mn, 0);
    if (isNaN(date.getTime()) || date.getDate() !== v.d) {
      tfWrap.classList.add('bsw-invalid');
      return;
    }
    tfWrap.classList.remove('bsw-invalid');
    // Fülle leere Felder zurück damit der Nutzer sieht was angewendet wurde
    if (!timeInputs.d.value) timeInputs.d.value = v.d;
    if (!timeInputs.m.value) timeInputs.m.value = v.m;
    if (!timeInputs.y.value) timeInputs.y.value = v.y;
    if (!timeInputs.h.value) timeInputs.h.value = v.h;
    if (!timeInputs.mn.value) timeInputs.mn.value = pad(v.mn);
    // Slider-Mitte = diese Zeit, Slider auf 0
    ST.baseTime = date;
    ST.offsetMin = 0;
    if (slider) slider.value = 0;
    renderShips();
  }

  // ---- Mini-Kalender ----
  var CAL_STATE = { year: 2026, month: 5, selectedDay: null };  // month 1-based

  function openCalendar(){
    // Init from current time fields or today
    var v = readTimeFields();
    if (!isNaN(v.y) && !isNaN(v.m)) { CAL_STATE.year = v.y; CAL_STATE.month = v.m; CAL_STATE.selectedDay = isNaN(v.d) ? null : v.d; }
    else {
      var now = new Date();
      CAL_STATE.year = now.getFullYear();
      CAL_STATE.month = now.getMonth() + 1;
      CAL_STATE.selectedDay = now.getDate();
    }
    renderCalendar();
    calPopup.style.display = '';
  }

  function closeCalendar(){ calPopup.style.display = 'none'; }

  function renderCalendar(){
    var MONTHS = ['Januar','Februar','März','April','Mai','Juni','Juli','August','September','Oktober','November','Dezember'];
    var WD = ['Mo','Di','Mi','Do','Fr','Sa','So'];
    var y = CAL_STATE.year, m = CAL_STATE.month;
    var firstDay = new Date(y, m - 1, 1);
    var startWd = (firstDay.getDay() + 6) % 7; // Mo=0..So=6
    var daysInMonth = new Date(y, m, 0).getDate();
    var daysInPrevMonth = new Date(y, m - 1, 0).getDate();
    var today = new Date();
    var todayMatch = (today.getFullYear() === y && today.getMonth() + 1 === m);

    // SVG-Pfeile statt Unicode-Chevrons (zuverlässige Darstellung in jedem Font)
    var ARROW_L = '<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" style="pointer-events:none"><polyline points="15 6 9 12 15 18"/></svg>';
    var ARROW_R = '<svg viewBox="0 0 24 24" width="14" height="14" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round" style="pointer-events:none"><polyline points="9 6 15 12 9 18"/></svg>';

    var html = '<div class="bsw-cal-header">';
    html += '<button type="button" class="bsw-cal-nav" data-bsw-cal-nav="-1" title="Vorheriger Monat">' + ARROW_L + '</button>';
    html += '<span class="bsw-cal-title">' + MONTHS[m-1] + ' ' + y + '</span>';
    html += '<button type="button" class="bsw-cal-nav" data-bsw-cal-nav="1" title="Nächster Monat">' + ARROW_R + '</button>';
    html += '</div><div class="bsw-cal-grid">';
    for (var w = 0; w < 7; w++) html += '<div class="bsw-cal-wd">' + WD[w] + '</div>';
    // Previous month tail
    for (var i = 0; i < startWd; i++) {
      var d = daysInPrevMonth - startWd + i + 1;
      html += '<div class="bsw-cal-day bsw-cal-other" data-bsw-cal-day="' + d + '" data-bsw-cal-mshift="-1">' + d + '</div>';
    }
    // Current month
    for (var dd = 1; dd <= daysInMonth; dd++) {
      var cls = 'bsw-cal-day';
      if (todayMatch && dd === today.getDate()) cls += ' bsw-cal-today';
      if (CAL_STATE.selectedDay === dd) cls += ' bsw-cal-selected';
      html += '<div class="' + cls + '" data-bsw-cal-day="' + dd + '" data-bsw-cal-mshift="0">' + dd + '</div>';
    }
    // Next month head
    var total = startWd + daysInMonth;
    var trailing = (7 - (total % 7)) % 7;
    for (var t = 1; t <= trailing; t++) {
      html += '<div class="bsw-cal-day bsw-cal-other" data-bsw-cal-day="' + t + '" data-bsw-cal-mshift="1">' + t + '</div>';
    }
    html += '</div>';
    calPopup.innerHTML = html;
  }

  // Delegierter Klick-Handler auf calPopup (überlebt innerHTML-Refreshs)
  function onCalPopupClick(ev){
    // Nav-Pfeile?
    var navEl = ev.target.closest && ev.target.closest('[data-bsw-cal-nav]');
    if (navEl) {
      ev.stopPropagation();
      ev.preventDefault();
      var shift = parseInt(navEl.getAttribute('data-bsw-cal-nav'), 10);
      CAL_STATE.month += shift;
      if (CAL_STATE.month < 1) { CAL_STATE.month = 12; CAL_STATE.year--; }
      if (CAL_STATE.month > 12) { CAL_STATE.month = 1; CAL_STATE.year++; }
      renderCalendar();
      return;
    }
    // Tag-Klick?
    var dayEl = ev.target.closest && ev.target.closest('[data-bsw-cal-day]');
    if (dayEl) {
      ev.stopPropagation();
      var d = parseInt(dayEl.getAttribute('data-bsw-cal-day'), 10);
      var mshift = parseInt(dayEl.getAttribute('data-bsw-cal-mshift'), 10);
      var targetM = CAL_STATE.month + mshift;
      var targetY = CAL_STATE.year;
      if (targetM < 1) { targetM = 12; targetY--; }
      if (targetM > 12) { targetM = 1; targetY++; }
      timeInputs.d.value = d;
      timeInputs.m.value = targetM;
      timeInputs.y.value = targetY;
      if (!timeInputs.h.value) { var nowD = new Date(); timeInputs.h.value = nowD.getHours(); timeInputs.mn.value = pad(nowD.getMinutes()); }
      CAL_STATE.year = targetY; CAL_STATE.month = targetM; CAL_STATE.selectedDay = d;
      closeCalendar();
      onTimeFieldsChange();
      return;
    }
    // Klick irgendwo im Popup (z.B. Header-Titel): nicht durchpropagieren
    ev.stopPropagation();
  }

  // Close calendar on outside click
  function onDocClick(e){
    if (!calPopup || calPopup.style.display === 'none') return;
    if (calBtn.contains(e.target) || calPopup.contains(e.target)) return;
    closeCalendar();
  }

  function toggleFullscreen(){
    ST.fullscreen = !ST.fullscreen;
    if (ST.fullscreen) root.classList.add('bsw-fullscreen');
    else root.classList.remove('bsw-fullscreen');
    // 1) Outer-Bridge IMMER zuerst — der Outer wechselt seine CSS-Klasse.
    //    Funktioniert auf jedem Geraet (auch iPhone).
    try {
      if (window.parent && window.parent !== window) {
        window.parent.postMessage({ bsw: 'fullscreen', on: ST.fullscreen }, '*');
      }
    } catch(e) {}
    // 2) Echte Fullscreen-API NUR auf Mac (kein Touch).
    //    Auf iPad triggert Apple's nicht-abschaltbare Swipe-Down-Geste den Exit → unerwuenscht.
    //    iPad nutzt stattdessen CSS-Vollbild (DOM-Move im Outer, Safari-UI bleibt sichtbar).
    //    iPhone: kein Button → kommt hier gar nicht an.
    var canApi = !!(document.fullscreenEnabled || document.webkitFullscreenEnabled);
    var noTouch = (navigator.maxTouchPoints || 0) === 0;
    if (canApi && noTouch) {
      try {
        var elem = document.documentElement;
        var inFs = !!(document.fullscreenElement || document.webkitFullscreenElement || document.msFullscreenElement);
        if (ST.fullscreen && !inFs) {
          var req = elem.requestFullscreen || elem.webkitRequestFullscreen || elem.msRequestFullscreen;
          if (req) req.call(elem);
        } else if (!ST.fullscreen && inFs) {
          var exit = document.exitFullscreen || document.webkitExitFullscreen || document.msExitFullscreen;
          if (exit) exit.call(document);
        }
      } catch(e) {}
    }
    setTimeout(function(){ try { bswResize(); } catch(e){} }, 100);
    setTimeout(function(){ try { bswResize(); } catch(e){} }, 350);
    setTimeout(function(){ try { bswResize(); } catch(e){} }, 700);
  }

  function toggleOnboardModal(){
    ST.onboardOpen = !ST.onboardOpen;
    renderShips();
  }

  // ---- Map init ----
  function initMap(){
    // Anzeigebereich auf den Bodensee + nahe Umgebung begrenzen
    // (entspricht etwa dem Ausschnitt: Schaffhausen–Isny west/ost, Stockach–St.Gallen nord/süd)
    var BSW_BOUNDS = L.latLngBounds([47.35, 8.55], [47.90, 10.10]);
    ST.map = L.map(mapEl, {
      center: [47.63, 9.35],
      zoom: 10,
      zoomControl: true,
      scrollWheelZoom: true,
      attributionControl: true,
      maxBounds: BSW_BOUNDS,
      maxBoundsViscosity: 1.0,
      worldCopyJump: false
    });
    L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
      attribution: '&copy; OpenStreetMap',
      maxZoom: 18,
      noWrap: true,
      bounds: BSW_BOUNDS
    }).addTo(ST.map);

    // Map-Hoehe dynamisch setzen via Aspect-Ratio.
    // Mac (kein Touch): 2.53 → flacheres Verhaeltnis (Karte 25% niedriger als bei iPad)
    // iPad (Touch): 1.9 → urspruengliches Verhaeltnis
    var BSW_ASPECT_DESKTOP = 2.81;
    var BSW_ASPECT_TOUCH = 2.11;
    var BSW_MOBILE_BP = 640; // px viewport-Breite → ab darunter mobile-Layout
    function bswResize(){
      try {
        var mc = mapEl.parentNode; // .bsw-map-container
        var w = mc.clientWidth;
        if (w > 0) {
          var isMobile = window.innerWidth < BSW_MOBILE_BP;
          var mapH;
          if (isMobile || ST.fullscreen) {
            // Mobile + Vollbild: Map nimmt den ganzen Browser-Viewport minus Header + Footer.
            var header = root.querySelector('.bsw-header');
            var timebar = root.querySelector('.bsw-timebar');
            var footer = root.querySelector('.bsw-footer');
            var chrome = (header ? header.offsetHeight : 0)
                       + (timebar ? timebar.offsetHeight : 0)
                       + (footer ? footer.offsetHeight : 0);
            mapH = Math.max(200, window.innerHeight - chrome);
          } else {
            var isTouchDev = (navigator.maxTouchPoints || 0) > 0;
            var aspect = isTouchDev ? BSW_ASPECT_TOUCH : BSW_ASPECT_DESKTOP;
            mapH = Math.round(w / aspect);
          }
          mc.style.height = mapH + 'px';
        }
        // Volle Breite — keine 77%-Begrenzung mehr.
        root.style.maxWidth = '';
        root.style.marginLeft = '';
        root.style.marginRight = '';
        if (ST.map) {
          ST.map.invalidateSize();
          // IMMER inside=true → Bounds bedecken den Container vollstaendig (kein blauer Rand).
          // Karte wird ggf. leicht beschnitten, dafuer nie weisser/blauer Hintergrund sichtbar.
          var z = ST.map.getBoundsZoom(BSW_BOUNDS, true);
          if (z && isFinite(z)) ST.map.setMinZoom(z);
          ST.map.fitBounds(BSW_BOUNDS, { animate: false, padding: [0, 0], maxZoom: 18 });
          ST.map.setZoom(z);
        }
      } catch(e) {}
      // Eigene Hoehe an Outer melden, damit Iframe sich anpassen kann
      try {
        if (window.parent && window.parent !== window) {
          var totalH = document.body.scrollHeight || document.documentElement.scrollHeight;
          window.parent.postMessage({ bsw: 'height', h: totalH, mobile: (window.innerWidth < BSW_MOBILE_BP) }, '*');
        }
      } catch(e) {}
    }
    bswResize();
    setTimeout(bswResize, 100);
    setTimeout(bswResize, 500);
    if (window.addEventListener) window.addEventListener('resize', bswResize);
    if (window.addEventListener) window.addEventListener('orientationchange', function(){ setTimeout(bswResize, 200); });

    // Eigene Pane für Hafenpunkte mit z-index OBERHALB der Schiff-Marker,
    // damit der Hafenpunkt auch dann klickbar bleibt, wenn ein Schiff darauf liegt.
    ST.map.createPane('bswPortPane');
    ST.map.getPane('bswPortPane').style.zIndex = 650; // markerPane = 600
    ST.map.getPane('bswPortPane').style.pointerEvents = 'auto';

    // Port markers — Klick öffnet Liste der nächsten Abfahrten
    (function(){
      function attachPort(portName, portCoords){
        L.circleMarker(portCoords, {
          pane: 'bswPortPane',
          radius: 6,
          color: '#444',
          fillColor: '#cfd8e3',
          fillOpacity: 0.95,
          weight: 1.5
        })
        .bindTooltip(portName, { direction: 'top', offset: [0, -4] })
        .on('click', function(){
          L.popup({ closeButton: true, autoPan: true, maxWidth: 360 })
            .setLatLng(portCoords)
            .setContent(buildPortDeparturesHtml(portName))
            .openOn(ST.map);
        })
        .addTo(ST.map);
      }
      for (var name in PORTS) attachPort(name, PORTS[name]);
    })();
  }

  // ---- Leaflet loader ----
  function loadLeaflet(cb){
    if (window.L) return cb();
    var s = document.createElement('script');
    s.src = 'https://unpkg.com/leaflet@1.9.4/dist/leaflet.js';
    s.onload = cb;
    s.onerror = function(){ showError('Leaflet konnte nicht geladen werden. Bitte Internet-Verbindung prüfen.'); };
    document.head.appendChild(s);
  }

  // ---- Init ----
  function init(){
    root = document.querySelector('.bsw-widget[data-bsw-root]');
    if (!root) return;
    root.innerHTML = buildMarkup();

    mapEl = root.querySelector('[data-bsw-map]');
    timeDisplay = root.querySelector('[data-bsw-timedisplay]');
    liveDot = root.querySelector('[data-bsw-livedot]');
    slider = root.querySelector('[data-bsw-slider]');
    timeInputs = {
      d:  root.querySelector('[data-bsw-tf="d"]'),
      m:  root.querySelector('[data-bsw-tf="m"]'),
      y:  root.querySelector('[data-bsw-tf="y"]'),
      h:  root.querySelector('[data-bsw-tf="h"]'),
      mn: root.querySelector('[data-bsw-tf="mn"]')
    };
    calBtn = root.querySelector('[data-bsw-calbtn]');
    calPopup = root.querySelector('[data-bsw-calpopup]');
    fullscreenBtn = root.querySelector('.bsw-fs-btn');
    onboardBtn = root.querySelector('[data-bsw-onboardbtn]');
    onboardModal = root.querySelector('[data-bsw-onboardmodal]');
    infoBanner = root.querySelector('[data-bsw-info]');

    // Event listeners
    slider.addEventListener('input', onSliderChange);
    var tfKeys = ['d','m','y','h','mn'];
    for (var i = 0; i < tfKeys.length; i++) {
      timeInputs[tfKeys[i]].addEventListener('change', onTimeFieldsChange);
      timeInputs[tfKeys[i]].addEventListener('blur', onTimeFieldsChange);
      // Auto-select: bei Klick ODER Tab-Fokus wird der gesamte Feld-Inhalt markiert,
      // sodass der erste Tastendruck den alten Wert ersetzt.
      (function(el){
        var doSelect = function(){ try { el.select(); el.setSelectionRange(0, el.value.length); } catch(e){} };
        // Focus (auch via Tab) → komplette Markierung
        el.addEventListener('focus', function(){ setTimeout(doSelect, 0); });
        // Mausklick: mouseup feuert NACH dem nativen Cursor-Positioning;
        // preventDefault verhindert dass das Browser-Verhalten unseren select() überschreibt.
        el.addEventListener('mouseup', function(ev){ ev.preventDefault(); doSelect(); });
        // Erste Eingabe nach Fokus überschreibt komplett (Fallback falls select() nicht greift)
        var freshFocus = false;
        el.addEventListener('focus', function(){ freshFocus = true; });
        el.addEventListener('blur', function(){ freshFocus = false; });
        el.addEventListener('keydown', function(ev){
          if (freshFocus && ev.key && ev.key.length === 1 && /[0-9]/.test(ev.key)) {
            // Wenn nichts markiert ist (nur Cursor), Inhalt vor dem Tippen löschen
            if (el.selectionStart === el.selectionEnd) {
              el.value = '';
            }
          }
          freshFocus = false;
        });
      })(timeInputs[tfKeys[i]]);
    }
    calBtn.addEventListener('click', function(ev){
      ev.stopPropagation();
      if (calPopup.style.display === 'none' || !calPopup.style.display) openCalendar();
      else closeCalendar();
    });
    // Delegierter Klick-Handler für Pfeile/Tage im Kalender — überlebt innerHTML-Rerenders
    calPopup.addEventListener('click', onCalPopupClick);
    // Mousedown-Schutz: verhindert dass der Klick zuerst zum document-Handler durchdringt
    calPopup.addEventListener('mousedown', function(ev){ ev.stopPropagation(); });
    document.addEventListener('click', onDocClick);
    fullscreenBtn.addEventListener('click', toggleFullscreen);
    onboardBtn.addEventListener('click', toggleOnboardModal);
    // Live-Label klickbar → Reset
    var liveBtn = root.querySelector('[data-bsw-livebtn]');
    if (liveBtn) liveBtn.addEventListener('click', resetToLive);

    // Load Leaflet and start
    loadLeaflet(function(){
      try {
        initMap();
        renderShips();
        // Zur naechsten vollen Minute scharf schalten, danach jede Minute neu.
        // isLiveMode() ist true wenn weder Datum/Uhrzeit eingegeben noch Slider geschoben wurde.
        function scheduleMinuteTick(){
          var now = new Date();
          var msUntilNext = (60 - now.getSeconds()) * 1000 - now.getMilliseconds();
          if (msUntilNext < 200) msUntilNext += 60000;
          ST.liveInterval = setTimeout(function(){
            if (isLiveMode()) { try { renderShips(); } catch(e){} }
            scheduleMinuteTick();
          }, msUntilNext);
        }
        scheduleMinuteTick();
        // Reagiert auch wenn User per ESC den Vollbild verlaesst (oder Browser ihn beendet).
        var fsEvents = ['fullscreenchange','webkitfullscreenchange','msfullscreenchange'];
        function onFsChange(){
          var inFs = !!(document.fullscreenElement || document.webkitFullscreenElement || document.msFullscreenElement);
          if (!inFs && ST.fullscreen) {
            // Vom Browser verlassen — Outer informieren + State syncen
            ST.fullscreen = false;
            if (root && root.classList) root.classList.remove('bsw-fullscreen');
            try {
              if (window.parent && window.parent !== window)
                window.parent.postMessage({ bsw: 'fullscreen', on: false }, '*');
            } catch(e) {}
            setTimeout(function(){ try { bswResize(); } catch(e){} }, 200);
          }
        }
        for (var fei = 0; fei < fsEvents.length; fei++) {
          try { document.addEventListener(fsEvents[fei], onFsChange); } catch(e){}
        }
      } catch (err) {
        showError('Karten-Init fehlgeschlagen: ' + (err && err.message ? err.message : 'unbekannt'));
      }
    });
  }

  // Start (defer slightly to ensure DOM is ready in Jimdo context)
  if (document.readyState === 'loading') {
    document.addEventListener('DOMContentLoaded', init);
  } else {
    init();
  }
})();
</script>


</body>
</html>
