.voice-create-select{display:grid;gap:7px;color:var(--muted);font-size:13px}.voice-create-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.voice-create-row .secondary{min-height:42px;white-space:nowrap}.voice-create-select select,.voice-form input,.voice-form select{width:100%;box-sizing:border-box}.voice-library{margin:18px 0 4px;padding-top:16px;border-top:1px solid var(--line);text-align:left}.voice-library-head,.voice-item{display:flex;align-items:center;justify-content:space-between;gap:12px}.voice-library-head>div:first-child,.voice-item>div:first-child{display:grid;gap:3px}.voice-library-head span,.voice-item span{font-size:12px;color:var(--muted)}.voice-library-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px}.voice-library-actions button{width:100%;min-height:42px;justify-content:center;border-radius:8px}.voice-library-actions .secondary{color:#d7c39a;border-color:rgba(216,168,78,.28);background:#15171c}#voice-library-list{display:grid;gap:8px;margin-top:12px;max-height:180px;overflow:auto}.voice-item{padding:10px;border:1px solid var(--line);border-radius:8px;background:#16181d}.voice-item-actions{display:flex;gap:6px;flex:0 0 auto}.voice-item-actions button{min-height:34px}.voice-delete{color:#fecaca;border-color:rgba(248,113,113,.28)}.voice-delete:hover{background:rgba(248,113,113,.12);color:#fff}.voice-dialog{width:min(560px,calc(100vw - 28px))}.voice-form{display:grid;gap:13px;text-align:left}.voice-form label{display:grid;gap:6px;color:var(--muted);font-size:13px}.voice-form .voice-check{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;gap:9px;line-height:1.35;color:var(--ink)}.voice-form .voice-check input{width:auto;margin-top:2px;flex:0 0 auto}.voice-privacy-note{margin:0;padding:12px;border:1px solid rgba(216,168,78,.24);border-radius:10px;background:rgba(216,168,78,.08);color:var(--ink);line-height:1.45;font-size:13px}.voice-source-panel{display:grid;gap:10px}.voice-recorder{padding:12px;border:1px solid rgba(216,168,78,.24);border-radius:12px;background:linear-gradient(135deg,rgba(216,168,78,.10),rgba(255,255,255,.03));display:grid;gap:10px}.voice-recorder p{margin:0;color:var(--ink);font-size:13px;line-height:1.4}.voice-recorder-actions{display:flex;gap:8px;flex-wrap:wrap}.voice-recording-status{min-height:18px;color:var(--muted);font-size:12px}.voice-recorder[data-state="recording"]{border-color:rgba(239,68,68,.48);box-shadow:0 0 0 1px rgba(239,68,68,.12)}.voice-recorder[data-state="recording"] .voice-recording-status{color:#fecaca}.voice-recorder[data-state="ready"]{border-color:rgba(34,197,94,.45);background:linear-gradient(135deg,rgba(34,197,94,.10),rgba(216,168,78,.06))}.voice-recorder[data-state="ready"] .voice-recording-status{color:#bbf7d0}.voice-time{display:grid;grid-template-columns:1fr 1fr;gap:10px}.voice-phrase{padding:12px;border-left:3px solid var(--accent);background:#191b20;white-space:pre-wrap}.profile-card{max-height:min(88vh,760px);overflow:auto}@media(max-width:600px){.voice-create-row{grid-template-columns:1fr}.voice-library-head{align-items:flex-start}.voice-library-actions{grid-template-columns:1fr}.voice-item{align-items:flex-start}.voice-item-actions{flex-wrap:wrap;justify-content:flex-end}.voice-recorder-actions{display:grid}.voice-recorder-actions button{width:100%}}


/* 20260817 voice recorder: clear live recording indicator */
.voice-recorder[data-state="recording"]{
  border-color:rgba(248,113,113,.64)!important;
  background:linear-gradient(180deg,rgba(90,20,24,.34),rgba(24,24,26,.92))!important;
  box-shadow:0 0 0 1px rgba(248,113,113,.16) inset,0 18px 38px rgba(0,0,0,.28);
}
.voice-recorder[data-state="ready"]{
  border-color:rgba(89,189,131,.48)!important;
  background:rgba(34,92,61,.16)!important;
}
.voice-recording-indicator{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  max-width:100%;
  margin:10px 0 4px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(248,113,113,.48);
  background:rgba(127,29,29,.28);
  color:#fecaca;
  font-size:12px;
  font-weight:850;
  letter-spacing:.01em;
}
.voice-recording-indicator[hidden]{display:none!important}
.voice-recording-indicator strong{
  color:#fff;
  font-variant-numeric:tabular-nums;
  min-width:38px;
}
.voice-recording-indicator em{
  color:#ffd3d3;
  font-style:normal;
  text-transform:uppercase;
  font-size:10px;
  letter-spacing:.09em;
}
.voice-recording-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:#ef4444;
  box-shadow:0 0 0 0 rgba(239,68,68,.62);
  animation:voice-recording-pulse 1.05s infinite;
}
@keyframes voice-recording-pulse{
  0%{box-shadow:0 0 0 0 rgba(239,68,68,.62)}
  70%{box-shadow:0 0 0 8px rgba(239,68,68,0)}
  100%{box-shadow:0 0 0 0 rgba(239,68,68,0)}
}
.voice-recording-status{
  display:block;
  margin-top:6px;
}


/* 20260817 voice creation: clear recording instructions */
.voice-steps{
  display:grid;
  gap:7px;
  padding:12px 13px;
  border:1px solid rgba(216,168,78,.22);
  border-radius:12px;
  background:rgba(216,168,78,.075);
  color:var(--ink);
}
.voice-steps>strong{
  color:#f2d18b;
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.voice-steps ol{
  display:grid;
  gap:6px;
  margin:0;
  padding-left:18px;
}
.voice-steps li{
  color:#d7dde7;
  line-height:1.45;
  font-size:13px;
}
.voice-time{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.voice-range-note{
  grid-column:1/-1;
  margin:0;
  padding:9px 10px;
  border-radius:10px;
  background:rgba(255,255,255,.045);
  color:#aeb6c3;
  font-size:12px;
  line-height:1.45;
}
@media(max-width:520px){
  .voice-time{grid-template-columns:1fr}
}

/* 20260818 mobile voice creation fixes */
@media (max-width: 640px){
  .voice-dialog.profile-dialog{
    align-items:flex-start;
    padding:10px;
  }
  .voice-dialog .profile-card{
    width:min(100%, 390px);
    max-height:calc(100dvh - 20px);
    overflow:auto;
    -webkit-overflow-scrolling:touch;
    padding:24px 30px 18px;
  }
  .voice-dialog .voice-form{
    padding-bottom:8px;
  }
  .voice-dialog .voice-source-panel input[type="file"]{
    min-height:42px;
    width:100%;
    max-width:100%;
    font-size:14px;
  }
  .voice-dialog .voice-form button.primary[type="submit"]{
    position:sticky;
    bottom:-2px;
    z-index:3;
    width:100%;
    margin-top:14px;
    box-shadow:0 -14px 22px rgba(10,12,16,.88),0 10px 28px rgba(216,168,78,.18);
  }
}

.voice-submit-status{
  min-height:18px;
  margin:0;
  color:#aeb6c3;
  font-size:12px;
  line-height:1.35;
}
.voice-submit-status[data-tone="pending"]{color:#f2d18b}
.voice-submit-status[data-tone="error"]{
  padding:9px 10px;
  border-radius:10px;
  border:1px solid rgba(248,113,113,.32);
  background:rgba(127,29,29,.18);
  color:#fecaca;
}
