/* VoiceForge Studio tabs */
.studio-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:15px 16px;margin-bottom:15px;background:linear-gradient(135deg,#f3f7ff,#fff);border:1px solid #d5e2f7;border-radius:var(--r)}
.studio-head h2{margin:0 0 5px;font-family:'Google Sans','Roboto',sans-serif;font-size:18px;font-weight:500;color:var(--text)}
.studio-head p{margin:0;color:var(--text2);font-size:13px;line-height:1.55}
.studio-toolbar{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap;margin-bottom:10px}
.field-label{display:block;font-size:12px;font-weight:500;color:var(--text2);margin-bottom:7px}
.studio-select{width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:var(--r);font-size:13px;background:#fff;outline:none;transition:border-color var(--tr),box-shadow var(--tr);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%235f6368' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px}
.studio-select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,115,232,.12)}
.studio-toolbar>.studio-select{width:min(210px,100%)}
.studio-status{font-size:12px;color:var(--text2);padding:9px 11px;background:#f8f9fa;border-radius:9px;margin-bottom:12px;min-height:18px}
.badge-ok{background:#eaf6ee!important;color:#18794e!important;border-color:#c9ead7!important}
.badge-warn{background:#fff7e6!important;color:#9a6700!important;border-color:#f2d49b!important}
.studio-panel{border:1px solid var(--border);border-radius:var(--r);background:#fff;padding:13px}
.studio-textarea{width:100%;min-height:180px;padding:12px;border:2px solid var(--border);border-radius:var(--r);font-size:14px;line-height:1.65;resize:vertical;outline:none;background:#fff;transition:border-color var(--tr),box-shadow var(--tr);box-sizing:border-box}
.studio-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,115,232,.08)}
.studio-script{min-height:210px}
.studio-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:7px;color:var(--text3);font-size:11px}
.studio-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
.studio-audio{margin-top:13px}
.studio-audio-row{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:12px;background:#fff;flex-wrap:wrap}
.studio-audio-row audio{width:min(100%,520px);height:36px}
.inline-link,
.icon-btn{
  border:1px solid var(--glass-border);
  border-radius:var(--glass-radius);
  background:
    linear-gradient(145deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.64) 48%,rgba(235,244,255,.56) 100%);
  color:var(--blue);
  box-shadow:
    inset 0 1px 0 var(--glass-highlight),
    inset 0 -1px 0 rgba(53,84,128,.10),
    0 5px 14px rgba(44,79,133,.10);
  -webkit-backdrop-filter:blur(18px) saturate(175%);
  backdrop-filter:blur(18px) saturate(175%);
  transform:translateZ(0);
  transition:transform var(--tr),box-shadow var(--tr),background var(--tr),border-color var(--tr),color var(--tr),opacity var(--tr);
}
.inline-link{
  font:inherit;font-size:11px;font-weight:500;cursor:pointer;padding:5px 10px;text-decoration:none;
}
.inline-link:hover,
.icon-btn:hover:not(:disabled){
  color:var(--blue);
  border-color:rgba(255,255,255,.96);
  background:
    linear-gradient(145deg,rgba(255,255,255,.98) 0%,rgba(241,247,255,.82) 52%,rgba(219,234,255,.70) 100%);
  box-shadow:
    inset 0 1px 0 #fff,
    inset 0 -1px 0 rgba(53,84,128,.08),
    0 10px 24px rgba(35,89,176,.16);
  text-decoration:none;
  transform:translateY(-1px);
}
.inline-link:active,
.icon-btn:active:not(:disabled){
  box-shadow:
    inset 0 2px 5px rgba(48,78,122,.12),
    inset 0 1px 0 rgba(255,255,255,.78),
    0 3px 10px rgba(35,89,176,.11);
  transform:translateY(0) scale(.97);
}
.inline-link:focus-visible,
.icon-btn:focus-visible{
  outline:2px solid rgba(26,115,232,.72);
  outline-offset:3px;
}
.studio-note{font-size:11px;line-height:1.55;color:var(--text3);margin:10px 0 0}
.studio-error{font-size:12px;color:var(--red);padding:9px 11px;background:#fce8e6;border-radius:9px}
.speaker-editor{display:grid;gap:9px}
.speaker-row{display:grid;grid-template-columns:42px minmax(110px,.45fr) minmax(200px,1fr) 38px;align-items:end;gap:9px;padding:10px;border:1px solid var(--border);border-radius:12px;background:#fff}
.speaker-key{height:38px;border-radius:10px;background:var(--blue-l);color:var(--blue);display:flex;align-items:center;justify-content:center;font-family:'Google Sans','Roboto',sans-serif;font-weight:700}
.speaker-field{min-width:0}.speaker-field label{display:block;font-size:11px;color:var(--text3);margin-bottom:5px}
.icon-btn{width:38px;height:38px;padding:0;color:var(--text2);cursor:pointer;font-size:20px;line-height:1}
.icon-btn:disabled{opacity:.46;cursor:not-allowed;filter:saturate(.6);box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 3px 10px rgba(44,79,133,.08);transform:none}
.dialogue-output{display:grid;gap:8px;margin-top:12px}
.dialogue-line{display:flex;align-items:flex-start;gap:10px;padding:11px;border:1px solid var(--border);border-radius:12px;background:#fff}
.dialogue-avatar{width:34px;height:34px;border-radius:50%;background:var(--blue-l);color:var(--blue);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}
.dialogue-content{min-width:0;flex:1}.dialogue-meta{font-size:11px;color:var(--text3);margin-bottom:3px}.dialogue-text{font-size:13px;color:var(--text);line-height:1.5;word-break:break-word}
.dialogue-media{display:flex;align-items:center;gap:8px;margin-top:7px;flex-wrap:wrap}.dialogue-media audio{width:min(100%,480px);height:32px}
@media(max-width:800px){.studio-grid-3{grid-template-columns:1fr 1fr}.speaker-row{grid-template-columns:42px 1fr 1fr 38px}}
@media(max-width:620px){.studio-head{display:block}.studio-head .badge{display:inline-flex;margin-top:9px}.studio-toolbar>div{width:100%!important}.studio-toolbar>.studio-select{width:100%}.studio-grid-3{grid-template-columns:1fr}.speaker-row{grid-template-columns:42px 1fr 38px}.speaker-voice{grid-column:2/4}.studio-audio-row audio,.dialogue-media audio{width:100%}}
@media(max-width:400px){.tab-btn{padding:9px 12px;font-size:12px}.studio-head{padding:13px}.studio-head h2{font-size:16px}.studio-head p{font-size:12px}.btn{padding:9px 14px}}
