/* 추진기·타 영상 + 미션 화면 */
.propeller-lab [hidden]{display:none!important}
.propeller-lab :is(p,h2,h3,button,summary,output,label,strong){word-break:keep-all;overflow-wrap:break-word}
.propeller-lab .experiment-heading p{font-size:15px;line-height:1.8;max-width:800px}
.propeller-lab .experiment-chip{white-space:nowrap}

/* 단계 탭 */
.pl-steps,.pl-missions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:0 0 20px}
.pl-missions{grid-template-columns:repeat(4,minmax(0,1fr))}
.pl-steps button,.pl-missions button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:9px 10px;border:1px solid #dce6d8;border-radius:9px;background:#f1f5ed;color:#4f6c60;font-size:13px;font-weight:650;line-height:1.35;text-align:center}
.pl-steps button span,.pl-missions button span{font-size:11px;opacity:.65;font-variant-numeric:tabular-nums}
.pl-steps button i,.pl-missions button i{font-style:normal;color:#c58b2f;min-width:1ch}
.pl-steps button:hover,.pl-missions button:hover{background:#f7faf3}
.pl-steps button[aria-pressed=true],.pl-missions button[aria-pressed=true]{background:#286e62;border-color:#286e62;color:#fff}
.pl-steps button[aria-pressed=true] i,.pl-missions button[aria-pressed=true] i{color:#ffe19b}

/* 장면 소개 */
.prop-mechanisms{background:#fff;border:1px solid #d9e5db;border-radius:12px;padding:20px 24px;margin-bottom:22px}
.prop-mechanisms h3{margin:0 0 10px;font-size:19px;color:#285b50;line-height:1.5}
.prop-mechanisms p{margin:0;color:#526f64;font-size:15px;line-height:1.85;max-width:1000px}
.prop-mechanisms .prop-condition{display:inline-block;background:#eff5eb;border-radius:6px;color:#526f50;font-size:13px;padding:7px 11px;margin-top:15px}

/* 영상 영역 */
.propeller-lab .experiment-canvas{min-height:0;aspect-ratio:760/480}
.pl-time{font-variant-numeric:tabular-nums}
.pl-bar{display:flex;align-items:center;gap:10px;padding:12px 16px;border-top:1px solid #e1ebe5;background:#f8fbf7}
.pl-bar .primary{min-width:112px}
.pl-bar input[type=range]{flex:1;margin:0;min-width:0;--fill:0%}
.pl-bar .secondary{white-space:nowrap}
.pl-bar [data-speed]{min-width:56px}
.pl-caption{margin:0;padding:15px 20px;min-height:76px;background:#f2f7ee;border-top:1px solid #dfe9dc;color:#2f5a4c;font-size:16px;line-height:1.75;font-weight:550}

/* 조건·예측 */
.propeller-lab .experiment-controls{padding:20px}
.propeller-lab .experiment-controls .experiment-hint{font-size:13px;line-height:1.8}
.propeller-lab .experiment-controls select{width:100%;margin-top:7px;font-size:13px;padding:9px 10px;color:#35574c;background:#fafcf7;border:1px solid #d3dfd0}
.pl-predict{margin-top:20px;padding:16px;background:#eff5eb;border-radius:10px;color:#47674f}
.pl-predict>b{font-size:13px;color:#285b50}
.pl-predict>p{margin:8px 0 0;font-size:14px;line-height:1.7;color:#3f5f50}
.pl-options{display:grid;gap:8px;margin-top:12px}
.pl-options button{min-height:44px;text-align:left;border:1px solid #cbdcc5;border-radius:7px;background:#fff;color:#35574c;padding:10px 14px;font-size:14px;line-height:1.5}
.pl-options button:hover:not(:disabled){border-color:#5a9373;background:#f9fcf5}
.pl-options button[data-correct=true]{background:#dfeeda;border-color:#62906a;opacity:1}
.pl-options button[data-correct=false]{background:#fff4e8;border-color:#be9366;opacity:1}
.pl-options button:disabled{opacity:.7}
.pl-predict .pl-feedback{font-size:13px;line-height:1.8;color:#3f6a52;min-height:24px;margin-top:12px}

.propeller-lab .prop-simple-readouts{grid-template-columns:repeat(2,minmax(0,1fr))}
.propeller-lab .experiment-readouts strong{font-size:19px}
.prop-takeaway{border-left:3px solid #719b71;background:#f5f8f0;padding:17px 20px;color:#44634f;margin-bottom:23px}
.prop-takeaway b{font-size:15px}.prop-takeaway p{font-size:14px;line-height:1.85;margin:8px 0 0}

/* 조종 미션 */
.pl-goal{font-size:14px;line-height:1.75;color:#3f5f50;margin:0 0 14px}
.pl-cmd{margin-top:14px}
.pl-cmd>b{display:block;font-size:13px;color:#405f53;margin-bottom:8px}
.pl-chips{display:flex;flex-wrap:wrap;gap:7px}
.pl-chips button{min-height:42px;padding:8px 12px;border:1px solid #d3dfd0;border-radius:7px;background:#fafcf7;color:#35574c;font-size:13px;font-weight:600}
.pl-chips button[aria-pressed=true]{background:#286e62;border-color:#286e62;color:#fff}
.pl-chips button:disabled{opacity:.6}
.pl-actions{display:flex;gap:8px;margin-top:20px}
.pl-actions .primary{flex:1}
.pl-link{margin-top:14px;padding:4px 0;font-size:13px;color:#2f7a6b;text-decoration:underline;text-underline-offset:3px}
.pl-hint{margin:8px 0 0;padding:11px 13px;background:#fff8e8;border-radius:7px;color:#7a5b22;font-size:13px;line-height:1.7}

.propeller-lab :is(button,input,select,summary):focus-visible{outline:3px solid #3c897a;outline-offset:3px}
@media(max-width:850px){
  .pl-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pl-missions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .propeller-lab .experiment-controls>.experiment-hint,.propeller-lab .experiment-controls>.pl-predict{grid-column:1/-1}
  .propeller-lab .experiment-readouts strong{font-size:17px}
}
@media(max-width:560px){
  .pl-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pl-steps button,.pl-missions button{font-size:12px;padding:8px}
  .prop-mechanisms{padding:17px}.prop-mechanisms h3{font-size:17px}.prop-mechanisms p{font-size:14px}
  .pl-bar{flex-wrap:wrap;gap:8px;padding:10px 12px}.pl-bar input[type=range]{order:5;flex:1 1 100%}
  .pl-caption{font-size:15px;padding:13px 16px;min-height:96px}
  .propeller-lab .experiment-stagebar{font-size:12px}.propeller-lab .experiment-readouts strong{font-size:16px}
  .propeller-lab .experiment-heading p{font-size:14px}
}
@media(prefers-reduced-motion:reduce){.pl-steps button,.pl-missions button{transition:none}}
