.choir-back{display:inline-block;font-size:.875rem;margin-bottom:23px}.choir-teaser{display:flex;align-items:center;gap:22px;padding:24px 26px;border:1px solid #686547;background:linear-gradient(110deg,#343220,#252c20);border-radius:14px;margin-bottom:28px}.choir-teaser>span:first-child{color:var(--orange)}.choir-teaser svg{width:52px;height:44px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.choir-teaser small{display:block;color:var(--orange);font-size:.6875rem;letter-spacing:1.2px}.choir-teaser strong{display:block;font:650 1.25rem/1.5 'Manrope',sans-serif;margin:5px 0}.choir-teaser>span>span{font-size:.875rem;color:var(--muted)}.choir-teaser>b{margin-left:auto;color:var(--green);font-size:1.6rem}.choir-teaser:hover{border-color:var(--orange)}
.choir-topline{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-bottom:21px}.choir-topline label{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.875rem;min-height:44px}.choir-topline input{width:17px;height:17px;accent-color:var(--green)}.choir-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:25px;align-items:start}.choir-stage{border:1px solid #49513f;border-radius:19px;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,#303729,#1d241b 70%);position:sticky;top:22px;padding:20px 15px 24px}.choir-stage>svg{display:block;width:100%;height:auto;margin:22px 0 0}.choir-ring{fill:#121a1344;stroke:#58644a;stroke-dasharray:5 7}.choir-path{fill:none;stroke:#899b71;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.choir-person{fill:#2e3527;stroke:#758466;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:.6}.choir-voice{opacity:0}.choir-floor{fill:#6b785b}.choir-stage[data-choir-role=call] .choir-person.call{stroke:var(--orange);fill:#463527;opacity:1}.choir-stage[data-choir-role=response] .choir-person.response{stroke:var(--green);fill:#3c4b31;opacity:1}.choir-stage[data-choir-role=call] .choir-floor.call{fill:var(--orange)}.choir-stage[data-choir-role=response] .choir-floor.response{fill:var(--green)}.choir-stage[data-choir-speaking=true][data-choir-role=call] .call .choir-voice,.choir-stage[data-choir-speaking=true][data-choir-role=response] .response .choir-voice{opacity:1;animation:choir-voice 1s ease-in-out infinite alternate}.choir-stage-labels{display:grid;grid-template-columns:1fr 1fr;gap:12px}.choir-stage-labels>span{display:grid;justify-items:center;gap:7px;color:var(--muted);padding:12px 5px;border:1px solid transparent;border-radius:12px}.choir-stage-labels b{font-size:.6875rem;letter-spacing:1px}.choir-stage-labels strong{font:650 1rem 'Manrope',sans-serif}.choir-stage-labels small{font-size:.75rem}.choir-stage[data-choir-role=call] .choir-stage-labels .call{background:#403122;border-color:#796043;color:var(--orange)}.choir-stage[data-choir-role=response] .choir-stage-labels .response{background:#303c27;border-color:#66774e;color:var(--green)}.choir-stage>p{text-align:center;font-size:.8125rem;margin:24px 0 0}.choir-panel{padding:30px;border:1px solid var(--line);border-radius:18px;background:var(--panel);min-width:0}.choir-panel h2{font-size:1.65rem;line-height:1.35;margin:12px 0 19px}.choir-panel p{font-size:.9375rem;line-height:1.75}.choir-known-response{display:grid;gap:9px;padding:22px;border:1px solid #5e7150;border-radius:12px;background:#2b3724;margin:25px 0}.choir-known-response>span{color:var(--muted);font-size:.75rem}.choir-known-response>strong{font:600 1.7rem/1.35 'Manrope',sans-serif;color:var(--green)}.choir-known-response small{color:var(--muted);font-size:.8125rem;line-height:1.6}.choir-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.choir-actions .btn{font-size:.875rem}.choir-actions .textlink{width:100%;margin-top:8px;font-size:.875rem}.choir-audio{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:19px;margin-top:25px;font-size:.75rem;line-height:1.7;color:var(--muted)}.choir-audio button{font-size:.75rem;min-height:40px;margin-left:auto}.choir-progress{display:flex;gap:10px;list-style:none;padding:0;margin:0 0 28px}.choir-progress li{display:flex;align-items:center;gap:7px;flex:1;color:var(--muted);font-size:.75rem;padding-bottom:12px;border-bottom:3px solid #3b4633}.choir-progress li>span{font-size:.6875rem}.choir-progress .current{color:var(--orange);border-color:var(--orange)}.choir-progress .done{color:var(--green);border-color:var(--green)}.choir-bubble{border:1px solid #796144;border-left-width:4px;border-radius:0 12px 12px 0;background:#302b21;padding:21px;margin:20px 0}.choir-bubble>span{display:block;font-size:.6875rem;letter-spacing:.8px;text-transform:uppercase;color:var(--orange);margin-bottom:12px}.choir-bubble>strong{display:block;font:550 1.35rem/1.55 'Manrope',sans-serif}.choir-bubble>p{font-size:.875rem;margin-top:10px}.choir-bubble>.textlink{margin-top:13px;font-size:.75rem;min-height:36px}.choir-bubble.response{background:#283222;border-color:#75865c}.choir-bubble.response>span{color:var(--green)}.choir-bubble.response>strong{color:var(--green);font-size:1.65rem}.choir-recall{padding:5px 0 15px}.choir-recall>span{font-size:2.2rem;letter-spacing:13px;color:var(--green)}.choir-recall p{font-size:.875rem}.choir-hints{display:flex;gap:18px;flex-wrap:wrap;margin-top:15px}.choir-hints button{min-height:40px;font-size:.8125rem}.choir-hints button:disabled{color:var(--muted);cursor:default}.choir-panel .textlink svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;vertical-align:middle;margin-right:6px}.choir-pace{font-size:.8125rem!important;margin:20px 0}.choir-next{font-size:.8125rem;width:100%;justify-content:center;line-height:1.5}.choir-skip{font-size:.8125rem;line-height:1.7;text-align:left;min-height:44px}.choir-mini-sequence{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:24px 0;grid-auto-flow:column;grid-template-rows:repeat(2,1fr)}.choir-mini-sequence>span{font-size:.75rem;text-align:center;padding:10px;border:1px solid #49503f;border-radius:7px;color:var(--muted)}.choir-mini-sequence .current.call{background:#463626;color:var(--orange);border-color:var(--orange)}.choir-mini-sequence .current.response{background:#34442a;color:var(--green);border-color:var(--green)}.choir-complete-mark{display:grid;place-items:center;width:68px;height:68px;border:2px solid var(--green);border-radius:50%;font-size:2rem;color:var(--green);margin-bottom:24px}.choir-footnote{padding:24px 0;margin-top:16px;max-width:1000px}.choir-footnote>strong{font-size:.9375rem}.choir-footnote>p:not(.source-note){font-size:.875rem;line-height:1.8;margin-top:10px}.choir-footnote .source-note{margin-top:15px}
@keyframes choir-voice{from{opacity:.4}to{opacity:1}}
@media(max-width:1150px){.choir-layout{grid-template-columns:1fr}.choir-stage{position:static;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;padding:10px 23px}.choir-stage>svg{margin:0;grid-row:1/3;max-height:215px}.choir-stage-labels{gap:8px}.choir-stage>p{margin:0 0 12px}.choir-panel{padding:28px}.choir-panel h2{font-size:1.6rem}.choir-known-response{max-width:650px}}
@media(max-width:650px){.choir-teaser{padding:19px;gap:14px}.choir-teaser svg{width:38px}.choir-teaser small{font-size:.5625rem;letter-spacing:.7px}.choir-teaser strong{font-size:1.1rem}.choir-teaser>span>span{font-size:.75rem;line-height:1.6;display:block}.choir-teaser>b{display:none}.choir-topline{gap:6px;margin-bottom:16px}.choir-topline label{font-size:.8125rem}.choir-layout{gap:18px}.choir-stage{display:block;padding:8px 13px 17px}.choir-stage>svg{max-height:158px;margin:0 auto}.choir-stage-labels{gap:10px}.choir-stage-labels>span{padding:9px 4px;gap:5px}.choir-stage-labels b{font-size:.625rem}.choir-stage-labels strong{font-size:.875rem}.choir-stage-labels small{font-size:.6875rem}.choir-stage>p{margin:15px 0 0;font-size:.75rem}.choir-panel{padding:21px}.choir-panel h2{font-size:1.4rem}.choir-panel p{font-size:.875rem}.choir-known-response{padding:18px}.choir-known-response>strong{font-size:1.55rem}.choir-bubble{padding:17px}.choir-bubble>strong{font-size:1.15rem}.choir-bubble.response>strong{font-size:1.5rem}.choir-bubble>p{font-size:.8125rem}.choir-actions{align-items:stretch;flex-direction:column}.choir-actions .btn{justify-content:center}.choir-progress{gap:9px}.choir-progress li{font-size:.6875rem}.choir-progress li>span{font-size:.625rem}.choir-hints{gap:15px}.choir-mini-sequence{gap:6px}.choir-mini-sequence>span{padding:9px 4px;font-size:.6875rem}.choir-footnote>p:not(.source-note){font-size:.8125rem}}
