/* Propostas · Cia Operadora — padrão Grupo Cia Marítima (Operações) */
@font-face{font-family:Circular;src:url(/molde/assets/fonts/CircularStd-Book.otf);font-weight:400}
@font-face{font-family:Circular;src:url(/molde/assets/fonts/CircularStd-Bold.otf);font-weight:700}
@font-face{font-family:Circular;src:url(/static/CircularStd-Black.otf);font-weight:900}
@font-face{font-family:Circular;src:url(/static/CircularStd-Light.otf);font-weight:300}
:root{
  --navy:#0b264c;--deep:#002a54;--ink:#061024;--azul:#4797d4;
  --texto:#404041;--cinza:#555;--claro:#ededed;--borda:#d0d0d0;--fundo:#f5f6f8;
  --erro:#a3261b;--erro-bg:#fbeceb;--aten:#8a5a00;--aten-bg:#fff7e6;--ok:#21612b;--ok-bg:#e3f1e5;
  --sh-xs:0 1px 2px rgba(6,16,36,.06);--sh-sm:0 2px 6px rgba(6,16,36,.08);--sh-md:0 4px 16px rgba(6,16,36,.10);
  --r:4px;--r-lg:8px;--t:180ms ease-out}
*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased}
body{margin:0;font-family:Circular,"Helvetica Neue",Arial,sans-serif;color:var(--texto);background:var(--fundo);font-size:15px;line-height:1.5}
a{color:var(--navy);transition:color var(--t)}
a:hover{color:var(--deep)}

/* topo */
.topo{background:#fff;color:var(--texto);display:flex;align-items:center;gap:40px;padding:0 40px;height:72px;border-bottom:1px solid var(--claro);position:relative;z-index:2}
.topo .marca-topo{display:flex;align-items:center}
.topo img{height:30px;display:block}
.topo nav{display:flex;gap:28px;flex:1}
.topo nav a{color:var(--cinza);text-decoration:none;font-weight:400;font-size:14px;padding:25px 0 23px;border-bottom:2px solid transparent;white-space:nowrap;transition:color var(--t),border-color var(--t)}
.topo nav a:hover{color:var(--navy)}
.topo nav a.ativo{color:var(--navy);font-weight:700;border-bottom-color:var(--navy)}
.topo nav.nav-cta{flex:none}
.topo nav a.cta{color:#fff;background:var(--navy);font-weight:700;padding:9px 16px;border:0;border-radius:var(--r)}
.topo nav a.cta:hover{background:var(--deep)}
.topo .quem{font-size:13px;color:var(--cinza);display:flex;gap:16px;align-items:center}
.topo .quem a{color:var(--navy);text-decoration:none;font-weight:700}
.topo .quem a:hover{text-decoration:underline}

main{max-width:1180px;margin:0 auto;padding:40px 32px 96px}
.rotulo{display:block;font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--azul);margin:0 0 8px}
h1{font-size:32px;font-weight:700;color:var(--navy);margin:0 0 8px;letter-spacing:-.02em;line-height:1.2}
h2{font-size:18px;color:var(--navy);margin:32px 0 12px;letter-spacing:-.01em}
.sub{color:var(--cinza);margin:0 0 28px}
.card{background:#fff;border:1px solid var(--claro);border-radius:var(--r);padding:24px;margin-bottom:20px;box-shadow:var(--sh-xs)}
label{display:block;font-weight:700;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza);margin:0 0 6px}
input[type=text],input[type=number],input[type=email],select,textarea{width:100%;font:inherit;color:var(--texto);border:1px solid var(--borda);border-radius:var(--r);padding:10px 12px;background:#fff;box-shadow:var(--sh-xs);transition:border-color var(--t)}
textarea{min-height:90px;resize:vertical}
textarea.grande{min-height:280px;font-size:14px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--azul);box-shadow:0 0 0 3px rgba(71,151,212,.18)}
.grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.campo{margin-bottom:16px}
.marca{display:flex;align-items:center;gap:8px;font-size:14px;margin:6px 0;font-weight:400;text-transform:none;letter-spacing:0;color:var(--texto)}
.botoes{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px;align-items:center}
button,.botao{font:inherit;font-weight:700;border:0;border-radius:var(--r);padding:11px 20px;cursor:pointer;background:var(--navy);color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:background var(--t)}
button:hover,.botao:hover{background:var(--deep);color:#fff}
button.sec,.botao.sec{background:#fff;color:var(--navy);border:1px solid var(--borda)}
button.sec:hover,.botao.sec:hover{background:var(--claro);color:var(--navy)}
button:disabled{opacity:.55;cursor:wait}
.alerta{border-radius:var(--r);padding:10px 14px;margin:6px 0;font-size:14px}
.alerta.erro{background:var(--erro-bg);color:var(--erro)}
.alerta.atencao{background:var(--aten-bg);color:var(--aten)}
.interno{background:var(--aten-bg);border:1px dashed #d39b2a;border-radius:var(--r);padding:14px 18px;font-size:14px}
.interno ul{margin:6px 0 0;padding-left:18px}

/* listas */
table.lista{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--claro);border-radius:var(--r);overflow:hidden;box-shadow:var(--sh-xs)}
table.lista th{background:#fff;color:var(--cinza);font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-align:left;padding:14px 16px;border-bottom:1px solid var(--claro)}
table.lista td{padding:14px 16px;border-top:1px solid var(--claro);font-size:14px;vertical-align:top}
table.lista tbody tr:first-child td{border-top:0}
table.lista tbody tr{transition:background var(--t)}
table.lista tbody tr:hover{background:#f9fafb}
table.lista td b{color:var(--navy)}
table.edita{width:100%;border-collapse:collapse}
table.edita th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cinza);text-align:left;padding:4px 6px}
table.edita td{padding:4px 6px;vertical-align:top}
.dia-ed{border:1px solid var(--claro);border-radius:var(--r);padding:12px;margin-bottom:10px;background:#fbfbfc}
.dia-ed .linha{display:grid;grid-template-columns:70px 160px 1fr;gap:8px;margin-bottom:8px}
.selo{display:inline-block;background:var(--claro);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;white-space:nowrap}
.selo.gerada{background:var(--ok-bg);color:var(--ok)}
.selo.rascunho{background:var(--aten-bg);color:var(--aten)}
.venda{font-weight:700;color:var(--navy);white-space:nowrap;font-size:14px}
.previa{max-width:300px;border:1px solid var(--claro);border-radius:var(--r);box-shadow:var(--sh-md)}
.copiar{display:flex;gap:8px}
.copiar input{flex:1}
.vazio{color:var(--cinza)}
details summary{cursor:pointer;font-weight:700;color:var(--navy)}
pre.fonte{white-space:pre-wrap;font-size:13px;background:#fafafa;border:1px solid var(--claro);border-radius:var(--r);padding:12px;max-height:420px;overflow:auto}
.carregando{display:none;color:var(--cinza)}
form.enviando .carregando{display:inline}
.cabeca{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:28px}
.cabeca .sub{margin:0}
.busca{display:flex;gap:8px;min-width:320px}

/* ── palco: tela principal (nova proposta), claro e minimalista ───────────── */
body.palco{background:#fff;min-height:100vh;display:flex;flex-direction:column}
body.palco main{flex:1;width:100%;max-width:760px;padding:88px 24px 48px}
.palco .rotulo{margin-bottom:20px}
.palco h1.hero{font-weight:700;font-size:clamp(32px,4.6vw,48px);letter-spacing:-.03em;line-height:1.08;color:var(--navy);margin:0 0 16px}
.palco h1.hero em{font-style:normal;font-weight:300}
.palco .lead{color:var(--cinza);font-size:17px;font-weight:300;line-height:1.55;margin:0 0 48px;max-width:540px}
.compositor{background:#fff;border:1px solid var(--borda);border-radius:var(--r-lg);position:relative;transition:border-color var(--t),box-shadow var(--t)}
.compositor:focus-within{border-color:var(--navy);box-shadow:var(--sh-md)}
.compositor.solta{border-color:var(--navy);border-style:dashed}
.compositor textarea{display:block;background:transparent;border:0;box-shadow:none;color:var(--texto);font-size:15px;line-height:1.65;min-height:180px;max-height:52vh;padding:22px 24px 8px;resize:none}
.compositor textarea::placeholder{color:#9a9a9c}
.compositor textarea:focus{box-shadow:none;border:0}
.compositor .base{display:flex;align-items:center;gap:16px;padding:12px 14px 12px 16px;border-top:1px solid var(--claro)}
.anexar{display:inline-flex;align-items:center;gap:8px;color:var(--cinza);font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;cursor:pointer;margin:0;padding:6px 8px;border-radius:var(--r);transition:color var(--t),background var(--t)}
.anexar:hover{color:var(--navy);background:#f5f6f8}
.anexar input{display:none}
.arquivos{flex:1;font-size:13px;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.atalho{font-size:12px;color:#9a9a9c;white-space:nowrap}
.palco button.gerar{white-space:nowrap;padding:11px 18px}
.solte{position:absolute;inset:0;display:none;align-items:center;justify-content:center;border-radius:var(--r-lg);background:rgba(255,255,255,.96);color:var(--navy);font-weight:700}
.compositor.solta .solte{display:flex}
.detalhes{display:grid;grid-template-columns:1.3fr 1.3fr .7fr;gap:28px;margin-top:36px}
.detalhes .item{border-bottom:1px solid var(--borda);padding-bottom:6px;transition:border-color var(--t)}
.detalhes .item:focus-within{border-bottom-color:var(--navy)}
.detalhes label{font-size:10px;color:#8a8a8c;margin-bottom:6px}
.detalhes input,.detalhes select{background:transparent;border:0;box-shadow:none;color:var(--texto);padding:0;font-size:15px}
.detalhes input:focus,.detalhes select:focus{box-shadow:none}
.detalhes input::placeholder{color:#b3b3b5}
.detalhes .capa-btn{display:block;color:var(--texto);font-size:15px;font-weight:400;text-transform:none;letter-spacing:0;cursor:pointer;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detalhes .capa-btn:hover{color:var(--navy)}
.detalhes .capa-btn input{display:none}
.opcoes{display:flex;gap:28px;flex-wrap:wrap;margin-top:24px}
.opcoes .marca{color:var(--cinza);font-size:13px}
.opcoes input{accent-color:var(--navy)}
.atalhos{display:flex;gap:6px 24px;flex-wrap:wrap;margin-top:56px;padding-top:24px;border-top:1px solid var(--claro)}
.chip{font:inherit;font-size:13px;font-weight:400;color:var(--cinza);background:none;border:0;padding:0;cursor:pointer;text-decoration:none;transition:color var(--t)}
.chip:hover{color:var(--navy);background:none;text-decoration:underline;text-underline-offset:3px}
.chip.principal{color:var(--navy);font-weight:700}
.palco .alerta.erro{margin-bottom:16px}
.progresso{display:none;height:2px;background:var(--claro);overflow:hidden;border-radius:0 0 var(--r-lg) var(--r-lg)}
.progresso i{display:block;height:100%;width:35%;background:var(--navy);animation:corre 1.4s ease-in-out infinite}
form.enviando .progresso{display:block}
form.enviando .compositor textarea{opacity:.5}
.estado{display:none;color:var(--cinza);font-size:13px;margin-top:12px}
form.enviando .estado{display:block}
@keyframes corre{0%{transform:translateX(-100%)}100%{transform:translateX(290%)}}
.rodape-grupo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px 24px 36px}
.rodape-grupo span{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#9a9a9c}
.rodape-grupo img{height:24px}
.entra{opacity:0;transform:translateY(6px);animation:entra 380ms ease-out forwards}
.entra.d1{animation-delay:50ms}.entra.d2{animation-delay:110ms}.entra.d3{animation-delay:170ms}.entra.d4{animation-delay:230ms}.entra.d5{animation-delay:290ms}
@keyframes entra{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.entra{animation:none;opacity:1;transform:none}.progresso i{animation:none;width:100%}}
@media (max-width:760px){
  .topo{display:grid;grid-template-columns:auto 1fr;row-gap:0;padding:12px 16px 0;height:auto}
  .topo .marca-topo{grid-column:1;grid-row:1}
  .topo .quem{grid-column:2;grid-row:1;justify-self:end}
  .topo .quem span{display:none}
  .topo nav{grid-column:1 / -1;grid-row:2;overflow-x:auto;gap:20px}
  .topo nav a{padding:14px 0 12px}
  .topo nav.nav-cta{display:none}
  main{padding:28px 16px 64px}
  body.palco main{padding-top:40px}
  .detalhes{grid-template-columns:1fr 1fr;gap:24px 20px}
  .atalho{display:none}
  .compositor .base{flex-wrap:wrap}
  .compositor .base .arquivos{order:3;flex-basis:100%}
  .palco button.gerar{margin-left:auto}
  .busca{min-width:0;width:100%}
}

/* capa sugerida pelo motor */
.capa-sug .capa-tit{margin:0 0 6px}
.capa-sug .sub{margin-bottom:16px}
.capa-grupo{margin-top:20px}
.capa-lugar{font-weight:700;color:var(--navy);margin-bottom:10px}
.capa-grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}
.capa-op{margin:0;border:1px solid var(--claro);border-radius:var(--r);overflow:hidden;background:#fff;transition:box-shadow var(--t)}
.capa-op:hover{box-shadow:var(--sh-md)}
.capa-op img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover;background:#f2f3f5}
.capa-op figcaption{display:flex;flex-direction:column;gap:8px;padding:10px 12px;font-size:12px;color:var(--cinza)}
.capa-op button{width:100%;justify-content:center;padding:8px 10px;font-size:13px}
.trilho{height:2px;background:var(--claro);overflow:hidden;border-radius:2px}
.trilho i{display:block;height:100%;width:30%;background:var(--navy);animation:corre 1.4s ease-in-out infinite}

.capa-escolha{display:flex;align-items:baseline;gap:8px;white-space:nowrap;overflow:hidden}
.capa-escolha .capa-btn{flex:0 1 auto}
.capa-escolha .ou{font-size:13px;color:#9a9a9c}
.capa-alt{font:inherit;font-size:15px;font-weight:400;color:var(--texto);background:none;border:0;padding:0;cursor:pointer}
.capa-alt:hover{color:var(--navy);background:none}
.capa-alt.ativo{color:var(--navy);font-weight:700;text-decoration:underline;text-underline-offset:3px}

.capa-ok{display:none;align-items:center;gap:6px;color:var(--navy);font-weight:700;font-size:15px}
.capa-escolha.sugerida .capa-ok{display:inline-flex}
.capa-escolha.sugerida .capa-btn,.capa-escolha.sugerida .ou,.capa-escolha.sugerida .capa-alt{display:none}
.capa-desfaz{font:inherit;font-size:12px;font-weight:400;color:var(--cinza);background:none;border:0;padding:0 0 0 6px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.capa-desfaz:hover{color:var(--navy);background:none}
