/* Editor da aula cinema — "Editor Aula IA" do Claude Design. Versão A: roteiro à esquerda, tela no meio e formulário
   à direita; versão B: a tela e o formulário em cima e o roteiro numa faixa embaixo. Cores nos tokens do style.css,
   com o roxo da aula cinema e as cores de origem (livro, cena, episódio, IA). */
.ec{--ec-roxo:#6f5bd6;--ec-roxo-ink:#5b46c9;--ec-roxo-soft:rgba(111,91,214,.13);--ec-cena:#d1453b;--ec-ep:var(--blue-deep);--ec-livro:var(--muted);
  --ec-paper:#f3efe4;--ec-paper-ink:#24222e;--ec-giz:#1f3a2e;--ec-giz-ink:#eef3ea;
  height:calc(100vh - 124px);min-height:560px;display:grid;border-radius:18px;overflow:hidden;background:var(--glass);border:1px solid var(--glass-line);box-shadow:var(--shadow);
  grid-template-columns:minmax(210px,270px) minmax(0,1fr) minmax(270px,350px);grid-template-rows:auto minmax(0,1fr);
  grid-template-areas:"topo topo topo" "nav meio form"}
:root[data-theme=dark] .ec{--ec-roxo-ink:#bca6ff;--ec-roxo-soft:rgba(165,139,255,.16);--ec-cena:#ff8a84}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .ec{--ec-roxo-ink:#bca6ff;--ec-roxo-soft:rgba(165,139,255,.16);--ec-cena:#ff8a84}}
.ec[data-versao=B]{grid-template-columns:minmax(0,1fr) minmax(270px,350px);grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"topo topo" "meio form" "nav nav"}
.ec-topo{grid-area:topo;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--line)}
.ec-tit{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;min-width:0}
.ec-tit b{font-size:18px;font-weight:800;letter-spacing:-.03em}
.ec-tit small{font-size:12px;color:var(--muted)}
.ec-kicker{font:700 10px var(--mono);letter-spacing:.14em;color:var(--ec-roxo-ink)}
.ec-kicker.fraco{color:var(--faint)}
.ec-acoes{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ec-seg{display:flex;gap:2px;padding:3px;border-radius:10px;background:var(--fill)}
.ec-seg button{flex:1;padding:6px 10px;border-radius:8px;font-size:12px;font-weight:700;color:var(--muted);background:transparent;white-space:nowrap}
.ec-seg button.on{background:var(--glass-strong);color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.12)}
.ec-sec{padding:8px 13px;border-radius:10px;border:1px solid var(--line-strong);background:transparent;color:var(--ink);font-size:13px;font-weight:600;white-space:nowrap}
.ec-sec:hover:not(:disabled){background:var(--fill)}
.ec-sec.fraco{color:var(--muted)}
.ec-sec.perigo{color:var(--red-ink)}
.ec-acoes .primary:disabled{opacity:.55}
/* o roteiro */
.ec-nav{grid-area:nav;min-height:0;overflow-y:auto;padding:12px 10px 30px;display:flex;flex-direction:column;gap:14px;border-right:1px solid var(--line)}
.ec-ecab{display:flex;align-items:baseline;gap:8px;padding:0 6px 4px}
.ec-ecab code{font-size:10px;font-weight:700;color:var(--faint)}
.ec-ecab b{flex:1;font-size:12px;font-weight:800;color:var(--muted)}
.ec-ecab b.on{color:var(--ink)}
.ec-ecab small{font-size:11px;color:var(--faint);white-space:nowrap}
.ec-itens{display:flex;flex-direction:column;gap:2px}
.ec-item{display:flex;align-items:center;gap:6px;border-radius:9px;padding-right:6px}
.ec-item:hover{background:var(--fill-soft)}
.ec-item.on{background:var(--ec-roxo-soft)}
.ec-item.fora .ec-pega{opacity:.45}
.ec-pega{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:6px 6px;background:transparent;text-align:left;color:var(--ink)}
.ec-mini{flex:none;width:54px;aspect-ratio:16/9;border-radius:4px;overflow:hidden;padding:3px 4px 3px 6px;box-sizing:border-box;position:relative;font-size:6px;font-weight:800;line-height:1.15;
  background:var(--ec-paper);color:var(--ec-paper-ink);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}
.ec-mini::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--ec-livro)}
.ec-mini[data-origem=cena]::before{background:var(--ec-cena)}.ec-mini[data-origem=ia]::before{background:var(--ec-roxo)}.ec-mini[data-origem=ep]::before{background:var(--ec-ep)}
.ec-mini.giz{background:var(--ec-giz);color:var(--ec-giz-ink)}
.ec-mini.clip{background:#0b0a10;color:#e0463f;display:grid;place-items:center;font-size:10px}
.ec-mini.perg{background:var(--ec-roxo);color:#fff}
.ec-mini.licao{background:var(--ink);color:var(--bg,#fff)}
.ec-nome{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}
.ec-nome b{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ec-nome small,.ec-tag{font:700 9px var(--mono);letter-spacing:.08em;color:var(--ec-livro)}
.ec-nome small[data-origem=cena],.ec-tag[data-origem=cena]{color:var(--ec-cena)}
.ec-nome small[data-origem=ia],.ec-tag[data-origem=ia]{color:var(--ec-roxo-ink)}
.ec-nome small[data-origem=ep],.ec-tag[data-origem=ep]{color:var(--ec-ep)}
.ec-nome small[data-origem=""]{color:var(--ec-roxo-ink)}
.ec-chk{display:grid;place-items:center;width:20px;height:20px;flex:none;cursor:pointer}
.ec-chk input{margin:0;width:15px;height:15px;accent-color:var(--ec-roxo);cursor:pointer}
/* versão B: a faixa embaixo, com miniaturas maiores */
.ec[data-versao=B] .ec-nav{flex-direction:row;overflow:auto hidden;border-right:0;border-top:1px solid var(--line);padding:10px 16px 12px;gap:18px}
.ec[data-versao=B] .ec-etapa{flex:none}
.ec[data-versao=B] .ec-itens{flex-direction:row;gap:6px}
.ec[data-versao=B] .ec-item{flex-direction:column;align-items:stretch;position:relative;padding:3px}
.ec[data-versao=B] .ec-pega{padding:0}
.ec[data-versao=B] .ec-nome{display:none}
.ec[data-versao=B] .ec-mini{width:88px;font-size:8px;padding:5px 6px}
.ec[data-versao=B] .ec-item.on .ec-mini{outline:2px solid var(--ec-roxo);outline-offset:2px}
.ec[data-versao=B] .ec-chk{position:absolute;right:4px;top:4px;width:16px;height:16px}
/* a tela */
.ec-meio{grid-area:meio;min-width:0;min-height:0;overflow:auto;padding:16px 22px;display:flex;flex-direction:column;justify-content:center;gap:10px}
.ec-onde{width:100%;max-width:1000px;margin:0 auto;display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.ec-onde span{display:flex;align-items:baseline;gap:9px}
.ec-onde code{font-size:12px;font-weight:700;color:var(--ec-roxo-ink)}
.ec-onde b{font-size:14px;font-weight:800}
.ec-onde small{font-size:12px;color:var(--muted)}
.ec-onde>small{font-family:var(--mono);font-size:11px;color:var(--faint)}
.ec-tela{position:relative;width:100%;max-width:1000px;margin:0 auto;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#000;box-shadow:0 20px 50px rgba(0,0,0,.3)}
.ec-tela iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ec-tela.fora iframe{opacity:.45}
.ec-seta{position:absolute;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:50%;background:rgba(21,18,29,.6);color:#fff;font-size:18px;z-index:2}
.ec-seta.ant{left:12px}.ec-seta.prox{right:12px}
.ec-seta:hover{background:rgba(21,18,29,.85)}
.ec-foraaviso{display:none;position:absolute;left:50%;top:14px;transform:translateX(-50%);padding:5px 12px;border-radius:999px;background:rgba(21,18,29,.75);color:#fff;font-size:12px;font-weight:700}
.ec-tela.fora .ec-foraaviso{display:block}
/* o formulário */
.ec-form{grid-area:form;min-width:0;min-height:0;overflow-y:auto;padding:16px 16px 34px;display:flex;flex-direction:column;gap:14px;border-left:1px solid var(--line);background:var(--glass-soft)}
.ec-fcab{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ec-fcab span{display:flex;flex-direction:column;gap:3px;min-width:0}
.ec-fcab small{font:700 10px var(--mono);letter-spacing:.14em;color:var(--faint)}
.ec-fcab b{font-size:15px;font-weight:800}
.ec-tag{flex:none;padding:4px 8px;border-radius:6px;background:var(--fill)}
.ec-campo{display:flex;flex-direction:column;gap:6px;margin:0}
.ec-campo>span{font-size:12px;font-weight:700;color:var(--muted)}
.ec-campo em{font-style:normal;font-weight:500;color:var(--faint)}
.ec-campo input,.ec-campo textarea,.ec-ia input{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:8px;border:1px solid var(--line-strong);background:var(--glass-strong);color:var(--ink);font:inherit;font-size:13px;line-height:1.45}
.ec-campo textarea{resize:vertical}
.ec-campo input:focus,.ec-campo textarea:focus,.ec-ia input:focus{outline:none;border-color:var(--ec-roxo)}
.ec-grupo{display:flex;flex-direction:column;gap:10px;margin:0;padding:10px 12px 12px;border:1px solid var(--line);border-radius:10px}
.ec-grupo legend{padding:0 4px;font-size:11px;font-weight:800;letter-spacing:.04em;color:var(--muted)}
.ec-lista{display:flex;flex-direction:column;gap:8px}
.ec-alt{display:flex;align-items:center;gap:6px;margin-top:6px}
.ec-alt>button[data-certa]{flex:none;width:32px;height:34px;border-radius:8px;border:1px solid var(--line-strong);background:var(--glass-strong);font:700 12px var(--mono);color:var(--muted)}
.ec-alt>button[data-certa].on{background:var(--ec-roxo);border-color:var(--ec-roxo);color:#fff}
.ec-alt input{flex:1}
.ec-tira{flex:none;width:28px;height:28px;border-radius:7px;display:grid;place-items:center;color:var(--muted);background:transparent}
.ec-tira:hover{background:var(--fill)}
.ec-info{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:10px;background:var(--fill-soft)}
.ec-info b{font-size:13px}.ec-info span{font-size:12px;color:var(--muted)}
.ec-nota,.ec-form .lfs-origem{margin:0;font-size:12px;line-height:1.5;color:var(--muted);text-wrap:pretty}
.ec-fala{margin:0;font-size:13px;font-weight:600;line-height:1.45;color:var(--ink2)}
.ec-fala b{color:var(--ec-roxo-ink);font-weight:800}
.ec-fala code{font-size:10px;color:var(--muted);margin-right:4px}
.ec-ia{display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:12px;background:var(--ec-roxo-soft);border:1px solid color-mix(in srgb,var(--ec-roxo) 30%,transparent)}
.ec-ia b{font-size:12px;color:var(--ec-roxo-ink)}
.ec-ia .primary{width:100%}
.ec-rodape{display:flex;gap:8px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line)}
.ec-rodape .ec-sec{flex:1}
/* ensaiar: a aula inteira por cima */
.ec-ensaio{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;background:#000}
.ec-ensaiobar{display:flex;align-items:center;gap:12px;padding:10px 16px;background:#15121d;color:#ece9f5}
.ec-ensaiobar small{color:#a39db3;font-size:12px}
.ec-ensaiobar .ec-sec{color:#ece9f5;border-color:#3a3448}
.ec-ensaio iframe{flex:1;border:0;width:100%}
@media(max-width:1100px){
  .ec,.ec[data-versao=B]{height:auto;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto;grid-template-areas:"topo" "meio" "form" "nav"}
  .ec-nav,.ec[data-versao=B] .ec-nav{flex-direction:row;overflow-x:auto;border-right:0;border-top:1px solid var(--line)}
  .ec-form{border-left:0;border-top:1px solid var(--line)}
}
