/* V4.3 · Conserva composición, gráficos y overlay V4.2.
   Más voz y preguntas comprensibles; ninguna nueva dirección de arte. */
.reflection-panel{justify-content:flex-start;min-width:0}
.reflection-panel h2{line-height:1.19;letter-spacing:-.017em;font-weight:400}
.reflection-detail{font-size:16px;line-height:1.72;margin:17px 0 15px;color:#dce2f0;max-width:740px}
.reflection-question{font-size:clamp(19px,1.6vw,25px);font-weight:450;color:#f4e2b7;line-height:1.4;margin:0 0 26px;max-width:740px}
.reflection-input{min-height:112px;font-size:16px;line-height:1.65;padding:15px 17px;resize:vertical}
.text-area-label{font-size:10px;letter-spacing:.12em;line-height:1.7}
.optional-writing{margin-top:22px;color:#bcc6dd}
.input-tools{gap:15px;flex-wrap:wrap;align-items:center}
.voice-button{display:inline-flex;gap:7px;align-items:center;white-space:nowrap;min-height:35px}
.voice-button svg{width:16px;height:18px;flex:none}
.voice-button.active{color:#a5edff}
.voice-host{min-width:0}
.voice-recorder{padding:18px 19px;border:1px solid rgba(148,177,238,.50);border-radius:13px;background:linear-gradient(115deg,rgba(29,55,87,.62),rgba(40,31,76,.63));box-shadow:inset 0 1px rgba(213,234,255,.07);margin:3px 0 12px}
.voice-controls{display:flex;gap:13px;flex-wrap:wrap;align-items:center}
.record-button{display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid rgba(167,203,253,.71);padding:12px 16px;border-radius:10px;font-size:14px;color:#f5f1ff;background:linear-gradient(110deg,rgba(42,88,125,.60),rgba(108,72,159,.47));min-height:48px;font-weight:500;box-shadow:0 0 22px rgba(128,158,252,.11)}
.record-button:hover{background:linear-gradient(110deg,rgba(51,111,154,.72),rgba(119,81,181,.66));border-color:#c8e1fc}
.record-button svg,.record-live-label svg{width:24px;height:27px;flex:none;color:#c2eafd}
.voice-invite{font-size:12px;line-height:1.6;flex:1;min-width:155px;color:#d3dced}
.voice-feedback{font-size:11px;line-height:1.7;margin:13px 0 0;color:#bfc9df;max-width:630px}
.record-live-label{display:inline-flex;gap:10px;align-items:center;font-size:13px;color:#eff7ff}
.voice-recorder.is-recording{border-color:rgba(118,210,245,.8);box-shadow:0 0 24px rgba(103,185,240,.10);background:linear-gradient(115deg,rgba(20,55,79,.84),rgba(42,27,81,.78))}
.voice-recorder.is-paused{border-color:rgba(216,190,137,.71)}
.voice-time{font:14px/1.4 ui-monospace,monospace;font-variant-numeric:tabular-nums;color:#f1d6a1;min-width:43px}
.voice-meter{display:flex;align-items:center;gap:3px;height:30px;min-width:95px;flex:1;max-width:130px}
.voice-meter i{width:3px;border-radius:3px;height:4px;display:block;background:linear-gradient(0deg,#bea5f7,#8de6fb);transition:height .1s linear}
.voice-small{font-size:12px;padding:10px 14px;min-height:40px}
.voice-clip{padding:14px 16px;border:1px solid rgba(173,155,230,.29);background:rgba(12,24,45,.91);border-radius:12px;margin:12px 0 15px}
.voice-clip-heading{display:flex;justify-content:space-between;gap:8px 13px;flex-wrap:wrap;margin-bottom:12px}
.voice-clip-heading>span{display:inline-flex;align-items:center;gap:9px;color:#e6d3a8;font-size:12px;line-height:1.5}
.voice-clip-heading svg{width:15px;height:17px;flex:none}
.voice-clip-heading small{color:#aebed6;font-size:10px;line-height:1.6}
.voice-clip audio{display:block;width:100%;max-width:100%;height:43px;color-scheme:dark}
.voice-clip-actions{display:flex;gap:10px 22px;justify-content:space-between;flex-wrap:wrap;margin-top:7px}
.voice-clip-actions .text-button{font-size:11px;min-height:30px;padding:3px 0}
.config-recall{border:1px solid rgba(161,164,235,.24);border-radius:9px;background:rgba(5,14,30,.63);margin:0 0 22px;padding:10px 14px;max-width:800px}
.config-recall summary{font-size:12px;color:#c7d3ea;cursor:pointer;padding:3px 0;line-height:1.6}
.config-recall .voice-clip:last-child{margin-bottom:0}
.anchor-invitation{font-size:12px;line-height:1.65;color:#c3d1e3;margin-bottom:12px}
.anchor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.anchor{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:7px;padding:13px 12px;line-height:1.5}
.anchor strong{font-size:10px;letter-spacing:.12em;font-weight:600}
.anchor span{font-size:12px;line-height:1.5;color:#c1cbe0;letter-spacing:0}
.anchor.released{position:relative}
.anchor.released:before{position:absolute;right:6px;top:7px;content:'✧'}
.anchor.released span{color:#e5d6b9}
.conversation-example{border-left:2px solid rgba(200,174,239,.42);padding:12px 16px;background:rgba(39,29,72,.3);margin:2px 0 24px;font-size:13px;line-height:1.75}
.local-privacy-note{font-size:12px;line-height:1.8;color:#c4cce0;max-width:850px}
.summary-notes section{min-width:0}
.log-card{min-width:0}
.step-actions{margin-top:26px}
.instrument-panel{align-self:start;position:sticky;top:22px}
@media(max-width:1100px){.voice-controls{gap:12px}.record-button{font-size:13px}.voice-invite{flex-basis:100%}}
@media(max-width:900px){.instrument-panel{position:relative;top:auto}.voice-invite{flex-basis:auto}.reflection-panel{padding:27px}.reflection-detail{max-width:none}}
@media(max-width:640px){.reflection-panel{padding:24px 19px}.reflection-panel h2{font-size:29px}.reflection-detail{font-size:15px;line-height:1.72}.reflection-question{font-size:21px;line-height:1.45}.reflection-input{font-size:16px;min-height:115px}.voice-recorder{padding:16px 14px}.record-button{width:100%;justify-content:center;font-size:14px}.voice-invite{flex-basis:100%;font-size:12px}.voice-controls{gap:12px}.voice-clip{padding:13px 11px}.voice-clip-heading{display:block}.voice-clip-heading small{display:block;margin-top:6px}.voice-small{flex:1;justify-content:center;min-width:114px}.record-live-label{flex:1;font-size:12px}.voice-meter{max-width:100px}.anchor-grid{gap:8px}.anchor{padding:12px 10px}.anchor span{font-size:11px}.text-area-label{font-size:9px;letter-spacing:.08em}.instrument-panel{min-height:340px}.instrument-orbits{width:min(96%,400px)}.input-tools{gap:5px 12px}.saving-status{font-size:10px}.step-actions .secondary{min-height:44px}.reflection-top{font-size:10px}.config-recall summary{font-size:11px}}
@media(prefers-reduced-motion:reduce){.voice-meter i{transition:none}}
