.sr24-ls { --gruen:#31AE86; --navy:#1e293b; --grau:#64748b; --wasser:#e0f2fe; font-family:inherit; }
.sr24-ls-laedt { color:var(--grau); font-size:14px; padding:12px 0; }
.sr24-ls-strecke { border:1px solid #e2e8f0; border-radius:14px; padding:16px 18px 12px; margin:12px 0; background:#fff;
box-shadow:0 4px 18px rgba(15,23,42,.05); overflow:hidden; }
.sr24-ls-kopf { display:flex; flex-wrap:wrap; gap:4px 14px; align-items:baseline; margin-bottom:4px; }
.sr24-ls-kopf strong { font-size:17px; color:var(--navy); }
.sr24-ls-kopf .sr24-ls-meta { color:var(--grau); font-size:13px; }
.sr24-ls-live { margin-left:auto; font-size:12px; color:var(--gruen); font-weight:600; display:flex; align-items:center; gap:6px; }
.sr24-ls-live i { width:8px; height:8px; border-radius:50%; background:var(--gruen); animation:sr24-ls-puls 1.8s infinite; }
@keyframes sr24-ls-puls { 0%{box-shadow:0 0 0 0 rgba(49,174,134,.6)} 70%{box-shadow:0 0 0 7px rgba(49,174,134,0)} 100%{box-shadow:0 0 0 0 rgba(49,174,134,0)} }
.sr24-ls-band { position:relative; height:104px; margin:6px 56px 2px; }
.sr24-ls-wasser { position:absolute; left:0; right:0; top:48px; height:10px; border-radius:6px;
background:linear-gradient(90deg,var(--wasser),#bae6fd,var(--wasser)); overflow:hidden; }
.sr24-ls-wasser::after { content:""; position:absolute; inset:0;
background:repeating-linear-gradient(90deg,transparent 0 14px,rgba(255,255,255,.75) 14px 22px); animation:sr24-ls-wellen 2.4s linear infinite; }
@keyframes sr24-ls-wellen { to { transform:translateX(22px); } }
.sr24-ls-hafen { position:absolute; top:38px; transform:translateX(-50%); text-align:center; width:120px; }
.sr24-ls-hafen .sr24-ls-punkt { width:30px; height:30px; border-radius:50%; background:#fff; border:3px solid var(--navy); margin:0 auto;
display:flex; align-items:center; justify-content:center; font-size:13px; }
.sr24-ls-hafen .sr24-ls-name { font-weight:700; font-size:14px; margin-top:6px; color:var(--navy); line-height:1.2; }
.sr24-ls-hafen.sr24-ls-a { left:0; } .sr24-ls-hafen.sr24-ls-b { left:100%; }
.sr24-ls-schiff { position:absolute; top:8px; transform:translateX(-50%); transition:left 1.5s ease-in-out; z-index:2; text-decoration:none !important; }
.sr24-ls-schiff.sr24-ls-unten { top:70px; }
.sr24-ls-rumpf { display:block; width:30px; height:18px; animation:sr24-ls-schaukeln 2.6s ease-in-out infinite; }
.sr24-ls-schiff.sr24-ls-links .sr24-ls-rumpf { transform:scaleX(-1); }
@keyframes sr24-ls-schaukeln { 0%,100%{translate:0 0; rotate:0deg} 50%{translate:0 -2px; rotate:2deg} }
.sr24-ls-etikett { position:absolute; top:-1px; left:30px; white-space:nowrap; background:var(--navy); color:#fff; font-size:12px;
padding:3px 8px; border-radius:999px; max-width:260px; overflow:hidden; text-overflow:ellipsis; }
.sr24-ls-schiff.sr24-ls-links .sr24-ls-etikett { left:auto; right:30px; }
.sr24-ls-schiff.sr24-ls-ende .sr24-ls-etikett { left:auto; right:30px; }
.sr24-ls-schiff.sr24-ls-anfang .sr24-ls-etikett { right:auto; left:30px; }
.sr24-ls-kiel { position:absolute; top:9px; width:34px; height:3px; border-radius:2px; background:linear-gradient(90deg,transparent,rgba(49,174,134,.7)); }
.sr24-ls-schiff.sr24-ls-rechts .sr24-ls-kiel { right:24px; } .sr24-ls-schiff.sr24-ls-links .sr24-ls-kiel { left:24px; transform:scaleX(-1); }
.sr24-ls-schiff.sr24-ls-liegt .sr24-ls-rumpf { animation:none; }
.sr24-ls-schiff.sr24-ls-liegt .sr24-ls-etikett { background:#3b82f6; }
.sr24-ls-schiff.sr24-ls-alt .sr24-ls-etikett { background:#94a3b8; }
.sr24-ls-schiff.sr24-ls-alt .sr24-ls-rumpf { filter:grayscale(1); opacity:.55; animation:none; }
.sr24-ls-schiff:hover .sr24-ls-etikett { background:var(--gruen); }
.sr24-ls-leer { position:absolute; left:50%; top:14px; transform:translateX(-50%); color:var(--grau); font-size:12.5px; white-space:nowrap; max-width:70%; overflow:hidden; text-overflow:ellipsis; }
.sr24-ls-fuss { display:flex; flex-wrap:wrap; gap:4px 16px; font-size:12.5px; color:var(--grau); margin-top:10px; padding-top:8px; border-top:1px dashed #e2e8f0; }
.sr24-ls-fuss b { color:var(--navy); }
.sr24-ls-fuss a { color:inherit; }
.sr24-ls-mehr { display:block; margin:6px auto 4px; background:#fff; color:#31AE86; border:2px solid #31AE86; border-radius:999px;
padding:8px 20px; font-weight:600; font-size:14px; cursor:pointer; }
.sr24-ls-mehr:hover { background:#31AE86; color:#fff; }
.sr24-ls-strecke[hidden] { display:none; } .sr24-buchen { background:#f59f00 !important; color:#fff !important; border:2px solid #f59f00 !important; position:relative; }
.sr24-buchen:hover { background:#e08e00 !important; }
.sr24-buchen small { display:block; font-size:10px; font-weight:400; opacity:.9; letter-spacing:.4px; text-transform:uppercase; line-height:1.1; }
.sr24-website { background:#fff !important; color:#64748b !important; border:1px solid #cbd5e1 !important; font-weight:500 !important; }
.sr24-website:hover { color:#1e293b !important; border-color:#94a3b8 !important; }
.sr24-ls-btn { display:inline-block; border-radius:10px; padding:7px 14px; font-size:13.5px; font-weight:600; text-decoration:none !important; text-align:center; }
.sr24-ls-buchung { margin-top:10px; text-align:right; }
.sr24-ls-cta { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; background:#fff8eb; border:1px solid #fde3a7;
border-radius:14px; padding:12px 16px; margin:12px 0; font-size:15px; color:#1e293b; }
.sr24-ls-stand { font-size:12px; color:var(--grau); margin:4px 0 0; } .sr24-kacheln { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin:14px 0 6px; }
.sr24-kachel { background:#f8fafc; border:1px solid #e2e8f0; border-radius:12px; padding:12px 14px; }
.sr24-kachel span { display:block; font-size:11px; text-transform:uppercase; letter-spacing:.8px; color:#64748b; }
.sr24-kachel b { display:block; font-size:17px; margin-top:3px; color:#1e293b; overflow-wrap:anywhere; }
.sr24-kachel b.sr24-gross { font-size:26px; color:#31AE86; }
.sr24-kachel a { color:#31AE86; text-decoration:none; font-weight:600; }
.sr24-tabelle-auf { margin:10px 0 0; } .sr24-tabelle-auf summary { cursor:pointer; color:#31AE86; font-weight:600; font-size:14px; }
@media (max-width:600px) {
.sr24-ls-band { margin:6px 40px 2px; } .sr24-ls-hafen { width:84px; } .sr24-ls-hafen .sr24-ls-name { font-size:12px; }
.sr24-ls-etikett { font-size:11px; max-width:150px; } .sr24-ls-strecke { padding:14px 12px 10px; }
}
.sr24-ls-kopf strong a { color:inherit; text-decoration:none; border-bottom:2px solid #bae6fd; } .sr24-ls-kopf strong a:hover { border-color:#31AE86; }