:root{
  --papel:#f5f0e6; --cartao:#fffdf8; --tinta:#262320; --suave:#756c60; --linha:#e2d9c8;
  --acento:#2f5d50; --acento-claro:#dfe9e3; --ouro:#b08a3e; --ouro-claro:#f3ead6; --ruim:#a33a2c;
  --raio:16px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;background:var(--papel);color:var(--tinta);font:16px/1.55 Inter,system-ui,sans-serif}
body{padding:0 16px 96px;max-width:680px;margin:0 auto;min-height:100vh}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;margin:0;line-height:1.25}
h2{font-size:26px;margin:22px 0 8px}
h3{font-size:19px;margin:24px 0 4px;color:var(--acento)}
[hidden]{display:none!important}
.suave{color:var(--suave)} .pequeno{font-size:13px;margin:6px 0 0}
.centro{padding-top:16vh;text-align:center}
.centro h1{font-size:34px;margin-bottom:10px}
.topo{padding:20px 0 10px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.topo h1{font-size:24px}
.salvo{font-size:13px;color:var(--suave)}
.barra{height:8px;background:var(--linha);border-radius:99px;overflow:hidden}
.barra div{height:100%;width:0;background:var(--acento);transition:width .4s}
.etapas{display:flex;gap:6px;overflow-x:auto;padding:12px 0 4px;scrollbar-width:none}
.etapas::-webkit-scrollbar{display:none}
.etapas button{flex:none;border:1px solid var(--linha);background:var(--cartao);color:var(--suave);border-radius:99px;padding:7px 13px;font:500 13px Inter,sans-serif;cursor:pointer;white-space:nowrap}
.etapas button.ok{color:var(--acento);border-color:var(--acento-claro);background:var(--acento-claro)}
.etapas button[aria-current]{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
.intro{font-size:17px}
.porque{font-size:14px;color:var(--suave);margin:4px 0 8px}
.cartao{background:var(--cartao);border:1px solid var(--linha);border-radius:var(--raio);padding:16px;margin-top:12px}
.pergunta label{display:block;font-family:Fraunces,Georgia,serif;font-size:18px;line-height:1.35}
textarea,input[type=text],input[type=password]{width:100%;margin-top:10px;border:1px solid var(--linha);border-radius:12px;background:#fff;padding:12px 14px;font:16px/1.5 Inter,sans-serif;color:var(--tinta);resize:vertical}
textarea:focus,input:focus{outline:2px solid var(--acento);outline-offset:1px}
.gravar{margin-top:10px;border:0;border-radius:12px;background:var(--acento);color:#fff;font:600 15px Inter,sans-serif;padding:11px 16px;display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.gravar.ativo{background:var(--ruim);animation:pulsa 1.4s infinite}
.gravar:disabled{opacity:.6}
@keyframes pulsa{50%{box-shadow:0 0 0 8px rgba(163,58,44,.15)}}
.ponto{width:10px;height:10px;border-radius:50%;background:#fff}
.aviso{font-size:14px;color:var(--suave);margin:8px 0 0;min-height:0}
.ideias{margin-top:12px;background:var(--ouro-claro);border-radius:12px;padding:10px 14px}
.ideias summary{cursor:pointer;font-weight:600;color:var(--ouro)}
.opcoes{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.opcao{display:flex;gap:8px;align-items:center;font-size:16px;cursor:pointer}
.opcao input{width:20px;height:20px;accent-color:var(--acento)}
.navega{position:fixed;left:0;right:0;bottom:0;background:var(--cartao);border-top:1px solid var(--linha);padding:12px 16px calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:10px}
.navega button{flex:1;max-width:320px}
.primario,.secundario{border-radius:12px;padding:13px 18px;font:600 16px Inter,sans-serif;cursor:pointer;border:1px solid var(--tinta)}
.primario{background:var(--tinta);color:var(--papel)}
.secundario{background:var(--cartao);color:var(--tinta);border-color:var(--linha)}
.primario:disabled{opacity:.5}
.largo{width:100%;margin-top:12px}
.termo ul{padding-left:18px} .termo li{margin:8px 0}
.abas{display:flex;gap:6px;overflow-x:auto;padding:4px 0 12px}
.abas button{flex:none;border:1px solid var(--linha);background:var(--cartao);border-radius:99px;padding:8px 14px;font:500 14px Inter,sans-serif;cursor:pointer;color:var(--tinta)}
.abas button[aria-current]{background:var(--acento);color:#fff;border-color:var(--acento)}
.doc{background:var(--cartao);border:1px solid var(--linha);border-radius:var(--raio);padding:20px 20px 32px;overflow-wrap:anywhere}
.doc h1{font-size:28px;margin:8px 0 12px} .doc h2{font-size:22px;margin:28px 0 8px} .doc h3{font-size:18px}
.doc table{border-collapse:collapse;width:100%;font-size:14px;display:block;overflow-x:auto}
.doc th,.doc td{border:1px solid var(--linha);padding:6px 8px;text-align:left;vertical-align:top}
.doc th{background:var(--papel)}
.doc blockquote{margin:12px 0;padding:4px 14px;border-left:3px solid var(--ouro);color:var(--suave)}
/* painel */
.linha-cli{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.selo{font-size:12px;border-radius:99px;padding:2px 10px;background:var(--papel);color:var(--suave)}
.selo.concluido,.selo.gerando{background:var(--ouro-claro);color:var(--ouro)}
.selo.revisao{background:#f6dfd9;color:var(--ruim)}
.selo.entregue{background:var(--acento-claro);color:var(--acento)}
.acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.acoes button{border-radius:10px;padding:8px 12px;font:500 14px Inter,sans-serif;cursor:pointer;border:1px solid var(--linha);background:var(--cartao);color:var(--tinta)}
.acoes .forte{background:var(--acento);border-color:var(--acento);color:#fff}
.resp dt{font-weight:600;margin-top:12px} .resp dd{margin:2px 0 0;white-space:pre-wrap}
@media print{
  body{background:#fff;max-width:none;padding:0}
  .nao-imprime{display:none!important}
  .doc{border:0;padding:0}
}
