/* HT Deutsch · Lộ trình A1/A2/B1 – bài giảng từng ngày */
.lt-tracks{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.lt-tracks button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:132px;padding:12px 18px;border-radius:18px;border:1px solid var(--line2);background:rgba(255,255,255,.04);color:var(--ink2);cursor:pointer;text-align:left;transition:border-color .2s,background .2s}
.lt-tracks button b{font-family:var(--f-d);font-size:24px;color:#fff;line-height:1}
.lt-tracks button span{font-size:12.5px;color:var(--ink3)}
.lt-tracks button[aria-selected="true"]{border-color:var(--teal);background:rgba(94,234,212,.12);box-shadow:0 0 0 1px rgba(94,234,212,.35)}
.lt-kaps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0 10px}
@media (max-width:980px){.lt-kaps{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.lt-kaps{grid-template-columns:1fr 1fr}}
.lt-kap{--c:#7FD0FF;display:flex;flex-direction:column;gap:5px;padding:16px 16px 14px;border-radius:18px;border:1px solid var(--line);background:var(--glass);color:var(--ink2);text-align:left;cursor:pointer;font:inherit;transition:border-color .2s,transform .2s}
.lt-kap:hover{border-color:color-mix(in srgb,var(--c) 60%,transparent);transform:translateY(-2px)}
.lt-kap.on{border-color:var(--c);box-shadow:0 0 0 1px color-mix(in srgb,var(--c) 40%,transparent),0 18px 50px -24px var(--c)}
.lt-kap.done{opacity:.72}
.lt-kap small{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--c);font-weight:700}
.lt-kap b{font-family:var(--f-d);font-size:17px;color:#fff;line-height:1.2}
.lt-kap span{font-size:12.5px;color:var(--ink3);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.lt-kap .lt-bar{margin-top:6px}.lt-kap .lt-bar i{background:var(--c)}
.lt-kap em{font-style:normal;font-size:12px;color:var(--ink3)}

.lt-toc{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 14px}
.lt-toc a{font-size:12.5px;font-weight:600;padding:5px 11px;border-radius:999px;border:1px solid var(--line);color:var(--ink2);text-decoration:none;background:rgba(255,255,255,.03)}
.lt-toc a:hover{border-color:var(--teal);color:#fff}
.lt-lesson{--c:#7FD0FF;display:flex;flex-direction:column;gap:18px}
.lt-loading{color:var(--ink3);padding:30px 0;text-align:center}
.lt-goalbox{margin:0;padding:14px 18px;border-radius:16px;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);color:#fff;font-size:15.5px;line-height:1.55}
.lt-sec{padding:22px clamp(16px,3vw,28px);border-radius:22px;background:var(--glass);border:1px solid var(--line);scroll-margin-top:110px}
.lt-sec h3{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:21px;font-weight:700;color:#fff}
.lt-sec h3 .ic{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--c) 18%,transparent);color:var(--c);font-size:16px;font-weight:800;flex:none}
.lt-sec h3 small{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3);margin-left:auto}
.lt-sec p{margin:0 0 12px;font-size:16px;line-height:1.7;color:var(--ink2)}
.lt-sec p:last-child{margin-bottom:0}
.lt-sec b{color:#fff}.lt-sec code{font-family:inherit;color:var(--teal);background:rgba(94,234,212,.1);padding:1px 6px;border-radius:6px}
.lt-list{margin:0;padding-left:20px;line-height:1.7;font-size:15.5px}
.lt-tbl{overflow-x:auto;margin:6px 0 16px;border-radius:14px;border:1px solid var(--line)}
.lt-tbl table{border-collapse:collapse;width:100%;min-width:360px;font-size:15px}
.lt-tbl th{text-align:left;padding:10px 12px;background:rgba(255,255,255,.06);color:#fff;font-weight:700;font-size:13px;letter-spacing:.04em}
.lt-tbl td{padding:9px 12px;border-top:1px solid var(--line);color:var(--ink2);vertical-align:top}
.lt-tbl td.k{color:#fff;font-weight:600;white-space:nowrap}
.lt-ex{display:grid;gap:8px;margin:6px 0 14px}
.lt-exi{display:flex;gap:12px;align-items:flex-start;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid var(--line)}
.lt-exi span{display:flex;flex-direction:column;gap:2px;min-width:0}
.lt-exi b{color:#fff;font-size:16.5px;line-height:1.45}
.lt-exi em{font-style:normal;color:var(--ink3);font-size:14.5px;line-height:1.5}
.lt-exi small,.lt-v small{color:var(--ink3);font-size:13px;line-height:1.5;margin-top:2px}
.lt-say{flex:none;width:36px;height:36px;border-radius:50%;border:1px solid var(--line2);background:rgba(255,255,255,.05);color:#fff;cursor:pointer;font-size:15px}
.lt-say:hover{border-color:var(--teal)}
.lt-say.pp-btn{width:auto;height:auto;border-radius:999px;margin-top:10px}
.lt-box{padding:14px 16px;border-radius:14px;margin:4px 0 14px;font-size:15px;line-height:1.6}
.lt-box b{display:block;margin-bottom:6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.lt-box ul{margin:0;padding-left:18px}.lt-box li{margin:4px 0}
.lt-box.warn{background:rgba(255,107,127,.1);border:1px solid rgba(255,107,127,.35)}.lt-box.warn>b{color:#FF9AA9}
.lt-box.tip{background:rgba(255,179,71,.1);border:1px solid rgba(255,179,71,.35)}.lt-box.tip>b{color:var(--gold2)}
.lt-voc{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media (max-width:720px){.lt-voc{grid-template-columns:1fr}}
.lt-v{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid var(--line)}
.lt-v>span{display:flex;flex-direction:column;flex:1;min-width:0}
.lt-v b{color:#fff;font-size:16px}.lt-v em{font-style:normal;color:var(--ink3);font-size:14px}
.lt-v .art{font-weight:700}.art.der{color:var(--der)}.art.die{color:var(--die)}.art.das{color:var(--das)}
.lt-srs{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink3);cursor:pointer}
.lt-srs:hover{color:var(--teal);border-color:var(--teal)}.lt-srs:disabled{color:var(--teal);border-color:var(--teal)}
.lt-read{padding:16px 18px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line);font-size:16.5px;line-height:1.75;color:#fff}
.lt-gloss{display:flex;flex-wrap:wrap;gap:6px 14px;margin:12px 0 0;font-size:13.5px;color:var(--ink3)}
.lt-gloss b{color:var(--ink2)}
.lt-rq{margin:14px 0 0;padding-left:20px;line-height:1.6}.lt-rq li{margin:8px 0}
.lt-rq details,.lt-sample{margin-top:4px}
.lt-rq summary,.lt-sample summary{cursor:pointer;color:var(--teal);font-weight:600;font-size:14px}
.lt-sample{padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line);margin:8px 0}
.lt-sample p{margin:10px 0 0;color:#fff}
.lt-mini{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.lt-links{display:flex;gap:8px;flex-wrap:wrap}
.lt-qs{display:grid;gap:10px}
.lt-q{display:flex;gap:12px;padding:14px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.03)}
.lt-q .n{flex:none;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff;font-size:13px;font-weight:700}
.lt-q .body{flex:1;min-width:0}
.lt-q .body>p{margin:0 0 10px;color:#fff;font-size:16px}
.lt-q .opts{display:flex;gap:8px;flex-wrap:wrap}
.lt-q .opt{padding:9px 16px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:#fff;cursor:pointer;font-size:15px}
.lt-q .opt:hover{border-color:var(--teal)}
.lt-q .opt.ok{border-color:var(--ok);background:rgba(94,234,212,.15)}.lt-q .opt.no{border-color:var(--bad);background:rgba(255,107,127,.15)}
.lt-q .inp{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.lt-q input,.lt-q textarea{flex:1;min-width:160px;padding:10px 12px;border-radius:12px;border:1px solid var(--line2);background:rgba(0,0,0,.25);color:#fff;font:inherit;font-size:16px}
.lt-q textarea{width:100%;flex-basis:100%;resize:vertical}
.lt-q .um{display:flex;gap:4px}.lt-q .um button{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:rgba(255,255,255,.05);color:#fff;cursor:pointer}
.lt-q .fb{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05);font-size:14.5px;line-height:1.55;border-left:3px solid var(--teal)}
.lt-q.no .fb{border-left-color:var(--bad)}.lt-q.ok{border-color:rgba(94,234,212,.5)}.lt-q.no{border-color:rgba(255,107,127,.5)}
.lt-q .fb .e{color:var(--ink3)}
.lt-q .self{display:flex;gap:8px;margin-top:8px}.lt-q .self button{padding:6px 12px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:#fff;cursor:pointer;font-size:13.5px}
.lt-score{margin-top:12px;font-weight:700;color:var(--gold2)}
.lt-chk{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.lt-chk label{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:15.5px;line-height:1.5;color:var(--ink2)}
.lt-chk input{width:20px;height:20px;margin-top:3px;accent-color:var(--teal);flex:none}
.lt-finish{text-align:center;padding:10px 0 4px}
.pp-btn.big{min-height:54px;padding:0 28px;font-size:17px}
.lt-map .lt-dot.ms{font-size:13px}
@media (max-width:640px){.lt-sec{padding:18px 14px}.lt-sec h3{font-size:18px}.lt-sec h3 small{display:none}}
@media (max-width:640px){.pg-plan .lt-day{padding:14px 0;background:transparent;border:0}.pg-plan .lt-day-head{padding:0 4px}.lt-tbl table{min-width:0;font-size:14px}.lt-tbl th,.lt-tbl td{padding:8px 9px}}
.lt-map .lt-dot.pend{opacity:.35;border-style:dashed}
