.contract-generator-overlay{position:fixed;inset:0;z-index:12000;background:rgba(3,7,18,.86);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px}.contract-generator-overlay[hidden]{display:none}.contract-generator-modal{width:min(1040px,96vw);max-height:94vh;display:flex;flex-direction:column;background:#111827;color:#e5e7eb;border:1px solid #334155;border-radius:14px;box-shadow:0 24px 70px rgba(0,0,0,.55);overflow:hidden}.contract-generator-header,.contract-generator-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#0b1220}.contract-generator-header{border-bottom:1px solid #334155}.contract-generator-header h2{margin:2px 0 0;color:#fff}.contract-generator-header small{color:#67e8f9;letter-spacing:.12em}.contract-generator-close{border:0;background:transparent;color:#94a3b8;font-size:28px;cursor:pointer}.contract-generator-body{overflow:auto;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.contract-generator-body section{background:#172033;border:1px solid #334155;border-radius:10px;padding:14px}.contract-generator-body h3{margin:0 0 12px;color:#fff;font-size:15px}.contract-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contract-grid label{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#cbd5e1}.contract-grid input,.contract-grid select,.contract-grid textarea{box-sizing:border-box;width:100%;padding:9px 10px;border:1px solid #475569;border-radius:6px;background:#0f172a;color:#fff;font:inherit}.contract-grid textarea{resize:vertical}.contract-span-2{grid-column:1/-1}.contract-verify,.contract-primary{border:0;border-radius:6px;background:#0891b2;color:#fff;font-weight:700;cursor:pointer;padding:9px 13px}.contract-status{align-self:center;font-size:12px;color:#94a3b8}.contract-status.valid{color:#4ade80}.contract-status.invalid{color:#fb7185}.contract-future-api{padding:8px;border:1px dashed #475569;border-radius:6px;color:#64748b;font-size:11px}.contract-help{font-size:11px;color:#94a3b8}.contract-bom-table{width:100%;border-collapse:collapse;font-size:11px}.contract-bom-table th,.contract-bom-table td{border:1px solid #334155;padding:6px;text-align:left}.contract-bom-table th{background:#0f172a}.contract-bom-table select{background:#0f172a;color:#fff;border:1px solid #475569;border-radius:4px;padding:4px}.contract-generator-footer{border-top:1px solid #334155;justify-content:flex-end;gap:10px}.contract-generator-footer>span{margin-right:auto;font-size:12px;color:#94a3b8}@media(max-width:800px){.contract-generator-body{grid-template-columns:1fr}.contract-grid{grid-template-columns:1fr}.contract-span-2{grid-column:auto}}
.contract-audit-actions{display:flex;gap:8px;flex-wrap:wrap}.contract-secondary{background:#334155}.contract-audit-result{border:1px solid #334155;border-radius:8px;padding:10px;background:#0f172a;font-size:12px;line-height:1.5}.contract-audit-result h4{margin:0 0 8px;color:#fff}.contract-audit-result ul{margin:6px 0;padding-left:20px}.contract-audit-risk{display:inline-block;padding:3px 8px;border-radius:999px;font-weight:700}.contract-audit-risk.low{background:#14532d;color:#bbf7d0}.contract-audit-risk.medium{background:#713f12;color:#fef08a}.contract-audit-risk.high{background:#7f1d1d;color:#fecaca}.contract-audit-risk.critical{background:#991b1b;color:#fff;border:1px solid #f87171;animation:pulse 2s infinite}.contract-audit-links a{color:#67e8f9;margin-right:10px}
