/* ===========================================================================
   Editor "Montar a peça" + Modelos de tábua — estilo
   Usa as variáveis e os botões do app (estilo.css: --fundo, --borda, --cor-marca,
   .btn, .btn-primario, .btn-grande, .chip, .segmentado, .rotulo, .ajuda...).
   Aqui só entram classes novas, com prefixo ed- (editor) e mo- (modelos), e os
   ajustes de tamanho das classes do app DENTRO do editor.
   Celular primeiro: funciona a partir de 360 px.

   Regra do dono (3ª mensagem): letra do corpo no mínimo 19–20 px, botão de
   ~56 px, nada de cinza fraco. Os tamanhos saem dos tokens do módulo visual
   (--r-letra, que já traz a escala do "A+ A−") e, sem ele, de rem (20 px com
   a raiz de 16 px).
   =========================================================================== */

.ed-raiz,.ed-folha,.mo-folha,.mo-raiz{
  --ed-letra:var(--r-letra,1.25rem);                 /* 20 px: corpo, nunca menos */
  --ed-letra-botao:var(--r-letra-botao,1.25rem);     /* botões grandes */
  --ed-letra-titulo:calc(var(--ed-letra) * 1.2);     /* 24 px */
  --ed-toque:56px;
  /* Fundo do botão principal: o couro do módulo visual quando ele estiver no app;
     senão a marca escurecida (#9a6434 com branco dá só 4,95:1; esta dá 7,98:1).
     Cor fixa de propósito: color-mix() some no iPhone com iOS 15 e o botão ficaria
     com letra branca sobre fundo transparente. */
  --ed-destaque:var(--r-couro,#6f4825);
  --ed-destaque-texto:var(--r-couro-texto,#fff);
  --ed-perigo:#8a1d12;
  font-size:var(--ed-letra);line-height:1.4;
}
@media (prefers-color-scheme: dark){
  .ed-raiz,.ed-folha,.mo-folha,.mo-raiz{--ed-perigo:#ff9a85}
}

body.ed-trava{overflow:hidden}
/* "hidden" vence o display das classes daqui mesmo fora do app (que já tem esta regra) */
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) [hidden]{display:none!important}

.ed-raiz,.ed-folha,.mo-folha{
  position:fixed;inset:0;
  background:var(--fundo,#faf7f3);color:var(--texto,#2b2320);
  overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;
  padding-bottom:calc(28px + env(safe-area-inset-bottom));
}
.ed-raiz{z-index:60}
.ed-folha{z-index:65}
.mo-folha{z-index:70}

/* ----------------------------------- classes do app, no tamanho do editor */
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .btn{
  min-height:var(--ed-toque);font-size:var(--ed-letra-botao);font-weight:700;line-height:1.15;
  padding:6px 14px;text-align:center;
}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .btn-grande{min-height:64px;width:100%}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .btn-primario{background:var(--ed-destaque);border-color:var(--ed-destaque);color:var(--ed-destaque-texto)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .btn svg{width:24px;height:24px;flex:0 0 auto}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .rotulo{font-size:var(--ed-letra);font-weight:700;color:var(--texto,#2b2320);margin-bottom:6px}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .ajuda{font-size:var(--ed-letra);line-height:1.45;color:var(--texto,#2b2320)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .unidade{font-size:var(--ed-letra);font-weight:700;color:var(--texto,#2b2320)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .altura-calc{font-size:var(--ed-letra);color:var(--texto,#2b2320)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .vazio{font-size:var(--ed-letra);color:var(--texto,#2b2320)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .chip{
  height:auto;min-height:48px;padding:6px 16px;font-size:var(--ed-letra);font-weight:700;
}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .chip[aria-pressed="true"]{background:var(--ed-destaque);border-color:var(--ed-destaque);color:var(--ed-destaque-texto)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .seg{min-height:var(--ed-toque);font-size:var(--ed-letra);font-weight:700;color:var(--texto,#2b2320)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .seg[aria-pressed="true"]{background:var(--ed-destaque);color:var(--ed-destaque-texto)}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .atalho{height:var(--ed-toque);font-size:var(--ed-letra);font-weight:700}
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) .btn-mais{height:auto;min-height:var(--ed-toque);font-size:var(--ed-letra)}

/* ------------------------------------------------------------ topo */
.ed-topo,.mo-folha-topo{
  position:sticky;top:0;z-index:6;
  display:flex;align-items:center;gap:8px;min-height:64px;
  padding:4px 10px 4px 4px;padding-top:calc(4px + env(safe-area-inset-top));
  background:var(--fundo,#faf7f3);border-bottom:1px solid var(--borda,#e2d8cb);
}
:is(.ed-topo,.mo-folha-topo) .btn-voltar{
  flex:0 0 auto;height:var(--ed-toque);padding:0 10px 0 4px;
  font-size:var(--ed-letra-botao);font-weight:700;color:var(--texto,#2b2320);
}
:is(.ed-topo,.mo-folha-topo) .btn-voltar svg{width:26px;height:26px;color:var(--cor-marca,#9a6434)}
.ed-titulo,.mo-folha-titulo{
  flex:1 1 auto;min-width:0;margin:0;font-size:var(--ed-letra-titulo);line-height:1.12;text-align:left;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.ed-topo-vazio{display:none}

.ed-corpo,.ed-folha-corpo{max-width:720px;margin:0 auto;padding:12px 14px}
.mo-folha-corpo{max-width:640px;margin:0 auto;padding:12px 14px 30px}

/* -------------------------------------------------- modelo e foto */
.ed-modelo{
  display:flex;align-items:center;gap:12px;width:100%;min-height:68px;
  padding:8px 12px;text-align:left;font:inherit;
  background:var(--fundo-2,#fff);border:1px solid var(--borda,#e2d8cb);border-radius:var(--raio,14px);
  color:var(--texto,#2b2320);
}
.ed-modelo-desenho{flex:0 0 auto;display:grid;place-items:center}
.ed-modelo-txt{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}
.ed-modelo-nome{font-weight:700;font-size:var(--ed-letra);line-height:1.25}
.ed-modelo-desc{font-size:var(--ed-letra);line-height:1.3;color:var(--texto,#2b2320)}
.ed-modelo-troca{
  display:flex;flex-direction:column;align-items:center;gap:0;flex:0 0 auto;
  font-size:var(--ed-letra);font-weight:700;color:var(--texto,#2b2320);
}
.ed-modelo-troca svg{width:24px;height:24px;color:var(--cor-marca,#9a6434)}
.ed-modelo-pequeno{min-height:60px}

.ed-linha-foto{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.ed-linha-foto .btn{flex:1 1 140px}
.ed-linha-foto.ed-tem-foto{display:grid;grid-template-columns:repeat(3,1fr)}
.ed-tem-foto .btn{flex-direction:column;gap:2px;min-height:76px;padding:4px 4px}
.ed-dica-antes{margin:8px 2px 0;font-size:var(--ed-letra);line-height:1.35;color:var(--texto,#2b2320)}

/* ------------------------------------------------------ palco */
.ed-fixo{
  position:sticky;top:var(--ed-topo,65px);z-index:5;
  margin:12px -14px 0;padding:0 14px 8px;
  background:var(--fundo,#faf7f3);box-shadow:0 8px 10px -10px rgba(0,0,0,.25);
}
.ed-mesa{
  padding:10px;
  display:flex;justify-content:center;
  background:var(--fundo-3,#f1ebe3);border-radius:var(--raio,14px);
  overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;
  -webkit-touch-callout:none;
}
.ed-palco{position:relative;flex:0 0 auto}
.ed-fundo{position:absolute;inset:0;width:100%;height:100%;display:block}
.ed-guias{
  position:absolute;left:0;top:0;overflow:visible;pointer-events:none;z-index:2;
  filter:drop-shadow(0 0 1px rgba(0,0,0,.55));
}
.ed-margem{fill:none;stroke:#fff;stroke-width:1.5;stroke-dasharray:6 5}
.ed-margem-alerta{stroke:#ff8a7a}
.ed-contorno{fill:none;stroke:rgba(255,255,255,.75);stroke-width:1.5}
.ed-camadas{position:absolute;inset:0;z-index:1}
/* A camada aparece "queimada": marrom escuro, multiplicando a madeira. */
.ed-camada{position:absolute;left:0;top:0;mix-blend-mode:multiply;opacity:.85;touch-action:none}
.ed-camada-img{
  display:block;width:100%;height:100%;pointer-events:none;
  user-select:none;-webkit-user-select:none;-webkit-user-drag:none;
}
.ed-camada-fora{outline:2px dashed #e0301e;outline-offset:1px}
/* [app-nova] Moldura da parte escolhida: sólida, 4 px PARA FORA da camada (a linha não
   passa mais por cima das letras), com um halo claro para ler sobre a madeira escura. */
.ed-selecao{
  position:absolute;z-index:3;pointer-events:none;
  border:0;outline:2px solid var(--cor-marca,#9a6434);outline-offset:4px;
  box-shadow:0 0 0 4px rgba(255,255,255,.55);
}
.ed-selecao-fora{outline-color:#e0301e}
/* [app-nova] A alça de aumentar fica FORA do canto de baixo à direita (36 px à vista, 48 px
   de toque): não cobre mais metade da parte pequena ("DESDE 1985"). */
.ed-alca{
  position:absolute;right:-12px;bottom:-12px;width:36px;height:36px;transform:translate(50%,50%);
  display:grid;place-items:center;border-radius:50%;
  background:var(--ed-destaque);color:var(--ed-destaque-texto);
  box-shadow:0 2px 8px rgba(0,0,0,.35);pointer-events:auto;touch-action:none;
}
.ed-alca::before{content:"";position:absolute;inset:-6px;border-radius:50%}
.ed-alca svg{width:20px;height:20px}
.ed-guia{position:absolute;z-index:2;background:#e0457b;opacity:0;pointer-events:none}
.ed-guia-v{top:0;bottom:0;left:50%;width:1px}
.ed-guia-h{left:0;right:0;top:50%;height:1px}
.ed-guia-on{opacity:.95}
.ed-vazio{
  position:absolute;inset:0;z-index:2;margin:0;padding:14px;
  display:grid;place-items:center;text-align:center;
  font-size:var(--ed-letra);line-height:1.3;font-weight:700;color:#2b1a0e;
  text-shadow:0 1px 0 rgba(255,255,255,.7);pointer-events:none;
}
.ed-com-foto .ed-vazio{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.85)}
.ed-ocupado .ed-mesa,.ed-ocupado .ed-adicionar{opacity:.55;pointer-events:none}

.ed-linha-info{display:flex;align-items:center;gap:8px;margin-top:8px}
/* até 2 linhas (cabe na altura do botão Desfazer): a medida nunca é cortada */
.ed-info{
  flex:1 1 auto;min-width:0;margin:0;font-size:var(--ed-letra);font-weight:700;line-height:1.25;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;
}
:is(.ed-raiz) .ed-btn-desfazer{flex:0 0 auto;min-height:48px;padding:4px 12px;gap:6px}
.ed-alerta{
  margin:8px 0 0;padding:8px 12px;border-radius:11px;
  background:#fdecea;color:#8a1d12;font-size:var(--ed-letra);font-weight:700;line-height:1.3;
}
.ed-alerta:empty{display:none}
/* Sempre do mesmo tamanho (2 linhas): os botões de baixo não pulam. */
.ed-alerta-fixa{
  height:calc(2.6em + 12px);margin-top:6px;padding:6px 12px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.ed-alerta-ok{background:var(--fundo-3,#f1ebe3);color:var(--texto,#2b2320);font-weight:400}

.ed-chips{display:flex;gap:8px;overflow-x:auto;margin-top:12px;padding-bottom:2px;scrollbar-width:none}
.ed-chips::-webkit-scrollbar{display:none}
.ed-chips .chip{flex:0 0 auto;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.ed-secao-titulo{margin:18px 2px 8px;font-size:var(--ed-letra);font-weight:700;line-height:1.3}

/* ------------------------------------------------- ferramentas */
.ed-ferr-grade{display:grid;gap:8px;margin-top:8px}
.ed-ferr-2{grid-template-columns:1fr 1fr}
.ed-ferr-3{grid-template-columns:repeat(3,1fr)}
.ed-ferr{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  min-height:66px;padding:6px 4px;font:inherit;
  background:var(--fundo-2,#fff);border:1px solid var(--borda,#e2d8cb);border-radius:12px;
  font-size:var(--ed-letra);font-weight:700;line-height:1.1;text-align:center;color:var(--texto,#2b2320);
  touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;
}
.ed-ferr-2 .ed-ferr{flex-direction:row;gap:8px;min-height:60px}
.ed-ferr svg{width:26px;height:26px;flex:0 0 auto}
.ed-ferr:active:not([disabled]){background:var(--cor-marca-suave,#9a643422);border-color:var(--cor-marca,#9a6434)}
/* desligado = tracejado, não apagado (texto continua legível) */
.ed-ferr[disabled]{border-style:dashed;border-width:2px;background:transparent;cursor:default}
.ed-ferr-apagar{color:var(--ed-perigo)}
/* As setas em cruz: ↑ em cima, ← meio → no meio, ↓ embaixo */
.ed-cruz{
  display:grid;gap:8px;margin-top:8px;
  grid-template-columns:repeat(3,1fr);
  grid-template-areas:". cima ." "esq meio dir" ". baixo .";
}
.ed-seta-cima{grid-area:cima}.ed-seta-esq{grid-area:esq}.ed-seta-meio{grid-area:meio}
.ed-seta-dir{grid-area:dir}.ed-seta-baixo{grid-area:baixo}
.ed-cruz .ed-ferr{min-height:60px}

.ed-ajustes{
  display:grid;gap:12px;margin-top:12px;padding:12px;
  background:var(--fundo-2,#fff);border:1px solid var(--borda,#e2d8cb);border-radius:var(--raio,14px);
}
.ed-ajuste .linha-medida{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ed-giro-linha{display:flex;align-items:center;gap:10px}
.ed-giro{flex:1 1 auto;width:auto;min-height:44px}
.ed-giro-valor{
  min-width:76px;height:var(--ed-toque);padding:0 8px;font:inherit;
  background:var(--fundo,#faf7f3);border:1px solid var(--borda,#e2d8cb);border-radius:11px;
  font-size:var(--ed-letra);font-weight:700;color:var(--texto,#2b2320);
}
.ed-largura{
  width:110px;height:var(--ed-toque);padding:0 12px;font:inherit;
  background:var(--fundo,#faf7f3);border:1px solid var(--borda,#e2d8cb);border-radius:11px;
  font-size:calc(var(--ed-letra) * 1.1);font-weight:700;color:var(--texto,#2b2320);-webkit-appearance:none;appearance:none;
}

/* "Mais opções": fechado por padrão; o caminho comum não precisa abrir */
.ed-mais{
  margin-top:12px;
  background:var(--fundo-2,#fff);border:1px solid var(--borda,#e2d8cb);border-radius:var(--raio,14px);
}
.ed-mais-titulo{
  display:flex;align-items:center;gap:10px;min-height:var(--ed-toque);padding:6px 14px;
  font-size:var(--ed-letra);font-weight:700;cursor:pointer;list-style:none;
}
.ed-mais-titulo::-webkit-details-marker{display:none}
.ed-mais-titulo::before{
  content:"";width:10px;height:10px;flex:0 0 auto;margin-left:2px;
  border-right:3px solid currentColor;border-bottom:3px solid currentColor;transform:rotate(-45deg);transition:transform .15s;
}
.ed-mais[open] > .ed-mais-titulo::before{transform:rotate(45deg)}
.ed-mais-corpo{display:grid;gap:12px;padding:0 12px 12px}
.ed-mais-corpo > .btn{width:100%}

.ed-adicionar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
:is(.ed-raiz) .ed-add{flex-direction:column;gap:2px;min-height:76px;padding:6px 4px}
.ed-add svg{width:28px;height:28px}
.ed-saidas{display:grid;gap:10px;margin-top:18px}
:is(.ed-raiz) .ed-btn-maquina{border:2px solid var(--ed-destaque);background:var(--fundo-2,#fff);color:var(--texto,#2b2320)}

/* -------------------------------------------- folhas (pickers) */
:is(.ed-folha) .ed-busca{height:var(--ed-toque);padding:0 16px!important;margin-bottom:4px;font-size:var(--ed-letra)}
.ed-grade,.ed-logos{
  display:grid;gap:10px;margin-top:12px;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr));
}
@media (max-width:399px){ .ed-grade,.ed-logos{grid-template-columns:1fr 1fr} }
.ed-cartao{
  display:flex;flex-direction:column;padding:0;text-align:left;overflow:hidden;font:inherit;
  background:var(--fundo-2,#fff);border:1px solid var(--borda,#e2d8cb);border-radius:var(--raio,14px);
  color:var(--texto,#2b2320);
}
.ed-cartao-media{
  display:grid;place-items:center;aspect-ratio:1/1;overflow:hidden;
  background:var(--papel,#fff);border-bottom:1px solid var(--papel-borda,#e8e0d6);
}
.ed-cartao-media img{width:100%;height:100%;object-fit:contain;padding:10px}
.ed-cartao-sem{color:#4a3828;font-size:var(--ed-letra)}
.ed-cartao-nome{padding:8px 10px 10px;font-size:var(--ed-letra);font-weight:700;line-height:1.25}

.ed-texto-campo{
  width:100%;min-height:110px;padding:10px 12px;margin-bottom:6px;
  background:var(--fundo-2,#fff);border:2px solid var(--borda,#e2d8cb);border-radius:12px;
  font:inherit;font-size:calc(var(--ed-letra) * 1.1);color:var(--texto,#2b2320);resize:vertical;
}
.ed-falta-texto{margin:0 0 12px}
.ed-fontes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}
.ed-fonte{
  min-height:var(--ed-toque);padding:0 8px;font-size:calc(var(--ed-letra) * 1.1);
  background:var(--fundo-2,#fff);border:1px solid var(--borda,#e2d8cb);border-radius:12px;color:var(--texto,#2b2320);
}
.ed-fonte[aria-pressed="true"]{border:3px solid var(--ed-destaque);background:var(--cor-marca-suave,#9a643422)}

/* ------------------------------------------ marcar a tábua */
.ed-dica-foto{margin:0 0 10px;font-size:var(--ed-letra);line-height:1.4}
.ed-foto-area{position:relative;margin:0 auto;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.ed-foto-cv{display:block;width:100%;height:100%;border-radius:8px}
.ed-foto-sobre{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.ed-quad{fill:rgba(255,204,51,.14);stroke:#ffcc33;stroke-width:2;vector-effect:non-scaling-stroke}
.ed-quad-ruim{fill:rgba(255,77,58,.18);stroke:#ff4d3a}
.ed-quad-topo{stroke:#ffcc33;stroke-width:6;stroke-linecap:round;vector-effect:non-scaling-stroke}
.ed-rotulo-topo{
  position:absolute;transform:translate(-50%,-50%);padding:2px 12px;border-radius:999px;
  background:#ffcc33;color:#2b1a0e;font-size:var(--ed-letra);font-weight:800;line-height:1.3;pointer-events:none;
}
.ed-canto{
  position:absolute;width:52px;height:52px;margin:-26px 0 0 -26px;padding:0;
  background:transparent;border:0;border-radius:50%;touch-action:none;
}
.ed-canto::after{
  content:"";position:absolute;left:50%;top:50%;width:24px;height:24px;margin:-12px 0 0 -12px;
  border-radius:50%;background:rgba(255,204,51,.95);border:3px solid #fff;
  box-shadow:0 1px 6px rgba(0,0,0,.55);transition:transform .1s;
}
.ed-canto-ativo::after{transform:scale(.6)}
/* [app-nova] a bolinha escolhida (as setas mexem nela): anel grosso */
.ed-canto-escolhido::after{width:32px;height:32px;margin:-16px 0 0 -16px;border-width:6px;border-color:#2b1a0e;box-shadow:0 0 0 3px #fff, 0 1px 6px rgba(0,0,0,.55)}
.ed-marcar-ajuste{margin:12px 0 0}
.ed-marcar-nome{margin:0 0 6px;font-size:var(--ed-letra);font-weight:700;line-height:1.3}
.ed-lupa{
  position:absolute;z-index:4;width:132px;height:132px;border-radius:50%;
  border:3px solid #fff;box-shadow:0 4px 16px rgba(0,0,0,.45);pointer-events:none;background:#222;
}
.ed-marcar-controles{display:grid;gap:8px;margin:12px 0}
.ed-marcar-controles .btn{width:100%}
.ed-aviso-cantos:empty{display:none}

/* ------------------------------------------------- saídas */
.ed-quadro-arquivo{padding:12px;min-height:140px;background:#fff}
.ed-img-arquivo{max-width:100%;max-height:40vh;width:auto;height:auto;box-shadow:0 0 0 1px #e2d8cb}
.ed-quadro-previa{
  display:grid;place-items:center;min-height:220px;overflow:hidden;
  background:var(--fundo-3,#f1ebe3);border-radius:var(--raio,14px);
}
.ed-img-previa{display:block;width:100%;height:auto;max-height:62vh;object-fit:contain}
.ed-espera{margin:0;padding:20px;font-size:var(--ed-letra);font-weight:700;color:var(--texto,#2b2320)}
.ed-folha-saida .btn-grande{margin-top:12px}
.ed-folha-saida .ed-folha-corpo > .btn{width:100%;margin-top:10px}
.ed-folha-saida .ed-mais{margin-top:16px}
.ed-estado{min-height:1.4em;font-weight:700}

/* ------------------------------------------- modelos (mo-) */
.mo-novo svg{width:24px;height:24px}
.mo-lista{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.mo-item{
  display:flex;align-items:stretch;overflow:hidden;
  background:var(--fundo-2,#fff);border:1px solid var(--borda,#e2d8cb);border-radius:var(--raio,14px);
}
.mo-item-atual{border-color:var(--ed-destaque);box-shadow:0 0 0 2px var(--ed-destaque)}
.mo-usar{
  flex:1 1 auto;min-width:0;min-height:76px;padding:10px 12px;font:inherit;
  display:flex;align-items:center;gap:12px;text-align:left;
  background:none;border:0;color:var(--texto,#2b2320);
}
.mo-textos{display:flex;flex-direction:column;min-width:0;gap:2px}
.mo-nome{font-size:var(--ed-letra);font-weight:700;line-height:1.25}
.mo-selo{
  display:inline-block;margin-left:6px;padding:0 9px;border-radius:999px;vertical-align:1px;
  background:var(--fundo-3,#f1ebe3);color:var(--texto,#2b2320);
  font-size:var(--ed-letra);font-style:normal;font-weight:400;line-height:1.35;
}
.mo-desc{font-size:var(--ed-letra);line-height:1.3;color:var(--texto,#2b2320)}
.mo-editar{
  width:78px;flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  font:inherit;font-size:var(--ed-letra);font-weight:700;
  background:none;border:0;border-left:1px solid var(--borda,#e2d8cb);color:var(--texto,#2b2320);
}
.mo-editar svg{width:24px;height:24px;color:var(--cor-marca,#9a6434)}
.mo-desenho{flex:0 0 auto;display:block}
.mo-desenho .mo-desenho-tabua{fill:#d9b68c;stroke:#9a6434;stroke-width:1}
.mo-desenho .mo-desenho-margem{fill:none;stroke:#4a2f18;stroke-width:.8;stroke-dasharray:2 2}
.mo-vazio,.mo-dica{color:var(--texto,#2b2320);font-size:var(--ed-letra);line-height:1.45}
.mo-vazio{margin:26px 4px 12px;text-align:center}
.mo-dica{margin:12px 2px 0}
.mo-titulo-form{margin:2px 0 6px;font-size:var(--ed-letra-titulo)}
.mo-bloco{margin-top:16px}
.mo-bloco .ajuda{margin-top:6px}
.mo-duas{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mo-linha-campo{display:flex;align-items:center;gap:8px}
.mo-campo{
  width:100%;min-width:0;height:var(--ed-toque);padding:0 12px;font:inherit;
  background:var(--fundo,#faf7f3);border:2px solid var(--borda,#e2d8cb);border-radius:11px;
  font-size:calc(var(--ed-letra) * 1.1);font-weight:700;color:var(--texto,#2b2320);-webkit-appearance:none;appearance:none;
}
.mo-redonda{flex:0 0 auto}
.mo-previa{
  display:flex;align-items:center;gap:12px;min-height:64px;margin-top:16px;padding:10px;
  background:var(--fundo-3,#f1ebe3);border-radius:12px;
}
.mo-previa .mo-desenho{width:96px;height:96px}
.mo-aviso{min-height:1.3em;margin:10px 2px;color:var(--ed-perigo);font-weight:700;font-size:var(--ed-letra)}
.mo-aviso:empty{margin:4px 0}
.mo-botoes{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px}
:is(.mo-raiz,.mo-folha) .mo-apagar{color:var(--ed-perigo)}

/* Exemplo dentro do campo: legível (7:1), começa com "Ex.:" para não parecer escrito */
:is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) :is(input,textarea)::placeholder{color:#5a4a3e;opacity:1}

@media (prefers-color-scheme: dark){
  :is(.ed-raiz,.ed-folha,.mo-raiz,.mo-folha) :is(input,textarea)::placeholder{color:#cdbcaa}
  .ed-alerta:not(.ed-alerta-ok){background:#3d1c17;color:#ffc2b8}
  .ed-cartao-sem{color:#4a3828}
}
