/* 라디오 방송실: 학습자가 조작하는 가상의 연습 콘솔 */
.rs-studio{--rs-ink:#163f3d;--rs-border:#273c38;--rs-cream:#fff8e9;--rs-mint:#d9eee4;--rs-yellow:#ffe2a0;--rs-coral:#f4ad8c;color:var(--rs-ink);font-family:inherit;display:grid;gap:14px;width:100%;min-width:0}
.rs-studio *{box-sizing:border-box}
.rs-header,.rs-script,.rs-console,.rs-record{border:2px solid var(--rs-border);border-radius:16px;box-shadow:4px 4px 0 var(--rs-border);min-width:0}
.rs-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:clamp(16px,1.7vw,24px);background:var(--rs-cream)}
.rs-eyebrow{display:inline-block;padding:5px 9px;border:1.5px solid var(--rs-border);border-radius:7px;background:var(--rs-yellow);font-size:13px;font-weight:800;line-height:1.3}
.rs-header h2{margin:8px 0 3px;font-size:clamp(25px,2.3vw,36px);line-height:1.25;letter-spacing:-.03em}.rs-header p{margin:0;font-size:16px;line-height:1.5;color:#47645b}
.rs-air{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;align-items:center;min-width:165px;border:2px solid var(--rs-border);border-radius:10px;background:#d8ded7;padding:9px 13px}.rs-air>span{grid-row:1/3;width:14px;height:14px;border-radius:50%;background:#8a9991;border:1px solid #496058}.rs-air.is-on{background:#ffe0ca}.rs-air.is-on>span{background:#db4539;box-shadow:0 0 0 4px #f5b9a7}.rs-air strong{font-size:14px}.rs-air small{font-size:12px;color:#516a61}
.rs-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:14px;align-items:stretch}
.rs-script,.rs-console,.rs-record{padding:clamp(16px,1.5vw,23px)}.rs-script{grid-row:1/3;background:rgba(255,248,233,.98);display:flex;flex-direction:column}.rs-console{background:#dceddf}.rs-record{background:#fff1ce}
.rs-panel-title{display:flex;align-items:center;gap:9px;margin-bottom:11px}.rs-panel-title span{flex:none;width:31px;height:31px;display:grid;place-items:center;background:#fffaf0;border:1.5px solid var(--rs-border);border-radius:8px;font-size:13px;font-weight:800}.rs-panel-title h3{margin:0;font-size:clamp(19px,1.4vw,23px);line-height:1.3}
.rs-script-text,.rs-empty{flex:1;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:clamp(15px,1.4vw,22px);border:1.5px solid #b2c7b1;border-radius:11px;background:#fffdf5;line-height:1.8;font-size:clamp(17px,1.2vw,20px);color:#274b43}.rs-empty{color:#607b70}.rs-footnote,.rs-note{display:block;font-size:13px;line-height:1.5;color:#4f6d60;margin:10px 0 0}
.rs-console>p,.rs-record>p:not(.rs-note){margin:0 0 11px;font-size:15px;line-height:1.5}.rs-sounds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rs-studio button,.rs-download{appearance:none;border:2px solid var(--rs-border);border-radius:10px;background:#fffaf0;color:var(--rs-ink);box-shadow:3px 3px 0 var(--rs-border);font:inherit;font-size:15px;font-weight:800;min-height:44px;line-height:1.35;cursor:pointer;text-decoration:none}
.rs-sounds button{padding:10px 8px;display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-height:68px}.rs-sounds button:nth-child(2){background:#ffebba}.rs-sounds button:nth-child(3){background:#f9ded0}.rs-sounds small{font-size:12px;font-weight:600;color:#537065}
.rs-volume{display:grid;gap:7px;margin:16px 0;font-weight:800;font-size:15px}.rs-volume span{display:flex;justify-content:space-between}.rs-volume input{width:100%;min-height:32px;margin:0;accent-color:#22826f;cursor:pointer}.rs-air-button{width:100%;padding:11px;background:#ffd078!important}.rs-air-button.is-on{background:#efaa91!important}
.rs-record-line{display:flex;align-items:center;gap:9px;margin:4px 0 9px}.rs-rec-indicator{width:13px;height:13px;border-radius:50%;background:#9aaca0}.rs-rec-indicator.is-recording{background:#d94337;box-shadow:0 0 0 4px #f5c1b2}
.rs-record-actions{display:flex;gap:8px;flex-wrap:wrap}.rs-record-actions button{padding:9px 14px}.rs-record-actions button:first-child{background:#f7c2aa}.rs-studio button:disabled{opacity:.52;cursor:not-allowed;box-shadow:none}.rs-studio button:not(:disabled):active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--rs-border)}.rs-studio button:focus-visible,.rs-download:focus-visible,.rs-volume input:focus-visible{outline:3px solid #df7736;outline-offset:3px}
.rs-playback{display:grid;gap:8px;margin-top:13px;padding:12px;background:#fffaf0;border:1.5px solid #d3b989;border-radius:9px}.rs-playback label{font-size:14px;font-weight:800}.rs-playback audio{display:block;width:100%;max-width:100%}.rs-download{display:inline-flex;align-items:center;justify-content:center;justify-self:start;padding:9px 14px;background:#d7eddf}
.rs-status{margin:0;padding:12px 15px;background:#fff5d9;border:1.5px solid #b99b63;border-radius:10px;color:#5f4d2a;font-size:15px;line-height:1.5;font-weight:700}
@media(max-width:900px),(max-height:600px){.rs-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.rs-script{grid-row:auto}.rs-script-text,.rs-empty{min-height:120px}}
@media(max-width:480px){.rs-header{align-items:flex-start;flex-direction:column}.rs-air{width:100%}.rs-script,.rs-console,.rs-record{padding:15px}.rs-sounds{grid-template-columns:minmax(0,1fr)}.rs-sounds button{min-height:54px;flex-direction:row;gap:9px}.rs-record-actions button{flex:1}.rs-download{justify-self:stretch}}
@media(prefers-reduced-motion:reduce){.rs-studio *, .rs-studio *::before, .rs-studio *::after{animation:none!important;transition:none!important}}
/* 짧은 원고일 때도 방송실 장면이 펼쳐지도록 사진 위에 읽기판을 놓습니다. */
.rs-script{background:linear-gradient(rgba(247,250,238,.42),rgba(247,250,238,.55)),url('./assets/studio-console.webp') center/cover no-repeat}
.rs-script-text,.rs-empty{flex:0 0 auto;background:rgba(255,253,245,.94);min-height:110px}
.rs-script .rs-panel-title{align-self:flex-start;padding:8px 10px;border-radius:9px;background:rgba(255,250,239,.93)}
.rs-script .rs-footnote{margin-top:auto;padding:9px 11px;border-radius:8px;background:rgba(255,250,239,.94);color:#365a4e}
.rs-script-text,.rs-empty{margin-top:auto}
.rs-script .rs-footnote{margin-top:10px}
