/* ============ LA RESPUESTA — la noche, el teléfono, el mensaje ============
   La llamada perdida que se vuelve conversación y cita. Mundo nuevo:
   la noche (estrellas quietas en el canvas de plaza.js, resplandor frío
   de pantalla lejana). Todo lo demás hereda el oficio de la plaza. */
body.world--night{background:#04050a}
.world--night .beat--vigil .beat__plane{background:
  radial-gradient(ellipse 62% 40% at 50% 0%,rgba(140,165,255,.09),transparent 62%),
  linear-gradient(180deg,rgba(70,90,170,.05),transparent 55%)}
[hidden]{display:none!important}

/* ---------- la llamada ---------- */
.callbox{margin-top:4px;border:1px solid var(--line);background:rgba(255,255,255,.03);padding:22px 18px;text-align:center}
.callbox__to{margin:0;font:italic 400 clamp(18px,2.2vw,21px)/1.35 var(--serif);color:rgba(255,250,238,.94)}
.rings{display:flex;gap:12px;justify-content:center;margin:18px 0 8px}
.rings span{width:11px;height:11px;border-radius:50%;background:var(--gold-soft);opacity:.12;transition:opacity .35s,box-shadow .35s}
.rings span.on{opacity:1;box-shadow:0 0 16px rgba(240,190,90,.85)}
.callbox__status{margin:6px 0 0;min-height:1.5em;font:italic 400 15.5px/1.45 var(--serif);color:rgba(255,255,255,.62)}
.lastnote{margin:18px 0 0;font:italic 400 14.5px/1.5 var(--serif);color:rgba(255,255,255,.5);text-align:center}

/* ---------- el hilo de mensajes ---------- */
.sms{margin-top:24px;width:100%}
.typing{display:flex;gap:5px;align-items:center;margin:8px 0 2px}
.typing span{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.55);animation:tp 1s ease-in-out infinite}
.typing span:nth-child(2){animation-delay:.18s}
.typing span:nth-child(3){animation-delay:.36s}
.typing em{margin-left:7px;font:italic 400 13px var(--serif);color:rgba(255,255,255,.45)}
@keyframes tp{0%,100%{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}
.replybar{margin-top:16px;border-top:1px solid var(--line);padding-top:14px}
.quickrow{margin-bottom:12px}
.qbtn{appearance:none;background:transparent;border:1px solid var(--line);border-radius:999px;color:rgba(255,255,255,.85);font:italic 400 14.5px/1.25 var(--serif);padding:9px 15px;cursor:pointer;transition:border-color .3s,color .3s,background .3s}
.qbtn:hover{border-color:var(--gold);color:var(--gold-soft);background:rgba(230,184,95,.07)}
.sendrow{display:flex;gap:10px}
.sendrow input{flex:1;min-width:0;background:rgba(255,255,255,.045);border:1px solid var(--line);color:var(--ink);padding:12px 13px;font:400 16px/1.35 var(--sans);border-radius:0;appearance:none;-webkit-appearance:none;color-scheme:dark}
.sendrow input:focus{outline:none;border-color:rgba(230,184,95,.65)}
.sendbtn{appearance:none;background:rgba(230,184,95,.07);border:1px solid var(--gold);color:var(--gold-soft);font:italic 400 16px/1 var(--serif);padding:0 20px;cursor:pointer;transition:background .3s}
.sendbtn:hover{background:rgba(230,184,95,.16)}

/* ---------- lo que el dueño ve al despertar ---------- */
.report{margin-top:24px;border:1px solid rgba(230,184,95,.42);background:linear-gradient(180deg,rgba(230,184,95,.07),rgba(255,255,255,.02));padding:18px 20px}
.report__label{margin:0;font:500 9.5px/1.5 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold-soft)}
.report__body{margin:12px 0 0;font:400 clamp(15.5px,2vw,17.5px)/1.6 var(--serif);white-space:pre-line;color:rgba(255,250,238,.94)}

@media(prefers-reduced-motion:reduce){
  .typing span{animation:none}
  .rings span,.qbtn,.sendbtn{transition:none}
}
