/* Certificados: A1 da empresa, solicitações e renovação, certificadoras parceiras. Identidade Cassini. */
.certmod-empty{padding:34px 22px;text-align:center;color:var(--muted)}.certmod-empty svg{width:30px;height:30px;color:var(--primary)}.certmod-empty h2{font-family:"Playfair Display",Georgia,serif;font-size:19px;margin:10px 0 6px;color:var(--ink)}
.certmod-note{display:flex;gap:8px;align-items:flex-start;font-size:11px;color:var(--muted);line-height:1.6;margin:10px 0}.certmod-note svg{width:14px;height:14px;flex-shrink:0;margin-top:2px;color:var(--primary)}.certmod-note code{font-size:10px;background:#f3eee6;padding:1px 4px;border-radius:4px;overflow-wrap:anywhere}.certmod-note a{color:var(--primary)}
.certmod-panel{margin-bottom:18px;overflow:hidden}.certmod-block-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 22px 10px}.certmod-block-heading h2{font-size:14px;display:flex;align-items:center;gap:8px;margin:0}.certmod-block-heading h2 svg{width:16px;height:16px;color:var(--primary)}
.certmod-subtitle{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);display:flex;align-items:center;gap:6px;margin:18px 0 8px;padding-top:12px;border-top:1px solid var(--line)}.certmod-subtitle svg{width:14px;height:14px;color:var(--primary)}
.certmod-summary{padding:0 22px 20px;margin-top:20px}.certmod-summary .certmod-block-heading{padding:18px 0 8px}
.certmod-summary-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start}.certmod-summary-grid .certmod-subtitle{margin-top:4px}
.certmod-cert{border:1px solid var(--line);border-radius:12px;background:#fffdf9;padding:16px;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.certmod-cert.alert{border-color:#e8c6a0;background:#fffaf2}.certmod-cert>span:first-child{display:flex;align-items:center;gap:6px;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.certmod-cert>span:first-child svg{width:14px;height:14px;color:var(--primary)}.certmod-cert strong{font-size:13px;overflow-wrap:anywhere}.certmod-cert small{font-size:10.5px;color:var(--muted);line-height:1.5}
.certmod-list{list-style:none;margin:0;padding:0}.certmod-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:7px 0;border-top:1px solid #f1ebe2;font-size:11px}.certmod-list li:first-child{border-top:0}.certmod-list li span{color:var(--muted)}.certmod-list a{color:var(--ink);font-weight:600}
.certmod-renewal{display:flex;gap:12px;align-items:flex-start;margin-top:16px;padding:14px 16px;border:1px solid #e6ded3;border-radius:12px;background:#fbf8f3}.certmod-renewal.urgent{border-color:#e8c6a0;background:#fff6ea}.certmod-renewal>svg{width:20px;height:20px;color:var(--amber);flex-shrink:0;margin-top:2px}.certmod-renewal strong{font-size:13px}.certmod-renewal p{font-size:11.5px;color:var(--muted);margin:4px 0 10px;line-height:1.6}
.certmod-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.certmod-footer{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center;width:100%}
.certmod-bid{padding:20px 22px;margin-bottom:18px}.certmod-bid .certmod-renewal:first-child{margin-top:0}
.certmod-detail-head{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}
.certmod-detail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 22px;margin:0 0 6px}.certmod-detail>div{min-width:0}.certmod-detail dt{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:3px}.certmod-detail dd{margin:0;font-size:12px;overflow-wrap:anywhere;white-space:pre-wrap}
.certmod-table td{font-size:11px;vertical-align:top}.certmod-table td small{display:block;color:var(--muted);font-size:10px;margin-top:3px;white-space:normal;overflow-wrap:anywhere}.certmod-table .table-primary{font-weight:600;text-align:left}
.certmod-history{list-style:none;margin:0;padding:0}.certmod-history li{display:grid;grid-template-columns:110px 140px minmax(0,1fr);gap:10px;padding:6px 0;border-top:1px solid #f1ebe2;font-size:11px}.certmod-history li:first-child{border-top:0}.certmod-history li span{color:var(--muted)}.certmod-history li p{margin:0;overflow-wrap:anywhere}
.certmod-steps{list-style:none;margin:0 0 16px;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.certmod-steps li{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:9.5px;color:var(--muted);text-align:center;line-height:1.3}.certmod-steps li span{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid #ddd2c2;background:#fff;font-weight:600;font-size:10.5px}
.certmod-steps li.done span{background:#e9dcc5;border-color:#cdb38a;color:#5c4120}.certmod-steps li.current span{background:linear-gradient(110deg,#dcbc92,#cda66f);border-color:#c7a16e;color:#21190f}.certmod-steps li.current{color:var(--ink);font-weight:600}
.certmod-partners{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.certmod-partner{padding:18px 20px;display:flex;flex-direction:column;gap:8px}.certmod-partner header{display:flex;align-items:center;gap:8px}.certmod-partner h2{font-size:16px;margin:0;font-family:"Playfair Display",Georgia,serif;font-weight:500}.certmod-partner>small{color:var(--muted);font-size:10.5px}.certmod-products th{font-size:10px}
.certmod-rows{display:flex;flex-direction:column;gap:8px;margin-bottom:8px}.certmod-row{display:grid;grid-template-columns:70px 80px 70px minmax(0,1fr) minmax(0,1fr) auto;gap:6px 8px;align-items:center;padding-bottom:8px;border-bottom:1px solid #efe8de}.certmod-row .certmod-row-wide{grid-column:1/-1}.certmod-row input,.certmod-row select{height:34px;font-size:11.5px}
.certmod-row.certmod-contact{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr) auto}
.certmod-dashboard{margin-top:20px}.certmod-dashboard-body{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:0 22px 18px;font-size:12px}.certmod-dashboard-body>span:nth-child(2){color:var(--muted)}
@media(max-width:1100px){.certmod-summary-grid{grid-template-columns:1fr}.certmod-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.certmod-detail{grid-template-columns:1fr}.certmod-history li{grid-template-columns:1fr}.certmod-row,.certmod-row.certmod-contact{grid-template-columns:1fr 1fr}}
