/* Diretor, ficha da marca e custos — no mesmo desenho do Estúdio (cores, raios e espaçamentos do style.css). */
.dir-top{margin:-8px 0 6px}
.dir-head h1{margin-bottom:12px}
.dir-chips{display:flex;flex-wrap:wrap;gap:8px}
.dir-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:#eef2e8;color:#41594c;font-size:12px;border:1px solid #dfe6d7}
.dir-chip.warn{background:#fbecdb;color:#9b6738;border-color:#f1d9bd}
.dir-lead{color:var(--muted);font-size:14px;margin:0 0 18px}
.dir-note-warn{background:#fbecdb;color:#8a5a2f;margin-bottom:18px}

/* passos */
.dir-steps{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:4px 0 24px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px}
.dir-step{display:flex;align-items:center;gap:9px;border:0;background:transparent;padding:10px 10px;border-radius:8px;text-align:left;font-weight:500;color:#5d6f66;min-width:0}
.dir-step:hover{background:#eef2e8}
.dir-step-n{flex:0 0 26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;background:#eef2e8;color:#55705f;border:1px solid #dfe6d7}
.dir-step-t{font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis}
.dir-step.done .dir-step-n{background:#dbe8d3;color:#1e6550;border-color:#c5d9b9}
.dir-step.active{background:#173f37;color:#fff}
.dir-step.active .dir-step-n{background:#c3d884;color:#173f37;border-color:#c3d884}
.dir-nav{display:flex;justify-content:space-between;align-items:center;margin:8px 0 10px}
.dir-check{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--ink);margin:4px 0 12px;cursor:pointer}
.dir-check input{width:18px;min-height:18px;margin:0}
.dir-inline{display:flex;gap:8px;align-items:center}
.dir-two{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}

/* passo 1: material */
.dir-cols3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dir-cols3 .panel{margin-bottom:18px}
.dir-mat-list{display:flex;flex-direction:column;gap:8px;max-height:430px;overflow:auto;padding-right:2px}
.dir-mat{display:flex;gap:11px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:9px;cursor:pointer;background:#fff;transition:border-color .15s,background .15s}
.dir-mat:hover{border-color:#c5d9b9}
.dir-mat.checked{border-color:#1e6550;background:#f1f6ee;box-shadow:inset 0 0 0 1px #1e6550}
.dir-mat input{width:17px;min-height:17px;margin:0;flex:0 0 auto}
.dir-mat-img{flex:0 0 46px;height:46px;border-radius:7px;overflow:hidden;background:#eef2e8;display:grid;place-items:center;color:#698267;font-size:18px}
.dir-mat-img img{width:100%;height:100%;object-fit:cover}
.dir-mat-txt{display:flex;flex-direction:column;min-width:0}
.dir-mat-txt strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dir-mat-txt small{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* passo 4: roteiro */
.dir-warn{border:1px solid #f1d9bd;background:#fdf6ee;border-radius:9px;padding:12px 16px;font-size:13px;color:#7b5531}
.dir-warn ul{margin:6px 0 0;padding-left:18px}
.dir-warn li{margin:3px 0}
.dir-warn li.lvl-reminder{color:#8a4b3f}
.dir-warn li.lvl-info{color:#4f6b5c}
.dir-scenes{display:flex;flex-direction:column}
.dir-scene{padding:18px 20px}
.dir-scene.is-hidden{opacity:.6;border-style:dashed}
.dir-scene-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.dir-scene-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.dir-scene-title input[type=number]{width:74px;min-height:34px;padding:6px 8px}
.dir-scene-title select{width:auto;min-height:34px;padding:6px 8px;font-size:12px}
.dir-scene-n{width:28px;height:28px;border-radius:7px;background:#173f37;color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px}
.dir-scene-tools{display:flex;gap:2px}
.dir-scene-tools button{min-width:32px}
.dir-scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.dir-scene-grid label.field{margin-bottom:12px}
.dir-scene-grid textarea{min-height:60px}
.dir-scene-foot{display:flex;justify-content:space-between;align-items:center;margin-top:4px}
.dir-saved{font-size:11px}
.pulse{animation:dirpulse 1.4s ease-in-out 3;color:#1e6550;font-weight:700}
@keyframes dirpulse{50%{background:#e2eedc}}

/* passo 5: orçamento */
.dir-profiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dir-profile{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:left;padding:16px;border:1px solid var(--line);border-radius:11px;background:#fff;font-weight:400}
.dir-profile strong{font-size:15px}
.dir-profile small{font-size:12px;color:#5f7268;line-height:1.5}
.dir-profile .muted{font-size:11px}
.dir-profile.active{border-color:#1e6550;box-shadow:inset 0 0 0 1px #1e6550;background:#f1f6ee}
.dir-totals{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}
.dir-totals .full{grid-column:1/-1;margin:0}
.dir-kpi{padding:16px 18px;border:1px solid var(--line);border-radius:11px;background:#fff}
.dir-kpi label{font-size:11px;color:var(--muted);display:block;letter-spacing:.3px}
.dir-kpi strong{font-size:24px;font-weight:600;display:block;margin:6px 0 4px;font-variant-numeric:tabular-nums}
.dir-kpi small{font-size:11px;color:var(--muted)}
.dir-kpi.accent{background:#173f37;border-color:#173f37;color:#fff}
.dir-kpi.accent label,.dir-kpi.accent small{color:#b8d0c3}
.dir-confirm .dir-kpi{margin-bottom:14px}

/* passo 6: produção */
.dir-checklist{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.dir-ck{display:flex;flex-direction:column;align-items:center;gap:1px;min-width:62px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;text-decoration:none;color:#6c7b75;background:#fafbf6}
.dir-ck b{font-size:15px;color:#506c5c}
.dir-ck span{font-size:12px}
.dir-ck small{font-size:10px}
.dir-ck.ok{background:#e9f2e5;border-color:#c5d9b9}
.dir-ck.ok b{color:#1e6550}
.dir-prod{display:flex;flex-direction:column}
.dir-pcard{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;padding:18px}
.dir-pmedia{position:relative}
.dir-pmedia img,.dir-pmedia video{width:100%;border-radius:9px;background:#151f1b;display:block;max-height:360px;object-fit:contain}
.dir-pframe{position:absolute;right:8px;bottom:8px;width:56px!important;height:auto;border:2px solid #fff;box-shadow:0 2px 8px #0004}
.dir-ph{aspect-ratio:9/16;max-height:360px;border-radius:9px;border:2px dashed #d8dfd2;background:#f6f8f1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8a9a88;gap:6px}
.dir-ph span{font-size:30px}
.dir-pact{font-size:13px;margin:0 0 6px}
.dir-pnarr{font-size:13px;color:#4f6b5c;font-style:italic;margin:0 0 10px}
.dir-pbody audio{width:100%;max-width:420px;height:36px;margin-bottom:10px}
.dir-gen,.dir-files{margin:6px 0}
.dir-prompt{margin:8px 0}
.dir-prompt select{max-width:320px}
.dir-prompt textarea{margin-top:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;background:#f7f9f3}
.dir-gens{list-style:none;padding:0;margin:10px 0 0;font-size:12px;color:#5d6f66}
.dir-gens li{padding:4px 0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.error-inline{color:#a53b31;display:block}

/* passo 7: montagem */
.dir-formats{border:1px solid var(--line);border-radius:9px;padding:10px 14px;margin:0 0 16px;display:flex;flex-wrap:wrap;gap:4px 22px}
.dir-formats legend{font-size:12px;color:#62745e;font-weight:550;padding:0 4px}
.dir-formats .dir-check{margin:4px 0}
.dir-render{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:18px;align-items:start;padding:14px 0;border-bottom:1px solid #edf0e6}
.dir-render:last-child{border-bottom:0}
.dir-render video{width:100%;border-radius:9px;background:#151f1b;max-height:420px}
.dir-render .actions{grid-column:2}

/* escolher arquivo */
.dir-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}
.dir-pick-item{display:flex;flex-direction:column;gap:6px;padding:6px;font-weight:400}
.dir-pick-item img{width:100%;height:110px;object-fit:cover;border-radius:6px}
.dir-pick-item span{height:110px;display:grid;place-items:center;font-size:28px;background:#eef2e8;border-radius:6px}
.dir-pick-item small{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ficha da marca */
.dir-palette{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.dir-swatch{display:inline-flex;align-items:center;gap:6px;padding:5px 6px 5px 5px;border:1px solid var(--line);border-radius:10px;background:#fff;position:relative}
.dir-swatch-fill{width:34px;height:34px;min-height:0;padding:0;border-radius:7px;border:1px solid #0002}
.dir-hex{width:96px;min-height:34px;padding:6px 8px;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;text-transform:uppercase}
.dir-hex.bad{border-color:#d56b5f;background:#fff5f3}
.dir-color{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none;left:18px;top:38px}
.dir-swatch-del{min-width:28px;padding:4px 6px}
.dir-refs{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px;margin-bottom:6px}
.dir-ref{display:flex;flex-direction:column;gap:5px;border:1px solid var(--line);border-radius:9px;padding:6px;cursor:pointer;position:relative}
.dir-ref input{position:absolute;top:10px;left:10px;width:17px;min-height:17px}
.dir-ref img{width:100%;height:96px;object-fit:cover;border-radius:6px}
.dir-ref small{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dir-ref.checked{border-color:#1e6550;box-shadow:inset 0 0 0 1px #1e6550;background:#f1f6ee}
.dir-rules{list-style:none;margin:0;padding:0}
.dir-rules li{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid #edf0e6;font-size:13px}
.dir-rules li:last-child{border-bottom:0}

@media(max-width:1100px){
  .dir-steps{grid-template-columns:repeat(4,minmax(0,1fr))}
  .dir-cols3{grid-template-columns:1fr}
  .dir-totals{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dir-render{grid-template-columns:1fr}
  .dir-render .actions{grid-column:1}
}
@media(max-width:700px){
  .dir-steps{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}
  .dir-step{flex:0 0 auto;scroll-snap-align:start}
  .dir-step:not(.active) .dir-step-t{display:none}
  .dir-scene-grid,.dir-two{grid-template-columns:1fr}
  .dir-profiles{grid-template-columns:1fr}
  .dir-pcard{grid-template-columns:1fr}
  .dir-ph{max-height:220px}
  .dir-totals{grid-template-columns:1fr}
  .dir-scene{padding:14px}
}

/* tema escuro */
:root[data-theme='dark'] .dir-steps,
:root[data-theme='dark'] .dir-mat,
:root[data-theme='dark'] .dir-profile,
:root[data-theme='dark'] .dir-kpi,
:root[data-theme='dark'] .dir-swatch,
:root[data-theme='dark'] .dir-ref{background:var(--redes-surface);border-color:var(--redes-border);color:var(--redes-text)}
:root[data-theme='dark'] .dir-chip,
:root[data-theme='dark'] .dir-step-n,
:root[data-theme='dark'] .dir-mat-img,
:root[data-theme='dark'] .dir-ck,
:root[data-theme='dark'] .dir-ph,
:root[data-theme='dark'] .dir-pick-item span{background:var(--redes-surface-alt);border-color:var(--redes-border);color:var(--redes-text-secondary)}
:root[data-theme='dark'] .dir-step{color:var(--redes-text-secondary)}
:root[data-theme='dark'] .dir-step:hover{background:var(--redes-surface-hover)}
:root[data-theme='dark'] .dir-step.active{background:var(--redes-primary-surface);color:#fff}
:root[data-theme='dark'] .dir-step.done .dir-step-n,
:root[data-theme='dark'] .dir-ck.ok{background:#1f4a3d;border-color:#2e6553;color:#cfe9dc}
:root[data-theme='dark'] .dir-ck b{color:var(--redes-text)}
:root[data-theme='dark'] .dir-mat.checked,
:root[data-theme='dark'] .dir-profile.active,
:root[data-theme='dark'] .dir-ref.checked{background:#18352d;border-color:var(--redes-focus);box-shadow:inset 0 0 0 1px var(--redes-focus)}
:root[data-theme='dark'] .dir-kpi.accent{background:var(--redes-primary-surface);border-color:var(--redes-primary-surface)}
:root[data-theme='dark'] .dir-warn{background:#2a2118;border-color:#5b4430;color:#f0cfa9}
:root[data-theme='dark'] .dir-chip.warn,
:root[data-theme='dark'] .dir-note-warn{background:#2a2118;border-color:#5b4430;color:#f0cfa9}
:root[data-theme='dark'] .dir-prompt textarea{background:var(--redes-surface-alt)}
:root[data-theme='dark'] .dir-profile small,
:root[data-theme='dark'] .dir-pnarr{color:var(--redes-text-secondary)}
:root[data-theme='dark'] .dir-scene-n{background:var(--redes-primary-surface)}
:root[data-theme='dark'] .dir-hex.bad{background:#3a1f1c}
#sc-version{width:auto;max-width:300px;min-height:34px;padding:6px 10px;font-size:12px}
.dir-check-panel .actions{justify-content:flex-end}
#dir-budget-rows select{min-height:34px;padding:6px 8px}
#dir-budget-rows input[type=checkbox],.dir-check input[type=checkbox]{width:18px;min-height:18px;height:18px}
:root[data-theme='dark'] .dir-steps .dir-step{background:transparent!important;border-color:transparent!important;color:var(--redes-text-secondary)!important}
:root[data-theme='dark'] .dir-steps .dir-step.active{background:var(--redes-primary-surface)!important;color:#fff!important}
:root[data-theme='dark'] .dir-steps .dir-step.active .dir-step-n{background:#c3d884;color:#173f37;border-color:#c3d884}
:root[data-theme='dark'] .dir-warn li.lvl-reminder{color:#f3b8a8}
:root[data-theme='dark'] .dir-warn li.lvl-info{color:#bcd9c9}
.panelhead .actions button,.panelhead>button{white-space:nowrap}
