:root{--green:#14532d;--green2:#166534;--bg:#f3f4f6;--line:#e5e7eb;--muted:#6b7280;--red:#b91c1c;--text:#111827;--soft:#f8fafc}
*{box-sizing:border-box}
html{font-size:14px}
body{font-family:Arial,Helvetica,sans-serif;margin:0;background:var(--bg);color:var(--text);font-size:14px;line-height:1.42}
a{color:var(--green);font-weight:700;text-decoration:none}
a:hover{text-decoration:underline}
.top{background:var(--green);color:#fff;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:0 2px 10px #0002}
.top b{font-size:16px}.top a{color:#fff}.top .menu{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.top .menu a{padding:7px 9px;border-radius:8px}.top .menu a:hover{background:#ffffff22;text-decoration:none}.top-sub{font-size:12px;color:#d1fae5;margin-top:2px}
.wrap{max-width:1180px;margin:20px auto;padding:0 16px}.card{background:#fff;border-radius:14px;padding:17px;box-shadow:0 5px 18px #00000010;margin-bottom:16px;border:1px solid #eef2f7}.login{max-width:440px;margin:8vh auto}.title{margin:0 0 8px}
h1{font-size:23px;line-height:1.2;margin:0 0 10px}h2{font-size:18px;line-height:1.25;margin:0 0 12px}h3{font-size:15px;margin:14px 0 9px}.muted{color:var(--muted);font-size:12.5px}.err{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;padding:10px;border-radius:10px}.ok{background:#dcfce7;color:#166534;border:1px solid #bbf7d0;padding:10px;border-radius:10px}
.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}label{font-size:12.5px;color:#374151;font-weight:700;display:block;margin-bottom:3px}input,select,textarea,button{font:inherit}input,select,textarea{width:100%;padding:10px 11px;border:1px solid #d1d5db;border-radius:10px;margin:0 0 11px;background:#fff;outline:none}input:focus,select:focus,textarea:focus{border-color:#166534;box-shadow:0 0 0 3px #dcfce7}textarea{min-height:95px;resize:vertical}.btn,button{border:0;background:var(--green2);color:#fff;border-radius:10px;padding:10px 13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:39px}.btn:hover,button:hover{filter:brightness(.96);text-decoration:none}.btn.secondary,button.secondary{background:#4b5563}.btn.red{background:#991b1b}.btn.full,button.full{width:100%;text-align:center}.btn.small,button.small{font-size:12px;padding:6px 9px;border-radius:8px;min-height:auto}.cpf-start{font-size:26px;letter-spacing:2px;text-align:center;font-weight:700;height:62px}.cpf-row{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:14px;align-items:end}.tabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:16px}.tabbtn{background:#e5e7eb;color:#111827;border-radius:10px 10px 0 0;padding:9px 13px;min-height:38px}.tabbtn.active{background:var(--green);color:#fff}.tab{display:none}.tab.active{display:block}.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{padding:8px 9px;border-bottom:1px solid var(--line);text-align:left;font-size:13px;vertical-align:top}.table th{background:#f8fafc;color:#374151;font-weight:800}.badge{display:inline-block;background:#dcfce7;color:#166534;padding:4px 8px;border-radius:99px;font-size:12px;font-weight:700}.sigbox{border:1px solid #d1d5db;border-radius:10px;background:#fff;width:100%;height:220px;touch-action:none}.step{display:none}.step.active{display:block}.steps{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}.steps span{background:#e5e7eb;padding:6px 10px;border-radius:99px;font-size:12.5px}.steps span.active{background:#14532d;color:#fff}.hidden-file{display:none}.file-list{margin:10px 0 14px;border:1px dashed #cbd5e1;border-radius:10px;background:#f8fafc;padding:10px;min-height:48px}.file-item{display:flex;align-items:center;gap:10px;justify-content:space-between;background:#fff;border:1px solid #e5e7eb;border-radius:9px;padding:8px;margin:6px 0;color:#111827}.file-item span{flex:1;word-break:break-word}.file-item img{width:72px;height:54px;object-fit:cover;border-radius:8px;border:1px solid #ddd}.photo-preview img{max-width:120px;max-height:100px;margin:5px;border-radius:8px;border:1px solid #ddd}.dossie-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.dossie-title{font-size:24px;margin-bottom:6px}.actions{display:flex;gap:8px;flex-wrap:wrap}.print-only{display:none}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.nowrap{white-space:nowrap}
@media print{body{background:#fff;font-size:11.5px}.top,.no-print,.tabs,.tabbtn,button,.btn{display:none!important}.wrap{max-width:none;margin:0;padding:0}.card{box-shadow:none;border:1px solid #ddd;page-break-inside:avoid;padding:12px}.print-only{display:block}.table th,.table td{font-size:10.5px;padding:5px}.file-list{border:0;padding:0}.file-item{border:0;padding:2px}.dossie-title{font-size:18px}a{color:#111;text-decoration:none}}
@media(max-width:760px){html{font-size:13px}.grid,.grid3,.cpf-row{grid-template-columns:1fr}.cpf-start{font-size:22px;height:56px}.top{display:block}.top .menu{margin-top:10px}.dossie-header{display:block}.actions{margin-top:10px}.table{display:block;overflow-x:auto}}

/* Ajustes dossiê e assinaturas duplas */
.sigbox.signature-pad{width:100%;max-width:620px;height:210px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;touch-action:none;display:block}
.file-list{margin-top:10px}.file-item{display:flex;align-items:center;gap:10px;border:1px solid #e5e7eb;border-radius:10px;padding:8px;margin:6px 0;background:#f8fafc}.file-item img{width:64px;height:48px;object-fit:cover;border-radius:8px;border:1px solid #e5e7eb}.hidden-file{display:none!important}
.dossie .card.compact{padding:14px;margin-bottom:12px}.dossie h1{font-size:22px}.dossie h2{font-size:16px;margin-bottom:8px}.dossie p{margin:6px 0}.dossie .table th,.dossie .table td{font-size:12.5px;padding:6px 8px}.dossie-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.dossie-photos img{width:100%;height:140px;object-fit:cover;border-radius:10px;border:1px solid #d1d5db;background:#fff}.signature-img{max-width:520px;width:100%;border:1px solid #d1d5db;border-radius:10px;background:#fff;padding:8px}
@media print{.no-print,.top{display:none!important}.wrap{max-width:none;margin:0;padding:0}.card{box-shadow:none;border:1px solid #ddd;break-inside:avoid}.dossie-photos{grid-template-columns:repeat(2,1fr)}body{background:#fff;font-size:12px}.signature-img{max-width:420px}.dossie h1{font-size:20px}.dossie h2{font-size:15px}}
