/* Voice Lab: scoped layout, including when the view is in a floating window. */
#voiceCreationView { container-type: inline-size; }
.voice-mode-tabs { grid-column:1/-1; display:flex; gap:6px; padding:6px; width:fit-content; max-width:100%; background:var(--field); border:1px solid var(--line); border-radius:14px; margin-bottom:4px; }
.voice-mode-tabs button { min-width:120px; border-color:transparent; padding:11px 22px; }
.voice-mode-tabs [aria-selected="true"] { background:var(--panel); border-color:color-mix(in srgb,var(--accent) 45%,var(--line)); color:var(--accent); box-shadow:0 2px 8px #0001; }
#storyStudio { min-width:0; display:grid; gap:24px; }
#storyStudio .story-hero { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; }
#storyStudio .story-hero h2 { font-size:clamp(1.5rem,3cqi,2rem); font-weight:650; letter-spacing:-.04em; margin:0 0 10px; }
#storyStudio .story-hero p { max-width:65ch; line-height:1.65; margin:0; }
#storyStudio .story-count { border:1px solid var(--line); background:var(--field); border-radius:999px; padding:9px 14px; white-space:nowrap; font-size:.78rem; color:var(--muted); }
#storyStudio .story-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(265px,.38fr); align-items:start; gap:24px; }
#storyStudio .story-editor, #storyStudio .story-scenes, #storyStudio .story-tools { display:grid; grid-template-columns:minmax(0,1fr); gap:22px; min-width:0; margin:0; }
#storyStudio .story-card { margin:0; min-width:0; padding:24px; background:var(--panel); border:1px solid var(--line); border-radius:16px; }
#storyStudio h3, #storyStudio h4 { margin:0; font-size:1rem; font-weight:600; letter-spacing:-.02em; }
#storyStudio .story-card>h3 { margin-bottom:8px; }
#storyStudio .muted { font-size:.83rem; line-height:1.6; }
#storyStudio .story-card>p { margin:0 0 20px; }
#storyStudio label { display:grid; gap:8px; min-width:0; margin:0; }
#storyStudio label>span { line-height:1.45; }
#storyStudio :is(input:not([type="checkbox"]),select,textarea) { width:100%; min-width:0; max-width:100%; box-sizing:border-box; }
#storyStudio textarea { line-height:1.7; min-height:130px; }
#storyStudio .story-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; align-items:end; margin:0; }
#storyStudio .story-fields>label:has(textarea), #storyStudio .story-fields>button { grid-column:1/-1; }
#storyStudio .story-fields>button { margin-top:4px; justify-self:stretch; }
#storyStudio .story-section-heading { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; }
#storyStudio .story-arrangement>p { margin:8px 0 22px; }
#storyStudio .story-scene { padding-top:18px; display:grid; gap:20px; }
#storyStudio .story-scene>legend { color:var(--accent); font-size:.76rem; font-weight:650; padding:0 10px; margin-left:-10px; letter-spacing:.06em; }
#storyStudio .story-scene-toolbar { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; }
#storyStudio .story-scene-title { flex:1; min-width:0; }
#storyStudio .story-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
#storyStudio .story-actions button { min-height:40px; padding:9px 13px; font-size:.78rem; }
#storyStudio .story-timing { border-top:1px solid var(--line); padding-top:6px; }
#storyStudio .story-timing>summary { color:var(--muted); font-size:.8rem; font-weight:550; }
#storyStudio .story-layers { display:grid; gap:14px; border-top:1px solid var(--line); padding-top:20px; }
#storyStudio .story-layers h4 { font-size:.82rem; }
#storyStudio .story-empty-layer { border:1px dashed var(--line); border-radius:10px; padding:15px; margin:0; color:var(--muted); font-size:.8rem; line-height:1.6; }
#storyStudio .story-cue { min-width:0; margin:0; padding:18px; border-radius:12px; background:var(--field); }
#storyStudio .story-cue>legend { font-size:.75rem; font-weight:600; color:var(--muted); padding:0 8px; }
#storyStudio .story-cue>button { margin-top:14px; font-size:.75rem; padding:8px 12px; }
#storyStudio .story-cue-fields { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
#storyStudio .story-add-scene { margin-top:16px; width:100%; border-style:dashed; background:var(--field); padding:14px; }
#storyStudio label:has(input[type="checkbox"]) { display:flex; align-items:center; gap:12px; padding:8px 0 0; margin-top:12px; }
#storyStudio label:has(input[type="checkbox"])>input { order:-1; }
#storyStudio .story-tools>h3 { color:var(--muted); font-size:.75rem; letter-spacing:.09em; text-transform:uppercase; padding:2px 2px 0; }
#storyStudio .story-tools { gap:16px; }
#storyStudio .story-tool { padding:20px; }
#storyStudio .story-tool>summary { font-size:.93rem; font-weight:600; padding:2px 0; min-height:28px; }
#storyStudio .story-tool[open]>summary { margin-bottom:16px; }
#storyStudio .story-tools .story-fields { gap:14px; }
#storyStudio .story-tools .story-fields>label:first-child { grid-column:1/-1; }
#storyStudio .story-tools select { font-size:.83rem; }
#storyStudio .story-draft-tools { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:end; }
#storyStudio .story-draft-tools>button { min-height:54px; }
#storyStudio .story-output { border-left:2px solid var(--accent); padding:6px 14px; color:var(--muted); line-height:1.6; font-size:.8rem; }
#storyStudio .story-review { border-color:var(--accent); background:color-mix(in srgb,var(--accent) 5%,var(--panel)); }
#storyStudio .story-review p { line-height:1.7; }
#storyStudio .story-status:empty { display:none; }
#storyStudio .story-status:not(:empty), #storyStudio .story-availability { margin:0; padding:14px 18px; border:1px solid var(--line); border-radius:12px; font-size:.85rem; }
#storyStudio .story-empty-results { color:var(--muted); margin:18px 0 0; font-size:.85rem; }
#storyStudio .story-result { gap:12px; padding:20px 0; }
#storyStudio .story-result:last-child { border-bottom:0; padding-bottom:0; }
#storyStudio .story-result>strong { flex:1; min-width:120px; overflow-wrap:anywhere; }
#storyStudio .story-result>details, #storyStudio .story-result>ol { flex-basis:100%; min-width:0; }
#storyStudio .story-result a { font-size:.8rem; padding:10px 0; }
#storyStudio .story-proposal-scenes { padding-left:24px; }
#storyStudio .story-proposal-scenes li { padding:12px 0; }
#storyStudio .story-proposal-scenes p { margin:8px 0; line-height:1.7; }
#storyStudio button:focus-visible, .voice-mode-tabs button:focus-visible, #storyStudio summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
@container (max-width:950px) {
  #storyStudio .story-layout { grid-template-columns:minmax(0,1fr); }
  #storyStudio .story-tools { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
  #storyStudio .story-tools>h3 { grid-column:1/-1; }
}
@container (max-width:600px) {
  #voiceCreationView .voice-mode-tabs { width:100%; min-width:0; flex-wrap:nowrap; overflow-x:auto; overscroll-behavior-inline:contain; scrollbar-width:thin; scroll-padding-inline:6px; }
  #voiceCreationView .voice-mode-tabs button { flex:0 0 auto; min-width:max-content; white-space:nowrap; padding:10px 12px; }
  #storyStudio { gap:18px; }
  #storyStudio .story-hero { flex-wrap:wrap; gap:12px; }
  #storyStudio .story-card { padding:18px; }
  #storyStudio .story-scene-toolbar { flex-wrap:wrap; gap:12px; }
  #storyStudio .story-scene-title { flex-basis:100%; }
  #storyStudio .story-cue-fields { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #storyStudio .story-cue-fields>label:first-child { grid-column:1/-1; }
  #storyStudio .story-tools, #storyStudio .story-draft-tools { grid-template-columns:minmax(0,1fr); }
  #storyStudio .story-tools>h3 { grid-column:auto; }
  #storyStudio .story-section-heading { align-items:flex-start; flex-direction:column; }
}
@container (max-width:370px) {
  #storyStudio .story-fields, #storyStudio .story-cue-fields { grid-template-columns:minmax(0,1fr); }
  #storyStudio .story-card { padding:14px; }
  #storyStudio .story-cue { padding:12px; }
}
@media (forced-colors:active) {
  .voice-mode-tabs [aria-selected="true"], #storyStudio .story-review { border:2px solid Highlight; }
}

/* Specialist tools use the same compact fields and review flow as Voice Lab. */
.voice-tool-panel .control-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.voice-tool-panel .voice-tool-actions {display:flex;align-items:center;gap:8px}
.voice-tool-panel .voice-tool-actions button {white-space:nowrap}
.voice-tool-panel .voice-tool-actions .control-help-action {flex:0 1 auto;width:auto;max-width:100%}
.voice-tool-panel [data-voice-tool-status]:empty {display:none}
@media(max-width:620px){.voice-tool-panel .control-grid{grid-template-columns:minmax(0,1fr)}}
