
.tx-luyin{padding:.2rem 0;font-size:0.72rem}
.tx-luyin .ly-layout{display:flex;gap:.7rem;align-items:flex-start;flex-wrap:wrap}
.tx-luyin .ly-stage{flex:0 0 60%;min-width:0;background:#fff;border:1px solid #e8ecf1;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(20,30,60,.05)}
.tx-luyin .ly-side{flex:0 0 38%;min-width:0;display:flex;flex-direction:column;gap:.6rem}
.tx-luyin .ly-stage-head{display:flex;justify-content:space-between;align-items:center;padding:.5rem .7rem;border-bottom:1px solid #eef1f4;flex-wrap:wrap;gap:.4rem}
.tx-luyin .ly-modes{display:inline-flex;background:#f2f4f8;border-radius:8px;padding:2px;gap:2px}
.tx-luyin .ly-mode{border:0;background:transparent;padding:.22rem .6rem;border-radius:6px;cursor:pointer;font-size:0.72rem;color:#6b7280}
.tx-luyin .ly-mode.act{background:#fff;color:#ff6500;box-shadow:0 1px 3px rgba(0,0,0,.1);font-weight:600}
.tx-luyin .ly-modes.disabled{opacity:.55;pointer-events:none}
.tx-luyin .ly-recinfo{display:none;align-items:center;gap:.35rem;font-variant-numeric:tabular-nums;font-weight:600;color:#ef4444;font-size:0.78rem}
.tx-luyin .ly-recinfo.live{display:inline-flex}
.tx-luyin .ly-dot{width:8px;height:8px;border-radius:50%;background:#ef4444;animation:lyPulse 1.2s infinite}
@-webkit-keyframes lyPulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.5)}100%{box-shadow:0 0 0 8px rgba(239,68,68,0)}}
@keyframes lyPulse{0%{box-shadow:0 0 0 0 rgba(239,68,68,.5)}100%{box-shadow:0 0 0 8px rgba(239,68,68,0)}}
.tx-luyin .ly-wave{position:relative;background:#12141c;height:150px}
.tx-luyin .ly-wave canvas{position:absolute;inset:0;width:100%;height:100%}
.tx-luyin .ly-hint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;color:#8a93a6;text-align:center;padding:1rem;pointer-events:none}
.tx-luyin .ly-hint b{font-size:1.5rem;color:#ff9a3d;letter-spacing:2px}
.tx-luyin .ly-hint p{margin:0;font-size:0.72rem;line-height:1.8}
.tx-luyin .ly-hint span{color:#ff9a3d;font-weight:600}
.tx-luyin .ly-countdown{position:absolute;inset:0;display:none;align-items:center;justify-content:center;font-size:4rem;font-weight:800;color:#ff9a3d;text-shadow:0 4px 24px rgba(0,0,0,.5);z-index:6;pointer-events:none}
.tx-luyin .ly-stage-foot{display:flex;gap:.5rem;padding:.55rem .7rem;background:#fafbfc;border-top:1px solid #eef1f4;flex-wrap:wrap}
.tx-luyin .ly-btn{border:0;cursor:pointer;padding:.42rem 1rem;border-radius:8px;font-size:0.75rem;font-weight:600;transition:.2s}
.tx-luyin .ly-start{background:linear-gradient(135deg,#ff9a3d,#ff6500);color:#fff;flex:1}
.tx-luyin .ly-start:hover:not(:disabled){filter:brightness(1.06)}
.tx-luyin .ly-stop{background:#ef4444;color:#fff}
.tx-luyin .ly-pause{background:#f3f4f6;color:#374151}
.tx-luyin .ly-btn:disabled{opacity:.5;cursor:not-allowed}
.tx-luyin .ly-card{background:#fff;border:1px solid #e8ecf1;border-radius:10px;padding:.55rem .7rem;box-shadow:0 1px 5px rgba(20,30,60,.04)}
.tx-luyin .ly-card h3{margin:0 0 .35rem;font-size:0.8rem;color:#1f2937}
.tx-luyin .ly-row{display:flex;align-items:center;justify-content:space-between;padding:4px 0;gap:.5rem;font-size:0.72rem}
.tx-luyin .ly-row>span{color:#374151;white-space:nowrap}
.tx-luyin .ly-row select{max-width:140px;padding:.18rem .3rem;border:1px solid #e0e4ea;border-radius:6px;background:#fff;font-size:0.72rem;color:#374151}
.tx-luyin .ly-range{flex:1;min-width:30px;accent-color:#ff6500;height:14px}
.tx-luyin .ly-val{min-width:28px;text-align:right;font-size:0.68rem;color:#6b7280}
.tx-luyin .ly-meter{flex:1;height:7px;background:#eef1f4;border-radius:5px;overflow:hidden;min-width:40px}
.tx-luyin .ly-meter i{display:block;height:100%;width:0;background:#22c55e;border-radius:5px;transition:width .08s linear,background .3s}
.tx-luyin .ly-src{display:flex;align-items:center;gap:.5rem;padding:.28rem .35rem;border:1px solid #eef1f4;border-radius:8px;margin-bottom:.3rem;background:#fafbfc}
.tx-luyin .ly-src.off{opacity:.5}
.tx-luyin .ly-src b{font-size:0.72rem;color:#1f2937;flex:none}
.tx-luyin .ly-src small{color:#9ca3af;font-size:0.66rem;flex:none}
.tx-luyin .ly-result{display:none;margin-top:.7rem;background:#fff;border:1px solid #e8ecf1;border-radius:10px;padding:.7rem}
.tx-luyin .ly-result h3{margin:0 0 .4rem;font-size:0.8rem;color:#1f2937}
.tx-luyin .ly-result audio{width:100%;border-radius:8px;margin:.3rem 0}
.tx-luyin .ly-result-meta{font-size:0.68rem;color:#6b7280;margin:.2rem 0 .45rem}
.tx-luyin .ly-mini-btn{border:1px solid #e0e4ea;background:#f8fafc;padding:.2rem .55rem;border-radius:6px;cursor:pointer;font-size:0.68rem;color:#374151;text-decoration:none;display:inline-block}
.tx-luyin .ly-dl{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border:0;font-weight:600}
.tx-luyin .ly-dl:hover{filter:brightness(1.06)}
.tx-luyin .ly-dl:disabled{opacity:.6;cursor:wait}
.tx-luyin .ly-hist{margin-top:.7rem}
.tx-luyin .ly-hist h3,.tx-luyin .ly-help h3{font-size:0.8rem;color:#1f2937;margin:0 0 .4rem;display:flex;justify-content:space-between;align-items:center}
.tx-luyin .ly-hrow{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #e8ecf1;border-radius:8px;padding:.35rem;margin-bottom:.4rem}
.tx-luyin .ly-play-btn{flex:none;width:30px;height:30px;border-radius:50%;border:0;background:linear-gradient(135deg,#ff9a3d,#ff6500);color:#fff;cursor:pointer;font-size:0.65rem}
.tx-luyin .ly-hmeta{flex:1;display:flex;flex-direction:column;font-size:0.68rem;color:#6b7280;min-width:0}
.tx-luyin .ly-hmeta b{color:#374151;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tx-luyin .ly-hops{display:flex;gap:.35rem;align-items:center;flex:none}
.tx-luyin .ly-del{color:#ef4444;border-color:#f3c2c2}
.tx-luyin .ly-clear{color:#ef4444;border-color:#f3c2c2;font-weight:400}
.tx-luyin .ly-empty{color:#9ca3af;text-align:center;padding:1rem;margin:0;font-size:0.72rem}
.tx-luyin .ly-help{margin-top:.7rem}
.tx-luyin .ly-help-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
.tx-luyin .ly-help-item{background:#fff;border:1px solid #e8ecf1;border-radius:8px;padding:.55rem .65rem}
.tx-luyin .ly-help-item b{font-size:0.72rem;color:#ff6500}
.tx-luyin .ly-help-item p{margin:.25rem 0 0;font-size:0.68rem;color:#4b5563;line-height:1.55}
.tx-luyin .ly-help-warn{margin:.6rem 0 0;font-size:0.66rem;color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.45rem .6rem}
@media(max-width:900px){.tx-luyin .ly-layout{flex-direction:column}.tx-luyin .ly-stage,.tx-luyin .ly-side{flex:0 0 100%;width:100%;min-width:0}.tx-luyin .ly-countdown{font-size:3.5rem}.tx-luyin .ly-help-grid{grid-template-columns:1fr}.tx-luyin .ly-wave{height:120px}}
.night .tx-luyin .ly-stage,.night .tx-luyin .ly-card,.night .tx-luyin .ly-result,.night .tx-luyin .ly-hrow,.night .tx-luyin .ly-help-item{background:#1e2128;border-color:#333842}
.night .tx-luyin .ly-stage-foot{background:#191c22;border-color:#333842}
.night .tx-luyin .ly-card h3,.night .tx-luyin .ly-result h3,.night .tx-luyin .ly-hist h3,.night .tx-luyin .ly-help h3{color:#e5e7eb}
.night .tx-luyin .ly-row>span{color:#d1d5db}
.night .tx-luyin .ly-modes{background:#191c22}
.night .tx-luyin .ly-mode{color:#9ca3af}
.night .tx-luyin .ly-mode.act{background:#2a2e37;color:#ff9a5a}
.night .tx-luyin .ly-src{background:#191c22;border-color:#333842}
.night .tx-luyin .ly-src b{color:#e5e7eb}
.night .tx-luyin .ly-meter{background:#333842}
.night .tx-luyin .ly-hmeta b{color:#e5e7eb}
.night .tx-luyin .ly-hmeta{color:#9ca3af}
.night .tx-luyin .ly-mini-btn{background:#2a2e37;border-color:#3a3f4a;color:#d1d5db}
.night .tx-luyin .ly-pause{background:#2a2e37;color:#d1d5db}
.night .tx-luyin .ly-row select{background:#14161a;border-color:#3a3f4a;color:#eee}
.night .tx-luyin .ly-help-item b{color:#ff9a5a}
.night .tx-luyin .ly-help-item p{color:#b6bec9}
