.listening-filter{display:grid;gap:8px;max-width:440px;margin:0 0 24px;font-weight:600}
.listening-filter select{width:100%;padding:12px;background:#fff;border:1px solid var(--border);border-radius:9px;color:var(--ink)}
.listening-list{max-width:760px;display:grid}
.listening-list>button{display:flex;justify-content:space-between;align-items:center;text-align:left;gap:16px;padding:17px 4px;background:transparent;border:0;border-bottom:1px solid var(--border);color:var(--ink)}
.listening-list>button:hover{background:#eef2ec}
.listening-list b,.listening-list small{display:block}.listening-list b{font-size:1.05rem;font-weight:600}.listening-list small{font-size:.8rem;color:var(--muted);margin-top:4px}
.compact-audio{display:grid;justify-items:center;gap:22px;margin:6px 0 28px}
.listening-play{display:flex;align-items:center;justify-content:center;gap:13px;min-height:76px;min-width:150px;padding:18px 24px;background:var(--ink);color:#fff;border:0;border-radius:50px;font-size:1.1rem;font-weight:600}
.listening-play>span{font-size:1.3rem}.listening-play[aria-pressed="true"]{background:#385b50}
.listening-transcript{width:100%;font-size:.9rem;color:var(--muted)}
.listening-transcript summary{cursor:pointer;text-align:center;list-style:none;text-decoration:underline;text-underline-offset:4px}
.listening-transcript p{margin:16px 0;line-height:1.65;color:var(--ink);font-size:1.05rem}
.listening-transcript p>small{display:block;font-size:.75rem;font-weight:600;color:var(--muted)}
.listening-title h1{font-size:clamp(22px,3vw,28px);line-height:1.4;text-align:center}
.listening-options{gap:9px}.listening-options .journey-option{display:block;min-height:54px;text-align:center;padding:13px;border-width:1px;font-size:1.05rem}
.listening-options .journey-option b{font-weight:500}.listening-options .journey-option.selected{border-width:2px;padding:12px}
.journey-shell:has(.compact-audio) .journey-card{width:min(560px,100%)}
.journey-shell:has(.compact-audio) .journey-bottom{grid-template-columns:minmax(0,360px) auto}
.listening-finished{max-width:560px;margin:60px auto;display:grid;gap:20px;text-align:center;justify-items:center}
.listening-empty{padding:24px 0;color:var(--muted)}
@media(max-width:900px){.journey-shell:has(.compact-audio) .journey-bottom{grid-template-columns:minmax(0,680px)}}
@media(max-width:720px){.compact-audio{margin:14px 0 24px;gap:20px}.listening-play{min-height:68px}.listening-list>button{padding:15px 2px}}
