.ltc-btn.ltc-narration { border: 2px solid #2dd4bf; background: #103a49; color: #f1fffc; font-weight: 700; }
.ltc-narration[data-playing="true"] { background: #2dd4bf; color: #081622; box-shadow: 0 0 0 3px #2dd4bf40; }
.ltc-audio-status { color: #bde7dc; font-size: .85rem; margin: .4rem 0 .8rem; }
#display-civilization{color:var(--brass);font:700 10px var(--sans);letter-spacing:.12em;text-transform:uppercase;margin:3px 0}
#display-civilization[hidden]{display:none}
.lesson-library-status{font-size:12px;line-height:1.4;margin-top:6px;color:var(--parch)}
#lesson-library-retry{pointer-events:auto;margin-top:6px;padding:6px 10px;border:1px solid var(--brass);border-radius:3px;background:var(--ocean);color:var(--parch)}
.quest-step.locked{opacity:.5;cursor:not-allowed}
#lesson-task-root{position:fixed;inset:0;pointer-events:none;z-index:10002;font-family:'DM Sans',system-ui,sans-serif}
.ltc-card{pointer-events:auto;position:absolute;left:12px;bottom:12px;width:min(420px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:14px 16px;background:rgba(8,38,52,.96);color:#f3f0e5;border:1px solid #bb9864;border-top:4px solid #d97966;border-radius:4px;box-shadow:4px 5px 0 rgba(4,26,36,.4)}
.ltc-card[hidden]{display:none}
.ltc-kicker{font:700 11px 'DM Sans',sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#bb9864}
.ltc-stepper{display:flex;gap:6px;margin:0 30px 10px 0;flex-wrap:wrap}
.ltc-stepper .ltc-step{min-width:44px;min-height:44px;padding:8px;text-align:center;border-radius:999px}
.ltc-step[aria-current=step]{background:#2dd4bf;color:#081622;border-color:#2dd4bf}
.ltc-title{font:600 1.1rem 'Fraunces',Georgia,serif;margin:4px 0 8px}
.ltc-context{font-size:.72rem;line-height:1.35;letter-spacing:.04em;text-transform:uppercase;color:#89c7bf;margin:-2px 0 8px}
.ltc-inquiry{font-size:.82rem;line-height:1.4;color:#f3f0e5;padding:7px 9px;margin:0 0 8px;border-left:2px solid #6fae9f;background:rgba(111,174,159,.1)}
.ltc-directive{font-size:.88rem;line-height:1.45;color:#dce9e5;padding:6px 8px;border-left:3px solid #bb9864;background:rgba(243,240,229,.07)}
.ltc-question{font-weight:700;font-size:.98rem;line-height:1.4;margin:10px 0 8px}
.ltc-options{display:flex;flex-direction:column;gap:6px}
.ltc-btn{font:600 .88rem 'DM Sans',sans-serif;text-align:left;padding:9px 11px;border-radius:3px;border:1px solid #bb9864;background:#123f55;color:#f3f0e5;cursor:pointer;min-height:40px}
.ltc-btn:hover:not(:disabled){background:#176276}
.ltc-btn:focus-visible{outline:2px solid #d97966;outline-offset:2px}
.ltc-btn:disabled{opacity:.55;cursor:default}
.ltc-btn[data-state=wrong]{border-color:#d97966;background:#5a2a24}
.ltc-btn[data-state=right]{border-color:#6fae9f;background:#1d5a52;opacity:1}
.ltc-status{margin-top:10px;font-size:.86rem;line-height:1.4;min-height:1.2em}
.ltc-status[data-kind=error]{color:#f0b8aa}.ltc-status[data-kind=ok]{color:#a7e3d3}
.ltc-actions{display:flex;gap:8px;margin-top:10px}
.ltc-primary{background:#bb9864;color:#0b3447;font-weight:700;text-align:center}
.ltc-primary:hover:not(:disabled){background:#d2b07a}
.ltc-close{position:absolute;top:6px;right:8px;background:none;border:0;color:#f3f0e5;font-size:1.3rem;cursor:pointer;padding:4px 8px}
@media(max-width:700px){.ltc-card{left:8px;bottom:8px;max-height:60dvh}}
