/* Locker-Check (/locker-check). Eigene Datei, stile.css bleibt unberuehrt.
   Mobil zuerst: Besucher kommen vor allem aus dem Instagram-Browser, der Cookie-Dialog liegt unten.
   Feld und Knopf muessen bei 390 x 664 oberhalb von etwa 430 px enden. Zonenfarben wie im
   Trainingszonen-Rechner, Werte stehen immer als Text daneben, nie nur als Farbe. */

:root {
    --lc-erholung: #a8c6c6;
    --lc-locker: #5e9c9c;
    --lc-mittel: #5e7a8a;
    --lc-schwelle: #c98a4b;
    --lc-intervall: #b5533f;
    --lc-ok: #3d7f6f;
    --lc-warn: #9a6424;
    --lc-stop: #a4472f;
    --lc-linie: #d9e3e8;
    --lc-flaeche: #f2f7f8;
    --lc-text-leise: #4a626f;
    /* Anstrengungsskala: dunklere Toene derselben Farben, damit die weissen Ziffern 4,5:1 erreichen */
    --lc-rpe-leicht: #3f7a7a;
    --lc-rpe-grenze: #467a87;
    --lc-rpe-hart: #a1632a;
}

.lc-main {
    max-width: 640px;
    margin: 0 auto;
    padding: 0 18px;
    color: var(--color-navy);
}

/* hidden gilt immer, auch wenn eine Klasse display setzt */
.lc-main [hidden] { display: none !important; }

/* Kein Doppeltipp-Zoom beim schnellen Antippen (Skala, Kacheln); eigene Auswahlfarben statt grauem Tipp-Kasten */
.lc-main button, .lc-main a, .lc-main label, .lc-main summary, .lc-main input { touch-action: manipulation; }
.lc-seg label, .lc-kachel, .lc-rpe-skala label { -webkit-tap-highlight-color: transparent; }

.lc-sr {
    position: absolute !important;
    width: 1px; height: 1px;
    padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0, 0, 0, 0);
    white-space: nowrap; border: 0;
}

/* ---------- Schritt 1: Einstieg ---------- */
.lc-tool { padding: 16px 0 20px; scroll-margin-top: 8px; }
.lc-label {
    font-size: 0.72rem; font-weight: 700; letter-spacing: 0.14em;
    color: var(--lc-text-leise); margin: 0 0 4px;
}
.lc-h1 {
    font-family: var(--font-display);
    font-size: clamp(1.55rem, 6.6vw, 2.4rem);
    font-weight: 700; line-height: 1.12; margin: 0 0 6px;
    color: var(--color-navy); text-transform: none; letter-spacing: -0.01em; text-wrap: balance;
}
.lc-sub { font-size: 0.92rem; line-height: 1.4; color: var(--lc-text-leise); margin: 0 0 14px; }

.lc-form { margin: 0; }
.lc-seg {
    display: grid; grid-template-columns: 1fr 1fr 1.35fr;
    background: #eef3f5; border: 0; border-radius: 12px;
    padding: 4px; margin: 0 0 12px; min-width: 0;
}
.lc-seg label { position: relative; display: block; cursor: pointer; }
.lc-seg input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.lc-seg span {
    display: flex; align-items: center; justify-content: center;
    min-height: 44px; border-radius: 9px;
    font-size: 0.9rem; font-weight: 600; color: var(--lc-text-leise);
    transition: background 0.2s ease, color 0.2s ease;
}
/* Navy-Ring: Weiss auf der hellen Spur allein waere als Auswahl zu schwach (1,1:1) */
.lc-seg input:checked + span { background: #fff; color: var(--color-navy); box-shadow: 0 0 0 1.5px var(--color-navy), 0 1px 3px rgba(0, 0, 0, 0.12); }
.lc-seg input:focus-visible + span { outline: 3px solid var(--color-link); outline-offset: 1px; }

.lc-field-head { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; margin: 0 0 6px; flex-wrap: wrap; }
.lc-field-label { font-size: 0.85rem; font-weight: 700; }
.lc-alter-text { font-size: 0.74rem; color: var(--lc-text-leise); }
.lc-mini-link {
    background: none; border: 0; padding: 0; font: inherit; font-weight: 700;
    color: var(--color-link); text-decoration: underline; text-underline-offset: 2px; cursor: pointer;
}
.lc-mini-link:hover { color: var(--color-link-hover); }
/* Kleine Textknoepfe im Fliesstext: groessere Tippflaeche ohne Platz im Layout */
.lc-alter-text .lc-mini-link, .lc-res-basis .lc-mini-link { padding: 12px 6px; margin: -12px -6px; }
.lc-alter-wahl {
    border: 1px solid var(--lc-linie); border-radius: 10px; padding: 8px 12px; margin: 0 0 10px;
    display: flex; flex-direction: column; gap: 6px; font-size: 0.88rem;
}
.lc-alter-wahl label { display: flex; gap: 8px; align-items: center; min-height: 32px; cursor: pointer; }

.lc-time-wrap, .lc-pace-wrap {
    display: flex; align-items: center; border: 2px solid var(--color-blue-gray);
    border-radius: 12px; background: #fff; padding: 0 14px; transition: border-color 0.2s ease;
}
.lc-time-wrap { height: 54px; margin: 0 0 10px; }
.lc-time-wrap:focus-within, .lc-pace-wrap:focus-within { border-color: var(--color-navy); box-shadow: 0 0 0 3px rgba(47, 107, 107, 0.25); }
.lc-time, .lc-pace-wrap input {
    flex: 1; min-width: 0; height: 100%; border: 0; outline: 0; background: transparent;
    font-family: var(--font-display); font-size: 1.5rem; font-weight: 700;
    color: var(--color-navy); font-variant-numeric: tabular-nums; padding: 0;
}
.lc-time::placeholder, .lc-pace-wrap input::placeholder { color: #637580; font-weight: 500; opacity: 1; }
.lc-time-unit, .lc-pace-wrap span { font-size: 0.8rem; font-weight: 600; color: var(--lc-text-leise); }
[aria-invalid="true"] { color: var(--lc-stop); }

.lc-btn {
    display: block; width: 100%; text-align: center; border: 0; cursor: pointer;
    background: var(--color-turquoise-light); color: var(--color-navy);
    font-family: var(--font-display); font-weight: 700; font-size: 1rem;
    padding: 14px 18px; border-radius: 40px; text-decoration: none; min-height: 48px;
    transition: background 0.2s ease, transform 0.15s ease;
}
.lc-btn:hover { background: var(--color-gray-blue-light); }
.lc-btn:active { transform: scale(0.98); }
.lc-btn:focus-visible { outline: 3px solid var(--color-link); outline-offset: 2px; }
.lc-btn-klein { font-size: 0.92rem; padding: 10px 16px; min-height: 44px; }

.lc-btn-dark, .lc-btn-rand {
    display: inline-flex; align-items: center; justify-content: center; text-align: center;
    min-height: 46px; padding: 0 18px; border-radius: 12px; cursor: pointer;
    font-family: var(--font-display); font-weight: 700; font-size: 0.95rem; text-decoration: none;
}
.lc-btn-dark { background: var(--color-navy); color: #fff; border: 0; }
.lc-btn-dark:hover { background: #2a3d52; color: #fff; }
.lc-btn-rand { background: #fff; color: var(--color-navy); border: 1.5px solid var(--color-navy); }
.lc-btn-rand:hover { background: var(--lc-flaeche); }
.lc-btn-dark:focus-visible, .lc-btn-rand:focus-visible { outline: 3px solid var(--color-link); outline-offset: 2px; }

.lc-textlink {
    display: block; margin: 12px auto 6px; background: none; border: 0; cursor: pointer;
    font: inherit; font-size: 0.86rem; font-weight: 600; color: var(--color-link);
    text-decoration: underline; text-underline-offset: 3px; min-height: 44px;
}
.lc-privacy {
    display: flex; gap: 6px; align-items: center; justify-content: center;
    font-size: 0.76rem; color: var(--lc-text-leise); margin: 0;
}
.lc-fehler { color: var(--lc-stop); font-size: 0.85rem; font-weight: 600; margin: -4px 0 10px; }

/* ---------- Panels ---------- */
.lc-panel {
    border-top: 1px solid var(--lc-linie);
    padding: 22px 0 18px;
    scroll-margin-top: 12px;
}
.lc-h2 {
    font-family: var(--font-display); font-size: 1.25rem; font-weight: 700;
    margin: 0 0 6px; color: var(--color-navy); text-transform: none; letter-spacing: 0; text-wrap: balance;
}
.lc-h2:focus, .lc-res-label:focus { outline: none; }
.lc-klein { font-size: 0.8rem; color: var(--lc-text-leise); line-height: 1.45; margin: 6px 0; }

/* ---------- Schritt 2: Ergebnis ---------- */
.lc-res-label {
    font-family: var(--font-display); font-size: 0.78rem; font-weight: 700;
    letter-spacing: 0.1em; text-transform: uppercase; color: var(--lc-text-leise); margin: 0 0 2px;
}
.lc-res-big {
    font-family: var(--font-display); font-size: clamp(2.4rem, 12vw, 3.4rem); font-weight: 700;
    line-height: 1.04; margin: 0; font-variant-numeric: tabular-nums; color: var(--color-navy);
}
.lc-res-big small { font-size: 1rem; font-weight: 600; color: var(--lc-text-leise); }
.lc-res-basis { font-size: 0.85rem; color: var(--lc-text-leise); margin: 4px 0 18px; }

.lc-skala { margin: 26px 0 6px; }
.lc-track { position: relative; display: flex; height: 26px; }
.lc-seg-z { display: block; height: 100%; }
.lc-seg-z:first-child { border-radius: 8px 0 0 8px; }
.lc-z-intervall { border-radius: 0 8px 8px 0; }
.lc-z-erholung { background: var(--lc-erholung); }
.lc-z-locker, .lc-z-locker-rest { background: var(--lc-locker); }
.lc-z-locker { box-shadow: inset 0 0 0 3px var(--color-navy); position: relative; z-index: 1; }
.lc-z-mittel { background: var(--lc-mittel); }
.lc-z-schwelle { background: var(--lc-schwelle); }
.lc-z-intervall { background: var(--lc-intervall); }
.lc-grau {
    position: absolute; top: -3px; bottom: -3px; z-index: 2;
    border: 1.5px dashed var(--color-navy); border-radius: 5px;
    background: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.55) 0 4px, rgba(255, 255, 255, 0) 4px 8px);
    display: flex; align-items: center; justify-content: center; overflow: hidden;
}
.lc-grau span {
    font-size: 0.56rem; font-weight: 700; color: var(--color-navy);
    background: rgba(255, 255, 255, 0.9); border-radius: 3px; padding: 0 3px; white-space: nowrap;
}
.lc-marker {
    position: absolute; top: -10px; bottom: -10px; width: 0; left: 0; z-index: 3;
    border-left: 3px solid var(--lc-stop);
    transition: left 0.7s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.lc-marker span {
    position: absolute; top: -21px; left: 50%; transform: translateX(-50%);
    background: var(--lc-stop); color: #fff; font-size: 0.7rem; font-weight: 700;
    padding: 1px 6px; border-radius: 5px; white-space: nowrap;
}
.lc-names { display: flex; margin-top: 5px; font-size: 0.66rem; font-weight: 700; color: var(--lc-text-leise); }
.lc-names span { text-align: center; overflow: hidden; white-space: nowrap; text-overflow: clip; }
.lc-names .lc-on { color: var(--color-navy); }
.lc-ticks { position: relative; height: 16px; font-size: 0.7rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.lc-ticks span { position: absolute; top: 0; transform: translateX(-50%); white-space: nowrap; }
.lc-ends { display: flex; justify-content: space-between; font-size: 0.7rem; color: var(--lc-text-leise); margin-top: 2px; }

.lc-erklaer { font-size: 0.9rem; line-height: 1.5; margin: 14px 0 8px; }
.lc-hinweise { margin: 0 0 10px; padding-left: 18px; font-size: 0.85rem; color: var(--lc-warn); }
.lc-hinweise:empty { display: none; }

.lc-bruecke { background: var(--lc-flaeche); border: 1px solid var(--lc-linie); border-radius: 14px; padding: 14px; margin: 14px 0; }
.lc-bruecke-titel { display: block; font-weight: 700; font-size: 0.95rem; margin: 0 0 8px; }
.lc-inline { display: flex; gap: 8px; }
/* min-width: 0, sonst schiebt die Eigenbreite des Eingabefelds den Knopf aus dem Bild */
.lc-pace-wrap { flex: 1; min-width: 0; height: 48px; padding: 0 12px; }
.lc-pace-wrap input { font-size: 1.25rem; }
.lc-tempo-urteil { margin: 10px 0 0; font-size: 0.88rem; font-weight: 600; line-height: 1.45; padding-left: 10px; border-left: 3px solid var(--lc-linie); }

.lc-acc { border-top: 1px solid var(--lc-linie); }
.lc-acc:last-of-type { border-bottom: 1px solid var(--lc-linie); }
.lc-acc summary, .lc-uhr summary, .lc-puls summary {
    cursor: pointer; list-style: none; padding: 12px 2px; min-height: 44px;
    font-weight: 700; font-size: 0.92rem; display: flex; justify-content: space-between; align-items: center;
}
.lc-acc summary::-webkit-details-marker, .lc-uhr summary::-webkit-details-marker, .lc-puls summary::-webkit-details-marker { display: none; }
.lc-acc summary::after, .lc-uhr summary::after, .lc-puls summary::after { content: "▾"; font-size: 0.8rem; color: var(--color-blue-gray); transition: transform 0.2s ease; }
.lc-acc[open] summary::after, .lc-uhr[open] summary::after, .lc-puls[open] summary::after { transform: rotate(180deg); }
.lc-acc p { font-size: 0.88rem; line-height: 1.55; margin: 0 0 12px; }
.lc-tempi { width: 100%; border-collapse: collapse; font-size: 0.82rem; margin: 0 0 6px; }
.lc-tempi th, .lc-tempi td { text-align: left; padding: 7px 4px; border-bottom: 1px solid var(--lc-linie); vertical-align: top; }
.lc-tempi thead th { font-size: 0.72rem; color: var(--lc-text-leise); }
.lc-tempi td:nth-child(2) { font-weight: 700; white-space: nowrap; font-variant-numeric: tabular-nums; }
.lc-tempi tbody th { font-weight: 600; }
.lc-punkt { display: inline-block; width: 9px; height: 9px; border-radius: 50%; margin-right: 6px; vertical-align: middle; }
.lc-p-erholung { background: var(--lc-erholung); }
.lc-p-locker { background: var(--lc-locker); }
.lc-p-mittel { background: var(--lc-mittel); }
.lc-p-schwelle { background: var(--lc-schwelle); }
.lc-p-intervall { background: var(--lc-intervall); }

/* ---------- Schritt 3: Gegenprobe ---------- */
.lc-gp-intro { font-size: 0.88rem; color: var(--lc-text-leise); margin: 0 0 12px; }
.lc-talk, .lc-rpe, .lc-besonders { border: 0; padding: 0; margin: 0 0 16px; min-width: 0; }
.lc-talk legend, .lc-rpe legend, .lc-besonders legend { font-weight: 700; font-size: 0.92rem; margin: 0 0 8px; padding: 0; }
.lc-talk { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.lc-talk legend { grid-column: 1 / -1; }
.lc-kachel {
    position: relative; display: flex; flex-direction: column; align-items: center; gap: 6px;
    border: 1.5px solid var(--lc-linie); border-radius: 12px; padding: 10px 6px 9px;
    text-align: center; font-size: 0.76rem; font-weight: 600; line-height: 1.25; cursor: pointer;
    color: var(--color-navy); min-height: 92px; transition: border-color 0.2s ease, background 0.2s ease;
}
.lc-kachel input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.lc-kachel:has(input:checked) { border-color: var(--color-navy); background: var(--lc-flaeche); box-shadow: inset 0 0 0 1px var(--color-navy); }
.lc-kachel:has(input:focus-visible) { outline: 3px solid var(--color-link); outline-offset: 2px; }

.lc-rpe-skala { display: grid; grid-template-columns: repeat(10, 1fr); gap: 4px; }
.lc-rpe-skala label { position: relative; cursor: pointer; }
.lc-rpe-skala input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.lc-rpe-skala span {
    display: flex; align-items: center; justify-content: center; height: 44px; border-radius: 8px;
    font-weight: 700; font-size: 0.9rem; color: #fff; transition: transform 0.15s ease;
}
.lc-rpe-1 span, .lc-rpe-2 span, .lc-rpe-3 span { background: var(--lc-rpe-leicht); }
.lc-rpe-4 span { background: var(--lc-rpe-grenze); }
.lc-rpe-5 span, .lc-rpe-6 span { background: var(--lc-mittel); }
.lc-rpe-7 span, .lc-rpe-8 span { background: var(--lc-rpe-hart); }
.lc-rpe-9 span, .lc-rpe-10 span { background: var(--lc-intervall); }
.lc-rpe-skala input:checked + span { outline: 3px solid var(--color-navy); outline-offset: 2px; transform: scale(1.04); }
.lc-rpe-skala input:focus-visible + span { outline: 3px solid var(--color-link); outline-offset: 2px; }
.lc-rpe-worte { position: relative; height: 16px; margin-top: 5px; font-size: 0.66rem; font-weight: 600; color: var(--lc-text-leise); }
.lc-rpe-worte span { position: absolute; top: 0; transform: translateX(-50%); white-space: nowrap; }
.lc-rpe-worte .lc-rpe-grenze { color: var(--color-navy); }
.lc-rpe-worte .lc-rpe-max { right: 0; transform: none; }
.lc-rpe-anker { font-size: 0.84rem; margin: 6px 0 0; min-height: 1.2em; color: var(--lc-text-leise); }

.lc-besonders { display: flex; flex-wrap: wrap; gap: 8px; }
.lc-besonders legend { width: 100%; }
.lc-besonders label {
    display: inline-flex; align-items: center; gap: 6px; font-size: 0.82rem; font-weight: 600;
    border: 1px solid var(--lc-linie); border-radius: 22px; padding: 0 12px; min-height: 44px; cursor: pointer;
}
.lc-besonders label:has(input:checked) { border-color: var(--color-navy); background: var(--lc-flaeche); }

.lc-puls { border-top: 1px solid var(--lc-linie); border-bottom: 1px solid var(--lc-linie); margin: 0 0 16px; }
.lc-puls-felder { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.lc-puls-felder label { font-size: 0.8rem; font-weight: 600; display: flex; flex-direction: column; gap: 4px; }
.lc-puls-felder input {
    height: 44px; border: 1.5px solid var(--color-blue-gray); border-radius: 10px; padding: 0 10px;
    font-size: 1rem; font-weight: 700; color: var(--color-navy); font-family: var(--font-display);
}

.lc-verdict { display: flex; gap: 12px; align-items: flex-start; border-radius: 14px; padding: 12px 14px; margin: 0 0 12px; border: 1px solid; }
.lc-verdict-icon { flex: 0 0 30px; height: 30px; border-radius: 50%; margin-top: 2px; background-repeat: no-repeat; background-position: center; }
.lc-verdict-titel { font-family: var(--font-display); font-weight: 700; font-size: 1.05rem; margin: 0 0 2px; text-wrap: balance; }
.lc-verdict-text { font-size: 0.88rem; line-height: 1.45; margin: 0; }
.lc-verdict.lc-ton-ok { background: #e7f2ef; border-color: #c7e0d9; }
.lc-verdict.lc-ton-ok .lc-verdict-icon { background-color: var(--lc-ok); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5 6.5 12 13 4.5' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.lc-verdict.lc-ton-warn { background: #fbf1e3; border-color: #eed8b8; }
.lc-verdict.lc-ton-warn .lc-verdict-icon { background-color: var(--lc-warn); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M8 3.5v5.5M8 12v.5' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round'/%3E%3C/svg%3E"); }
.lc-verdict.lc-ton-stop { background: #f8ebe6; border-color: #ecc9bd; }
.lc-verdict.lc-ton-stop .lc-verdict-icon { background-color: var(--lc-stop); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='M8 13V3M3.5 7.5 8 3l4.5 4.5' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }

.lc-triple { border: 1px solid var(--lc-linie); border-radius: 14px; overflow: hidden; margin: 0 0 10px; }
.lc-tr { display: flex; justify-content: space-between; gap: 10px; padding: 9px 12px; font-size: 0.86rem; border-bottom: 1px solid var(--lc-linie); }
.lc-tr:last-child { border-bottom: 0; }
.lc-tr b { text-align: right; }
.lc-dot { display: inline-block; width: 10px; height: 10px; border-radius: 50%; margin-right: 7px; vertical-align: middle; background: var(--lc-linie); }
.lc-dot.lc-ton-ok { background: var(--lc-ok); }
.lc-dot.lc-ton-warn { background: var(--lc-warn); }
.lc-dot.lc-ton-stop { background: var(--lc-stop); }
.lc-vorschlag { font-weight: 700; font-size: 0.92rem; margin: 0; }
.lc-tempo-urteil.lc-ton-ok { border-left-color: var(--lc-ok); }
.lc-tempo-urteil.lc-ton-warn { border-left-color: var(--lc-warn); }
.lc-tempo-urteil.lc-ton-stop { border-left-color: var(--lc-stop); }

/* ---------- Schritt 4: Mitnehmen ---------- */
.lc-karte-row { display: flex; gap: 14px; align-items: flex-start; border: 1.5px solid var(--lc-linie); border-radius: 14px; padding: 12px; margin: 10px 0 12px; }
.lc-karte-fig { flex: 0 0 38%; max-width: 180px; margin: 0; }
.lc-karte-fig img { display: block; width: 100%; height: auto; border-radius: 10px; background: var(--color-navy); aspect-ratio: 9 / 16; box-shadow: 0 6px 18px rgba(31, 46, 62, 0.18); }
.lc-karte-txt { flex: 1; min-width: 0; }
.lc-karte-titel { font-weight: 700; font-size: 1rem; margin: 0 0 4px; }
.lc-check { display: flex; gap: 8px; align-items: center; font-size: 0.8rem; margin-top: 10px; min-height: 44px; cursor: pointer; }

.lc-uhr { border-top: 1px solid var(--lc-linie); border-bottom: 1px solid var(--lc-linie); margin: 0 0 12px; }
.lc-marken { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 10px; }
.lc-marken button {
    font: inherit; font-size: 0.78rem; font-weight: 700; color: var(--lc-text-leise); background: #fff;
    border: 1px solid var(--lc-linie); border-radius: 22px; padding: 0 12px; min-height: 44px; cursor: pointer;
}
.lc-marken button[aria-pressed="true"] { border-color: var(--color-navy); color: var(--color-navy); background: var(--lc-flaeche); }
.lc-schritte { margin: 0 0 6px; padding-left: 20px; font-size: 0.86rem; line-height: 1.5; }
.lc-schritte li { margin-bottom: 4px; }

.lc-iab { background: var(--lc-flaeche); border: 1px dashed var(--color-blue-gray); border-radius: 14px; padding: 12px; font-size: 0.86rem; }
.lc-iab p { margin: 0 0 8px; }
.lc-iab-knoepfe { display: flex; flex-direction: column; gap: 8px; margin: 0 0 10px; }   /* untereinander: volle Breite fuer den Daumen */
@media (min-width: 520px) { .lc-iab-knoepfe { flex-direction: row; } .lc-iab-knoepfe > * { flex: 1; } }
.lc-kopiert { color: var(--color-link); font-weight: 700; }
.lc-dateien { display: flex; flex-direction: column; gap: 8px; align-items: stretch; }
.lc-dateien .lc-mini-link { display: flex; align-items: center; justify-content: center; min-height: 44px; }

/* ---------- Schritt 5: Coaching ---------- */
.lc-coaching { background: var(--color-navy); color: #fff; border-radius: 16px; padding: 18px; margin: 8px 0 22px; }
.lc-co-titel { font-family: var(--font-display); font-size: 1.15rem; font-weight: 700; margin: 0 0 6px; color: #fff; text-transform: none; letter-spacing: 0; text-wrap: balance; }
.lc-coaching p { font-size: 0.9rem; line-height: 1.5; margin: 0 0 10px; opacity: 0.94; }
.lc-co-vertrauen { font-size: 0.78rem !important; opacity: 0.8 !important; }
.lc-textlink-hell { color: #fff; margin-bottom: 0; }
.lc-textlink-hell:hover { color: var(--color-turquoise-light); }

.lc-newsletter { margin: 0 0 8px; }

/* ---------- Wissensteil ---------- */
.lc-wissen { padding-left: 0; padding-right: 0; }
.lc-note { margin: 20px 0; }
.lc-glossar {
    background: linear-gradient(135deg, rgba(155, 204, 204, 0.08) 0%, rgba(94, 122, 138, 0.05) 100%);
    border-left: 4px solid var(--color-turquoise-light); border-radius: 8px; padding: 1.1rem 1.3rem; margin: 1.6rem 0;
}
.lc-glossar p { margin: 0; line-height: 1.7; }
.lc-glossar .lc-glossar-titel { font-family: var(--font-display); font-weight: 700; margin: 0 0 0.4rem; }

/* ---------- Groessere Bildschirme ---------- */
@media (min-width: 700px) {
    .lc-tool { padding-top: 36px; }
    .lc-sub { font-size: 1rem; }
    .lc-names { font-size: 0.74rem; }
    .lc-talk .lc-kachel { font-size: 0.84rem; }
    .lc-dateien { flex-direction: row; flex-wrap: wrap; align-items: center; }
}

/* Rueckmeldung beim Ueberfahren, nur mit Maus */
@media (hover: hover) {
    .lc-seg label:hover input:not(:checked) + span { color: var(--color-navy); background: rgba(255, 255, 255, 0.5); }
    .lc-kachel:hover, .lc-besonders label:hover { border-color: var(--color-blue-gray); }
    .lc-rpe-skala label:hover span { filter: brightness(1.08); }
    .lc-marken button:hover { border-color: var(--color-blue-gray); color: var(--color-navy); }
    .lc-textlink:not(.lc-textlink-hell):hover { color: var(--color-link-hover); }   /* der helle Link auf Navy hat eigene Farbe */
}

@media (prefers-reduced-motion: reduce) {
    .lc-marker, .lc-seg span, .lc-btn, .lc-rpe-skala span,
    .lc-acc summary::after, .lc-uhr summary::after, .lc-puls summary::after { transition: none; }
    .lc-btn:active, .lc-rpe-skala input:checked + span { transform: none; }
}
