/* 第 13 章 · 声音的形状（专属场景） */
.c13-stage{position:relative;height:300px;border-radius:18px;border:1px solid rgba(56,189,248,.2);background:radial-gradient(ellipse at 50% 60%,rgba(56,189,248,.14),transparent 62%),linear-gradient(180deg,#081426,#060B14);overflow:hidden;display:flex;align-items:center;justify-content:center}
.c13-speaker{position:relative;width:170px;height:170px;z-index:3;filter:drop-shadow(0 18px 28px rgba(0,0,0,.45))}
.c13-speaker svg{width:100%;height:100%}
.c13-speaker:after{content:"";position:absolute;inset:-18px;border:1px dashed rgba(56,189,248,.35);border-radius:50%;animation:c13spin 18s linear infinite}
.c13-wave{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);display:flex;align-items:flex-end;gap:3px;height:54px;z-index:2;opacity:.85}
.c13-wave i{display:block;width:4px;border-radius:99px;background:linear-gradient(180deg,#7DD3FC,#38BDF8);transition:height .18s ease;animation:c13wave 1.2s ease-in-out infinite}
.c13-wave i:nth-child(3n){animation-delay:.18s}.c13-wave i:nth-child(3n+1){animation-delay:.36s}.c13-wave i:nth-child(4n){animation-delay:.54s}
.c13-stage-label{position:absolute;top:14px;left:16px;font-size:8px;letter-spacing:.16em;color:rgba(125,211,252,.65)}
.c13-sound-note{position:absolute;right:14px;top:14px;font-size:8px;color:var(--faint);border:1px solid var(--line);border-radius:6px;padding:4px 7px;background:rgba(4,10,20,.6)}
.c13-context-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}
.c13-context{padding:8px 10px;border-radius:9px;border:1px solid var(--line);background:rgba(255,255,255,.025);color:var(--dim);text-align:left;font-size:9.5px;line-height:1.5}
.c13-context b{display:block;color:var(--ink);font-size:10px;margin-bottom:2px}
.c13-context:hover,.c13-context.on{border-color:rgba(56,189,248,.55);background:rgba(56,189,248,.09)}
.c13-play{position:absolute;right:14px;bottom:14px;z-index:5;border:1px solid rgba(125,211,252,.45);background:rgba(8,20,38,.8);color:#7DD3FC;border-radius:7px;padding:5px 9px;font-size:8.5px}
.c13-play:hover{background:rgba(56,189,248,.12)}
.c13-parts{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.c13-part{padding:9px 10px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--dim);font-size:9.5px;text-align:left}
.c13-part b{display:block;color:var(--ink);font-size:10px}.c13-part span{display:block;color:var(--faint);font-size:8.5px;margin-top:2px}
.c13-part:hover,.c13-part.on{border-color:rgba(56,189,248,.55);background:rgba(56,189,248,.1)}
.c13-knobs{display:flex;gap:10px;flex-wrap:wrap;margin-top:7px}
.c13-knob{flex:1;min-width:110px;font-size:8.5px;color:var(--faint)}
.c13-knob input{width:100%;accent-color:#38BDF8;margin-top:3px}
.c13-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}
.c13-act{padding:5px 8px;border-radius:6px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--dim);font-size:8.5px}
.c13-act:hover,.c13-act.on{border-color:rgba(56,189,248,.55);background:rgba(56,189,248,.1);color:#7DD3FC}
.c13-rel-stage{position:relative;height:260px;border-radius:15px;border:1px solid rgba(56,189,248,.18);background:radial-gradient(ellipse at 38% 55%,rgba(56,189,248,.12),transparent 60%),#070D18;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;padding-left:9%}
.c13-cone{position:absolute;left:26%;top:50%;transform:translateY(-50%);width:0;height:0;border-top:64px solid transparent;border-bottom:64px solid transparent;border-left:190px solid rgba(56,189,248,.16);filter:blur(1px);transition:.4s}
.c13-rel-stage .c13-speaker{width:120px;height:120px;margin-left:2%}
.c13-rel-tag{position:absolute;right:16px;top:16px;font-size:8px;color:var(--faint);border:1px solid var(--line);border-radius:6px;padding:4px 7px}
.c13-rel-out{position:absolute;left:16px;bottom:14px;right:16px;padding:7px 10px;border-radius:7px;background:rgba(4,10,20,.75);border:1px solid rgba(56,189,248,.2);font-size:9.5px;line-height:1.6;color:var(--dim)}
.c13-rel-out b{color:#7DD3FC}
.c13-rel-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}
.c13-rel-chip{padding:4px 8px;border-radius:6px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--dim);font-size:8.5px}
.c13-rel-chip:hover,.c13-rel-chip.on{border-color:rgba(56,189,248,.55);background:rgba(56,189,248,.1);color:#7DD3FC}
.c13-test-scene{position:relative;height:280px;border-radius:15px;border:1px solid rgba(56,189,248,.18);background:radial-gradient(ellipse at 50% 60%,rgba(56,189,248,.12),transparent 62%),#070D18;overflow:hidden;display:flex;align-items:center;justify-content:center}
.c13-test-scene.run .c13-speaker{animation:c13pulse .5s ease 3}
.c13-test-scene.fail{background:radial-gradient(ellipse at 50% 60%,rgba(255,122,107,.16),transparent 62%),#070D18}
.c13-test-scene.fail .c13-speaker{animation:c13shake .4s ease 4}
.c13-test-scene.pass{background:radial-gradient(ellipse at 50% 60%,rgba(79,224,208,.14),transparent 62%),#070D18}
.c13-test-badge{position:absolute;right:14px;top:14px;font-size:8px;padding:4px 7px;border:1px solid var(--line);border-radius:6px;color:var(--faint)}
.c13-meters{display:flex;flex-direction:column;gap:5px;margin-top:6px}
.c13-meter{display:flex;align-items:center;gap:6px;font-size:8.5px;color:var(--faint)}
.c13-meter .bar{flex:1;height:5px;border-radius:99px;background:rgba(255,255,255,.1);overflow:hidden}
.c13-meter .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#38BDF8,#4FE0D0);transition:.6s}
.c13-fix-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:5px}
.c13-fix{padding:6px 8px;border-radius:7px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--dim);font-size:8.5px;text-align:left}
.c13-fix:hover,.c13-fix.on{border-color:rgba(79,224,208,.55);background:rgba(79,224,208,.08);color:var(--teal)}
@keyframes c13spin{to{transform:rotate(360deg)}}
@keyframes c13wave{0%,100%{transform:scaleY(.55);opacity:.55}50%{transform:scaleY(1.1);opacity:1}}
@keyframes c13pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
@keyframes c13shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@media(max-width:900px){.c13-stage,.c13-test-scene{height:250px}.c13-speaker{width:130px;height:130px}.c13-context-grid{grid-template-columns:1fr}.c13-parts{grid-template-columns:1fr}}
.c13-bp-icon{width:132px;height:132px;margin:0 auto;filter:drop-shadow(0 16px 24px rgba(0,0,0,.4))}
.c13-bp-icon svg{width:100%;height:100%}
@media(max-height:800px){.c13-stage{height:286px}}
